“虽我之死,有子存焉;子又生孙,孙又生子;子又有子,子又有孙。子子孙孙,无穷匮也。而山不加增,何苦而不平?”——《愚公移山》,《列子·汤问篇》在本书开头,作者用愚公移山为引子,引出编程精要.作者从编程的结构说起,”顺序,选择,循环”.实际上也是如此,程序执行的顺序基本是以上结构(除了goto语句).记得当初刚刚学习编程时,每每遇到程序的运行结果和预料不相同时,就会使用调试的方法看代码执行的顺序,然后找到错误.写出一个程序,首先要理清程序执行的顺序,你想要让程序执行的顺序.作者强调,”所谓编程实际上是把一件事情交给计算机去做,你认为这件事该如何做,就用“程序语言”的形式描述给计算机。如果你原本就不明白如何去做,那么你也不要期望计算机去理解你想要做什么。所以编程的第一要务是先把事情分析清楚,事件先后的逻辑关系和依赖关系搞清楚,然后再去代码实现。”我们面对要求在开始动手编程之前,要花费一定时间思考,思考也是编程的一部分,思考加快编程的时间,让编程更有效率。我认为在我们这个专业,这个大道就是代码的灵魂,是程序员在设计代码时的逻辑思路,编程这个过程实际上是有电脑来完成,而程序员的工作就是通过编码告诉电脑怎么去完成这个工作,在这个工作中有什么规则。
另一部分让我感受颇深的是作者讲解管理团队的部分。如今我还没有自己的团队,但我想我到时候会组一个队伍,我也很期待有几个人我们一起写一个项目,但是,一个队伍完成项目的过程中会有很多问题,比如出现分歧怎么办,比如任务的具体分配,到底是弹性好些,还是应该是刚性的。书上举了很多案例,供人参考。做团队需要先做制度,制度决定管理。工程开始前需要明确的角色确定。团队内部的管理需要站在第三方来观察,清晰的了解了规律并分析。想要团队内人员的角色发生转换时,要先让他有思想的转换,具有相关意识后在考虑任用的问题。
”在很多的时候,我所听到的沟通,都是一种形式。例如与客户吃饭或者打回访电话。其实沟通是具有目的性的,如果在没有明确目的的情况下与客户沟通,那将是浪费客户和自己的时间。这种目的,可以是了解项目的讯息、挖掘潜在的项目……最末了,才是交流感情”,书中着重强调了这个问题。在与客户沟通时尽量使用客户能够理解和接受的方式,不要一味追求UML什么的,效率才是在沟通中要去追求的。在需求阶段制定与客户的沟通计划,确立项目的实际目标及远期方向。做项目留下历史记录为项目的后继开发、维护提供可能。