ãœãããŠã§ã¢èšèšã«ãããç¶æ 管ç
ãœãããŠã§ã¢èšèšã«ããã倧ããªããŒãã§ããç¶æ ãšç¶æ 管çã«ã€ããŠãŸãšãã.
ããããStatusãšåŒã°ãããã®.
ðç¶æ (èšç®æ©ç§åŠ)
èšç®æ©ç§åŠã«ãããç¶æ ãšã¯, å¿ èŠãšãããèšç®ã®éäžçµæãå«ã, å€ã®æç³»å.
ç¶æ ã®å°å ¥ã«ãã£ãŠ, ããã°ã©ã ã«æéã®æŠå¿µãäžãã.
ðç¶æ 倿°
ããã°ã©ã ã§ç¶æ é·ç§»ã衚çŸããæãç°¡åãªæ¹æ³ã¯, 倿°ã«æå³ã®ããç¶æ ãå®çŸ©ããŠä¿åããŠç®¡çããæ¹æ³.
ðãã©ã°
flag. æãã·ã³ãã«ãªç¶æ 倿°ã¯, ä¿ã«ãã©ã°ãšåŒã°ãããã®.
ç¶æ ã¯on/offã®ïŒã€. ããã¯booleanã®å€(true/false)ã§è¡šçŸããããšãã§ãã.
ããããå ã ã¯åè·¯èšèšã ã£ããããŒããŠã§ã¢ã¬ãžã¹ã¿ããçµèŸŒã¿éçºã§ã®å€æ°åã«ãªã£ãã®ããš.
ðã¹ããŒããã·ã³
ç¶æ 倿°ãå¢ããŠãããš, è€éãªå€å®æ¡ä»¶ã§ãã°ãçã¿ããããªã£ãŠãã. ããã§ããŸãç¶æ 倿°ã管çããæ¹æ³ãšããŠã¹ããŒããã·ã³ãçšãããã.
see more: ðã¹ããŒããã·ã³(FSM)
ðç¶æ 管çã©ã€ãã©ãª
ç¶æ 管çInsights
ããããã·ã¹ãã ãšã³ã³ããŒãã³ããšã¯
ã·ã¹ãã ã¯ããããã¢ããªã±ãŒã·ã§ã³ãé·ãéèµ·åããŠãããšãã«å¿ èŠãšãªãèã. ã¹ã¯ãªããããŠãŒãã£ãªãã£ã®å®è¡ã§ã¯å¿ èŠãªãã®ã . ãããã¯åŠçã®çµäºãããã°ã©ã ã®çµäºã§ãããªãœãŒã¹ã®éæŸã§ãã.
ããã¯ã°ã©ãŠã³ãå®è¡ããç¶ããéšåã§æ§æãããã¢ããªã±ãŒã·ã§ã³, ãã®éšåãäŸåé¢ä¿ã«ããåæåæã«é¢ä¿ãæ§ç¯ãããã®, ãããã·ã¹ãã .
ã·ã¹ãã æ§ç¯ããéšå=ã³ã³ããŒãã³ãã¯åçŽåããã°, On/Offã®æäœã«ããStatefulãªObjectã§ãã.
ref: Systems in Clojure