统一对象消息编程(9)—对象消息编程框架6-小结

      通过前面介绍可以看到,我们其实最终不过是建立了一个对象模型--TLBaseModule,因此标准对象消息编程框架其实就是一个标准对象模板,除了这个模板以外,没有其他约束和条件,工厂类与配置类等其他对象也是为这个标准模板对象服务的。通过这个模板而建立起来的对象,互相没有依赖、没有耦合和约束,互相平等,通过消息而进行互动。通过这些对象的组合而形成任意复杂的组织。比喻来说,这些对象就像人体的细胞,互相传递信息而形成复杂的器官。

   在这种模式下,编程更自由也更便利,后续案例可以看到。例如在我的web框架或应用框架编程过程中,之前没有严谨的设计和思路,完全是想到那就做到哪了。web框架完成后,我突然想怎么能让配置文件修改后自动生效呢,否则要每次重启程序。如果这时候改已经完成模块的代码,增加检测配置文件的功能将很麻烦。还不仅如此,有可能现在需要配置立即生效,以后不需要。或者随时想某个模块能实时动态配置。这根本不能通过代码修改来实现。于是我设计了一个配置文件监听模块,这个模块监只负责监听配置文件,包括监听自己的配置文件,对于某个模块文件改动,就给某个模块发送消息。以往在调试的时候有许多日志输出,经常发生我只想看某个模块的日志,如果更改日志配置文件则需要重启程序,非常麻烦,而且生产环境下也不允许轻易的重启程序的。配置文件监听模块监听日志配置文件的修改,可实时控制日志的输出。配置文件监听模块完全单独,只要在初始消息表中增加模块的启动就行。包括表的分表、缓存,也都是新增加模块,没改动原模块代码,可自由装卸钱,前面模块分析中提到过。

    这种消息对象的编程,不仅是便利,更重要是完全打破了以往的对象编程模式。分布性、微服务的概念已经没有什么意义。因为每个模块对象独立,对象之间不存在方法调用,只是传递消息,可以分布在不同的机器上。每个模块可以单独运作或几个组合,组合各种不同的服务。

      标准对象模板的建立也方便了程序设计的标准化。现代工业科技的发展离不开标准化,没有标准化就没有现代科技文明。在计算机软件领域,协议层面已经基本实现了标准化,如IP、TCP、HTTP协议,因为这些标准协议,我们才能在这基础上自由开发。但是在应用层层面标准化还差很远,导致每个组织、每个人都设计自己的东西,同一个东西有无数种设计。所谓学习编程到后来就是理解那些各种不同的设计。这是作为一个程序员很累的主要原因。在这个公司开发的对象、组件或学习的框架,到另一个公司也许就用不上。我认为应用层面的标准化,如对象、组件的标准化是软件领域的下一步要解决的问题。

    标准对象模板可以说是个对象标准,目前我们还没开始具体如何应用,下章通过案例来说明,理解了TLBaseModule的行为,那么应用非常简单,而且很有意思。

猜你喜欢

转载自blog.csdn.net/tianlong117/article/details/81463722