梦断代码读书笔记 6

Posted wrf1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了梦断代码读书笔记 6相关的知识,希望对你有一定的参考价值。

第十章 工程师和艺术家

编程是工程还是文学?是科学还是艺术?

高德纳写的书名叫《计算机程序设计艺术》,他在1984年获得图灵奖时发表感言说:“计算机编程是门艺术”。写《计算机程序设计艺术》这本书他花了十年,写TeX和metafont程序设计没写到也花了近10年。他宣称,写软件要比写书“难多了”。

编程确实是门艺术,它与唱歌,画画相同,都是在创造人类的文明史。正如搭建一座房屋,只有创新才会给我们带来愉悦,一成不变只会落于人后。

第十一章 通往狗食版之路

吃自己的狗粮,这种思路确实有助于提升软件质量和用户体验,想想连自己都不屑一用的软件凭什么去折磨用户呢?

良好的用户体验确实是一个软件成功的重要原因。没有人用的软件是一款失败的软件。

梦断代码读书笔记

阅读时间:2018年2月5号

这次主要是读完梦断代码的的前4章之后,记录下来所得到的感悟。

不知道是不是因为没有经历过真正的软件设计,我在读梦断代码的时候感觉到明显的吃力,尽管已经读了大概有4章,还是没有从这4章中提取出一个大致的主线。如果说有的话,就是关于两点:1.软件是个黑洞,无数的公司,企业全都栽在了这个上面;2.关于Chandler的设计,作者好像是以这个软件作为一个模型来揭示关于软件行业的问题。

首先,来说说第一个问题。在没有接触这个之前,我确实是没有想过,软件会是很难,确切的说是软件工程很难。因为软件很难这句话其实是有歧义的。似乎每个人都可以设计一款软件,在借助一个very easy的编译器,实现一个简单的操作(当然复杂的操作可以由专业人士来实现)。总之,如果单论一个软件,其实不难。最为困难的是,木有足够的资源和时间可以浪费。毕竟就算没有资金的限制,没有股东们一看无法盈利就掐断供给的行为,须知人的需求也是在不停的改变的。没有人会为了一个工程等到海枯石烂,而没人用的工程本身就没有价值。

为了实现软件的实效性,先人做了很多的探索。就书中观点,依次是布鲁克斯定律:“往已经延误的工程中填补人力,只能让工程继续延误。”李纳斯法则,“低成本,接入互联网这样的网络,让开发者能够迅速建立可信的沟通通道。储存可以被开放访问的共享知识和代码池水;形成良好的合作风气,尽快的增加合格成员”。两个相反的观点。也有人提出说等级化的管理才是控制桀骜的程序猿的最佳途径。当然,就现在的情形来看,现在的企业家很明显采取的是李纳斯法则所述的观点,不过结果依旧不怎么尽如人意,在后面,书中列出了完成工程的比例,依旧有超过三分之二的软件没有按时按照要求交付。这是对人的管理。

至于对代码的管理,也分出了两个观点:一种就是大教堂式的开发,也就是传统的开发模式,封闭自己的源代码,只让固定的人看到自己的源代码。这样做的优点很简单,保护源代码的版权,就能保证自己的产品的收益。并且能够按照一个指定的方向发展,不大会偏离方向,集中力量只做一点。至于缺点也很明显,没有别人看不到源代码的情况下,只能等待开发的公司自己更新版本,修复bug才能让自己的软件,或者依赖于该软件的软件重新运行。同时,几个人的团队总是比不上所有的人都能参与开发出来的软件,因为相互之间的交流可以诞生思想和灵感。

另一个也是我比较喜欢的一种,那就是代码开源(尤其是对于我这样的小菜鸡来说,代码开源真是太重要了,可以学到很多)。这个优点我就不多说了。

最后呢,还有一个小点,那就是在agenda之魂中有一个非常重要的观点,那就是先扔进计算机,延后处理。也就是用户可以随意输入数据,然后按照用户自己定义的方式进行查找,这个功能我感觉到现在还是一种bug级别的应用,简直不是给人用的。

以上是关于梦断代码读书笔记 6的主要内容,如果未能解决你的问题,请参考以下文章

《梦断代码》读书笔记1

梦断代码读书笔记

《梦断代码》读书笔记01

《梦断代码》读书笔记02

梦断代码---读书笔记01

《梦断代码》读书笔记