state-machines相关内容

是否有适用于Java的Harel Statechart DSL工具?

我正在寻找一种了解DSL的工具,我可以在其中定义生成Java代码的状态图,或者DSL中的状态图可以按原样运行。理想情况下,该工具应使用Java编写,并且必须通过Harel Statecharts(或等效的UML 2状态机)的定义来支持上层和正交区域。或者,用这种DSL编写最好的库或工具是什么? 解决方案 Yakindu看起来不错: http://www.statecharts.org ..
发布时间:2018-12-29 19:15:08 Java开发

如何在java中创建一个简单的状态机

我目前正在学习java,并想知道如何以OO方式控制状态。我实现了一个Pong应用程序。如果我想要游戏和菜单等多个状态,并且这些状态中的每一个都必须执行start,stop和run我将如何实现这一点以及如何在这些状态之间切换。 我知道我可以简单地提出一个很大的转换声明,但实现这个的最佳方法是什么? 我希望能够在游戏状态下切换到菜单状态,反之亦然。 import java.appl ..
发布时间:2018-12-25 21:45:55 Java开发

Haskell中的有限自动机

在Haskell中表示有限自动机的好方法是什么?它的数据类型如何? 在我们学院,自动机被定义为一个5元组 (Q,X,delta,q_0,F) 其中Q是自动机状态的集合,X是字母表(这部分甚至是必要的),δ是从(Q,X)和返回状态/ -s(在非确定性版本中)采用2元组的转换函数,并且F是接受/结束状态的集合。 最重要的是,我不确定什么类型的 delta 应该有. ..
发布时间:2018-06-04 15:52:09 其他开发

使用pluginaweek的state_machine,我可以在事件期间引用activerecord对象吗?

我试图实现将对象转换为挂起状态的“挂起”事件。但我需要能够“取消暂停”,并返回到以前的状态。我在模型中添加了previous_state字段,但我看不到如何在事件块内部访问它。 这是我试图实现的基本逻辑: 事件:暂停执行 owner.previous_state = self.state 过渡[:new,::旧] => :暂停 结束 事件:取消暂停执行 过渡:暂停=> owne ..
发布时间:2018-04-21 16:04:26 其他开发

面对无阻塞I / O时如何设计状态机?

我使用的Qt框架默认情况下是非阻塞I / O来开发通过几个网页(网上商店)浏览的应用程序,并在这些页面上执行不同的操作。我将“特定网页”映射到我用来浏览此页面的状态机。 此状态机具有这些转换; 连接,LogIn,Query,LogOut,Disconnect 和这些状态; 启动,连接,连接,登录,登录,查询,QueryDone,LoggingOut,LoggedOut,Di ..
发布时间:2017-08-31 07:00:51 C/C++开发

有限状态机和FSM信令

对于具有原生语言(因此没有FSM生成工具)的语言的建议支持状态机开发和执行和传递消息/信号。这是为了电信,例如执行这种复杂程度的FSM。 我已经考虑过Erlang,但是会喜欢一些反馈,建议,指向教程,替代方案基于Java的框架。也许斯卡拉? 仅开源。我不是在寻找UML或正则表达式相关的解决方案。 由于这是为了实现电信协议,FSM可能是不平凡的。许多状态,许多过渡,基于信号,输入约 ..
发布时间:2017-08-27 12:31:17 其他开发语言

基于Java枚举的状态机(FSM):传递事件

我在我的Android应用程序中使用了几个基于枚举的状态机。虽然这些工作非常好,我正在寻找的是一个建议,如何优雅地接收事件,通常从注册回调或事件总线消息,到当前活动状态。在有关基于枚举的FSM的许多博客和教程中,大多数都提供了使用数据的状态机(例如解析器)的示例,而不是显示这些FSM是如何从事件驱动的。 $ b $我使用的典型状态机有这样的形式: private state mState ..
发布时间:2017-08-23 21:03:50 Java开发

国家机器实施

我正在尝试建立一个棋盘游戏,而且看起来就像使用状态机一样。 我知道了状态模式,但我确定必须有其他方式来实现状态机。请让我知道..如果你知道任何文章或书籍,其中包含有关不同实现的详细信息(各自的权衡),请指示我..谢谢 解决方案 查看 Ragel 。 ..
发布时间:2017-05-16 18:20:31 软件设计

