- OpenGL里相机的运动控制
qq_42987967
计算机图形学学习笔记数码相机
相机的核心构造一个是glm::lookAt函数,一个是glm::perspective函数,本文相机的一切运动都在于如何构建相应的参数传入上述两个函数里。glm::mat4glm::lookAt(glm::vec3const&eye,//相机所在位置glm::vec3const¢er,//要凝视的点glm::vec3const&up//相机上向量);glm::mat4perspective
- 粘的ScalersTalk第七轮新概念朗读持续力训练Day 76 211229
粘_NIAN
练习材料:Lesson76AprilFoolsDay'Toendourspecialnewsbulletin,'saidthevoiceofthetelevisionannouncer,'wearegoingovertothemacaronifieldsofCalabria.Macaronihasbeengrowninthisareaforoversixhundredyears.Twoofthel
- 2022-08-18(listening)
Catholi_costudy
Vocabularypeculiarlyad.特别,尤其,古怪地perspectiven.视角,观点,透视画法isolatev.孤立,分离,隔离burdenn.负担,责任,负重overemphasizev.过分强调astonishv.使吃惊,使惊讶intentionn.意图,目的,打算,愈合unselfishnessn.不自私,慷慨practicala.真实的,实际的starvationn.饥饿,
- Specim推出便携式高光谱相机:可检测假冒艺术品和犯罪现场血迹
ggtdfgfdg
数码相机
芬兰specim高光谱相机高光谱(Hyperspectral)相机可以见到人类肉眼不能直接看到的内容,甚至可以分析物体的成分。只是这类设备通常又大又笨重,因此大多只能放在实验室用用。好消息是,芬兰VTT技术研究中心剥离出来的SpecimOy公司,刚刚推出了一款便携式的高光谱相机,它就是SpecimIQ。该相机能够收入可见光和近红外光谱范围内的不同波长,然后对物体表面的反射光成像。SpecimIQ采
- 高光谱相机(Hyperspectral Camera)
高光谱相机(HyperspectralCamera)高光谱相机:是一种可以采集连续、多达上百个窄波段的光谱信息的成像设备。它的核心特征是:每个像素点都拥有一个完整的光谱曲线,类似于“像素级别的光谱仪”。举例:普通彩色相机采集R/G/B(3个通道)多光谱相机采集~4–10个通道(如红光、绿光、红边、NIR)高光谱相机采集几十到几百个波段,每个波段宽度很窄(<10nm)高光谱vs多光谱:项目多光谱(M
- 振动分析常用的频谱类型
m0_55576290
工作一二三信号与系统振动分析
文章目录振动分析常用的频谱类型1.幅值谱(AmplitudeSpectrum)-最常用2.功率谱密度(PSD)-用于随机信号3.自功率谱(AutoPowerSpectrum)振动分析中的选择原则.振动分析中的频谱选择建议故障诊断→幅值谱模态分析→自功率谱随机振动→功率谱密度宽动态范围→对数坐标实际应用中的处理方法总结振动分析常用的频谱类型1.幅值谱(AmplitudeSpectrum)-最常用%幅
- YOLO融合synergisticNet中的模块
今天炼丹了吗
YOLOv11与自研模型专栏YOLO
YOLOv11v10v8使用教程:YOLOv11入门到入土使用教程YOLOv11改进汇总贴:YOLOv11及自研模型更新汇总《HyperSINet:ASynergeticInteractionNetworkCombinedWithConvolutionandTransformerforHyperspectralImageClassification》一、模块介绍论文链接:https://ieeex
- 2021 SoK: The Progress, Challenges, and Perspectives of Directed Greybox Fuzzing
席八
论文阅读综述安全
摘要灰盒模糊已经成为最具可扩展性和实用性的软件测试方法。大多数灰盒模糊工具都是基于覆盖率的,因为代码覆盖率与bug覆盖率是紧密相关的。然而,由于大多数覆盖的代码可能不包含错误,盲目扩展代码覆盖的效率较低,特别是在角落的情况下。不像基于覆盖的fuzzer以一种无方向的方式扩展代码覆盖,有方向的fuzzer将大部分的时间预算花在到达特定的目标位置(例如,bug倾向区)而不会浪费资源去强调不相关的部分。
- strings.ToLowerSpecial 使用详解
幸享龙枫
golanggolang
目录1.官方包2.支持版本3.官方说明4.作用5.实现原理6.推荐使用场景和不推荐使用场景推荐场景不推荐场景7.使用场景示例示例1:官方示例示例2:德语内容处理(保留ß不变)8.性能及同类对比性能特点对比其他方法(转换100KB土耳其语文本)9.总结特性说明对比总结表最终建议1.官方包是的,strings.ToLowerSpecial是Go语言标准库strings包中的函数,属于官方提供的核心功能
- Golang ToLower和ToLowerSpecial源码探究
ob767
golang
本文简单探索ToLower方法及SpecialCase的使用方法和实现,如果只关注SpecialCase方法的同学可以直接跳转至分割线以下问题起因是使用strings包中的ToLower时转换小写结果与预期不相符a:="ADASD$%^*@%3Ω"fmt.Println(strings.ToLower(a))//adasd$%^*@%3ω本只想将A-Z进行大小写转换,但strings.ToLowe
- golang 字符串转大小写
_wei丶
Gogogo语言字符串
小写全文转化为小写方法一strings.ToLowerfuncToLower(sstring)string返回将所有字母都转为对应的小写版本的拷贝。packagemainimport("fmt""strings")funcmain(){//转小写->helloworldfmt.Println(strings.ToLower("HELLOWORLD"))}方法二strings.ToLowerSpec
- go 语言大小写SpecialCase转换
小可爱amour
golang前端javascript
背景:不同语言或者组件的大小写转换规则有小许不同,导致在不同地方计算字符串大小写的md5不一样。需要依据特定语言或者组件对齐大小写转换。解决方案:根据不同平台,使用不同的大小写转换。本文以小写为例。官方支持:funcToLowerSpecial(cunicode.SpecialCase,sstring)stringfuncToUpperSpecial(cunicode.SpecialCase,ss
- 关于“重现bug—探查bug—解决bug“的一本书
人邮异步社区
bug软件开发程序员
《EffectiveDebugging:调试软件和系统的66个有效方法》是一本关于软件和系统调试的实用指南。作者迪欧米迪斯.斯宾奈里斯(DiomidisSpinellis)是希腊雅典经济与商业大学管理科学与技术系教授。他的研究涵盖软件工程、IT安全和云系统工程。他撰写了两本屡获殊荣的技术图书,《代码阅读方法与实践》(CodeReading:TheOpenSourcePerspective)和《高质
- 【2024 CVPR-Backbone】RepViT: Revisiting Mobile CNN From ViT Perspective
无敌悦悦王
文献阅读cnn人工智能神经网络计算机视觉图像处理python深度学习
摘要近期,轻量级视觉Transformer(ViT)在资源受限的移动设备上表现出比轻量级卷积神经网络(CNN)更优异的性能和更低的延迟。研究人员已发现轻量级ViT与轻量级CNN之间存在许多结构关联,但二者在模块结构、宏观和微观设计上的显著架构差异尚未得到充分研究。本研究从ViT视角重新审视轻量级CNN的高效设计,并强调其在移动设备上的应用前景。具体而言,我们通过整合轻量级ViT的高效架构设计,逐步
- 实现网页中CSS图片3D旋转效果
Kiki-2189
本文还有配套的精品资源,点击获取简介:CSS是一种用于定义文档呈现方式的技术,通过CSS3的3D转换功能,能够在二维平面上展示三维对象,让网页元素具有立体感。本文详细介绍了实现CSS图片3D旋转效果所需的CSS属性,如transform,perspective,transition,以及:hover选择器,并提供了一个简单的代码示例。同时,文章也提到了兼容性问题以及提供回退方案的重要性。1.CSS
- adb logcat 命令详解 log过滤
liao277218962
adblogcat命令行adblogcat
作者:万境绝尘转载请著名出处eclipse自带的LogCat工具太垃圾了,开始用adblogcat在终端查看日志;1.解析adblogcat的帮助信息在命令行中输入adblogcat--help命令,就可以显示该命令的帮助信息;[plain]viewplaincopyoctopus@octopus:~$adblogcat--helpUsage:logcat[options][filterspecs
- matlab 频谱图例子_做EEG频谱分析,看这一篇文章就够了!
weixin_39985286
matlab频谱图例子
所谓频谱分析,又称为功率谱分析或者功率谱密度(PowerSpectralDensity,PSD)分析,实际就是通过一定方法求解信号的功率power随着频率变化曲线。笔者在这里对目前常用的频谱分析方法做一个总结,并重点介绍目前EEG分析中最常用的频谱分析方法,并给出相应的Matlab程序。1.频谱分析的方法有哪些?目前来说,功率谱分析的方法大致可以分为两大类:第一类是经典的功率谱计算方法,第二类是现
- CSS3 3D 转换介绍
半点寒12W
csscss33d前端
CSS3中的3D转换提供了一种在二维屏幕上呈现三维效果的方式,主要包括translate3d、rotate3d、scale3d等转换函数,下面来详细介绍:1.3D转换的基本概念坐标系在CSS3的3D空间中,使用的是右手坐标系。X轴是水平方向(从左到右为正方向),Y轴是垂直方向(从上到下为正方向),Z轴是垂直于屏幕的方向(从屏幕外指向屏幕内为正方向)。容器属性-perspective这个属性用于设置
- YOLOv11 改进策略:利用 MPDIoU 增强边界框回归的准确性
鱼弦
YOLO实践与改进YOLO人工智能
YOLOv11改进策略:利用MPDIoU增强边界框回归的准确性引言目标检测中的边界框回归质量直接影响模型的检测精度,特别是在复杂背景和多尺度目标场景下。传统的IoU(IntersectionoverUnion)损失在处理重叠较少的情况时效果欠佳,而MPDIoU(Multi-PerspectiveDistance-IoU)作为一种改进方法,通过综合考虑多个角度的距离测量,能够更有效地优化边界框位置。
- 抖音热门旋转照片墙html
weixin_53749877
html
3D旋转照片墙/*去掉默认效果*/*{margin:0;padding:0;}body{background:#222;overflow:hidden;/*取消选中*/user-select:none;}@keyframesrotate{100%{transform:rotateY(360deg);}}.perspective{/*子元素透视场景深度*/perspective:600px;}.wr
- 盲盒html
青鸾@
htmlcss3css
盲盒*{width:0;height:0;}body{perspective:1000px;}.bigbox{/*相对定位*/position:relative;width:1000px;width:800px;border:1pxsolidpalevioletred;margin:200pxauto;transform-style:preserve-3d;}.bigboxdiv{/*绝对定位*/
- 照片墙html
青鸾@
htmlcss3css
*{margin:0;padding:0;}body{background-color:peachpuff;}.bigbox{width:800px;height:400px;margin:80pxauto0px;perspective:1000px;}.box{width:800px;height:400px;position:relative;transition:allease1s;tran
- java相互加密解密
逍遥谷东方未明
javajavascript加密解密
java代码importjavax.crypto.Cipher;importjavax.crypto.spec.IvParameterSpec;importjavax.crypto.spec.SecretKeySpec;importjava.util.Base64;publicclassAesUtils{publicstaticStringencrypt(Stringplaintext,Strin
- mysql一主多从 k8s部署实际案例
搞不懂语言的程序员
k8s中间件mysqlkubernetes数据库
一、Kubernetes配置(MySQL主从集群)主库StatefulSet配置(master-mysql.yaml):apiVersion:apps/v1kind:StatefulSetmetadata:name:mysql-masterspec:serviceName:"mysql-master"replicas:1selector:matchLabels:app:mysql-masterte
- 数据可视化的超级引擎Perspective简介
alankuo
人工智能
Perspective是由FINOS开源社区维护的一个强大的交互式数据分析和可视化库,专为大规模和流式数据集设计。以下是其简介:核心特性高效流式查询引擎:用C++编写,编译为WebAssembly、Python和Rust版本,支持对ApacheArrow进行读/写/流式处理。这使其能快速处理大规模数据,同时保持低内存占用。高性能列式表达式语言:基于ExprTK的高性能列式表达式语言,可轻松进行复杂
- Perspective的数据分析和可视化库简介
alankuo
人工智能
在Python中,Perspective是一个用于数据分析和可视化的库,以下是其简介:概述Perspective是一个基于Web的交互式数据分析和可视化工具,它可以与Python、JavaScript等多种语言集成。它旨在提供一种简单而强大的方式来处理和可视化大型数据集,支持数据的实时更新和交互操作。主要特点数据处理能力强:能够处理大规模数据集,支持多种数据格式,如CSV、JSON、Parquet
- OpenCV透视变换
码农新猿类
OpenCVopencv人工智能计算机视觉
概念OpenCV透视变换是将图像从一个视平面投影到另一个视平面的过程,也叫投影映射,属于空间立体三维变换。它基于透视原理,通过3×3的变换矩阵作用于图像像素坐标来实现映射转换,能模拟人眼或相机镜头观看三维空间物体时的透视效果,改变图像视角和形状。常通过选择原始图像和目标图像上四个非共线对应点,用getPerspectiveTransform函数计算变换矩阵,再用warpPerspective函数对
- 前端css+jquery记一个特效动画
来一颗砂糖橘
前端当然是炫酷的csscss3html
效果录制点击链接可以在线看效果屏幕录制2023-05-07123330基于以下工具实现css(主要代码)jquery(一点点代码)animate.css(一点点代码)代码Documenthtml,body{width:100%;height:100%;padding:0;margin:0;background-color:#000;/*perspective:800px;*/}*{font-fam
- OpenCV 图像透视变换详解
2201_75491841
opencv人工智能计算机视觉
在计算机视觉领域,图像的视角问题常常会影响后续的分析与处理。例如,从倾斜角度拍摄的文档、带有畸变的场景图像等,都需要通过特定的方法进行矫正。OpenCV作为计算机视觉领域的重要库,提供了强大的图像透视变换功能,能够帮助我们轻松解决这类问题。本文将深入讲解OpenCV图像透视变换的原理、实现方法,并结合实际案例进行演示。一、透视变换原理透视变换(PerspectiveTransformation)是
- Hierarchical Sparse Subspace Clustering (HESSC): An Automatic Approach for Hyperspectral Image Analy
爱喝两碗汤
跨场景域适应遥感图像分类机器学习人工智能图像处理
分层稀疏子空间聚类(HESSC):一种用于高光谱图像分析的自动方法作者:KasraRafiezadehShahi1,∗,MahdiKhodadadzadeh1,LauraTusa1,PedramGhamisi1,RaimonTolosana-Delgado2,RichardGloaguen1德国弗莱贝格09599,赫尔姆霍兹-德累斯顿-罗森多夫中心(HZDR),赫尔姆霍兹弗莱贝格资源技术研究所(H
- 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