返回首页


简介
这个通用的行为建模工作带来了你。行为建模
所以你设计未来的命中。COM像。实施一个强大的多用户应用程序的关键之一,是从行为建模的角度来看,要充分认识它。此外,你必须决定系统应该如何行为。行为建模是什么呢?
行为建模是当你认为你的想法状态和转换。这需要确定您的软件或组件有可能被英寸此外,在较高的水平,抽象哪些事件可能导致您的软件或组件被国家之间的变化,有趣的国家。困惑了吗?你做了几个例子后,你会很快得到这个精神运动的坑。
行为建模也称为状态建模,状态机和状态转移矩阵。为什么模型的行为呢?
"行为建模是最小的逻辑抽象的形式,非常适合到人的心灵认为和允许一个了解复杂的系统,本质上增加一个啮编自己的能力来解决困难的难题"??丹尼尔斯蒂芬规则
弱智建模你的想法的行为,帮助您更好地了解您的系统或其组成部分将如何对事件做出反应。这里有一些原因,掌握行为建模防止在您的软件竞争条件。在您的软件开发,避免含糊不清的领域。帮你问正确的问题,给您的客户。设计的大型多用户解决方案,这是一个关键的技能。绘图的行为模式
虽然你应该一般只是行为建模或任何软件的设计,在你的脑袋,有些时候,同时学习如何行为模式,它有助于在图中绘制出模型。绘制的行为模式的组件国家
,为国家,您简单地画一个框的状态,这里面的名称。国家的名称应提醒你发生时,该国遇到什么样的国家行动。转型
代表通过绘制一个箭头,从开始状态到目标状态的过渡,并注意什么样的事件会导致状态改变。例子
这里是一些例子,说明如何绘制你的行为模式。这里的目标是掌握在你的脑袋的行为建模,但吸取他们首先会帮助你到达那里。子弹例如方案
一旦创建它是步枪子弹。如果尚未发射的子弹可以投入的步枪。一旦在步枪,它可以采取回用手工或解雇。型号
步枪例如方案
一旦创建步枪是其安全性是关闭的,它被卸载。只要步枪是不被解雇的安全,可以上推和关闭自由。步枪也可以装载和卸载自由,只要它不发射。步枪只能发射时安全关闭,并加载。一旦失去其子弹,成为卸载和安全仍处于关闭状态,直到它推步枪发射。型号
尝试建模自己的场景
下面是一个简单的场景建模自己尝试。首先大致确定的状态和转换。然后重读它,并检查您的行为模型的正确性:
杰克希望你来设计他一个说啮篁ello??或啮缓帽子是这样的吗??实践行为建模
你可以在实践行为建模。掌握行为建模
行使主行为建模是读您最喜爱的小说,并不断突破的信息,在你的脑袋状态和转换你读。行为建模是如何比较的OOP?
行为建模是一种更清楚地去思考问题。 OOP是一个被认为是有用的,所谓的OOP在计算机编程语言中常见的构造集合。有各种形式化的软件分析图,这被认为是有用的编码面向对象编程时,这些包括UML,xUML和Shlaer梅勒。掌握行为建模是使用这些方法中的任何先决条件。然而,仅在你的腰带有行为建模工程师最大型项目往往是足够的。设计模式行为建模比较如何?
设计模式是常用的数据模型,与预期的行为。通常情况下,设计模式,将分享非常相似的行为模式,但有许多不同的用法。类似的行为建模,设计模式有助于在更高层次上的计算机程序员沟通架构。相比之下,行为建模笼统分解成状态和转换软件的设计,而设计模式是数据模型,在许多不同的应用中重复使用相同的庄园内的重点。因此,啮缄attern??啮范esign模式",如果你看看从设计模式的角度来看,你将有一个相当简单的数据模型和一些有关状态转换规则的行为建模。下面是什么编码实施行为建模会看起来像从设计模式的角度:状态机的设计模式图/ UML
叙述
状态机的设计模式包括的对象保持状态转移矩阵和当前状态的指针。状态转移矩阵的尺寸与所有可能的状态所有可能的事件。状态转移矩阵,拥有一个指针到下一个状态,为每一个可能的状态和事件对​​。当对象得到一个事件,它决定下一个状态是什么它当前的状态和状态转移矩阵所施加的逻辑。它然后再重新点的当前状态的指针状态转移矩阵的新的状态,从而完成一个过渡。
这是一个实现。你可以选择不使用状态转移矩阵,只需使用您的代码中的if - then逻辑来保持状态机。行为建模和代码是两个完全不同的事情。行为建模是,当你弱智打入状态和转换您的问题,你怎么代码的状态逻辑是完全取决于你。在90年代,有一些工具啮编和2000年年初啮编,高层次的行为模型图转换成编码的设计模式和生成的代码。现在,您可以使用设计状态机的同时,而他们正在测试与事件没有任何引导时配置或代码生成(专利申请中:丹尼尔斯蒂芬规则),的状态转换机制。它的工作原理很多像RDBMS创建表,而用户发送的SQL对付他们,反而是,它可以让你同时创建状态和转换,而用户发送的事件对你的行为模式,造成过渡。这项技术的一个例子Hexbot.com。成千上万的用户行为模式为Hexbot.com创建啮编记数据同时当用户发送事件(聊天)Hexbot.com调用状态转换。

回答

评论会员:ciacia 时间:2011/12/02
这样一个内容丰富的文章。我能获得更多的detials一些有关我们如何才能实现这种状态tarnsition矩阵,使用C#代码。
感谢
:eggie5 | |您好,
您在www.steed.de兴趣看有一个一个的StateMachine设计师
Lite版本在Visual Studio集成。

问候MARC


"
评论会员:abhadresh 时间:2011/12/02
感谢我可以用教学我的OOA类
评论会员:杰夫Varszegi 时间:2011/12/02
NASSTY丹尼尔无偷容许的!你为什么不写自己的文章????!!?!!
评论会员:桑德曼 时间:2011/12/02
伟大的正义,每一个"齐格'!!:{ BR}

/ \ | _ EXE的GG
评论会员:丹尼尔斯蒂芬规则 时间:2011/12/02
是什么意思

AB