.NET的状态机框架

我的工作中有一个系统,基本上是一个消息驱动的状态机。它接收各种类型的消息,根据消息查找一些上下文/状态,然后根据消息和当前状态决定要做什么。通常结果是发送出系统的消息。 在.NET中是否有实现状态机的好的开源框架?我研究了Windows Workflow的最新版本,似乎是一个很好的选择;然而,我有一些关于默认持久性机制(我们需要报告状态转换数据),可测试性以及WF团队在我们说话(据称))重新 ..
发布时间:2017-05-14 21:12:07 C#/.NET

有限状态机模式 - 一个真正的模式?

所有的代码都可以通过应用状态机模式来改进? 我正在开发一个可怕的,可怕的,错误的,破碎的意大利面码。 我从这个博客复制了 Martin Fowler的示例状态机器代码并将整堆废物转化为一系列陈述。 从字面上看,只是一个国家,事件,过渡和命令的列表。 我不敢相信转型。代码现在很干净,可以工作。我当然知道国家机器之前,甚至实施了 ,但在Martin Fowler的例子中,模型/配置的 ..
发布时间:2017-05-14 10:37:07 软件设计

C状态机设计

我正在以混合C和C ++编写一个小项目。我正在我的一个工作线程的核心上构建一个小型国家机器。 我想知道你是否会在SO上分享你的状态机设计 注意:我主要是尝试了 UPDATED:根据SO上收集到的所有好的输入,我已经解决了这种架构: 解决方案 之前设计的状态机(C,而不是C ++)都已经归结为一个 struct 数组和一个循环。结构基本上由状态和事件(用于查找)和返回新状态 ..
发布时间:2017-05-12 17:51:36 C/C++开发

我的UserFriendship创建操作不保存user_id和friend_id

我使用'state_machine'gem。 一旦我创建一个新的UserFriendship,user_id和friend_id不保存。我甚至尝试通过传递user_id和friend_id直接在控制台中手动创建友谊,但仍然这些两个变量不保存即使友谊在数据库中创建,朋友和用户不保存。 UserFriendship模型: class UserFriendship ..

向C ++语言添加statemachine支持的建议

最近,作为我工作的一部分,我一直在学习IBM Rhapsody,并使用它从UML生成C ++代码。 昨天,可能很酷,想想添加状态机支持我的C ++编译器,所以我在这里记下了几点注意: http://ellcc.org/wiki/index.php/State_machines_and_Active_Classes 我的动机是: 这似乎是一个很酷的想法。 编译器可以做更好的语义检 ..

UML状态图中的转换:更好地使用触发器或保护?

在UML状态图的设计中,我似乎可以选择使用触发或保护逻辑来实现状态之间的转换。 那么哪个更好用呢?给定相同的逻辑转换,触发器的行为与警卫有什么不同? 根据特定的工具可能有不同,或者UML标准严格定义了两种方法的行为 解决方案 我目前使用Simulink Stateflow设计状态机。 是一个事件事件,可启用转换, ,而警戒是条件,必须评估为true才能继续转换。 还 ..
发布时间:2016-11-20 18:47:39 其他开发

在Boost.Statechart中,state和simple_state有什么区别?

在使用Boost.Statechart实现状态机时,我遇到了一个问题,它试图从它的构造函数访问 simple_state 的外部上下文。 simple_state.hpp 中的注释告诉我: 当尝试从状态的构造函数中访问外部 //上下文时失败,该构造函数是* not * a // state的子类型。为了校正这一点,从状态而不是 // simple_state ..
发布时间:2016-10-25 15:54:55 C/C++开发

向C ++语言添加statemachine支持的建议

最近,作为我工作的一部分,我一直在学习IBM Rhapsody,并使用它从UML中生成C ++代码。 昨天,可能很酷,想想添加状态机支持我的C ++编译器,所以我在这里记下了几个笔记: http://ellcc.org/wiki/index.php/State%5Fmachines%5Fand%5FActive%5FClasses 我这样做的动机是: 这似乎很酷的想法。 当 ..