May 21, 2010, 7:55 pm
我觉得我有必要把一些心得写下来,避免年轻的后来者再犯同样的错误。最近在公司了解到这样一种心态,特别是新来的和刚入行的员工,觉得手上的活枯燥,进而怀疑这份行业无聊,不是他们心中所想,不是心中所愿。其实我非常理解这种心态,因为我自己也是这么走过来的。我敢说,做IT的写程序的,十有八九是从兴趣开始的,兴趣是最好的老师这句话绝对不错。可是我倒想问问,真的是有了兴趣才有工作吗?
我看未必。就我自己一路所感来说,我原来是学机械工程及自动化的,应该说当时我对这门学科非常不满,觉得没有创意没有自由,后来才走上程序这条路。这种心态与现在的新员工何其相似。后来我才真正体会到,不先去做一件事之前你是无法判断兴趣与否的,换句话说,不去亲身体验的话是不会了解其中奥妙的。如同我现在又转回到机械加工这个行当,我下了很大的决心去做这件我以前非常看不起的行当,可是当我慢慢以一种成熟而富有经验的态度去做上这件事的时候,我发觉一切又都充满了乐趣,甚至我在冷冰冰的机器之间发掘到,它们原来这么有味儿。
我觉得人做事就该是这样:做之前不要谈兴趣,兴趣一定是伴随着工作而产生的。
March 19, 2010, 5:06 pm
Flash IDE 可以为调试的swf模拟网速来测试进度条。如果是Flex builder呢,似乎是没有的,不过千万别在这个问题上钻牛角尖,因为这实际上是本地服务器的职责,而不是flex builder该干的工作(flex builder编译完成并启动页面后就结束任务了)。
在这种情况下要为flex模拟慢网速的话,就要使用proxy工具了,我这里推荐ServiceCapture,当然很多http检测工具都带有模拟网速的功能,我选serviceCapture除了它能检测http,还能读出trace和AMF协议,简直是Flash专用工具。
首先你需要安装serviceCapture for firefox 插件,让它“干预”firefox上的调试。


然后所有在firefox里发生的http和AMF连接都会被记录下来,serviceCapture “中转”了firefox的请求,这样就能人为的拖慢网速。

January 29, 2010, 10:02 am
首先恭喜一下Git越来越有名了,很多有名的开源项目开始使用git做版本控制,如ROR等。我已经在项目中用了git一段时间,感觉快速且操作简单,况且由于某些原因源码不便放到svn服务器。Git成了这种情况下良好的选择。
记得之前讲过Git的基本用法,但是对Git这个分布式的版本控制没有做过多概念上的说明,这里就来比较下几类版本控制技术的区别:
本地版本控制(Local Version Control System):简单的说,就是仓库(repository,众多文档版本的集合)存放在本地,工作文档也是在本地。这类方式不用服务器,缺点也很明显,不便于多人配合开发。

中心化的版本控制(Centralized Version Control System):相比于上一种,这类方式注重协同开发,因此将仓库放到中心服务器上,便于数据管理和访问控制。经典的SVN就是这类。

分布式的版本控制(Distributed Version Control System):应该说,上面一种已经够完美了(至少我一直是这么认为了)。可惜数据太集中也有隐患,比如服务器down掉,就不能工作了,另外断网的情况下也不行。分布式就用来解决这种问题,Git属于这类。它的特点是本地完全的copy服务器的数据(包括所有的版本),即使在服务器不能使用的情况下,本地依然可以commit和checkout,甚至回复或者重建服务器上的仓库。

January 5, 2010, 4:10 pm
今天有空就对自己的电脑做了大清洗。TortoiseSVN成了消灭对象,因为把windows拖慢了(TortoiseSVN实现在windows shell,无论何时何地都能看到它的身影)。除了TortoiseSVN,其实还有很多不错的SVN客户端可以用,比如Rapidsvn,一个很简单的GUI客户端,便于集中管理workinging copy,且不会像TortoiseSVN那样到处出现。
可以上这里查看推荐的svn客户端工具。如
- qsvn
- rapidsvn
- smartsvn(功能很全,体积较大)
- FSVS
- RSVN(基于python的)
都是不错的。短小精悍是今后换代的目标。
December 30, 2009, 1:04 pm
设计用的辅助工具,官网见这里。我一直用很长时间了,可以很方便的截屏,调色,量尺寸等小活,是辅助Flex/Flash开发的好东东。这里给张截图吧。

