2009-07-10 2 views
4

Есть ли у кого-нибудь решение для базового компактного конечного автомата/автомата, записанного в коде Objective-C?Конечный автомат в объективе-C

Меня интересуют компоненты многократного использования, так что в FSM добавлены состояния и определены действия, которые используют классы классов многократного использования.

+1

так что вам удалось создать его? – abbood

ответ

0

То, что вы хотите, это двигатель правил ... странно, я был в состоянии найти только одну для Objective-C (BDRuleEngine) и довольно устарели:

http://eschatologist.net/bDistributed.com/index.html

Это может быть лучшая отправная точка, хотя, если вы не хотите что-то переносить.

+0

Нет, не ищите двигатель правил. Базовый FSM с многоразовыми классами - это то, что я хочу. Я написал один из примерно 200 строк C++ примерно в 3 классах. Надеясь, что кто-то уже закодирован в Obj-C. похоже, что больно это делать самому. –

+3

Почему один ответ, который вы сказали, полностью не совпадает с отмеченным? И почему вы не вернулись и не обновили это тем, что вы закончили? (Вид здесь значительно ниже его стоимости). – Rob

0

Я сделал это на Java. Могут быть перенесены ... В дополнение к компонентам многократного использования сам конечный автомат может быть определен в массиве (как данные), что делает его очень простым в использовании.

http://code.google.com/p/state-machine/

Если вы хотите, чтобы попытаться портировать его, я мог бы помочь.

+0

Отлично. Я уже написал один в C++ для университетской игры, которую я написал. Я посмотрю на тебя. –

+0

Хорошо, это похоже на большой проект. В этом случае я буду занят в течение следующих нескольких дней, и мне придется взглянуть на него потом. –

0

Я просто разместил класса на основе Objective-C Finite State Machine на Github. Это не так много, что он имеет классы повторного использования, поскольку он предоставляет протоколы и абстрактные классы для повторного использования других классов. В настоящее время я использую это в проекте, у которого уже есть сетевые объекты REST API, которые действительно должны быть организованы как конечный автомат. Я изменил суперклассы из NSObject для наследования с конечного автомата, состояния и нескольких других методов, и я мог бы реорганизовать этот код как детерминированный конечный автомат.

https://github.com/StCredZero/SCZ-ObjC-StateMachine

Смежные вопросы