一直觉得自己写的代码比较混乱,思路比较不清晰,后来发现我经常把实现机制和逻辑写在一起,由于逻辑或者策略变化总比机制要快,所以很难再拓展。“表驱动”(大概是:把已经定义好的功能(机制)放进表中,实际策略另外写)让我第一次知道有这个思想。
摘自《Linux 设备驱动程序 第三版》开头部分
【作为一名驱动程序的编写者,你需要在编程所需的时间以及驱动程序的灵活性之间选择一个可接受的折衷方案。虽然用“灵活”这个词来形容驱动程序显得有些奇怪,但我用这个词实际上是强调设备驱动程序的作用在于提供机制( mechanism ),而不是提供策略( policy ) 。区分机制和策略是UNIX设计背后隐含的最好思想之一。大多数编程问题实际上都可以分成两部分:“需要提供什么功能”(机制)和“如何使用这些功能”(策略)。如果这两个间题由程序的不同部分来处理,或者甚至由不同的程序来处理,则这个软件包更容易开发,也更容易根据需要来调整。】
摘自《Linux 设备驱动程序 第三版》开头部分
【作为一名驱动程序的编写者,你需要在编程所需的时间以及驱动程序的灵活性之间选择一个可接受的折衷方案。虽然用“灵活”这个词来形容驱动程序显得有些奇怪,但我用这个词实际上是强调设备驱动程序的作用在于提供机制( mechanism ),而不是提供策略( policy ) 。区分机制和策略是UNIX设计背后隐含的最好思想之一。大多数编程问题实际上都可以分成两部分:“需要提供什么功能”(机制)和“如何使用这些功能”(策略)。如果这两个间题由程序的不同部分来处理,或者甚至由不同的程序来处理,则这个软件包更容易开发,也更容易根据需要来调整。】