梦断代码阅读笔记之五

第四章乐高王国

模块化和组件化是软件人员的梦想,谁都想把几个模块插到一起就可以完美的运行并完成任务,就像乐高积木一样,找到想要的组件便能组装成想要的东西。

但想要走向这种编程乌托邦之路的程序员大多都发现此路不通。如果软件组件像乐高积木块,那么它们就该细小、不能再分、可被替代;作者在文中说到“它们互相之间应该更为相像”;它们应该“只能与有限几种相邻组件拼合”。然而,软件工程师们却发现,“真实程序中的组件在尺寸上、功能上以及与其他组件的可拼合数量上差异甚大”。它们“大小不定,就像不规则的形体,不像乐高积木“。

可以运行的模块通常不能与自己想写的程序配合工作,好的源代码由于商业利益也不太容易找到,程序员只能自己另起炉灶,搭建自己的模块,但结果还是一样,做出来的东西难以让他人共享,这个现象周而复始,不断地在多个程序员身上上演。可复用软件之梦有一个悖论:几乎总能找到一段满足大部分需要的代码。但这些拿来的代码所不能做到的部分,恰恰是项目与众不同的创新之处----也是创建这个项目的出发点。

posted @ 2022-06-07 22:55  灰幕  阅读(21)  评论(0)    收藏  举报