Model-View-Controller (MVC) èšèšãã¿ãŒã³ã¯ããœãããŠã§ã¢ ã¢ããªã±ãŒã·ã§ã³ã®èšèšã«åºãæ¡çšãããŠããã¢ãŒããã¯ã㣠ã¢ãããŒãã§ããããã¯ãã¢ãžã¥ãŒã«åœ¢åŒã§ã³ãŒããç·šæããæ¹æ³ãæäŸããæžå¿µäºé ã®åé¢ãä¿é²ããã·ã¹ãã ã®ä¿å®æ§ãã¹ã±ãŒã©ããªãã£ãããã³ãã¹ãå®¹ææ§ãåäžãããŸãã MVC ãã©ãã€ã ã¯ãã¢ãžã¥ãŒã«åŒã§ã¹ã±ãŒã©ãã«ãªã³ãŒããçæããAppMasterãã©ãããã©ãŒã ã®ååãšãã調åããŠãããå ç¢ã§ä¿å®å¯èœãªã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã®çæ³çãªã¢ãããŒããšãªã£ãŠããŸãã
MVC ã¢ãŒããã¯ãã£ã§ã¯ãã¢ããªã±ãŒã·ã§ã³ ããžãã¯ã¯çžäºæ¥ç¶ããã 3 ã€ã®ã³ã³ããŒãã³ãã«åå²ãããŸãã
- ã¢ãã«- ããŒã¿åŠçãšããžãã¹ ããžãã¯ã®åŠçãæ åœããŸããããã¯ãã¢ããªã±ãŒã·ã§ã³ã®ãã¡ã€ã³åºæã®ããŒã¿ãã«ãŒã«ãããã³ããŒã¿ã®æ€èšŒãååŸãä¿åãæäœãªã©ã®æ©èœã衚ããŸãã Model ã³ã³ããŒãã³ãã¯ãŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ããç¬ç«ããŠãããAPI ãŸãã¯ã€ãã³ããéããŠä»ã®ã³ã³ããŒãã³ããšéä¿¡ããŸãã
- ãã¥ãŒ- ã¢ãã«ããã®ããŒã¿ã®è¡šç€ºãšãŠãŒã¶ãŒå ¥åã®ãã£ããã£ãæ åœããŸããããã¯ã¢ããªã±ãŒã·ã§ã³ã®ãŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ãæ§æãããã¬ãŒã³ããŒã·ã§ã³ãšãŠãŒã¶ãŒ ã€ã³ã¿ã©ã¯ã·ã§ã³ã«éç¹ã眮ããŠããŸãã View ã³ã³ããŒãã³ãã¯ãŠãŒã¶ãŒãšçŽæ¥å¯Ÿè©±ããŠå ¥åãååŸãããã®å ¥åãã³ã³ãããŒã©ãŒã«è¿ãããŠåŠçãããŸãã
- ã³ã³ãããŒã©ãŒ- ã¢ãã«ãšãã¥ãŒã®éã®ä»²ä»è ãšããŠæ©èœããã¢ãã«ãšãã¥ãŒéã®éä¿¡ã容æã«ãããŠãŒã¶ãŒå ¥åã€ãã³ããåŠçããŸãããã¥ãŒã«ãã£ãŠãã£ããã£ããããŠãŒã¶ãŒ ã€ã³ã¿ã©ã¯ã·ã§ã³ã«å¿ããŠãã³ã³ãããŒã©ãŒã¯å ¥åãåŠçããããã«å¿ããŠã¢ãã«ãæŽæ°ããã¢ããªã±ãŒã·ã§ã³å šäœã§ããŒã¿ã®äžè²«æ§ãä¿ãããããã«ããŸãããŸããã³ã³ãããŒã©ãŒã¯ãã¥ãŒãæŽæ°ãããã¢ãã« ããŒã¿ãšåæãããŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ãææ°ã®ç¶æ ã«ä¿ã¡ãŸãã
Model-View-Controller (MVC) ã¯ãããŸããŸãªããã°ã©ãã³ã°èšèªããã³ãã©ãããã©ãŒã ã§åºãæ¡çšãããŠãããçµç¹çã§ä¿å®å¯èœãªã³ãŒãã®éçºãä¿é²ããäžã§éèŠãªåœ¹å²ãæãããŠããŸãã AppMasterãã©ãããã©ãŒã ã®no-codeããŒã« (ããžã¥ã¢ã« ããŒã¿ ã¢ããªã³ã°ãããžãã¹ ããã»ã¹èšèšãWeb ããã³ã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³çšã® UI ã³ã³ããŒãã³ããªã©) ã¯ãMVC ã¢ãŒããã¯ãã£ã®ååã念é ã«çœ®ããŠæ§ç¯ãããŠããŸããããã«ãããçæãããã¢ããªã±ãŒã·ã§ã³ãã¹ã±ãŒã©ãã«ã§ãä¿å®å¯èœã§ãå ç¢ã§ããããšãä¿èšŒãããŸãã
ããšãã°ã AppMasterã§çæãããããã¯ãšã³ã ã¢ããªã±ãŒã·ã§ã³ã¯ããã®ã·ã³ãã«ããã¢ãžã¥ãŒã«æ§ãåæå®è¡æ§ã®åŒ·åãªãµããŒãã§ç¥ããããœãããŠã§ã¢æ¥çã§åºãæ¡çšãããŠããèšèªã§ãã Go ããã°ã©ãã³ã°èšèªãå©çšããŠããŸããçæããã Go ã³ãŒãã¯ãMVC ã¢ãŒããã¯ãã£ã®ã¢ãã« ã³ã³ããŒãã³ããšã³ã³ãããŒã©ãŒ ã³ã³ããŒãã³ããã«ãã»ã«åããã¢ããªã±ãŒã·ã§ã³ã®ããžãã¹ ããžãã¯ãç¶æããAPI åŒã³åºããåŠçããŸããäžæ¹ãWeb ã¢ããªã±ãŒã·ã§ã³ã®çæã«äœ¿çšããã Vue3 ãã¬ãŒã ã¯ãŒã¯ã¯ãå¿çæ§ã®é«ãã€ã³ã¿ã©ã¯ãã£ããªãŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ãæäŸããããšã§ View ã³ã³ããŒãã³ããç°¡æœã«è¡šããŸããåæ§ã«ãã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³ã§ã¯ã AppMaster Kotlin ãšJetpack Compose (Android) ããã³SwiftUI (iOS) ãæŽ»çšããŠãMVC ãã¿ãŒã³ã®ååã«åŸã View ã³ã³ããŒãã³ããäœæããŸãã
Model-View-Controller ã¢ãŒããã¯ãã£ãžã®æºæ ã«ããã AppMasterã¢ãžã¥ãŒã«åŒã§ã¹ã±ãŒã©ãã«ã§ä¿å®å¯èœãªã¢ããªã±ãŒã·ã§ã³ãçæã§ããããã«ãªããŸãããã®ãããªã¢ããªã±ãŒã·ã§ã³ã¯ãäžå°äŒæ¥ããå€§èŠæš¡äŒæ¥ãŸã§ãå¹ åºã顧客ã«é©ããŠããŸãããã®çµæã AppMasterãã©ãããã©ãŒã ã¯ã¢ããªã±ãŒã·ã§ã³éçºã®ããŒã¹ãå€§å¹ ã«åäžãããã³ã¹ããåæžããæè¡çè² åµãæé€ããããšãã§ããŸãã
MVC ã¢ãŒããã¯ãã£ã䜿çšãããã 1 ã€ã®äž»ãªå©ç¹ã¯ããã¥ãŒããã¢ãã«ãåãé¢ãããåã³ã³ããŒãã³ããåå¥ã«ããå¹ççã«éçºããã¹ãããããã°ã§ããããã«ãªãããšã§ãããã®æžå¿µäºé ã®åé¢ã«ãããåºç€ãšãªãããžãã¹ ããžãã¯ã«åœ±é¿ãäžããããšãªãèšèšå€æŽãå®è£ ã§ããããã«ãªããæ°ããåé¡ãçºçããå¯èœæ§ã軜æžãããŸãã
REST API ã® Swagger (OpenAPI) ããã¥ã¡ã³ããªã©ã®AppMasterã®ããã¥ã¡ã³ãã®èªåçæã¯ãMVC ãã¿ãŒã³ã«ãã£ãŠæäŸãããã¢ãžã¥ãŒã«èšèšã®ãããã§ãä»ã®ã·ã¹ãã ãšã®ã·ãŒã ã¬ã¹ãªçµ±åãä¿é²ããŸããããã«ããã©ã€ã㪠ããŒã¿ããŒã¹ãšããŠã® PostgreSQL äºææ§ã«ãããããŒã¿ã®äžè²«æ§ãšæŽåæ§ã確ä¿ãããçæããã Go ããã¯ãšã³ã ã¢ããªã±ãŒã·ã§ã³ã®ã¹ããŒãã¬ã¹ãªæ§è³ªã«ããã䞊å€ããã¹ã±ãŒã©ããªãã£ãšé«ãããã©ãŒãã³ã¹ãå¯èœã«ãªããŸãã
çµè«ãšããŠãModel-View-Controller (MVC) èšèšãã¿ãŒã³ã¯ãã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã®å ç¢ãã€æè»ãªã¢ãŒããã¯ã㣠ã¢ãããŒãã§ããããã¯ãæžå¿µäºé ã®åé¢ãã¢ãžã¥ãŒã«æ§ãä¿å®æ§ãä¿é²ããŸãããããã®å±æ§ã¯ã AppMasterã®no-codeãã©ãããã©ãŒã ãæ§ç¯ãããååãšåŒ·ãå ±é³ŽããŸãã MVC ãã¿ãŒã³ã掻çšããããšã«ããã AppMaster ãè€éãªã³ãŒããåŠçããå¿ èŠãªããWebãã¢ãã€ã«ãããã¯ãšã³ã ã¢ããªã±ãŒã·ã§ã³ãå«ããå æ¬çã§ã¹ã±ãŒã©ãã«ã§ä¿å®å¯èœãªãœãããŠã§ã¢ ãœãªã¥ãŒã·ã§ã³ãéçºããããã®å¹ççã§ã³ã¹ãå¹çã®é«ãæ¹æ³ãé¡§å®¢ã«æäŸããŸãã