【发布时间】:2012-01-15 21:50:37
【问题描述】:
据我了解,我的代码审查表明我的模块同时具有行为和状态,这到底是什么意思?
这难道不是面向对象编程的重点,而是使用函数直接通过逻辑电路对数据进行操作。我们选择使用一组精心设计的按键、开关和齿轮对这些封闭的黑盒(封装)进行操作。
这样的方案自然不会同时包含数据(状态)和逻辑(行为)吗?
我的意思是模块:一个真正的 Ruby 模块。
我设计了这样的东西:How to design an application keeping SOLID principles and Design Patterns in mind
并在我用来混入的模块中实现命令。
【问题讨论】:
-
你说的是 ruby 意义上的“模块”,还是编程意义上的“模块”?
-
是模块,就像在真正的 ruby 模块中一样。即模块学生def name end end
-
不看那个模块的代码就很难说什么。我猜评论者期望 Ruby 模块的理想行为是没有状态或状态很少。
-
抱歉不能显示代码,但我只是说不能有拇指规则吗?我们可以在一个模块中同时拥有或不拥有状态和行为。但请查看更新问题中的链接。