Bạn có thể đọc this question nơi tôi hỏi về kiến trúc tốt nhất cho một ứng dụng máy cho một câu chuyện nhỏ, mặc dù nó không hoàn toàn cần thiết để giúp tôi với câu hỏi này.Máy nhà nước hữu hạn có nên sử dụng máy hữu hạn "lồng nhau" không?
Sự hiểu biết của tôi (đặc biệt cho việc triển khai) của Máy hữu hạn của Tiểu bang là hơi trẻ và có thể thiếu một chút, nhưng tôi đang thực hiện ứng dụng này như một, và tôi có một nơi mà tôi cần phải có FSM lồng nhau. Về cơ bản, máy có một vài trạng thái mức cao (Cold [aka vừa mới bắt đầu], Homing In, Setup, Ready to Run, Running, Reporting, Reseting) nhưng khi máy chạy nó cần phải có FSM nhỏ cho riêng nó (Đang tải Lense, Định vị cạnh, Đo Wedge, Đo tròn, và Hoàn thành [có thể là một số chi tiết trong đó]).
Câu hỏi của tôi là: Tôi có nên xây dựng trong khả năng có "trạng thái lồng nhau" trong đó tiểu bang có thể có danh sách tiểu bang và hệ thống có thể nhập các tiểu bang đó và các tiểu bang đó có thể trở về trạng thái gốc không? Hay tôi chỉ nên đặt một triển khai FSM bên trong trạng thái Đang chạy và giữ chúng dưới dạng hai FSM riêng biệt? Hay bạn nghĩ tôi đang làm hay nghĩ gì đó câm và nên suy nghĩ lại?
Suy nghĩ, đề xuất, phê bình và tư vấn đều được hoan nghênh.
trạng thái lồng nhau là tốt, IMO. Bạn có chắc chắn bạn có nghĩa là homing và không mài giũa? – Beth
Có, homing. Giống như tìm vị trí nhà. –