接口和消息的问题(50分)

  • 主题发起人 主题发起人 everhappy
  • 开始时间 开始时间
E

everhappy

Unregistered / Unconfirmed
GUEST, unregistred user!
软件架构中一般都用到构件,构件之间的通信一般有接口和消息两种方式。
但是我感觉这两种方式在具体实现上没什么区别。
“使用者使用类的某个接口的时候就象是通知这个类型使用某个行为,就象是传递一个消息给他一样,我们把使用接口称之为传递消息,而类被调用方法称之为接受消息。 ”
但是为什么会把消息和接口分的这么清楚?是不是消息和操行系统中的消息一样,每一个构件有一个消息的队列?这样岂不是增加构件设计的复杂度?
刚学软件工程,所以有些问题不懂,想请各位解答一下。
 
严格的语义上的斟酌就免去了。
顺着你的描述,接口一般应该指:
Interface.Do();
Interface.Execute();
Interface.Get();
等等这些接口方法
而消息一般说的是什么呢?如果以 COM 构件为例说明,一般应该指:
Interface.OnDelete();
Interface.OnCreate();
Interface.OnBeforeSubmit();
Do、Execute、Get 这类,其逻辑是在构件内部实现的。
OnDelete、OnCreate、OnBeforeSubmit 这类,是一种接口约定,其具体逻辑是由构件客户来确定的。
因此,如果用普通常说的“方法和事件”来转述你所谓的“接口和消息”可能更加直观。
 
谢谢cpy7406的答复。
如果我们现在发一个mCreate消息给com组件,com组件就会调用onCreate()方法。那么这个com组件是不是有一个存放像mCreate这种消息的消息队列?
希望您再回复
 
谢谢
明白什么意思了
 
后退
顶部