这就是它的功能菜单了,包括:
- Screen capture:除了截屏,可以做简单的编辑。不过我一直用Jing,基本上不用它
- Open Color Picker:在屏幕上取色
- Show Color Palette:调色板
December 29, 2009, 9:03 pm
FlashDevelop这个IDE本身是不带断点调试的,但是可以通过插件的方式来支持。FlexDbg就是这么一款好用的插件(下载见这里)。使用步骤如下:
- 下载(废话)最新版zip包
- 打开FlashDevelop的安装文件夹,进入Plugin文件夹,将下载的zip包解压到这里(几个dll文件)
- 打开或重启FlashDevelop,应该发现menu上多了debug选项
- debug的方式几乎和别的IDE没啥不同,不过注意了,不再是点“Test Movie” 这个蓝色小箭头来启动debug,而是menu->debug->Start,要用菜单栏的。
我的感觉,FlexDbg的调试跟visual studio感觉一样。开发AS没有断点调试功能怎么行,快试试看吧。
December 29, 2009, 10:01 am
昨天把FDT3给安上去了,用了好长时间。至此把FDT,FlashDevelop,Flex builder三类主流的IDE都用了遍,来谈谈自己的感受。
FDT3
应该说这是个相当不错的IDE,基于eclipse,可惜挺贵。进第一家公司的时候就被迫用它来开发AS2,应该说,他的代码提示和代码完成相当的好,对语法检查很严格(包括提示你打;一行指令的结束符)。FDT3这个版本包罗万象,可以开发flex和AIR,还自带sdk。缺点就是太吃内存了,让人有点受不了。
FlashDevelop
快速轻便,适合纯写代码,可能是托了visual studio shell的福吧,代码提示跟visual studio的感觉如出一辙,只是在某些方面差了些,比如继承关系中不会提示有些方法没有implement或override,可能直到编译的时候才发现,这点不如FDT。FlashDevelop不自带SDK,需要自行下载。这我觉得是个好处,可以自己控制。总之非常的轻巧功能不弱。
Flex builder
这里只谈3因为还没用过4。这个IDE感觉除了UI可预览,其它的都不如上面两款。基于eclipse的,块头自然不必说,吃掉很多资源(而且是越来越能吃了)。代码提示一般性。另外我感觉,如果用熟的话,我基本不开UI预览。flex有很强大的layout组件,靠这些组件基本上可以想象的到UI是什么样子。如果只是开发AS project,还是推荐上面两款。
December 17, 2009, 8:35 pm
真的是偶然才有这次经历分享的。起因是我要装visual studio但是空间不够,加上Linux不常用(想释放来补足C分区),再加上光驱又坏掉了。本来类似的教程网上很多,但是都需要用windows xp安装光盘来引导并修复启动项,俺光驱坏掉了就只能用移动硬盘来做winpe启动盘了。来看看步骤:
- 前提是你有一个移动硬盘或者大点的U盘,且电脑支持USB-HDD启动
- 给你的移动硬盘分一个区(我设了5G,其实不需要太大),我想你的移动硬盘不会是空盘吧,分区是为了格式化后安装winpe,不要误伤了你的数据。使用PartitionMagic之类的磁盘工具就行了。
- 下载winpe老毛桃版(这个名字太搞了)ISO文件(这里下载),然后就是安装,下面要千万小心,如果你的杀毒软件报木马(不知道是不是木马,反正当时管不了那么多)就关掉它吧。亲爱的老毛桃安装界面如下:

这里千万瞧清楚了,选择第四个(第一次我误选了第一个,连引导程序都挂了)。下面就按着步骤来吧,不需要多少时间就安装OK。这样你的移动硬盘应急盘就制作完成了。
- 重启进入BIOS,设置USB-HDD作为启动第一选择。
- 再重启并插上硬盘。电脑就会自动识别移动硬盘上的winpe系统并引导进入,本来移动硬盘比内置硬盘慢,但是winpe十分精简,我感觉几乎没有区别。
- 为啥要用winpe老毛桃版,那是因为里面内置了PTDD磁盘工具,用它首先来修复引导,修复MBR,因为我安装Linux的时候破坏了xp的引导(这就是为啥不能直接卸载Linux,会让你无法启动windows xp)。

- 然后格式化Linux的分区吧,然后把清空的磁盘并入C盘。
- 搞定。
这类方式适合拥有残疾电脑的人。
June 30, 2009, 11:07 am
Adobe新发布了Flash Builder4,改名字了不是么,除了flex builder之外多了一个附属的协作工具Flash Catalyst。我的感觉,Flash Catalyst是一个专属于flex开发的设计工具,是给设计人员使用的。我以前也喜欢过做设计,于是单独下载Flash Catalyst体验下。

最引人注目的就是上面的PAGES/STATES,有了这个就很像flex的设计工具了。Flex引入了状态的概念,来为服务器数据提供眼花缭乱的动态或静态的显示方式。其他方面,弱化了基础绘画功能(素材主要是来自导入),而添加了基本的flex事件,绑定功能(都是比较简单的基于标准组件的功能,以后的工作当然是交给flex builder了)。可以说,Flash catalyst是连接flash/photoshop等设计工具和flex builder的桥梁,让协作更加的顺畅。这让我想起,以前设计人员给我psd,然后我还得花上一天时间吧psd里的元素抽出来保存到png,真的很痛苦。我想有了flash catalyst后这类工具后肯定会改善吧。
不过还是有点担心吧,这毕竟是看起来很初步的工具。需要给设计人员培训,也不知道能不能支持自定义组件。如果是一个复杂的flex,还是可能碰到很多问题。这是一条很长的路,希望Adobe可以越做越好。
June 23, 2009, 11:51 am
上网搜到一个转换png到icon文件的小工具,使用挺方便的,见:
http://winterdrache.de/freeware/png2ico/
可以支持多个操作系统,像命令行工具那么使用,这样也可以集成到后台用,对吧。
NAME
png2ico - convert .PNG file(s) to Windows .ICO icon
resource
SYNOPSIS
png2ico outfile.ico [--colors <num>] infile1.png
[infile2.png ...]