Model-View-Presenter (MVP) ã¯ãã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³ã®éçºã§äžè¬çã«äœ¿çšããããœãããŠã§ã¢ ã¢ãŒããã¯ã㣠ãã¿ãŒã³ã§ããããã¯ãModel-View-Controller (MVC) ãã¿ãŒã³ã®é²åçã§ãããããæè»ã§ã¹ã±ãŒã©ãã«ãªé¢å¿äºã®åé¢ãæäŸããããšã«éç¹ã眮ããŠããŸãã MVP ãã¿ãŒã³ã¯äž»ã«ãã¢ããªã±ãŒã·ã§ã³ã®ãã¹ãå®¹ææ§ã匷åããé·æã«ãããä¿å®ãæ¹åãæ¡åŒµã容æã«ããããšã§ç¥ãããŠããŸããéçºããã»ã¹äžã®å¹çãæé©ãªããã©ãŒãã³ã¹ãçç£æ§ã®åäžãä¿èšŒããããããã¢ãã€ã« ã¢ããªéçºã³ã³ããã¹ãå ã§ã®äœ¿çšã«æé©ã§ãã
MVP ãã¿ãŒã³ã§ã¯ãã¢ãã«ã¯ã¢ããªã±ãŒã·ã§ã³ã®ããŒã¿ãšããžãã¹ ããžãã¯ã衚ããŸããããŒã¿ã®ååŸãä¿åãæäœã ãã§ãªããããžãã¹ ã«ãŒã«ãããŒã¿æ€èšŒã®é©çšãæ åœããŸããã¢ãã«ã¯ãŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ããç¬ç«ããŠããããã¥ãŒãšãã¬ãŒã³ã¿ãŒã®ç¹å®ã®å®è£ ã«äŸåããªãå¿ èŠããããŸãã
MVP ãã¿ãŒã³ã®ã³ã³ããã¹ãã§ã¯ããã¥ãŒã¯ããŒã¿ã衚瀺ãããŠãŒã¶ãŒå ¥åããã£ããã£ãã圹å²ãæãããŸããããã¯ããã¬ãŒã³ã¿ãŒã«äŸåããŠç¶æ ãæŽæ°ãããŠãŒã¶ãŒãšã®å¯Ÿè©±ãåŠçããååçã³ã³ããŒãã³ãã§ãããã¥ãŒã¯éåžžããŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ (UI) ã³ã³ããŒãã³ããã¢ãã€ã« ã¢ããªã®ã¬ã€ã¢ãŠããªã©ã®èŠèŠèŠçŽ ã§æ§æãããŸãããã¥ãŒã®äž»ãªç®æšã¯ããŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ã®å¿çæ§ãé«ããèŠèŠçã«é åçã§ãããã²ãŒãããããããšãä¿èšŒããããšã§ãã
ãã¬ãŒã³ã¿ãŒã¯ã¢ãã«ãšãã¥ãŒã®éã®ä»²ä»è ãšããŠæ©èœããããŒã¿ ãããŒã調æŽãããŠãŒã¶ãŒ ã€ã³ã¿ã©ã¯ã·ã§ã³ãåŠçããŸããã¢ãã«ããããŒã¿ãååŸããåŠçããããã«å¿ããŠãã¥ãŒãæŽæ°ãã責任ããããŸãããã¬ãŒã³ã¿ãŒã¯ããã¿ã³ã®ã¯ãªãã¯ãå ¥å倿Žãªã©ã®ãã¥ãŒããã®ãŠãŒã¶ãŒ ã€ãã³ããåŠçããã¢ãã«ãæŽæ°ãããããããã®ã€ãã³ãã«åºã¥ããŠç¹å®ã®ã¢ã¯ã·ã§ã³ãããªã¬ãŒãããããŸããããŒã¿ç®¡ç (ã¢ãã«) ãšãŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ (ãã¥ãŒ) ã®é¢å¿äºãåé¢ããããšã«ãããPresenter ã¯ãããã¢ãžã¥ãŒã«åãããã¹ã±ãŒã©ãã«ã§ãä¿å®ããããã¢ããªã±ãŒã·ã§ã³ã®éçºãå¯èœã«ããŸãã
ã¢ãã€ã« ã¢ããªéçºã§ MVP ã䜿çšããäž»ãªå©ç¹ã® 1 ã€ã¯ããã¹ãå®¹ææ§ã®åäžã§ããã¢ãã«ããã¥ãŒããã¬ãŒã³ã¿ãŒãåé¢ããããšã§ãéçºè ã¯ã¢ããªã±ãŒã·ã§ã³ã®ç¹å®ã®ã³ã³ããŒãã³ãã«çŠç¹ãåœãŠãåäœãã¹ããäœæã§ãããã培åºçã§ä¿¡é Œæ§ã®é«ããã¹ããå¯èœã«ãªããŸããããã«ããããã°ãæ¬ é¥ãå°ãªããããå®å®ããä¿¡é Œæ§ã®é«ãã¢ããªã±ãŒã·ã§ã³ãå®çŸããŸãã
MVP ãã¿ãŒã³ã¯ãããŸããŸãªãã©ãããã©ãŒã ããã¬ãŒã ã¯ãŒã¯ã«åºãé©çšã§ããŸããããšãã°ã AppMasterno-codeãã©ãããã©ãŒã ã¯ãMVP ãã¿ãŒã³ã掻çšããŠã匷åã§ä¿å®æ§ã®é«ãããã¯ãšã³ããWebãããã³ã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ã§ããŸãã AppMaster䜿çšãããšã顧客㯠MVP ãã¿ãŒã³ã®ååã«æºæ ããªãããããŒã¿ ã¢ãã«ãããžãã¹ ããžãã¯ããŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ãèŠèŠçã«äœæã§ããŸããããã«ãããäŒæ¥ã¯æå°éã®æè¡çè² åµã§ã¹ã±ãŒã©ãã«ãªã¢ããªã±ãŒã·ã§ã³ãéçºã§ããããã«ãªããéçºããã»ã¹å šäœã®çç£æ§ãšè²»çšå¯Ÿå¹æãåäžããŸãã
MVP ãã¿ãŒã³ãæ¡çšããã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³ã®æ³šç®ãã¹ãäŸãšããŠã¯ãTodoist ã Trello ãªã©ã®äººæ°ã®çç£æ§åäžã¢ããªãæããããŸãããããã®ã¢ããªã±ãŒã·ã§ã³ã¯ãè€æ°ã®ãã©ãããã©ãŒã ã«ããã£ãŠä¿¡é Œæ§ãšããã©ãŒãã³ã¹ãç¶æããªãããæ°çŸäžã®ãŠãŒã¶ãŒã«ãŸã§æ¡åŒµããããšã«æåããŠãããMVP ã¢ãŒããã¯ã㣠ãã¿ãŒã³ã䜿çšããå©ç¹ãå®èšŒããŠããŸãã
ã¢ãã€ã« ã¢ããªéçºã®ã³ã³ããã¹ãã§ Model-View-Presenter ãã¿ãŒã³ãå®è£ ãããšãã³ãŒãããŒã¹ã®ã¢ãžã¥ãŒã«åãé²ã¿ãã¡ã³ããã³ã¹ã容æã«ãªãããã¹ãå®¹ææ§ãåäžããŸãã MVP ãã¿ãŒã³ã掻çšããããšã§ãéçºè ã¯ã¹ã±ãŒã©ãã«ã§å®å®ãããŠãŒã¶ãŒãã¬ã³ããªãŒãªã¢ããªã±ãŒã·ã§ã³ãäœæã§ãããããžã§ã¯ãã®é·æçãªæåãä¿èšŒã§ããŸãã
çµè«ãšããŠãã¢ãã« - ãã¥ãŒ - ãã¬ãŒã³ã¿ãŒ ãã¿ãŒã³ã¯ãææ°ã®ã¢ãã€ã« ã¢ããªéçºã«ãããŠéèŠãªåœ¹å²ãæãããããŒã¿ç®¡çããŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ãããã³ã¢ããªã±ãŒã·ã§ã³ ããžãã¯éã®æžå¿µãæç¢ºã«åé¢ããŸãããã®ã¢ãŒããã¯ã㣠ãã¿ãŒã³ãæ¡çšããããšã§ãéçºè ã¯ã仿¥ã®ã¢ãã€ã« ã¢ããªåžå Žã®çµ¶ããå€åããèŠä»¶ãèŠæ±ãæºãããä¿å®å¯èœãã¹ã±ãŒã©ãã«ãããã³ãã¹ãå¯èœãªã¢ããªã±ãŒã·ã§ã³ãäœæã§ããŸãã AppMasterã®ãããªãã©ãããã©ãŒã ã«äŸç€ºãããŠããããã«ãMVP ãã¿ãŒã³ã¯ããŸããŸãªéçºããŒã«ãæ¹æ³è«ã«ã·ãŒã ã¬ã¹ã«çµ±åã§ããã¢ãã€ã« ã¢ããªéçºã®äžçã«ããããã®é¢é£æ§ãšéèŠæ§ãããã«åŒ·åºã«ãªããŸãã