程序库,面向对象语言——unix编程艺术学习笔记

1.1程序库

强烈倾向于把程序分解成有胶合层连接的库集合,特别是共享库。

使用库来达到c语言的模块性。

库分层的一个重要形式是插件。

实例分析:GIMP插件

1.2UNIX和面向对象语言

Unix的模块化传统就是薄胶合层原则。也就是程序底层和顶层之间的抽象层越少越好。原因可能是因为c语言建立抽象层非常困难。

OO语言鼓励具有厚重的胶合和复杂层次的体系。如果问题域确实很复杂,这种方法可能有用,但是如果用复杂的方法处理简单的问题,结果适得其反。

OO语言有让程序员进入过度分层陷阱的倾向。

如果你知道自己在做什么,三层就足够了;如果你不知道自己在做什么,十七层也不够。


你可能感兴趣的:(unix)