`

重 构

 
阅读更多
终于把重构读完了,说实话,觉得它"闻名不如见面",好多东西和设计模式重复了.好吧,也多年以后我会觉得我错了,而且大错特错,我应该好好再读次.2012.06.03(BTY目前半年重构经验)

以下出自重构的要点列表,精华居然在书的最后...

1.如果你发现自己需要为程序添加一个特性,而代码结构使你无法很方便地达成目的,那就先重构那个程序,使特性的添加比较容易,然后再添加特性.

2.重构前,先检查自己是否有一套可靠的测试机制.这些测试必须有自我检验能力.

3.重构技术就是以微小的步伐修改程序.如果你犯下错误,很容易便可发现它

4.任何一个傻瓜都能写出计算机可以理解的代码.唯有写出人类容易理解的代码,才是优秀的程序员.//好吧,我希望能做到这一点

5.重构(名词):对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本

6.重构(动词):使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构

7.事不过三,三则重构

8.不要过早发布接口.请修改你的代码所有权政策,使重构更顺畅

9.当你觉得需要撰写注释时,请先尝试重构,试着让所有注释都变得多余.//我觉得当你需要写很麻烦,啰嗦的注释时,找个好的办法重写它吧,不要说找不到,优秀程序员的茴字可不止一种写法.

10.确保所有测试都完全自动化,让它们检查自己的测试结果

11.一套测试就是一个强大的bug侦测器,能够大大缩减查找bug所需要的时间.//深有体会,但目前我无法在测试程序中覆盖所有的测试用例...

12.频繁地运行测试.每次编译请把测试也考虑进去---每天至少执行每个测试一次.

13.每当你收到bug报告,请先写一个单元测试来暴露这只bug.//是的,重现它很重要

14.编写未臻完善的测试并实际运行,好过对完美测试的无尽等待.

15.考虑可能出错的边界条件,把测试火力集中在那儿.//边界条件可是测试人员的基本啊,当然程序员也很有必要有这样的思维

16.当事件被大家认为应该会出错时,别忘了检查是否抛出了预期的异常.//我想说:我曾经是个java程序员,当然c++也是有异常的...

17.不要因为测试无法捕捉所有的bug就不写测试,因为测试的确可以捕捉到大多数bug
分享到:
评论

相关推荐

    基于角点检测和非局部相似性的视频压缩感知重构算法

    行块模式判别,针对小变化块采用帧间多假设重 构算法进行重构;针对大变化块首先利用非局部 相似性在已重构关键帧中寻找非局部相似性块, 然后对相似性块进行角点检测,筛选出高相似度 块,生成辅助信息,采用基于...

    固体本构关系(黄克智)院士

    根据提供的信息,我们可以了解到《固体本构关系》一书由黄克智院士撰写,是固体本构关系领域的重要参考书籍。下面将详细阐述本构关系的相关知识点及其在科学研究与工程实践中的应用。 ### 一、本构关系的概念 本构...

    闪电钢构7.0版-钢构快速算量

    《闪电钢构7.0版:钢结构快速算量与应用详解》 在建筑行业中,钢结构因其高强度、施工快捷等优点,被广泛应用于各类建筑工程。在这样的背景下,"闪电钢构7.0版"应运而生,这是一款专门针对钢结构算量的专业软件,...

    格构柱止水钢板图纸及现场施工图片.pdf

    在建筑工程领域,格构柱是一种常见的结构形式,用于增强建筑物的稳定性和承载力。而止水钢板则是确保建筑物防水性能的重要材料,特别是在地下室或地下结构中。本文将围绕"格构柱止水钢板"这一主题,结合现场施工图,...

    对付多圆形盾构的旋转分岔H V盾构工法.rar

    《对付多圆形盾构的旋转分岔H V盾构工法》 在现代城市地下空间开发和基础设施建设中,盾构技术(Tunnel Boring Machine, TBM)扮演着至关重要的角色,尤其在应对复杂地质条件下的隧道施工时。本资料主要针对的是多...

    【免费】AC钢构6.0—钢结构表格算量软件

    一款高效专业的钢结构算量、成本分析Excel插件,集成了软件作者10多年钢结构预结算经验,符合不同人群需求,比如采购计划、钢构公司的成本分析报价、造价人员清单报价等等。 1、支持98/05/10三种版本热轧H型理重选择...

    多种材料本构模型参数

    ### 多种材料本构模型参数详解 #### Johnson-Cook 本构模型概述 Johnson-Cook 本构模型是一种广泛应用于塑性力学领域的本构模型,尤其适用于高速冲击、爆炸等极端条件下的材料行为研究。该模型能够很好地描述材料在...

    盾构下穿石油管道施工技术方案.docx

    在本文中,我们将详细介绍盾构下穿石油管道施工技术方案,涵盖技术预备、重、难点分布及对策、预防措施和施工方法等方面的内容。 一、技术预备 技术预备是整个施工过程的关键阶段。为了保证施工的顺利进行,需要...

    AC钢构预算软件

    "AC钢构预算软件"是一款专门针对钢结构预算设计的专业工具,它将型钢的理论重量和表面积计算功能集成在内,并以Excel插件的形式提供服务。这款软件旨在提升钢结构工程预算的效率和精确度,使得用户在进行工程预算时...

    钢材型钢重量计算工具箱

    《钢材型钢重量计算工具箱》是一款专为工程技术人员设计的专业软件,主要功能在于帮助用户进行钢材型钢的重量计算和信息查询。在建筑工程、机械制造等领域,钢材型钢的重量计算是至关重要的,它涉及到材料成本估算、...

    闪电钢构算量软件8.0(2013最新版)

    1,板材、变截面板材自动算重、表面积计算 2,2000余种国标型材自动算重 3,【各种】 焊接H型钢 自动拆分 3块(多块)板计算 4,一键分类汇总各种规格材料…… 5,全新 【树形目录】 操作方式 6,自动生成各种清单,...

    地铁盾构隧道掘进过程数值模拟分析

    地铁盾构隧道掘进过程涉及到复杂的地质力学行为,包括土体变形、应力重分布、地下水流动等现象。这些现象直接影响着隧道结构的安全性和稳定性。因此,采用数值模拟技术可以有效预测和评估掘进过程中的各种力学响应,...

    很好用的钢构CAD2.81

    《全面解析:钢构CAD2.81——高效钢结构设计的得力助手》 在现代建筑行业中,钢结构因其强度高、重量轻、施工快速等优点,被广泛应用在各种大型建筑和桥梁工程中。而在设计阶段,一款高效易用的CAD软件能够极大地...

    行业分类-设备装置-格构式混凝土承重、保温和装饰一体化的墙体.zip

    《格构式混凝土承重、保温和装饰一体化的墙体》 在现代建筑行业中,随着科技的进步和环保理念的提升,新型建筑材料与结构形式不断涌现。其中,格构式混凝土承重、保温和装饰一体化的墙体作为一种高效、节能的建筑...

    行业分类-设备装置-格构式混凝土承重、保温和装饰一体化的墙体及制造方法.zip

    《格构式混凝土承重、保温和装饰一体化的墙体及制造方法》是针对现代建筑行业中的一项创新技术。这种墙体设计将承重、保温与装饰功能集于一体,旨在提高建筑效率,降低能耗,同时提升建筑物的外观美感。在本文中,...

Global site tag (gtag.js) - Google Analytics