快乐的重构

这几周一直在看《重构》这本书,从提取变量,减少参数,到分拆、合并不同的类,每次都给我恍然的感觉。就想习武多年有人给我一本秘笈一般。 针对名录上的各种方法,我基本上都能在以前写的代码中找到相应的坏味道。于是,reading,recoding,refactoring,and progressing。 以前的总喜欢一个方法做很多事情,穿5、6个参数,用了十几个if,好多return,现在重读代码,竟累得呼哧呼哧的。 还有就是一个类做很多类的事情;一个变量做好几个变量的事情,可一个方法中却有十几个变量;以前的代码真是丑陋啊。每天晚上花上2个小时,重构这些代码,倒有些乐在其中的感觉。 目前正在进行cgdangdang(java)和cg问答(php)2个程序的重构工作。

2008年10月21日 · 1 分钟 · zgia

jode,jade,decompiler

用yGuard混淆、编译后的class,类名被替换为256+个ascii,比如O,o,0等。这个是不是有点BT: oOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO .class OS是windows 2008,当试图用jade反编译时,提示创建文件或文件夹错误的提示:文件名或扩展名太长。 后来网上搜索了一下,发现jode可以反编译,原因是jode是纯java编写。使用jode犯编译时,完全按照java代码规范进行。 将jode和yGuard混淆后的jar放在一起,或者都放在classpath下面。然后命令行执行: java -classpath jode.jar jode.decompiler.Main program.jar > out.txt 将反编译后的代码输出到out.txt。

2008年9月27日 · 1 分钟 · zgia

Google Android 学习笔记 2

注: 我是一边学,一遍翻译Android文档,翻译的目的是为了加深印象,以后有新想法了,便回来修正目前的错误。 Android应用程序剖析 一个Android应用程序通常有下面4个组件组成: ...

2008年1月21日 · 5 分钟 · zgia

Google Android 学习笔记 1

Welcome to Android! 一、什么是Android Android 平台可以说是为移动设备提供的整体软件解决方案,它包括一个操作系统,中间件和应用程序。开发者可以通过Android SDK,用JAVA为Android开发应用程序,应用程序运行在Dalvik上。Dalvik是一个基于Linux内核的虚拟机,专门为嵌入式应用而设计。 ...

2008年1月19日 · 3 分钟 · zgia

JFreeChart

以前介绍过一个PHP的图表工具:Graidle,可以在线生成非常不错的图表。俺目前的工作平台基于java,今又发现一个开源的java图表制作软件:JFreeChart,网址是:http://www.jfree.org/index.html。 我们知道Google有一个 在线图表工具Google Chart API允许您动态生成各种图表,但是Google Chart API使用起来有限制:每人每天仅能访问50,000次,虽说我们很难达到这个限制,但是有限制的确是很不爽的。超越限制,于是出现了JfreeChart。 JFreeChart是一个免费的Java 图表类库。它支持pie charts(圆形分格统计图表,2D和3D), bar charts (柱形或条形统计图表,水平的和垂直的、规则的和不规则的),line charts(折线图), scatter plots(散点图), time series charts(时间序列图),high-low-open-close charts,candlestick plots,Gantt charts(甘特表), combined plots,thermometers,dials and more(^_^,不翻译了,自己看吧)。 JFreeChart 可用于应用程序,applets,servlets和JSP。JFreeChart项目由David Gilbert维护,您可以在sourceforge.net上找到它。 Eastwood Chart Servlet是一个由David Gilbert维护Java servlet项目。通过JFreeChart类库绘图,模拟实现了Google Chart API:图表样式和URL。网站上提供了源码,可以下载Eastwood 1.0.0部署。 jfree站点上有很详细的介绍。这里是JFreeChart和Google Chart API的比较,看看去吧。 ...

2008年1月17日 · 2 分钟 · zgia