《梦断代码》读后感2
当今世界,软件已经成为当今世界不可或缺的一部分。而《梦断代码》一书记录的是作者罗森伯格对OSAF主持的Chandler项目进行田野调查,通过Chandler开发过程来揭示软件开发过程中一些根本性的大问题。
第四章作者将其命名为乐高王国。卡普尔很注重前台的效果,着重于如何体现Agenda之魂。而后台工作总是处于迷宫。人们梦想把做软件变成流水线式的工作,他们长企盼标准化的插件。这种梦想被称为“乐高假设”:“未来,程序将由可复用的部件组合而成。软件部件将在全球范围内提供”但又很快被研究指出此路行不通,但尽管经历失败,乐高之梦仍然在现代编程史上留下长长的影子。开源式开发和互联网理所当然的开始改变习惯。Google缩短了找东西所需要的时间,像Perl和Python这样的编程语言也提供了大量的代码。
管束奇客和狗,作者从管束狗上得出管理软件项目的共同点:做交易。即选定一个首要目标,以为按时完成的程序员。在软件世界里,多数选择都会归结为令人神伤的三向交易,其被乐天派称为“质量三角”,被悲观派称为“不可能的三角”。任何一个工程领域做久了,都会遭遇痛苦,但是在软件工程里,这种痛苦更甚。“奇客”一词用来描述那些与计算机沟通易于与人类沟通的人,其专注于己事的人,追求技术和梦想、不融入主流社会的人。
搞惦设计方案,在为本书做调研的后期,作者为了避免失败设计了一套备用方案,第一步把劳动果实收集到一个大文件夹里,不小心删了之后找不到,冷静下来之后想起来还有个撤销命令。卡普尔认为,软件设计不仅只是在程序代码之上覆盖一层诱人的图形。它是一种设想用户需求并在软件结构中满足这些要求的创造性基础工作。做项目要从小处起步、压抑自己的野心、考虑细节并永不幻想宏大图景。
细节视图,2004年OSAF发布了Chandler0.3版,包括了CPIA的工作版和更成熟的资料库,但只是满足了可能对卡普尔及其团队进度好奇的外部软件开发者们的兴趣。这也意味着原来为达此目的而放任设计组自行工作的应用组开发者们开始渴求一张更彻底、更接近最终需要的Chandler外观和行为的路线图。规格是每个成功许愿所必须遵守的东西,所以在编写规格说明就要十分当心。在做新程序时,程序员首先就要为程序使用的变量和对象命名。机器内存要求在变量名和内存地址之间存在一一对应关系。
代码主要是给人看的,所以在写代码时要规范原则:简明,易读,无二义性。代码要有相应的缩进,要用括号来表逻辑的优先级,变量要用简单的英文单词及注意大小写,注释也是代码必不可少的一部分。当你的代码写完之后还要进行代码复审,最好复审的形式就是同伴复审。如果是自己复审的话,很容易受到先入为主的观念影响,自己找不到问题所在;如果是团队复审的话,比较麻烦的,因为需要找到所有人都空闲的时间出来。在我们平时课上的一些测试,自己写完后,老师也会要求我们进行同桌复审,我觉得这是很有效的检查错误的一种形式。过去一直在写代码的时候都是以自己为先,怎么方便自己怎么来,如果一直这样,那么写这个代码过了很久之后都看不懂自己写的是什么,而且别人也不会看懂。所以以后写代码的时候,缩进、大小写、注释是一定不可少的。