- 博客(36)
- 资源 (18)
- 收藏
- 关注
原创 js异步之惑
js异步之惑1.异步是啥与异步对应的就是同步,对于同步我们很好理解,就是代码顺序执行。但是一到异步代码,很多人多少有些理不清。异步,从功能上讲,就是在背后偷偷的执行,不堵塞当前运行的代码;从实现上讲,能够这么做的,就只能靠在当前运行代码中另一起线程或者进程了。
2015-03-29 14:43:12
1995
1
翻译 同步和异步回调
同步和异步回调作者:havoc (原文地址:http://blog.ometer.com/2011/07/24/callbacks-synchronous-and-asynchronous/)
2015-03-29 14:38:09
7796
1
原创 NOOBS安装自定义系统
树莓派的操作系统安装时需要自己烧录img文件到SD卡中。烧录SD卡大体分为两种方式一种是吧一个img文件烧录到整张卡中,另一种是通过NOOBS将多个img文件烧录到一张卡中。但是NOOBS官方给的教程中寥寥几句带过,没有给出示例,真正操作起来的会遇到各种问题,比如怎样从一个下载到的镜像文件中提取出来需要的安装文件做成NOOBS识别压缩包。本文正是通过例子教你怎样将这些障碍一一扫除。
2015-03-29 14:32:12
14524
1
原创 node中调试子进程
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2015-03-29 14:20:12
2687
原创 session的根本原理及安全性
yunnysunny退出账号当前文档删除文档导出 Markdown导出 PDF系统设置下载离线客户端使用说明快捷帮助切换至免费版Unsavedsession的安全性对于vireio若干问题的解答直播登录验证文档关于淘宝同学接入的若干问题flashvar参数设置flashvar参数设置
2014-05-25 09:47:07
24726
翻译 java8是最快的JVM?对于Fork-Join的基准性能测试
java8是最快的JVM?对于Fork-Join的基准性能测试原文地址:http://zeroturnaround.com/rebellabs/is-java-8-the-fastest-jvm-ever-performance-benchmarking-of-fork-join/今天,我想继续讨论java8中的各种可以帮更好构建程序的工具。java8在几周前刚发布,不过,在Reb
2014-05-01 19:25:12
5640
原创 小议socket关闭
socket编程过程中往往会遇到这样那样的问题,出现了这些问题,有的是由于并发访问量太大造成的,有些却是由于代码中编程不慎造成的。比如说,最常见的错误就是程序中报打开的文件数过多这个错误。socket建立连接的时候是三次握手,这个大家都很清楚,但是socket关闭连接的时候,需要进行四次挥手,但很多人对于这四次挥手的具体流程不清楚,吃了很多亏。
2014-02-08 21:34:08
12503
1
原创 oauth2简单原理描述
定义得用户者得天下,每每腾讯推出一项所谓的山寨产品,最终的结果总是稳赚不赔,因为在中国几亿腾讯用户中,总是能找出一小撮极端分子喜欢他们的山寨产品,虽然是一小撮,但是乘以这个几亿的基数,那么就是一个可观的用户数量。这里仅仅是拿腾讯举个例子来说明用户的重要性,但是不是每个企业都有腾讯那样的用户数,如果想吸纳更多的用户使用自己的产品,有没有捷径呢?答案当然就是我下面要说的oauth2了,oauth2
2013-12-22 16:16:37
3593
原创 druid简单教程
java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,有不得不使用数据库连接池。数据库连接池有很多选择,c3p、dhcp、proxool等,druid作为一名后起之秀,凭借其出色的性能,也逐渐印入了大家的眼帘。接下来本教程就说一下druid的简单使用。首先从http://repo1.maven.org/maven2/com/alibaba/druid/下载最新的jar包。如果想...
2013-03-14 14:34:00
164635
8
原创 多语言协作工具thrift实例讲解
1背景如果讨论每个语言的特点,相信各个语言的程序员都能说得天花乱坠,争的面红耳赤。但是在如今大互联网时代,没有哪种语言是银弹,各种语言都各有所长。为了截取各家之长,各种跨语言通信框架涌现出来,thrift就是其中的一个典型代表。thrift是基于socket或者http协议来进行通信的,所以适合分布式的服务器之间进行通信。众所周知,php中是无法使内存常驻的,java、c、c++之类的就可
2013-02-28 22:08:10
3648
原创 java中的引用和溢出
在之前写过的文章《编程语言中形形色色的“指针”》,曾经写过关于java引用问题。总结一下,就是java中往函数传参时,如果参数是对象类型(比如说数组,或者最终继承自Object的对象,有别于int,byte,long这些简单类型)是采用引用的方式,在函数内部改变了对象的属性,函数调用完成后,这些改变依然保留。下面讲一下溢出问题,当然这里的“溢出”不是指C语言的内存溢出,而是指变量的可修改区域超
2013-01-18 21:20:20
1509
原创 从sourceforge迁移到github
现在最火的版本控制软件是什么,当然是git。git大有取代svn之势,就像svn当前取代cvs一样。作为老牌代码托管网站sourceforge面临github的竞争,也不得不调整战略,在原先的基础上增加了git和Mercurial 等软件的支持,但是却没有github或者bitbucket那样提供fork和pull request功能。要知道对于一个开源作品来说fork可以方便的将源码备份到自
2012-10-20 22:37:46
5078
1
原创 ant编译android
android 其实在编译的时候是使用sdk内部的ant工具来完成的。但有时候,我们不得不手动调用ant来完成编译。android的应用一般都在应用市场上发布,但是国内应用市场实在是五花八门,为了统计自己的应用在各个市场的激活情况,不得不在程序内部配置与市场有关的标示。实际应用中,就不得不通过脚本来调用ant来进行批量编译了。首先下载ant,设置环境变量ANT_HOME为ant所在的目录,并且
2012-09-27 21:45:01
1094
原创 p7结构的数字信封
PKCS7的数字信封格式分为两种:带签名的数字信封和不带签名的数字信封。由于这个数字信封的生成过程比较复杂,所以这两种格式比较容易记混,导致都搞不清楚一个数字信封里面到底是存储的什么内容了。下面我就详细的解释一下,这两种数字信封的生成过程和其详细的数据结构。首先是不带签名的数字信封。不带签名的数字信封内容类型由任意类型的加密内容和加密的一个/多个接收者的内容加密密钥组成,其生成过程如下
2012-08-23 16:17:00
11085
原创 关于cookie的一些事
其实cookie是实现web中用户状态维护的基础。我们常见的session也是在客户端浏览器中保存一个cookie信息,里面含sessionid数据,而在服务器端有一段与此sessionid关联的数据,这段数据可以存在服务器硬盘上,也可以序列化后存储在服务器的内存中,如果自己实现session过程的话,甚至可以存储在数据库或者nosql中。在做session验证的时候,正式用此sessionid去
2012-07-15 18:07:27
7280
原创 移动互联网商业契机
移动互联网商业契机IT总是日新月异的,但是伴随着iphone和android最近几年的快速崛起,继而引发的移动互联网的革命却是让我始料未及的。遥想三四年前,智能机还是个奢侈品,那时候还没有3G,那时候手机开发还用J2ME。可转眼间,大大小小的智能机厂商在国内也如雨后春笋般遍地都是,具有市场远见的IT人士也没有放过移动互联网这块大蛋糕,纷纷八仙过海各显神通,因此也成就了一批成功的商业运作模式。下
2012-05-27 15:47:26
4128
原创 RTTI续
在java老生常谈问题之RTTI中,我曾经讨论过关于子类和父类之间成员函数的运行时识别的问题,今天要讨论的是成员属性的运行时识别问题。在我们的印象中java是具有覆盖特性的,但是要注意这个特性仅仅是对成员函数的,对于成员属性可不适用。下面就来小试身手。package com.whyun.test.rtti;public class ParentClass
2012-03-24 15:18:36
879
原创 编程语言中形形色色的“指针”
看到指针这两个字,大家很多想到的都是C语言。但是今天指针被加了引号,所以今天不是讲C或者C++;然而除了这两门语言外,其他的高级语言中是没有指针这个概念,其实我们今天涉及的“指针”更类似于C++中的引用。C可能是很多同学在大学中学到的第一门语言,用指针这个概念,可能大家更好理解一些,可不要弄混奥。1.最隐蔽的“指针”java是没有指针的,但是我们可能没有注意到如果给一个函数传递一个对象类型的参数的时候,在函数内部给这个对象修改其属性的时候会发生什么情况呢?如果你按照java中参数传递是按值传递的固定思维的话
2011-04-16 23:28:00
1988
原创 java老生常谈问题之RTTI
<br />运行期类型鉴定(RTTI)的概念初看非常简单,声明为基类的对象,在使用时自动检测它的实际类型。然而RTTI却呈现出了面向对象的一个很有趣很强大的特性——多态性——这在我们设计java源码的时候会节省很多功夫,而且会让你的程序耦合度更低。<br />废话少说,先看例子:<br />package test;public class MyClassSelect { public static void main(String[] argc) { MyParentClass[] clas
2011-04-01 23:07:00
965
原创 mvc在perl中的应用
1.介绍首先说需求,要做一个基于CGI的VPN管理程序。由于之前从来没有用过perl,在初期也遇到了很多困难。这个项目进行了4个月,只有我和一位同事来实现,我负责界面,她负责数据处理。其实里面的东西很多,如果要写的话可能不只是几页纸能写完的。这里仅仅是挑出了一个具有代表性的环节做了介绍,那就是WEB开发通用的一个流程——MVC。关于mvc的详细介绍,请看我前面的文章。(1)MVC数据流程MVC中这三者之间是有机结合的。MVC的流程是将数据处理放到M(model,模型)层,将显示数据放到V(view,视图)层
2011-03-30 23:46:00
1498
翻译 敏捷方法和实现(四)
第二天当你第二天见到Claudia时,她看上去十分期待。你问她出了什么问题,她也正好从问题说起。 “是这样,对于这个网站,我考虑了好久,发现我们遗漏了很重要的一点。首先,我希望网站的用户能够搜索产品。同时,我认为他们应改能够通过某种方式来结账。我同样注意到我们没有设计出给购物车添加商品的进程。” “好的。让我们赶紧解决一下这些问题并且更新一下我的草图。然后我们将更新一下我昨天晚上画的产品的备忘录草图。现在先从这张图开始吧,好吗?” 现在,你忙碌起来,并且询问关于搜索的问题。可不可以给搜索页加个超链接,或者在
2011-03-11 23:04:00
1178
翻译 敏捷方法和实现(三)
尽可能的收集需求为了本书需要,你将要和一个需要做建设的电子商务网站的假设顾客工作。下面是在你同意去接见顾客时所知道的确切信息。顾客的名字叫Claudia,她经营一个致力于儿童用品的零售商店。她现在紧紧拥有一个简单的网页,命名为店名(Claudia的孩子),还有一些简单的联系信息。没有更多好的信息供你参考,因为这不像使用预测方法那样,你需要适应顾客的需求。 第一天当你遇见Claudia时,她看上去是一个有活力的三十多岁的人,正是这个人四年前创办了这家零售商店。这家商店的筹建款是由信用卡、从高薪职位离职后的佣金
2011-03-11 22:53:00
1164
2
翻译 敏捷方法和实践(二)
著名的敏捷开发由于有许多敏捷开发方法都过时了,并且他们之中的不同之处需要花点时间来掌握,本章主要简明的介绍他们其中的两种:Scrum和XP。一旦你简要的浏览了这些方法,就能举一反三了。一些朋友可能对于混合的方法应经有点迫不及待。但是,这正是敏捷(agile)的关键。首字母是A的敏捷(Agile)专注于纯粹的米哦系那个,小写字母a开始的敏捷(agile)专注于解放你的思想,去帮助你更快更容易的你的完成目标。敏捷(agile)就意味着自适应和加快你的脚步。现实世界中,当你忙于顾客的工作时,任何你原本打算的按日
2011-03-11 21:19:00
1294
翻译 敏捷方法和实现(一)
序<br />从现在开始,我将发表一系列关于敏捷开发的博客。这些博客都是我译自《professional codeigniter》一书中的第二章的内容,他的第二章的标题是“敏捷方法和实现”,在书中作者以一个跟用户面对面访谈的分析人员的身份,来阐述敏捷方法在实践中的实施过程。作者的思维足够敏捷,书中访谈人员面对的只是一家零售店的老板,当然这位老板没有什么技术背景,但是访谈人员却能以最直观的方式——画草图——跟自己的顾客来交流,两者合作的非常愉快。通过两者的合作,访谈人员得到了需求并且形成了设计的雏形,而顾客也
2011-03-05 21:13:00
1372
转载 vs.net 2005, 没有找到MSVCR80D.dll
<br />解决方案<br />在“属性->配置属性->清单工具->常规“下有一个”使用FAT32解决办法,把它选成是,就可以了。(注意:一定要先配置这个选项,然后再编译工程,要不然还是不好用:)
2011-03-03 15:24:00
635
原创 codeigniter和mvc续
codeigniter的程序流程1. 设计视图首先,让我们设计视图并把它保存到如下路径:system/application/views/testview.php <!DOCTYPE html PUBLIC '-//W Web test Site 代码片段1 视图demo 你还可以联
2011-02-28 21:39:00
1466
原创 codeigniter和mvc
<br /> <br /> 为什么用MVC<br />MVC如今在web开发中大放异彩。虽然其中包括代码的简洁和升级的便利等原因,但是首要原因还是他提倡的开发工作流。在开发团队中,MVC提供了有效的合作模式,他将各人的职责分为了三个主要的角色。<br />开发。开发人员是指处理模型的程序员。他们通常拥有与PHP、数据库管理、算法、构架和数据校验等方面的相关技能。这一角色通常会负责实现应用程序的编程细节,他们提供API,同时实施处理数据的策略。<br />设计。设计人员处理视图并负责实现应用程序的外观。他们具
2011-02-28 21:35:00
1932
原创 自定义小型ajax框架-ajax讲义二
上一讲讲了一个ajax的应用,改变form的默认提交方式,将其所有的字段通过ajax提交,方便了ajax的操作流程。代码借助jquery完成的,jquery是个优秀的js框架,使用它可以简化js的开发流程,但是这一次我讲的是使用纯js来实现ajax。那么有什么意义呢,这里当然不是为了学究,下面情况就需要用纯js了:很多js的新手可能不会用到jquery;最移动开发时,会发现移动设备上加载jquery这样的库会比PC机上慢很多,而且是不能忍受的。
2011-02-19 23:17:00
1514
原创 ajax form-ajax讲义一
web2.0时代,真正被人们所体验的正是ajax的使用。它使得web的使用方式更倾向于桌面,努力让人们忘记浏览器的存在。可能对于广大用户(非程序),讲ajax这个名字很多人不懂什么意思(理解成荷甲球队);但是提到注册邮箱时,重复用户的检测,很多人应该都有印象,如果用户名重复,点击提交按钮(有时会发生在点击用户名文本框的右边那个单独的检测按钮)时,会显示类似“用户名不存在,可以使用”、“用户名已存在”,但是在点击按钮的时候,浏览器的标题栏没有出现跳转的痕迹(即在标题前面显示显示等待的动画),整个表单的填写数据
2011-01-30 17:37:00
1162
原创 诡异的android项目报错
<br />为了将原有的项目添加新的功能,我将原有的项目复制了一份,更改了里面activity类的包名和主类名。重新生成新的android项目,发现项目中出现了不和谐的红叉。令人疑惑的是res目录中的drawable-hdpi/drawable-ldpi/drawable-mdpi三个文件夹上也显示错误,可这三个文件夹是空的啊!还有就是layout中的xml没有加载,因为activity类中的R都不能被识别。重新“clean”一下工程,发现错误更多了,android的service类也不识别了。<br />
2010-12-01 16:16:00
2148
1
原创 DES算法缺陷和改进
DES是个经典的算法,从1974年IBM发明DES算法开始,它应经被广泛应用全世界的金融服务和其他工业中,但是它的缺点也是很明显的。下面我们就从它的缺点说起。DES第一个缺点就是密钥长度过短。DES的加密单位仅有64位二进制,而且其中某些位还要削于奇偶校验或其他通讯开销,有效密钥只有56位,这种特性必然降低了密码体制的安全性。因此,人们会对56位密钥的安全性产生质疑,那么56位密钥是否足够,已成为人们争论的焦点之一。不幸的是,随着时间推移,各种能够明显降低,通过暴力破解来发现DES密钥的捷径被发现。并且随着
2010-11-06 20:13:00
19657
2
原创 php数组生成XML
时下,flash的开发在国内绝对算的上是个大头,虽然国外的编程统计显示ActionScript3.0在20名开外,但在中国绝对能排的上前十名。Adobe收购flash后开发的ActionScript3.0是一门极类似C#和java的语言,上手很快,否和当下OOP的趋势,配合绚丽的flash效果,取得了很多国人的芳心。但是ActionScript毕竟是一门前端脚本,和JavaScript一样它没有直
2010-10-28 21:18:00
2920
1
转载 sqlite3的C代码操作
// name: query.c// This prog is used to test C/C++ API for sqlite3 .It is very simple,ha !// Author : zieckey// data : 2006/11/18#include #include #include "sqlite3.h" //#define _DEBUG_int main( void ){ sqlite3 *db=NULL; char *zErrMsg
2010-10-28 20:36:00
973
转载 程序员的学历有多重要
程序员的学历有多重要“你们在哪儿上的大学啊?” 在某一天的午餐时分,为了缓解一下无聊的气氛,我和当时咨询公司里的一群程序员们开始聊天。在我问了这个问题之后,气氛开始变得热烈起来,大学足球成为我们的话题,每个学校的球队都免不了成为开玩笑的对象。然而我注意到有一个人——乔突然变得非常沉默。因此,我想最好把他拉到讨论中来,于是我又问了一遍这个问题,然而这次他却用不友好的语气告诉我他
2009-12-02 17:36:00
865
转载 php注入专题
php注入专题 /*此文已发于《黑客x档案》2004年10期专题。Php注入攻击是现今最流行的攻击方式,依靠它强大的灵活性吸引了广大黑迷。在上一期的《php安全与注射专题》中林.linx主要讲述了php程序的各种漏洞,也讲到了php+mysql注入的问题,可是讲的注入的问题比较少,让我们感觉没有尽兴是吧.OK,这一期我将给大家伙仔仔细细的吹一吹
2009-08-20 20:53:00
682
转载 计算机专业的学生究竟该何去何从?
首先说一说进入计算机专业的目的,我个人是因为十分喜欢IT业,很喜欢折腾电脑,所以在填报志愿是毫不犹豫的在报了的所有的学校都填写的计算机专业,梦想着进入计算机专业后能遇见很多高手,能交到几个知己,谁之进来后却大失所望。计算机专业的学生有很多以前对计算机不怎么了解,而且还有部分人进大学前连计算机摸都没摸过,对计算机很熟悉的很少,高手更是凤毛麟角,大多数人是服从了父母之命,显而易见,目前社会最
2008-10-10 12:43:00
1582
阿里duird库使用示例程序
2013-03-15
PKCS7 数字信封项目源码
2012-09-07
xenocode ie7
2011-10-01
vbs程序入门级教材(自己动手整理的)
2008-10-19
mpTrim 小巧方便的 MP3 修整截取工具
2008-10-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人