- python找色_Python获取图片位置像素色值及判断色值是否存在
weixin_39966941
python找色
#!/usr/bin/python#-*-coding:utf-8-*-fromPILimportImage#涛哥用代码看是那的错https://blog.kydbk.comimg=Image.open("test.png")#获取图片尺寸的大小(600,600)printimg.size#获取图片的格式pngprintimg.format#获取图片的图像类型RGBAprintimg.mode#显
- css心跳动画
—Qeyser
HtmlCSScss前端java
图标引入CSS代码.icon{animation:bpm1slinear,pulse0.75s1slinearinfinite;}@keyframespulse{from,75%,to{transform:scale(1);}25%{transform:scale(0.9);}50%{transform:scale(1.2);}}@keyframesbpm{from{transform:scale
- 【数据库】第三范式
柠檬鲨_
数据库
第三范式(ThirdNormalForm,3NF)是数据库设计中的一种规范,它建立在第一范式(1NF)和第二范式(2NF)的基础之上,旨在进一步减少数据冗余和避免更新异常等问题,下面从定义、相关概念、实例分析、优缺点和应用场景几个方面详细介绍:定义若关系模式R满足第二范式(2NF),且每一个非主属性既不部分依赖于码也不传递依赖于码,则称R满足第三范式,记作R∈3NF。简单来说,第三范式要求数据库表
- rabbitmq 手动提交_第四章----SpringBoot+RabbitMQ发送确认和消费手动确认机制
weixin_39622178
rabbitmq手动提交
1.配置RabbitMQ#发送确认spring.rabbitmq.publisher-confirms=true#发送回调spring.rabbitmq.publisher-returns=true#消费手动确认spring.rabbitmq.listener.simple.acknowledge-mode=manual2.生产者发送消息确认机制其实这个也不能叫确认机制,只是起到一个监听的作用,监
- TOGAF之架构标准规范-信息系统架构 | 应用架构
计算机科技研究员
人工智能技术与架构应用软件系统技术与架构系统架构
TOGAF是工业级的企业架构标准规范,信息系统架构阶段是由数据架构阶段以及应用架构阶段构成,本文主要描述信息系统架构阶段中的应用架构阶段。如上所示,信息系统架构(InformationSystemsArchitectures)在TOGAF标准规范中处于C阶段。阶段目标开发目标信息系统架构,描述企业的信息系统架构如何赋能业务结构以及架构愿景,解决架构工作组以及利益相关者关注的问题识别确认基线信息系统
- 如何构建一个 Docker 镜像?
大数据追光猿
大模型docker容器运维人工智能学习方法transformerpython
1.创建Dockerfile文件(1)选择工作目录首先,创建一个项目目录,并进入该目录:mkdirmy-docker-projectcdmy-docker-project(2)创建Dockerfile使用任何文本编辑器(如nano、vim或gedit)创建一个名为Dockerfile的文件:nanoDockerfile注意:Dockerfile文件名没有扩展名(例如.txt或.conf),必须是纯
- Python 编程第一课:快速上手 Python
后端
Python环境搭建为了开始Python编程之旅,首先需要搭建Python环境。以下是简洁的环境搭建步骤:安装Python访问Python官方网站下载最新版本的Python安装包。按照安装向导完成安装,确保勾选“AddPythontoPATH”选项。安装集成开发环境(IDE)PyCharm:功能强大,适合大型项目开发,有社区版和专业版。VSCode:轻量级但功能丰富,可通过插件扩展功能,适合各种规
- HarmonyNext实战:基于ArkTS的分布式实时消息队列系统开发
harmonyos-next
HarmonyNext实战:基于ArkTS的分布式实时消息队列系统开发引言在HarmonyNext生态系统中,消息队列是实现分布式系统通信和异步处理的核心组件。本文将深入探讨如何使用ArkTS语言开发一个分布式实时消息队列系统,重点介绍消息的生产、消费、路由以及负载均衡等核心功能的实现。我们将通过一个完整的实战案例,展示如何利用HarmonyNext的分布式能力和ArkTS的高效性能,构建一个高效
- Django ORM 中的 RelatedManager 特殊方法
jay丿
djangosqlite数据库
DjangoORM中的RelatedManager特殊方法在Django的ORM(对象关系映射)框架中,处理关联关系是一项核心功能。当我们在模型之间定义外键(ForeignKey)、一对多(OneToMany)或多对多(ManyToMany)关系时,Django提供了一系列工具和方法来方便地管理这些关系。其中,RelatedManager是一个特别重要的概念,它是一个管理器(Manager),用于
- Linux报 “permission denied” 异常的原因以及解决办法
为了前进而后退,为了走直路而走弯路
记录一些踩过的坑linux服务器运维
Linux报“permissiondenied”异常的原因以及解决办法Linux报permissiondenied(权限被拒绝)错误通常是由于当前用户缺少执行该文件或文件夹的权限而导致的。这是Linux系统的安全机制之一,可以保证系统的安全性和稳定性。下面来详细介绍一下Linux报permissiondenied的原因和解决办法。原因文件或文件夹的权限不够:Linux系统中,每个文件都有不同的权限
- 《Operating System Concepts》阅读笔记:p200-p202
操作系统
《OperatingSystemConcepts》学习第22天,p200-p202总结,总计3页。一、技术总结1.CPU-I/Oburst(1)CPUburstSchedulingprocessstateinwhichtheprocessexecutesonCPU.(2)I/OburstSchedulingprocessstateinwhichtheCPUperformsI/O.2.racecon
- HarmonyOS NEXT 长时任务的学习和总结
架构教育
想要使用鸿蒙的长时任务需要配置权限:ohos.permission.KEEP_BACKGROUND_RUNNING并在module.json5中配置需要处理的长时任务类型,此处以定位为例:{..."backgroundModes":[//长时任务类型的配置项"location"]}]然后再合适的地方调用startBackgroundRunning方法开启长时任务,通过调用stopBackgroun
- 你需要更新的Java知识(面试必看、全网最全、持续更新)
珠峰日记
java后端
一、java基础1、JDK版本相关(新特性、是否长期支持、选择建议等)新特性JDK8StreamAPI:提供了过滤、映射、排序等功能,让集合操作更简便。接口默认方法和静态方法:增强了接口的灵活性,允许在接口中定义默认方法和静态方法。JDK17密封类和接口:通过sealed、permits关键字限制类的继承或接口的实现,提高代码安全性和可维护性。模式匹配(instanceof):在instanceo
- FFmpeg 中 protocols 使用文档介绍
码流怪侠
ffmpeg视频编解码FFmpegprotocols网络协议音视频直播
描述FFmpeg中用ibavformat库来提供的输入和输出协议。protocols选项关于libavformat库中协议选项的详细信息总结:全局选项:libavformat库提供了一些适用于所有协议的通用全局选项。私有选项:每个协议也可能支持特定的私有选项,这些选项仅适用于相应的组件。设置选项的方式:使用FFmpeg工具时,通过-optionvalue的格式来指定选项。在AVFormatCont
- SpringBoot(2,arm架构和x86架构区别
m0_64205716
程序员面试java后端
//gradle自身会用到的相关设置buildscript{//仓库repositories{//本地mavenLocal()//中央仓库mavenCentral()//grandle插件maven{url‘https://plugins.gradle.org/m2/’}}//子模块会用到的变量ext{springBootVersion=‘2.4.4’}}//插件plugins{id‘java’i
- springboot 适配ARM 架构
敏君宝爸
springboot架构java
下载对应的mavenhttps://hub.docker.com/_/maven/tags?page=&page_size=&ordering=&name=3.5.3-alpinedockerpullmaven:3.5.3-alpine@sha256:4c4e266aacf8ea6976b52df8467134b9f628cfed347c2f6aaf9e6aff832f7c452、下载对应的jdk
- 容器运行时 源码分析
梅梅与彤彤
kubernetes源码分析kubernetes容器
源码地址https://github.com/opencontainers/runctagv1.2.5整体流程一个容器启动主要分为三大部分,如文章题目所示create:主要是为了解析、组装容器启动的配置和与子进程的消息通道等;init:主要根据容器配置启动容器整个运行环境,包括熟知ns,cgroups,seccomp,apparmor,caps等;start:主要是为了通知init进程启动容器;r
- 汇编点亮LED
Couvrir洪荒猛兽
#野火i.mx6ull裸机开发汇编linux
目录一、ARM常用汇编指令二、汇编点亮LED2.1GPIO简述2.2GPIO相关寄存器2.3LED原理图2.4汇编点亮LED一、ARM常用汇编指令常用汇编格式:label:instruction@commentlabel:标号instruction:具体汇编指令comment:注释内容常用段名:.text:代码段.data:初始化的数据段.bss:未初始化的数据段.rodata:只读数据段.sec
- JavaEE概述和入门
曦暮
servletservletjavacgi
javaEE开发:为什么学JavaEE在我们学习Java语言时,你肯定是想知道Java到底能干些什么,现在到了JavaEE这个阶段,就可以告诉你了。JavaEE:Java平台企业版(JavaPlatformEnterpriseEdition),之前称为Java2Platform,EnterpriseEdition(J2EE),2018年3月更名为JakartaEE(这个名称应该还没有得到群众认可)
- YOLOv12改进之A2(区域注意力)
清风AI
深度学习算法详解及代码复现深度学习机器学习计算机视觉人工智能算法
注意力回顾注意力机制作为深度学习领域的核心技术,已广泛应用于自然语言处理和计算机视觉等多个领域。在YOLOv12改进之A2中,注意力机制扮演着关键角色。已有研究成果包括:Transformer架构:引入了自注意力机制,有效捕捉输入序列中的长距离依赖关系。CBAM模块:提出了通道和空间注意力的结合,显著提升了图像分类和目标检测的性能。SENet:引入了通道注意力机制,通过自适应学习特征通道的重要性,
- 飞书多维表格+DeepSeek R1:打工人必备的AI神器,效率暴涨1000%![特殊字符]
sherlock__cc
人工智能飞书
导语当飞书多维表格遇上国产最强推理大模型DeepSeekR1,会擦出怎样的火花?本文手把手教你用「零代码」实现批量文案改写、论文精读、视频脚本生成。一、颠覆认知的三大核心优势1.批量处理的工业级效率单次处理1000+条数据,告别传统API逐条调用支持跨表格数据联动(如从CRM系统自动抓取客户需求)实时监控处理进度,失败任务自动重试2.零代码的极简交互无需Python环境配置直接输入自然语言指令(如
- 【实战】STM32MP157开发教程之FreeRTOS系统篇6:FreeRTOS 列表和列表项
华清远见IT开放实验室
stm32mp157教程FreeRTOS开发qtlinux嵌入式STM32MP157资源扩展板STM32MP157
1.写在前面:本文章为《STM32MP157开发教程之FreeRTOS操作系统篇》系列中的一篇,笔者使用的开发平台为华清远见FS-MP1A开发板(STM32MP157开发板)。stm32mp157是ARM双核,2个A7核,1个M4核,A7核上可以跑Linux操作系统,M4核上可以跑FreeRTOS、RT-Thread等实时操作系统,STM32MP157开发板所以既可以学嵌入式linux,也可以学s
- 深入源码分析spring AOP
萌新coder
Java基础知识springjava后端
深入源码分析springAOP一、SpringAOP核心概念AOP(面向切面编程)是Spring框架的核心功能之一,它通过动态代理技术,在不修改源代码的情况下,为业务逻辑横向添加通用功能(如日志、事务、权限等)。其核心思想是将业务代码与非业务代码解耦,例如://业务代码publicvoidtransferMoney(){//转账逻辑...}//非业务代码(日志记录)publicvoidlog(){
- 交叉编译树莓派的curl库支持ssl
骑车男孩
树莓派curl
1.开发环境(1)装有openssl的ubuntu(2)交叉编译工具arm-linux-gnueabihf-gcc(3)openssl和libcurl源码交叉编译工具的安装https://blog.csdn.net/qq_46777053/article/details/110221159libcurl源码的获取https://github.com/curl/curl/releases/tag/c
- HHO优化SVM混合核(高斯核和Sigmoid核)回归预测
WSY算法爱好者
支持向量机回归算法
训练集-平均绝对误差(MAE):0.54544训练集-平均绝对误差百分比(MAPE):0.0011634训练集-均方根误差(RMSE):0.66571训练集-决定系数(R):0.95297测试集-平均绝对误差(MAE):0.31575测试集-平均绝对误差百分比(MAPE):0.00067398测试集-均方根误差(RMSE):0.39158测试集-决定系数(R):0.97566------HHO优化
- AWS CloudFormation:云原生时代的基础设施即代码利器
AWS官方合作商
aws云原生云计算科技
在云计算时代,企业追求敏捷开发和高效运维,**基础设施即代码(InfrastructureasCode,IaC)**逐渐成为现代化IT架构的核心实践。作为AWS云平台的原生编排工具,AWSCloudFormation凭借其强大的自动化能力和生态整合优势,成为企业构建云上架构的首选工具。本文将从技术实践角度解析CloudFormation的核心价值,并探讨它如何助力企业实现云资源的智能化管理。一、为
- OceanBase数据库常用巡检SQL
数据库sqloceanbase
本文为墨天轮数据库管理服务团队原创内容,如需转载请联系小墨(VX:modb666)并注明来源。一、版本信息select*frominformation_schema.GLOBAL_VARIABLESWHEREVARIABLE_NAMElike'version%';二、集群状态select*fromoceanbase.v$ob_cluster;三、服务器状态检查所有服务器的状态,包括这个Server
- python中怎么新建一个文件
2401_85978352
python
亲爱的朋友们,今天我们要探索,python如何新建一个文件夹如何用python新建一个文件,一起走进艺术家的内心世界,感受创作的魅力!目录一、新建工作空间二、新建项目三、新建包四、新建目录五、新建文件一、新建工作空间二、新建项目在PyCharm中新建python项目:File->NewProject->选择解释器和项目名称->点击Create即可三、新建包新建包:在项目根目录右键->New->Py
- MySQL时间溢出原理、实战影响与全面解决方案
mysql后端数据库服务器
一、问题背景与现象复现操作场景:本文将手把手带您了解mysql时间溢出原理、实战影响与全面解决方案,所有代码均通过dblensformysql数据库工具验证,推荐使用该工具进行可视化数据库管理和开发。在MySQL5.7环境中,若通过命令date-s"2038-04-0100:00:00"将系统时间设置为2038年4月1日,观察MySQL的行为。现象总结:timestamp字段溢出:写入2038年后
- FreeRTOS移植到Cortex-M3-M4
weixin_30596343
嵌入式
翻译自FreeRTOS官网文档,原文网址:http://www.freertos.org/RTOS-Cortex-M3-M4.html转载:原文出处:http://bbs.ednchina.com/BLOG_ARTICLE_3009240.HTM数以千计的FreeRTOS应用运行在ARMCortex-M内核上。令人惊奇的是,RTOS与Cortex-M内核组合使用,使得技术支持请求变得如此的少。大多
- ASM系列四 利用Method 组件动态注入方法逻辑
lijingyao8206
字节码技术jvmAOP动态代理ASM
这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以
- java编程思想 --内部类
百合不是茶
java内部类匿名内部类
内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅
1,内部类的创建 内部类是创建在类中的
package com.wj.InsideClass;
/*
* 内部类的创建
*/
public class CreateInsideClass {
public CreateInsideClass(
- web.xml报错
crabdave
web.xml
web.xml报错
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s
- 泛型类的自定义
麦田的设计者
javaandroid泛型
为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。
采用泛型类,完成扩展。
例如有一个学生类
Student{
Student(){
System.out.println("I'm a student.....");
}
}
有一个老师类
- CSS清除浮动的4中方法
IT独行者
JavaScriptUIcss
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。
1、结尾处加空div标签 clear:both 1 2 3 4
.div
1
{
background
:
#000080
;
border
:
1px
s
- Cygwin使用windows的jdk 配置方法
_wy_
jdkwindowscygwin
1.[vim /etc/profile]
JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43" (windows下jdk路径为D:\Java\jdk1.6.0_43)
PATH="$JAVA_HOME/bin:${PATH}"
CLAS
- linux下安装maven
无量
mavenlinux安装
Linux下安装maven(转) 1.首先到Maven官网
下载安装文件,目前最新版本为3.0.3,下载文件为
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令;
2.进入下载文件夹,找到下载的文件,运行如下命令解压
tar -xvf apache-maven-2.2.1-bin.tar.gz
解压后的文件夹
- tomcat的https 配置,syslog-ng配置
aichenglong
tomcathttp跳转到httpssyslong-ng配置syslog配置
1) tomcat配置https,以及http自动跳转到https的配置
1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令)
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit
- 关于领号活动总结
alafqq
活动
关于某彩票活动的总结
具体需求,每个用户进活动页面,领取一个号码,1000中的一个;
活动要求
1,随机性,一定要有随机性;
2,最少中奖概率,如果注数为3200注,则最多中4注
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高);
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库)
解决方案
1,事先产生随机数1000个,并打
- java数据结构 冒泡排序的遍历与排序
百合不是茶
java
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[]
- JS检查输入框输入的是否是数字的一种校验方法
bijian1013
js
如下是JS检查输入框输入的是否是数字的一种校验方法:
<form method=post target="_blank">
数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
- Test注解的两个属性:expected和timeout
bijian1013
javaJUnitexpectedtimeout
JUnit4:Test文档中的解释:
The Test annotation supports two optional parameters.
The first, expected, declares that a test method should throw an exception.
If it doesn't throw an exception or if it
- [Gson二]继承关系的POJO的反序列化
bit1129
POJO
父类
package inheritance.test2;
import java.util.Map;
public class Model {
private String field1;
private String field2;
private Map<String, String> infoMap
- 【Spark八十四】Spark零碎知识点记录
bit1129
spark
1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中
- WAS各种脚本作用大全
ronin47
WAS 脚本
http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html
无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下
获取下载
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自
- java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
bylijinnan
switch
借鉴网上的思路,用java实现:
public class NoIfWhile {
/**
* @param args
*
* find x=1+2+3+....n
*/
public static void main(String[] args) {
int n=10;
int re=find(n);
System.o
- Netty源码学习-ObjectEncoder和ObjectDecoder
bylijinnan
javanetty
Netty中传递对象的思路很直观:
Netty中数据的传递是基于ChannelBuffer(也就是byte[]);
那把对象序列化为字节流,就可以在Netty中传递对象了
相应的从ChannelBuffer恢复对象,就是反序列化的过程
Netty已经封装好ObjectEncoder和ObjectDecoder
先看ObjectEncoder
ObjectEncoder是往外发送
- spring 定时任务中cronExpression表达式含义
chicony
cronExpression
一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示:
代表含义 是否必须 允许的取值范围 &nb
- Nutz配置Jndi
ctrain
JNDI
1、使用JNDI获取指定资源:
var ioc = {
dao : {
type :"org.nutz.dao.impl.NutDao",
args : [ {jndi :"jdbc/dataSource"} ]
}
}
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可.
- 解决 /bin/sh^M: bad interpreter: No such file or directory
daizj
shell
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具
- [转]for 循环为何可恨?
dcj3sjt126com
程序员读书
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju
- Android实用小技巧
dcj3sjt126com
android
1、去掉所有Activity界面的标题栏
修改AndroidManifest.xml 在application 标签中添加android:theme="@android:style/Theme.NoTitleBar"
2、去掉所有Activity界面的TitleBar 和StatusBar
修改AndroidManifes
- Oracle 复习笔记之序列
eksliang
Oracle 序列sequenceOracle sequence
转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
序列是用于生成唯一、连续序号的对象
一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp
start with 1 --开始值
increment by 1 --増长值
maxval
- 有“品”的程序员
gongmeitao
工作
完美程序员的10种品质
完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质:
1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强
(范围:用简单方式解决复杂问题)
- 使用KeleyiSQLHelper类进行分页查询
hvt
sql.netC#asp.nethovertree
本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D
- SVG 教程 (三)圆形,椭圆,直线
天梯梦
svg
SVG <circle> SVG 圆形 - <circle>
<circle> 标签可用来创建一个圆:
下面是SVG代码:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" c
- 链表栈
luyulong
java数据结构
public class Node {
private Object object;
private Node next;
public Node() {
this.next = null;
this.object = null;
}
public Object getObject() {
return object;
}
public
- 基础数据结构和算法十:2-3 search tree
sunwinner
Algorithm2-3 search tree
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga
- spring配置定时任务
stunizhengjia
springtimer
最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到:
//------------------------定时任务调用的方法------------------------------
/**
* 存储过程定时器
*/
publi
- ITeye 8月技术图书有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
8月试读活动回顾:
http://webmaster.iteye.com/blog/2102830
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《跨终端Web》
gleams:http