技术相关的文章都转移到tech.nananono.com里了

nananono.com是我的主打站,tech.nananono.com是技术分站,以后技术相关的文章都发表在那里,本博客现有的技术文章也都转移到tech.nananono.com里了,但是不会删除本博客里的。

欢迎到nananono.com观摩。:-)

单例模板

带默认文本的输入框组件

Getter妙用

ActionScript 3里,Getter是个很有用的语法特性,使用的好,可以避免很多Bug,也让代码看起来更优雅,写起来更方便。

下面就是妙用Getter的一个例子:

二次防护手法

今天旁边的同事好奇为啥鞋带会两根分开二次打结。其实我以前也两根一次打结过,但是一次打结时,如果鞋带松了,鞋子就松了,这在不方便马上系鞋带的时候,比如在地铁人流中时会很烦恼。而二次打结,鞋带松了也只会先松一根,另一根一般都是紧的,鞋子也就不会松了,可以在方便的时候再系紧鞋带。

程序开发时也可以用类似手法,就叫二次防护手法吧。套用80/20原则,80%的危害都是由20%的Bug造成的,80%的风险都在20%的代码上。这些重要的地方,就可以用二次防护手法加强防护。例子就暂时不举了,可以放开自己的想象力。

陆仕桑 20120112-21:16 发表于http://saullu.com/?p=812

我眼中Node.js的好处

我现在是Flash程序开发者,但Web开发也是我的未来发展方向。我比较熟悉ActionScript,要做好Web开发,可以先从前端开发开始,而JavaScript是前端开发的标准语言。所以JavaScript是我的必学必用语言。

除了前端开发,我还一直想学习后端开发,一开始选择学习新秀Ruby on Rails,后来Node.js出来后,我的兴趣马上被转移,现在注意力都在Node.js上面了。

在我看来,Node.js的三个特色,都是好处:

1. JavaScript语言编程。JavaScript在Web前端开发是标准语言,如果后端开发也可以用JavaScript,则不但方便学习,也可以共用部分代码,减少前后端语言不同造成的Bug和沟通障碍。当然JavaScript语言有些缺陷,不过可以避免,实在不想用,也可以用CoffeeScript或Google Dart等编程,然后转化成JavaScript。

2. 高运行效率。Node.js基于高效的Chrome’s JavaScript runtime,相对于Ruby on Rails,这是个很大的优势。

3. 异步编程。Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. In node, everything runs in parallel, except your code. 熟悉Flash开发,对这个模式很熟悉,可以简化编程,避免使用多线程带来的一些问题。

陆仕桑 20120108-20:50 发表于http://saullu.com/?p=809

路漫漫其修远兮

刚一时兴起搜自己的名字,搜到了博客园上自己的一篇老博文:http://www.cnblogs.com/lushisang/archive/2009/04/02/1428009.html

讲自己的职业目标,当时以为两年时间很长,没想到现在都两年半了,目标达到了没?也许技术部分达到了,但至少收入没达到。:-)

顺便把这篇博文转到现在的博客上吧,时间也是2009年4月。

现在看来,也许两年后,我都不一定能达到那个目标。我会努力做好的,现在没有以前浮躁了,踏踏实实把事情做好,稳扎稳打向前进。

路漫漫其修远兮,也许最终目标不重要,重要的是沿途的风景带给我的人生经历。

理解Flash Player安全机制(一)

对Flash Player的安全机制,一直是处于比较懵懂的状态,到了需要时才去了解,了解时不是很懂,没有系统的学习过,现在深入地学习下《ActionScript 3.0 开发人员指南 – 安全性》。将陆续写出自己的理解。AIR相关的以后再学习。

1. 用户授权和交互。硬件加速、存储、摄像头、麦克风等,需要用户授权才能使用。全屏、打开文件浏览框等,需要用户交互如鼠标键盘操作才能使用。用户必须完全知情。

2. 远程和本地之分。文件根据来源分远程和本地两大类,如地址是http开头和file开头。远程不能访问本地,本地可以选择只访问远程或只访问本地,或设置信任后远程和本地都能访问。这样可保护用户电脑信息在不知情时外泄。

3. 不同来源的访问要有授权。按来源如网站域名把文件分为不同的域,放到不同的沙箱里。同域的当然可以互相访问。不同域的,网站可以通过策略文件授权,swf作者可以通过代码Security.allowDomain()授权。这样可保护资源,在自己授权的情况下才能被人访问。

4. 内容加载的特殊性。通常,不同来源的访问需要授权,但内容,也叫媒体,程序如果只传达不私用,如只addChild(loader),不获取content,则不同域也可加载,除了远程本地限制和RTMP服务器限制。如要私用,即从中提取数据,如获取content等,则和通常一样,不同域访问需要授权。这样可以大大增加媒体的来源,如我可以直接在自己网站上Flash应用里显示外部网站相册里的照片。

陆仕桑 20120107-17:37 发表于http://saullu.com/?p=778

Flash UI Library Comparison

若看不到PPT可查看此PDF:http://saullu.com/files/FlashUILibraryComparison.pdf

链接:https://docs.google.com/presentation/pub?id=1LM7vNjBScrVyyaKA5ZGDQLAook5N7sgou_RQp-dIiC0&start=false&loop=false&delayms=3000

Underscore.js——优秀的实用基础类库

Underscore.js是一套很优秀的JavaScript基础类库,有函数式编程的风格,还支持串联调用。主要涉及对Collection、Object、Array、Function的操作,还有一些实用方法。可以说是写JavaScript程序的必用类库。

有人将其port为Underscore.as,在ActionScript开发中使用。