引言: Introduce Explainning Variable(引入解释性变量)
Summary:
将该复杂表达式(或其中一部分)的结果放进一个临时变量,以此变量名称来解释表达式用途。
摘要:记得delphi里面有一个tchecklistbox控件,是一个可打勾的列表。现在我们也做一个,就叫jchecklistbox吧。
写代码之前,先考虑以下问题:
· 继承:当然是从swing的jlist继承。
· 数据扩充:对于jlist来说,它是显示了一系列object。无论其类型如何,都用一个默认的渲染器(defaultlistcellrenderer,从jlabel......
摘要:1、 安装tomcat
在安装了jdk后,参考tomcat for window 的安装向导,基本直接安装即可,注意:安装时会提示输入管理用户名和密码,这是以后会用到的用户名和密码,切记。
2、 安装mysql
默认安装即可。
3、 使用tomcat的web管理应用配置数据源
启动tomcat服务器,打开浏览器,输入http://localhost:8080/admin/(其中loca......
引入解释性变量introduce explainning variable(引入解释性变量)
将该复杂表达式(或其中一部分)的结果放进一个临时变量,以此变量名称来解释表达式用途.
tips: 【程序编程相关:CU的精彩文章推荐】
summary: 【推荐阅读:[tip]用jsp实现直接下载文件而不是】
my thought: 【扩展信息: 软件工程过程规范(裁剪的RUP)第二部】
在条件逻辑中,introduce explaining variable可以用来将每个条件子句提炼出来,以一个良好命名的临时变量来解释对应条件子句的意义.
inline temp与introduce explaining variable:
两者在一定程度上(外表行为)恰恰相反.前者把临时变量的表达式直接插入调用方以便去掉临时变量,后者却把相关表达式提炼出来用一个临时变量代替.
前者要去掉的临时变量所代表的表达式是比较简单的,一般用来储存直接对某个函数或者某个对象的成员函数调用所得到的返回值,如order.getresult();(函数样式)或者order.result;(c# property 样式);而后者要提炼的表达式确实比较复杂,至少不是一眼可以看出其含义的,如textbox1.text.touppercase().contains("@");.
前者一般是为实施其他重构原则,例如extract method,铺平道路所用;而后者则一般为提高代码,尤其是不能一眼看出其含义的复杂表达式,的可读性所用....
下一页 摘要:<%on error resume nextserver.scripttimeout=9999999function gethttppage(path) t = getbody(path) gethttppage=bytestobstr(t,"gb2312")end function
function getbody(url) on error resume next ......