我们有一个GUI(GraphicUserInterface,图形化用户界面)程序需要清理。这是对XP计划游戏(planninggame)的一个简单模拟,如图16.1所示。客户(Customer)可以创建新卡、分解现有的卡、删除原卡,并对计划做一个简单的分析。程序员(Programmer)可以对卡...[继续阅读]
海量资源,尽在掌握
我们有一个GUI(GraphicUserInterface,图形化用户界面)程序需要清理。这是对XP计划游戏(planninggame)的一个简单模拟,如图16.1所示。客户(Customer)可以创建新卡、分解现有的卡、删除原卡,并对计划做一个简单的分析。程序员(Programmer)可以对卡...[继续阅读]
习题44层(有难度)。处理库的一种方法是将其置于某一层之下。这样就可以把大量代码独立出来,而不会直接依赖于其他的一些库。请考虑以下两种做法:习题44层(有难度)。(接上页)A.将上图重新绘制成一个UML包图,以显示依赖关系。B...[继续阅读]
症状●如下代码反复出现:if(xxx==null)...原因有人认为:“可以将null用作为默认值”。基于这种想法,可以避免初始化某些字段的麻烦,或者不必考虑创建某些对象,也有可能是对某种意料之外的情况所做出的应对策略。引入null检查是为了...[继续阅读]
importjava.sql.*;publicclassOffering{privateintid;privateCoursecourse;privateStringdaysTimes;staticStringurl=“jdbc:odbc:Reggie”;static{try{Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);}catch(Exceptionignored){}}publicstaticOfferingcreate(Coursecourse,Str...[继续阅读]
...[继续阅读]
本书最后一部分提供了一些有待重构的程序。第13章是一个简单的选课系统,其中使用了一个数据库。将代码和数据库一同重构是一个正在兴起的研究领域;在该程序的代码中,可以看到存在大量的重复问题需要加以修正。第14章将介绍...[继续阅读]
无论是使用重构,还是在开发新的重构技术,都应当以一种适当的方式进行,即能够使系统从一个正常状态稳步前进到下一个正常状态。在进行重构时,我们倾向于小步骤但更安全(smallstepsbutsafer)的方法,而不是快速但往往不安全(fastbutn...[继续阅读]