代码大全2
在软件工程中有很多形象的隐喻,描述了软件领域中各种特定的现象和事物。例如“病毒”、“特洛伊木马”、“蠕虫”、“臭虫”、“逻辑炸弹”、“崩溃”、“致命错误”等等。像这样生动活泼的隐喻还可以描述更加广泛的现象。借助这些隐喻,我们能更深刻地理解软件开发的过程。
隐喻是十分重要的。作者提到“重要的研发成果常常产生自类比。通过把你不太理解的东西和一些你较为理解、且十分类似的东西作比较,你可以对这些不太理解的东西产生更深刻的理解。这种使用隐喻的方法叫做“建模”。”
那么建立模型有什么好处呢?
作者给出了下面的阐述“建模的威力在于其生动性,让你能够把握整个概念。它能隐隐地暗示各种属性、关系以及需要补充查证的部分。”
那么什么是好的隐喻呢?
“一个好的隐喻应该是简单的,它与另一些相关的隐喻联系密切,且能够解释大部分实验证据及其他已观测到的现象。”
但是由于软件工程还是一门很年轻的学科,它还没有拥有一套标准的隐喻。我们对隐喻有多理解,也就决定了对软件开发有多理解。
隐喻就像是一盏探照灯,它不会告诉你去哪里寻找答案,而是告诉你如何去寻找答案。我们应该使用隐喻提高我们对编程问题和编程过程的洞察力:用它来帮助我们思考编程过程中的活动,想象出更好的做事情的方法。即是加深我们对编程的理解,能够更快的写出更好的代码。
在软件开发中一定要注意“三思而后行”。
准备工作十分的重要。准备工作的中心目标就是降低风险:一个好的项目规划者能够尽可能早地将主要的风险清除掉,以使项目的大部分工作能够尽可能平稳地进行。准备工作倾向于集中改进需求分析和项目规划。
一旦确定“构建”的基础已经打好,那么准备工作就转变为针对特定“构建”的决策了。
首先是选择编程语言。用来实现系统的编程语言与自身的利益密切相关,因为从“构建”的开始到结束我们都会“沉浸”在选择的语言中。研究表明,编程语言的选择从多个方面影响生产率和代码质量。
再是编程约定。编码约定的细节要达到这样的精确度:在编写完软件之后,几乎不可能改变软件所遵信的编码约定。
再就是“在技术浪潮中的位置”和“选择主要的构建实践方法”。
浙公网安备 33010602011771号