2006 (1)
2009 (52)
2019 (79)
2020 (55)
2021 (47)
2022 (258)
2023 (309)
经验里,遇到过状态机程序系统和event Object程序系统。
近来想了一下二者的比较。
状态机系统,以qt为典型。event object系统,以C++/javascript为典型。
现实世界是事物和相互关系的集合。描述这个集合用event-object系统是一种直接的方式。状态机系统是另一种等价表达。
1)一个系统,用EO表达,直接描述事物和事物间的关系就可以了。简洁、好开发好维护。
2)而用状态机表达,状态要用很多才能准确表达;一般从开发维护的可行性出发,会自然简化状态机,使用比理论上少得多的状态集合。简化状态机的方法之一,是使用全局变量表明各种全局状态。这使得对描述对象的理解和程序开发维护很困难。