03重构卓越程序员修炼之道.docx
《03重构卓越程序员修炼之道.docx》由会员分享,可在线阅读,更多相关《03重构卓越程序员修炼之道.docx(8页珍藏版)》请在第一文库网上搜索。
1、重构一卓越程序员修炼之道高级培训班软件质量,不但依赖与架构以及项目管理,而且与代码质量紧密相关.这一点,无论你使用什么开发技术,都不得不承认.什么是好的代码?可以工作的,性能良好,不出bug的代码,就是好的代码吗?世界大师Bob大叔认为,软件代码应该基本3个职责:第1职责:运行起来所实现的功能,这是代码得以存在的原因.第2职责:它要应对变化,因为几乎软件需求都有变化,因此代码应该保证将来的修改尽可能的简单.第3职责:要和阅读它的人进行沟通,对模块不熟悉的人员应该能够比较容易理解.因此所谓好的代码就是,除了满足所有功能需求以外,还应该更好的支持易修改和易扩展,同时应该清晰准确地传递作者的想法.因
2、此代码质量与整洁度成正比,干净的代码,即在质量上较为可靠,也为后期维护,升级奠定了良好的基础.该课程给出了一系列有效的重构实践,并且以来自现实项目的正,反两面的范例.只要遵循这些实践,就能编写出干净的代码,从而有效提升代码质量.这是实践我们为上百家软件公司提供咨询服务得到的结果,这也是软件公司难以大幅度提高生产力的关键所在。然而很多企业的技术高管都在抱怨自己的技术人员:1、编程序效率太差,一个简单的功能,很久时间才能完成开发实现;2、不动脑,经常犯很多弱智的错误;3、代码质量很差,程序结构不合理;4、写了78年程序仍然没有程序的味道,而且还养成了许多坏的编程习惯;5、基本功不扎实,学习了面向对
3、象和设计模式,根本不会使用;6、难于适应需求变更,每次增加新功能都是浪费大量时间。如何提高代码质量,提高程序员的生产力?为协助国内软件企业的程序员快速掌握以上技能,我们讲师,结合多年国内外项目开发的实战经验,帮助大家学以致用,消除“知与行”之间的鸿沟。现将相关事宜通知如下:一、培训特色本课程注重实战,采用案例贯穿方式完成实践,收集了大量的真实案例,针对项目过程中技术人员常犯的错误进行了汇总,研讨,并最终形成培训教程。本次培训从程序员的基本编程思维开始讲解,通过大量的真实案例,贯穿了设计、编码、重构、单元测试,持续集成等整个软件生命周期过程,详细地介绍了重构需要注意的要点以及难点,这些知识都是培
4、训师十几年编程经验的总结。二、培训对象各类IT/软件企业和研发机构的项目经理、软件设计师、程序员,质量部门员工。对于重构技术怀有疑问和困惑,需要梳理解答的团队和个人,效果最佳。最好你简单了解重构基本概念,该课程假设你已经知道重构,只是困惑如何在项目之中应用.三、学员基础学员学习本课程应具备下列基础知识:了解JaVa/C#或者C+任一语言,具有面向对象基本概念如果你不重视代码质量,最好不要参加.本课程面向重视代码质量的管理者.如果你已经多年不写代码,最好不要参加,本课程面向一线还在编程的程序员/设计师/架构师如果你不认为写好代码是一件重要,困难并且有趣的事情,请你不要参加.本课程面向追求完美的程
5、序员.五、培训要点本课程主要包含以下几个方面的内容:1、 结合电信、电力、税务和金融等多个项目案例进行分析。本次培训所用案例均为真实项目案例,仅供课堂学术讨论,不得以任何形式发表或传播,复制等。2、 重构技术:软件并不是在一开始就可以设计的完美无缺,因此必须经过不断的重构进行改善,重构是实现优秀设计的一种重要手段3、 代码坏味道:介绍常见的糟糕的代码坏味道,以告诫学员,今后如何避免出现这样的拙劣代码。这是21条代码基本要求,是代码管理的最低要求,可以接受的底线.4、 代码管理:项目管理者和质量管理部门,如何组织代码评审,代码审查,如果通过代码评审,提高设计能力。5、 重构到模式:模式的应用是一
6、个渐进演变的过程,坏味道也不是一开始就出现的.如果在一开始就想到用某某模式,有时很可能导致设计过度.重构与模式有一种天然的关系.重构是手段,模式是目的,同时模式也为重构指明了方向和原则.通过案例分析设计模式是如何演进/重构出来的6、 单元测试:介绍如何使用XUnit进行单元测试,如何更高效地撰写bug更少的代码;如何发现bug的藏身之处以及如何清除bug;如何测试代码片断而不用牵连整个项目;如何利用XUnit简化测试代码;如何在团队中高效地进行测试,设计具有更好易测性的软件等等。7、 代码质量度量:结合和完善1ogiscope和McCabe两种软件度量体系,选取出依据软件程序代码的可量化测量度
7、量元,并通过测试不同型号的软件确定出模型参数,建立质量度量评估模型,有助于软件的量化评价,为质量管理人员了解软件质量水平、软件设计师改进软件程序质量,提供量化的客观依据.8、 代码静态分析工具:介绍业界已经在大量使用代码静态分析工具,以便在编码阶段就能够找出可能的编码缺陷。比如Java语言环境下的findbugs,Checkst1ye,PMD,javancss等9、 持续集成:介绍持续集成基本基本原则和工具,它增加项目可见性、降低项目失败风险的有效实践.也介绍了测试驱动、代码审查、数据库集成、信息反馈等实践和工具。10、 架构重构:由于软件应对需求变化的能力越来越差,通过重构架构进行软件重建的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 03 卓越 程序员 修炼