公司组织了三天的重构培训,在这三天中,学习了很多重构的方式,也颠覆了很多我对编码的认识。
首先先总结下一些对我帮助很大的重点结论:
1、 最好的设计通常都是在编码中产生的。不能忽视或小看了编码的工作。
2、 代码质量龌蹉与可读性差主要是由于需求变更与破窗效应造成。随着需求的变更,在编码阶段程序员的一些不负责与懒于思考的表现,导致了代码零设计编写,再由于破窗效应,也就是别人皆做我也做的态度,造就了代码质量越来越差。
3、 重当前做起,在编写代码过程中,编码设计与重构同步,是解决代码质量逐渐变差的最好方式。
4、 需要深刻认识《重构》书中所总结的21个代码坏味道,从中总结10条最需要避免的:
a) 重复代码
b) 过长方法
c) 过长类
d) 过长参数列表
e) 注释过多
f) 临时字段
g) 基本类型偏执
h) 条件与循环语句过多或多重嵌套
i) 发散式变化
j) 散弹式修改
5、 函数编写或重构时,需要遵从单一原则,方法块中代码行数越少越好,杜绝复杂表达式,函数参数不宜过多,过多参数需要考虑使用封装对象方式来进行传递,最重要的是尽量避免重复。
6、 类的编写或重构时,需要遵从面向对象编程,依赖于抽象,符合开闭原则,抽象数据类型,采用职责驱动设计。
7、 很多时候在初始设计时,是无法及时发现可以扩展的地方,重构可以发生在需求变化后,出现坏味道时。开始的扩展设计是建立在丰富经验基础下。
8、 一般不能根据模式去重构,而是从重构到模式。很多时候不能硬性的根据某个模式去重构一段设计,而是先把这段设计进行重构,在重构的过程中再去逐渐考虑使用什么模式。进行从模式到重构需要丰富的项目经验与深度业务理解前提下进行。
通过这段时间的学习,我最大的收获,也是我自己需要注意的地方是,对代码质量龌蹉的认识,不能从别人身上找原因,需完善自己的编码习惯。在项目中可读性与性能之间,我通常对性能考虑在先,而现在让我理解到的是,只有代码拥有了可读性,才能方便性能优化,如果代码可读性不强,不管性能如何高,在不久的将来,需求变化后,此段代码将作废。
分享到:
相关推荐
标题中的“【分享】部门内部《重构》培训”暗示了本次...通过对这个压缩包内容的推测,我们可以了解到这是一次全面的重构培训,涵盖了理论知识、实战技巧以及工具的使用,对于提升团队的代码质量有着重要的指导作用。
- **频繁小规模重构**:小规模的重构更容易实现,也更易于保持代码的整洁。 #### 3. 减少重构的策略 - **设计审查**:在项目初期进行设计审查,可以预防潜在的设计缺陷。 - **代码审查**:定期进行代码审查,及时...
### 培训对象重构设计PPT核心知识点详解 #### 一、面向过程与面向对象对比 ##### 面向过程编程(Procedural Programming) - **定义**:面向过程编程将复杂问题分解成一系列简单任务,通过定义一系列步骤来解决...
**MES系统重构:入门...六、总结 MES系统重构是一项复杂而重要的任务,需要全面考虑业务需求、技术趋势、系统性能等多个因素。通过有效的重构,企业能够提升MES系统的效能,更好地支持生产管理,推动智能制造的发展。
【远程培训学习总结】 远程培训作为一种新型的教育方式,已经成为教育改革的重要组成部分。它打破了地域和时间的限制,使得教师可以随时随地获取最新的教育理念和教学技巧。以下是对远程培训学习的详细总结: 首先...
总结来说,会计信息化的工作组织重构是顺应时代发展的必然选择,它推动了会计行业的现代化进程,提高了会计信息的效率和质量,但同时也对会计从业人员的专业技能和企业内部的管理结构提出了新的挑战。重构不仅涉及到...
文档的标题和描述表明内容来自于德勤咨询北京公司于2001年4月发布的《企业组织重构》内训材料,可能涵盖了该公司的组织结构咨询服务相关的内容。由于文档中未提及具体的技术细节,知识点总结主要集中在组织结构和...
第二天的培训,雷老师深入讲解了手机微课程的重构设计和讲授与点评,让老师们了解作为一名微课程培训讲师所需掌握的关键技巧。通过小组合作,老师们现场制作微课作品,从而深化理解微课的制作流程、设计原则和应用...
"互联网+"干部教育培训指的是利用互联网技术,尤其是移动互联网、云计算、大数据等,对现有的干部教育培训体系进行优化和重构,实现资源共享共治,互联互通,进而提升教育培训的效率和质量。 在传统干部教育培训...
总结互联网背景下的企业招聘模式重构,其主要表现在以下几个方面:拓展了招聘渠道,加强了线上招聘方式,重视了员工培训与发展。这些措施不仅提高了企业招聘的效率和准确性,还降低了招聘成本和员工离职率。展望未来...
结束语中,作者总结了研究的主要发现和建议,强调了组织重构和学习型组织创建对企业长远发展的重要性。附录部分提供了A公司组织管理的调查问卷和访谈提纲,为实际操作提供了具体工具。 综上所述,本研究从理论到...
总结 6 Spring的IoC容器 6 用户注册的例子 7 面向接口编程 8 (用户持久化类)重构第一步——面向接口编程 8 重构第二步——工厂(Factory)模式 9 重构第三步——工厂(Factory)模式的改进 10 重构第四步-...
5. **人力资源开发**:Smith在Warren建立Knowledge Center,提供员工培训和发展,以提升员工技能和知识,从而降低制造成本并提高生产效率。 【战略重构的效果】 这些改革措施带来了显著的成效。1993年,通用汽车...
总结来说,企业CRM平台重构是一个涉及多方面考量的复杂工程,涵盖了业务需求、系统设计、功能实现、项目管理等多个环节,其目的是通过现代化的技术手段提升企业的客户关系管理水平,为企业带来更高的效益。
在本篇的内部培训交流会的摘要总结中,还提到了培训的PPT和示例代码,它们被托管在github仓库上。这意味着,作为开发者,我们不仅能够学习到理论知识,还能够直接获得实践的案例和代码,以便更深入地理解和掌握重构...
【农村教师领雁工程班培训总结】 农村教师“领雁工程”是一项旨在提升农村地区教师专业素质和教学能力的重要项目。通过2012年温州市农村教师“领雁工程”初中英语班的培训,我们可以提炼出以下几个关键知识点: 1....
【标题】: "学校语文90学时培训学习总结" 本次的90学时学校语文培训,主题围绕“三思而行语文课改十年之批判与重构”,旨在深入反思过去十年的教学常态,寻找语文教育的新路径。这次培训的开展,为教师提供了一个...
《传统应用到云原生应用的重构》是一...总结,从传统应用到云原生应用的重构是一个深度整合技术、流程和文化的变革过程。它要求企业具备敏捷开发、自动化运维和持续创新的能力,同时也为企业带来了显著的业务价值提升。
本次培训引入了方案教学和瑞吉欧教学两种模式,强调了以儿童为中心,注重实际操作和经验重构的重要性。方案教学关注儿童内在动机,通过“从做中学”的方式促进儿童全面发展;瑞吉欧教育则强调儿童的主动性、创新性和...