1.我在读到第2页时,我看到这一段文字:阿超要不断地根据客户们的要求修改完善本身的程序,咱们能够看出,客户对阿超的要求从一个简单的程序,扩展到一个知足各类功能的应用软件,再扩展到一个能保证服务质量的软件服务,有这个问题 ,软件团队的成员天天都在修改各类源代码,怎么保证软件在修改的过程当中不断提升,至少要维持之前的质量?我查了资料,有这些说法: 高效的软件开发团队是创建在合理的开发流程及团队成员密切的合做的基础之上的,成员共同的迎接挑战、有效的计划、协调和管理各自的工做以致完成明确的目标。 据个人实践,我获得这些经验:软件是一个根据客户要求不断跟新,与时俱进的,做为软件工程的学习者,我应该认真的看待每个相关软件问题。可是我仍是不太懂,个人困惑是,那么咱们以前编写的那些软件就毫无心义了吗?php
2.我看了这一段文字现代软件产业通过几十年的发展,一个软件有一我的单枪匹马完成,已经不多见了,软件在相互的合做中完成,合做最小的单位是两我的,两个工程师在一块儿,作的最多的事情就是“看代码”,每一个人都能看“别人的代码”,并对发表意见。有这个问题 程序员写的代码是给人看的,仍是机器看的? 我查了资料,有这些说法:人在看,机器也看,但最终是人在看,咱们的代码要让旁观者看的“清清楚楚”,根据《计算机程序的构造和解释》(简称为SICP),这本书提到,代码是写给人看的,不是写给机器看的,只是顺便计算机能够执行而已。若是代码是写给机器看的,那彻底可使用汇编语言或者机器语言(二进制),直接让机器执行。我以为:高级语言(java,php等都算),之因此被称为是高级语言,是相对汇编和机器指令而言的,他们更加可阅读性,更加符合人类语言的阅读习惯。低级语言让人看起来很是吃力,不容易编写,因此产生高级语言,容易上手点,代码是写给人看的,因此要作到良好的编程风格,方便其余程序员阅读,维护。因此这点我很是感悟,这确实是一个有力的证据。代码的可读性很是重要:注释,空白对其,工整都是风格的提现。保持这些编程风格最终目的只有一个:方便人类阅读。诚然,就算你不按照好的风格来编写,编译器也能识别,经过编译。但基于可阅读性、方便维护考虑。程序员仍是要有良好的编码风格。可是我仍是不太懂,个人困惑是,代码量小的话,能够独自一人完成,但代码量极大的时候,则就须要多人协做完成代码的编写,那么,在人和人不同,在和别人合做的时候,要如何作到我的的表达观点的方式和思考的方式保持一致呢?java
3.第11章中,有下面这样一段内容 “5. 写好代码后,小飞对照设计文档和代码指南进行自我复审,重构代码。” 对于代码重构不是很清楚。我查了一些资料,都在强调着重构的好处,由于软件产品最初制造出来,具备良好架构的。可是随着时间的发展,需求发生变化,为了实现变动,不可避免的要违反最初的设计构架。通过几回修改后,软件的架构就千疮百孔了,并制约着新功能的实现等。最后新需求的开发成本会超过开发一个新的软件的成本,而致使这个软件的死亡。而重构在“软件系统的过程, 它不会改变代码的外部行为, 同时改善其内部结构。 这是一种严格的清理代码的方法, 它能够最大限度地减小引入错误的可能性。 本质上, 当重构代码时, 是在编写代码以后改进它的设计”可是我对于具体的状况依然不是很了解,重构是对于旧的架构进行修改,来知足新的需求,那是否只是使用如今积木(代码)搭建一个更漂亮更优秀的大楼呢? 什么时候应该进行重构呢?程序员