ããã¯æ¬ã«æžãããŠããããã§ããããïŒ ãããŸãã¯ãã®ã¢ãããŒã/ãã¿ãŒã³ã¯ããªãã®ã©ã®åé¡ã解決ããŸããïŒ
äžèŠããŠæãããªããšã§ããã説æããã®ãéåžžã«é£ããå ŽåããããŸãã ãããŠæã ã説æããããšããŠãæãããªèããå®å šã«ééã£ãŠãããšããç解ããããŸãã
ããã€ãã®äŸãåãäžãããããã®åé¡ãããããåŽé¢ããç 究ããŠã¿ãŸãããã
ããã¡ãã®çº
ä»®æ³éœåž
ãã®èšèã§ã©ãã ãåºã...
ãµããžã§ã¯ããšãªã¢
ãã¬ãŒã³ããŒã·ã§ã³ããžãã¯
ç¶æ ä¿å
éå±€å
2段
Nå±€
2ãšããŠ3
ãµãŒãã¹
ããŒã«
çè«ãšå®è·µ
ãŸãšã
ããã¡ãã®çº
å°ããªããã¡ãã®è¡ãæ³åããŠã¿ãŸãããã ããã¯ããã€ãã®å»ºç©ã§æ§æãããããã€ãã®éè·¯ãéããŸãã è»ã¯éè·¯ãåãã人ã ã¯æ©ããŸãã 亀éã¯ä¿¡å·æ©ã§èŠå¶ãããŠããŸãã åžå ã§èµ·ããããšã¯ãã¹ãŠç¹å®ã®ã«ãŒã«ã®å¯Ÿè±¡ã§ããããã®å€æ§æ§ã¯ãã¹ãŠå¶åŸ¡ã§ããŸãã
人ãè»ãåãããããä¿¡å·æ©ãåãæ¿ããããæŒãå€ã®æéãå€æŽãããã§ããŸããè€æ°ã®äººãåæã«ãã®éœåžãšå¯Ÿè©±ã§ããŸãã 圌ãã¯åã«èŠããäœãããããããŠãéœåžã匷å¶çã«å€åãããããšãã§ããŸãã ãããã¯ãã¹ãŠå®å šã«ååšããŸãããããã¡ãã®è¡ãä»®æ³äžçã«ç§»ãããšãå¿ èŠã«ãªããšããæ¥ãŸãã
è¡ãšçŽæ¥äº€æµãã人ã ã¯ãä»ã§ã¯æ€ åã§å¿«é©ã«ãªããæãã¢ãã¿ãŒãèŠã€ããçæã§ããŠã¹ãæ¡ããããçæ¹ãããŒããŒãã«çœ®ãããã¹ãŠã埩掻ããä»®æ³éœåžãç®ã®åã®è²ã§èŒãç¬éãåŸ ã£ãŠããŸãã ãããããããå®çŸããã«ã¯ãé·ãéã®ãããããŸãã
ä»®æ³éœåž
ãŸããæãéèŠãªããš-ä»®æ³éœåžã®ã¢ãã«ãäœæããå¿ èŠããããŸãã ããã¯åçŽãªãã®ã®ããã«æãããããããŸããããå®éãããã¯åé¡ãšå°é£ã®å€§éšåãååšããå Žæã§ãã ãããããŸã éå§ããå¿ èŠãããã®ã§ãå§ããŸãããã
ç§ãã¡ã®ç®æšã¯ãéœåžã¢ãã«ãä»®æ³åœ¢åŒã§èšè¿°ããããšã§ãã ãã®ãããäžè¬çãªé«ã¬ãã«ã®ãªããžã§ã¯ãæåèšèªã䜿çšããŸãã ãã®ãããªèšèªã®äœ¿çšã«ã¯ãéœåžã®ä»®æ³ã¢ãã«ãäœæããããã®äž»èŠãªæ§æèŠçŽ ãšããŠã®ãªããžã§ã¯ãã®äœ¿çšãå«ãŸããŸãã
ãã¡ããã 1ã€ã®ãªããžã§ã¯ãã§ã¢ãã«å šäœãåçŽã«èšè¿°ããããšãã§ããŸãããããã«ã¯äžå¿ èŠãªè€éããšè€éãã䌎ããŸãã ãã¹ãŠã1ãæã«ããã³ãããããã©ã®ããã«æ··åãããŠããããæ確ã§ãªãå Žåãäœãèµ·ãã£ãŠããã®ããç解ããã®ãé£ãããªããããã«å€æŽãå ããããšãé£ãããªããŸãã ãããã£ãŠãçµæã®ããã°ã©ã ãæ··ä¹±ãããªãããã«ãç°¡åã«ããããã«ãéœåžã®èª¬æãå°ããªéšåã«åããŸãã
ãã®ãããªéšåãšããŠãç§ãã¡ã¯ç§ãã¡ã®å®éã®éœåžãèŠããšãã«äºãã«ç°¡åã«åé¢ãããŠãããã®ãåããŸã-ãã®éœåžã®åã ã®ãªããžã§ã¯ãïŒæåã®å®¶ã亀差ç¹ã®èµ€ãBMWã圌ã®ããžãã¹ã«ã€ããŠèµ°ã£ãŠããããããŽã£ããïŒã ä»®æ³äžçã®åãªããžã§ã¯ãã®èª¬æã¯ããã®ããããã£ïŒè²ãã¢ãã«ãååãå Žæãªã©ïŒã®èª¬æã§ãã æ¯ååããªããžã§ã¯ãã®åãããããã£ãç¹°ãè¿ãèšè¿°ããªãããã«ããã®ãããªããããã£ã®ã°ã«ãŒããéžæãããããããªããžã§ã¯ãã®ã¿ã€ããšåŒã³ãŸã ã è¯ãåè£è ã¯ãè»ã家ã人ãªã©ã®äžè¬çãªã¿ã€ãã§ãã äž»ãªããããã£ã®èª¬æãéäžããããšãã§ããŸãã ãŸããããšãã°ãããŸããŸãªã¿ã€ãã®ãã·ã³ã¯ãããã·ã³ãã®åºæ¬ã¿ã€ããç¬èªã®ããããã£ã»ããã§è£å®ããæ°ããã¿ã€ãã®ã»ããå šäœãäœæããŸãã å ã®åã«å¯Ÿãããã®ãããªæ°ããåã¯ã çžç¶äººãšåŒã°ããŸãã ãããŠãããã»ã¹èªäœã¯ã ç¶æ¿ã«ããæ¢åã®ã¿ã€ãã«åºã¥ããæ°ããã¿ã€ãã®äœæã§ãã
ç§ãã¡ãäœæãããã¹ãŠã®çš®é¡ã®ãªããžã§ã¯ãã¯ãç§ãã¡ã®éœåžã®ã¢ãã«ãè¡šããŠããŸãã
ãã®åŸãéœåžå ã®æ¢åã®ãªããžã§ã¯ãããšã«ãããã®ã¿ã€ãã®ã€ã³ã¹ã¿ã³ã¹ãäœæããäžæã®å€ãå ¥åããŸãã
ãããŠããã¹ãŠããã®å Žæã«çœ®ãããŠããããã«èŠããŸããè»ã®ã°ã«ãŒããç·ã®ä¿¡å·ãåŸ ã£ãŠãã亀差ç¹ã«ç«ã£ãŠããã女ã®åã®ãžã¥ãªã¢ããšã¬ããŒã¿ãŒãåŸ ã£ãŠããŸããããã«ã巚倧ãªè¶ é«å±€ãã«ã®ãã€ãã®æ°ŽãåããŸããã ã¢ãã«ãstateã§æºãããç¹å®ã®æç¹ã§å®éã®éœåžã®ç¶æ ãç¹°ãè¿ããŸããã
ããããå®éã®éœåžãããèŠããšãåžžã«å€åããŠããããšãããããŸãã ç¶æ ã®ãã¹ãŠã®å€æŽã¯ãããŸããŸãªãªããžã§ã¯ãã®ããããã£å€ã®å€æŽãæ°ãããªããžã§ã¯ãã®å€èŠ³ããŸãã¯å€ããªããžã§ã¯ãã®æ¶å€±ã§ãã ããã§ãä¿¡å·æ©ãåãæ¿ããããçŸåšã®ä¿¡å·æ©ãããããã£ã®å€ãèµ€ããç·ã«å€æŽãããŸãã ã ããã§ããšã¬ããŒã¿ãŒã¯ãFloorãããããã£ã®å€ã2çªç®ãã1 çªç®ã«å€æŽãããDoors openãããããã£ã®å€ãyesããnoã«å€æŽããŸãã ã
ããã¯ãç§ãã¡ã®éœåžãçãè¿ãã«ã¯ãããã°ã©ã ãã¢ãã«ã®ç¶æ ãå€æŽã§ããå¿ èŠãããããšãæå³ããŸããã€ãŸããããŸããŸãªãªããžã§ã¯ãã®ããããã£ãå€æŽããããæ°ãããªããžã§ã¯ããè¿œå ããããå€ããªããžã§ã¯ããåé€ãããããããšãã§ããŸããã€ãŸã è¡åãã ã
ãããè¡ãã«ã¯ãç§ãã¡ã®è¡ã§å¯èœãªãã¹ãŠã®ã¢ã¯ã·ã§ã³ãããã°ã©ã ã«è¿œå ããŸãã ãã®ãããªåã¢ã¯ã·ã§ã³ã¯ããªããžã§ã¯ããŸãã¯ãªããžã§ã¯ãã®ã°ã«ãŒãã®ããããã£ãå€æŽããæé ãšããŠèª¬æã§ããŸãã ããããã¹ãŠã®æé ã®èª¬æã®åŸããããã®æ°ãéåžžã«å€§ããããšãæããã«ãªããŸãã å©çšå¯èœãªãã¹ãŠã®æé ã®ãµããŒããšå€æŽãç°¡çŽ åããã«ã¯ãããããã°ã«ãŒãã«åããå¿ èŠããããŸãã ããèããããšãªããã¢ã¯ã·ã§ã³ã®é¡äŒŒæ§ã«åºã¥ããŠãã®ãããªæé ãã°ã«ãŒãåããäžé£ã®ã¯ã©ã¹ãååŸã§ããŸããåã¯ã©ã¹ã¯ãåæ§ã®ã¢ã¯ã·ã§ã³ã®ã»ãããæ åœããŸãã
ä»ã§ã¯ãã¹ãŠãåå²ãããéåžžã«èŠæ ããè¯ãããã«èŠããŸããã1ã€ã®ãããããããããŸãã ãªããžã§ã¯ãã®ããããã£ã®èª¬æã¯ããããã®ããããã£ãå€æŽããã¢ãã«ã貧è¡ã¢ãã«ã«å€ããæé ãšã¯å®å šã«åé¢ãããŠããŸãã ãã®åé¢ã«ããããªããžã§ã¯ãã®ããããã£ãã©ã®ããã«å€åãããã¯å®å šã«ç解ã§ããŸããã ãŸããããããããã£ã®å€æŽãä»ã®ããããã£ã®å€æŽã«é¢é£ä»ããå¿ èŠãããå ŽåããŸãã¯ä»ã®ããããã£ã®å€ã«äŸåããå¿ èŠãããå Žåããªããžã§ã¯ãã®å éšæ§é ã«é¢ãããã®ç¥èã¯ããã®ããããã£ãå€æŽãããã¹ãŠã®ããã·ãŒãžã£ã§è€è£œããå¿ èŠããããŸãã ãããã®åé¡ãåé¿ããããã«ãã¢ã¯ã·ã§ã³ããšã«ããã·ãŒãžã£ãã°ã«ãŒãåããã®ã§ã¯ãªããããããã£ãå€æŽããã¿ã€ãã«ãããã®ããã·ãŒãžã£ãå解ããŸãã
ããã«ãããä»ã®ãŠãŒã¶ãŒã䜿çšããããããã£ãšã¡ãœããã®ã¿ãå ¬éããŠããªããžã§ã¯ãã®å éšæ§é ã«é¢ããç¥èãé ãããšãã§ããŸãã ä»äºã®å éšååãé ããã®ããã»ã¹ã¯ã ã«ãã»ã«åãšåŒã°ããŸã ã ããšãã°ããšã¬ããŒã¿ãŒãè€æ°ã®éã«ç§»åããããšããŸãã ãããè¡ãã«ã¯ããã¢ã®ç¶æ ã確èªããå¿ èŠããããŸã-ééããšã³ãžã³ã®å§åãšåæ¢ãªã©ã ãã®ããžãã¯ã¯ãã¹ãŠãããã¢ãžã®ç§»åã¢ã¯ã·ã§ã³ã®èåŸã«åçŽã«é ãããŸãã ãã®çµæããªããžã§ã¯ãã®ã¿ã€ãã¯ããããã®ããããã£ãå€æŽããããããã£ãšããã·ãŒãžã£ã®ã»ããã§ããããšãããããŸããã
äžéšã®ããã·ãŒãžã£ã¯åãæå³ãæã€å ŽåããããŸãããç°ãªããªããžã§ã¯ãã«é¢é£ä»ããããŸãã ããšãã°ããé³å£°ä¿¡å·ãçºãããæé ã¯ãèµ€ã®BMWãšéã®ã©ãã«ãããŸãã å éšã§ã¯ãŸã£ããç°ãªãæ¹æ³ã§å®è¡ã§ããŸãããåãæå³ãæã¡ãŸãã
ãã§ã«äžè¬çãªã¿ã€ãã®ããã·ã³ããããããããé³å£°ä¿¡å·ãçºãããæé ãããã«çœ®ãããšãã§ããŸãã ãã®ãããªåäœã®ããžãã¯ããã¹ãŠã®äººã§åãã§ããã°ãåãå Žæã§å€æã§ããŸãã ããã«ããã掟çåãç°¡çŽ åãããã³ãŒãã®éè€ããªããªããŸãã ããããçªç¶ã掟çåã§ãã®ãããªåäœã®ããžãã¯ãç°ãªãå Žåãåäœãåå®çŸ©ããããšã§ç°¡åã«å€æŽã§ããŸãã ãã®å¯èœæ§ã¯ããªã¢ãŒãã£ãºã ãšåŒã°ããŸãã
æœè±¡åãç¶æ¿ãã«ãã»ã«åãããã³ããªã¢ãŒãã£ãºã -ãããã¯OOPã®åã³ã§ãããããã«ç¶ããŠããæè»ãªãã¶ã€ã³ãäœæã§ããŸãã ãããã«å ããŠãç®çãåãã§ããç¹å®ã®ååã®ã»ããããããŸã-ããæè»ãªèšèšãäœæããã®ãå©ããããã«ã
ãã®èšèã§ã©ãã ãåºã...
SOLIDã¯ããªããžã§ã¯ãæåèšèšã®æåãªååã®ç¥ã§ãã ãã®ç¥èªã«ã¯ãåæåã«1ã€ãã€ã5ã€ã®é衚瀺ããããŸãã
åäžè²¬ä»»ã®åå -åãšã³ãã£ãã£ã¯ãå€æŽã®çç±ã1ã€ã ãæã€å¿ èŠããããŸãã
ãã¹ãŠã®å®¶ã®åéšå±ã§ã€ã³ã¿ãŒããããšé»æ°ã®äž¡æ¹ã䜿çšããããã«ãã€ã³ã¿ãŒããããšé»ç·çšã®ã³ãã¯ã¿ãåããåäžã®ã³ã³ã»ã³ããäœæãããŸããã
public class Socket { private PowerWire _powerWire; private EthernetWire _ethernetWire; public Socket(PowerWire powerWire, EthernetWire ethernetWire) { _powerWire = powerWire; _ethernetWire = ethernetWire; } ... }
ãã®ãããªã³ã³ã»ã³ãã®æäœã«ã¯ãã€ã³ã¿ãŒãããåç·ãšé»ç·ãäŸçµŠããå¿ èŠããããŸããã ãããŠããã¹ãŠã®ãœã±ãããåžžã«ã€ã³ã¿ãŒããããšé»æ°ã®äž¡æ¹ã䜿çšããããã§ã¯ãªãããã³ã³ãã¯ãã§äŸ¿å©ã§ãããšããäºå®ã«ã¯äœã®åé¡ããªãããã«æããŸãã ããããå€åã®æãæ¥ããšããã¹ãŠãããã»ã©äŸ¿å©ã§ã¯ãªããªããŸãã
ãŸããã€ã³ã¿ãŒããããäžèŠãªã¢ããŒãã建ç©å šäœããããŸããã 絶察ã«ã ãããããœã±ããããœã±ããã§æ©èœããããã«ã¯ãããã«ãã€ã³ã¿ãŒãããã¯ã€ã€ãåŒã䌞ã°ãå¿ èŠããããå©çããããããã«äœæ¥ã³ã¹ããå¢å ããã ãã§ããã
ãã®åŸããœã±ããã«æ¥å°çšã®è¿œå ã®ã¯ã€ã€ãè£ ââåããå¿ èŠããããããã€ã³ã¿ãŒãããå°çšã®ãœã±ãããå«ããŠããã¹ãŠã®ãœã±ãããå€æŽããå¿ èŠããããŸããã 倧éã®äœæ¥ãè¡ãããŸããããã€ã³ã¿ãŒãããã®ã¿ã«äœ¿çšããããœã±ããã圱é¿ãåããªãå Žåã¯ããããããå°ãªãå¯èœæ§ããããŸãã
public class Socket { private PowerWire _powerWire; private EthernetWire _ethernetWire; private GroundWire _groundWire; public Socket(PowerWire powerWire, EthernetWire ethernetWire, GroundWire groundWire) { _powerWire = powerWire; _ethernetWire = ethernetWire; _groundWire = groundWire; } ... }
ããããæåŸã®ã¹ãããŒã¯èŠä»¶ã§ããããã¹ãŠã®ã€ã³ã¿ãŒãããã¢ãŠãã¬ããã®ã€ã³ã¿ãŒãããã¯ã€ã€ãæ°ããæšæºã«å€æŽããããšã§ãã äžè¬ã«ããã¹ãŠã®ãœã±ããã¯åæã«ã€ã³ã¿ãŒããããœã±ããã§ãããããããã¹ãŠãå床å€æŽããå¿ èŠããããŸããã ã€ã³ã¿ãŒãããã«äœ¿çšãããã³ã³ã»ã³ãã®æ°ã¯ããã¹ãŠã®ã³ã³ã»ã³ãã®æ°ãããæ°åå°ãªããããäœæ¥éã¯ã¯ããã«å°ãªããªããŸãã
public class Socket { private PowerWire _powerWire; private SuperEnthernetWire _superEnthernetWire; private GroundWire _groundWire; public Socket(PowerWire powerWire, SuperEthernetWire superEthernetWire, GroundWire groundWare) { _powerWire = powerWire; _superEnthernetWire = superEnthernetWire; _groundWare = groundWare; } ... }
ãã¹ãŠã®å Žåã«ãããŠãããã€ãã®å®å šã«ç¡é¢ä¿ãªè·åã1ã€ã®ãªããžã§ã¯ãã«äžåºŠã«çµåããããšããäºå®ã«ããããŸã£ããäžèŠãªéã®äœæ¥ãè¡ãããŸããã ãããŠããããã®çŸ©åã«ã¯ãããããå€æŽã®çç±ããããŸãã
ãã®ãããªåé¡ãåé¿ããããã«ãã³ã³ã»ã³ãã¯ãäºãã«ç¬ç«ãã2ã€ã®éšåïŒé»æ°ã³ã³ã»ã³ããšã€ã³ã¿ãŒãããã³ã³ã»ã³ãïŒã«åå²ããå¿ èŠããããŸããã
public PowerSocket { private PowerWire _powerWire; private GroundWare _groundWare; public PowerSocket(PowerWire powerWire, GroundWare groundWare) { _powerWire = powerWire; _groundWare = groundWare; } ... } public class EthernetSocket { private SuperEthernetWire _superEthernetWire; public EthernetSocket (SuperEthernetWire _superEthernetWire) { _superEthernetWire = superEthernetWire; } ... }
ãããŠãå®éã«é»æ°ãšã€ã³ã¿ãŒãããã®äž¡æ¹ã®ã³ã³ã»ã³ããå¿ èŠãªå Žåã¯ã éçŽã䜿çšã§ããŸãã
public PowerEthernetSocket { private PowerSocket _powerSocket; private EthernetSocket _ethernetSocket; public PowerEthernetSocket (PowerSocket powerSocket, EthernetSocket ethernetSocket) { _powerSocket = powerWire; _ethernetSocket = ethernetSocket; } ... }
ãªãŒãã³ã¯ããŒãºã®åå -ãªããžã§ã¯ãã¯å€æŽã®ããã«éããããæ¡åŒµã®ããã«éãããªããã°ãªããŸããã
åžå äžå¿éšã®éèŠãªæ å ±ã人ã ã«ç¥ãããããã«ãæãå¿ãã亀差ç¹ã«å€§ããªã¹ã¯ãªãŒã³ãèšçœ®ãããŸããã ããŸããŸãªãœãŒã¹ããã®ã¡ãã»ãŒãžã®ããã¹ãã衚瀺ããŸããã
public class Message { public string Text { get; set; } } public class BigDisplay { public void DisplayMessage(Message message) { PrintText(message.Text); } public void PrintText(string text) { ... } }
ãã°ããããŠãæ°ããã¿ã€ãã®ã¡ãã»ãŒãžã衚瀺ãããŸãã-æ¥ä»ãå«ãã¡ãã»ãŒãžã ãããŠãç»é¢äžã®ãã®ãããªã¡ãã»ãŒãžã«ã€ããŠã¯ãæ¥ä»ãšããã¹ãã®äž¡æ¹ã衚瀺ããå¿ èŠããããŸããã æŽç·Žã¯ããŸããŸãªæ¹æ³ã§å®è¡ã§ããŸãã
1.ãã¡ãã»ãŒãžãã®ã¿ã€ããã掟çããæ°ããã¿ã€ããäœæããå±æ§ãæ¥ä»ããè¿œå ããŠãã¡ãã»ãŒãžã衚瀺ããæé ãå€æŽããŸãã
public class Message { public string Text { get; set; } } public class MessageWithDate : Message { public DateTime Date { get; set; } } ... public void DisplayMessage(Message message) { if (message is MessageWithDate) PrintText(message.Date + Message.Text) else PrintText(message.Text); }
ãããããã®æ¹æ³ã¯ãäœããã®åœ¢ã§ã¡ãã»ãŒãžã衚瀺ãããã¹ãŠã®ã¿ã€ãã®åäœãå€æŽããå¿ èŠããããšããç¹ã§æªãã§ãã ãããŠãå°æ¥ãæ°ããç¹å¥ãªã¿ã€ãã®ã¡ãã»ãŒãžããŸã ããå Žåã¯ããã¹ãŠãå床å€æŽããå¿ èŠããããŸãã
2.ãdateãããããã£ããmessageãã¿ã€ãã«è¿œå ããããã¹ãã®åä¿¡æ¹æ³ãå€æŽããŠã次ã®ããã«ããŸãã
public class Message { private string _text; public string Text { get { if(Date.HasValue) return Date.Value + _text; else return _text; } set { _text = value; } } public DateTime? Date { get; set; } }
ããããæåã«ããã®ã¡ãœããã¯ã¡ã€ã³ã®ã¿ã€ããå€æŽããŠããã«åäœãè¿œå ããå¿ èŠããããšããç¹ã§æªãã§ãã 第äºã«ãæ°ããã¿ã€ãã®ã¡ãã»ãŒãžã衚瀺ãããå Žåããã¹ãŠã®ã¡ãã»ãŒãžã«ã¯ãªãå¥ã®å±æ§ãäœæããã³ãŒãã«äžèŠãªãã§ãã¯ãè¿œå ããå¿ èŠããããŸãã 第äžã«ãæ¥ä»ä»ãã®ã¡ãã»ãŒãžã®å Žåãæ¥ä»ãªãã§ã¡ãã»ãŒãžããã¹ããååŸããæ¹æ³ã¯ãããŸããã ãããŠããã®ãããªããŒãºã®å Žå-ã¡ãã»ãŒãžã®ããã¹ããéžæããå¿ èŠããããŸãã
3.æ°ããã¿ã€ãããŸã£ããäœæãããã¡ãã»ãŒãžãç»é¢ã«è¡šç€ºãããæ¹æ³ãå€æŽããªãããã«ãã¡ãã»ãŒãžããã¹ãã«æ¥ä»ãããã«æžã蟌ã¿ãŸãã ãã ããã¡ãã»ãŒãžããæ¥ä»ãååŸããã ãã®å Žæã§ã¯ãæåã«ãã®ã¡ãã»ãŒãžã«æ¥ä»ãå«ãŸããŠãããã©ããã確èªããŠãããã¡ãã»ãŒãžããã¹ãããåé¢ããå¿ èŠãããããããã®æ¹æ³ã¯äžé©åã§ãã
éæŸæ§ãšè¿æ¥æ§ã®ååã«åŸããšããããã®åé¡ããã¹ãŠåé¿ãã4çªç®ã®æ¹æ³ã«é²ãããšãã§ããŸãã
public class Message { public string Text { get; set; } public virtual string GetDisplayText() { return Text; } } public class MessageWithDate : Message { public DateTime Date { get; set; } public override string GetDisplayText() { return Date + Text; } } ... public void DisplayMessage(Message message) { PrintText(message.GetDisplayText()); }
ãã®ã¢ãããŒãã§ã¯ããã¡ãã»ãŒãžãã®åºæ¬ã¿ã€ããå€æŽããå¿ èŠã¯ãããŸãã- éãããŸãŸã«ãªããŸãã åæã«ããã®æ©èœãæ¡åŒµããããšãã§ããŸãã ããã«ãä»ã®ã¢ãããŒãã«åºæã®åé¡ã¯ãã¹ãŠãªããªããŸãã
ãªã¹ã³ã眮æã®åå -åºæ¬åã䜿çšããé¢æ°ã¯ãåºæ¬åã®ãµãã¿ã€ããç¥ããªããŠã䜿çšã§ããå¿ èŠããããŸãã
ãèªè»¢è»ãã¿ã€ããããã°ã©ã ã«è¿œå ãããããã1ã€ã®ã¿ã€ãããã¢ãããããè¿œå ããŸãã ã¢ãããã¯èªè»¢è»ã®ãããªãã®ã§ãããããã ãã§ãã ãã®ããããã€ã¯ã¯ã¢ãããã®ããŒã¹ã¿ã€ããšããŠæé©ã§ãã ããã«èšãããããã°ã©ã ã«ã¯å¥ã®ã¿ã€ãã®ãã¢ããããããããŸãã-ãèªè»¢è»ãã®ã¿ã€ãã«ç±æ¥ããŸãã
public class Bicycle { public int Location; public void Move (int distance) { ... } } public class MotorBicycle : Bicycle { public int Fuel; public override void Move(int distance) { if (fuel == 0) return; ... fuel = fuel â usedFuel; } }
ããããèªè»¢è»ãšæ¯èŒãããšãã¢ãããã«ã¯1ã€ã®äžå¿«ãªæ©èœããããŸããã¬ãœãªã³ããªããªããšãã¢ãããã¯ç§»åã§ããªããªããŸãã ãããŠããã®äžå¿«ãªæ©èœãã³ãŒãã§èæ ®ããå¿ èŠããããŸããã 圌ãã¯ãããèæ ®ã«å ¥ããŸãããããããéèŠèŠããŸããã§ãã-ãã®ãããããããçš®é¡ã®ç¹å®ã®æ©èœãèæ ®ããããã«ã掟çåããããŸãã
ã¢ãããã¯èªè»¢è»ãããé«éã§ãããããå¯èœã§ããã°ãèªè»¢è»ã以åã«äœ¿çšãããŠããããã°ã©ã ã§äœ¿çšããå§ããŸããã ããããããæŽããæ¥ãããã°ã©ã ã¯tightèœããŸããã ãšã©ãŒã®æ€çŽ¢ã¯é·ããŠèŠçã§ããã åé¡ã¯å®æçãã€ã©ã³ãã ã«ç¹°ãè¿ãããŸããã ç ãã¬å€ã®èª¬æãçç¥ããããã«ãã¹ãŠã®ç æ°ã®ç¯äºº-ãµã€ã¯ãªã¹ããäºãã«é¢ãã2ã€ã®ãã€ã³ãéã§ç§»åãããæ¹æ³ã«ç®ãåããŸãã
public void LongJourney (int to, Biker biker, Bicycle bicycle) { while(bicycle.location < to) { int distance = to - bicycle.location; if (distance > 1000) distance = 1000; bicycle.move(distance); biker.sleep(); } }
ã¬ãœãªã³ãäžè¶³ããŠããã¢ããããèªè»¢è»ã§ã¯ãªãã¡ãœããã«è»¢éããããšããã®ãããªã¢ã¯ã·ã§ã³ãæ瀺çã«åŒã³åºãããå Žåã§ããã¢ããããã»ã³ãã¡ãŒãã«ãé²ããªãã£ããããæ°žé ã«ãã³ã°ããŸãã ãã®åé¡ãä¿®æ£ããããã«ããã¡ããããããããšãã§ããŸãïŒ
public void LongJourney (int to, Biker biker, Bicycle bicycle) { while(bicycle.location < to) { int distance = to - bicycle.location; if (distance > 1000) distance = 1000; if (bicycle is MotorBicycle && bicycle.Fuel == 0) FillFuel((MotorBicycle)bicycle); bicycle.move(distance); biker.sleep(); } } public void FillFuel(MotorBicycle motorBicycle) { ... }
ãããããã®ãããªå€æŽãå°å ¥ããã«ã¯ãå€æ°ã®æé ãå€æŽããå¿ èŠããããŸããããã¯ã第äžã«ãé·ãéã第äºã«ãå¿ããããšãã§ãããã®ãããªå¿åŽãå¥ã®ãšããã©ããã®ãªãåé¡ã«ã€ãªãããšããäºå®ã«æºã¡ãŠããŸãã ããã«ããã®ãããªæ¡ä»¶ã®è¿œå ã¯ãæœè±¡åã®ãªãŒã¯ã«ãªããŸãã ãããŠãè¡åã«åœ±é¿ãäžããä»ã®èŠå ãåºçŸããå Žåããããã®å°é£ã¯ãã¹ãŠåå¢ããŸãã
å®éãæåã®åé¡ã¯ãå€éšã®é¡äŒŒç¹ããã¹ãŠããã«ãé¢ããããã¢ãããã¯äžçš®ã®èªè»¢è»ã§ã¯ãªããšããäºå®ã«ãããŸãã ãããã£ãŠãããããå ±éã®åæ¯ã«æã¡èŸŒãããšããŠããäœãè¯ãçµæã«ã¯ãªããŸããã ã¢ãããã«ã€ããŠã¯ãèªè»¢è»ããç¬ç«ããå¥ã®ã¿ã€ããäœæããå¿ èŠãªãã¹ãŠã®æé ã§ãããèæ ®ããå¿ èŠããããŸããã
ã€ã³ã¿ãŒãã§ã€ã¹åé¢ã®åå -ã¯ã©ã€ã¢ã³ãã¯ã䜿çšããªãæ¹æ³ã«äŸåããã¹ãã§ã¯ãããŸããã
ããçŸå®çã«ããããã«ã1ã€ã®èå³æ·±ãåäœãè¿œå ãããŸããã 人ãéè·¯äžã®ééã£ãå Žæã«çŸããå Žåã圌ãåæ¢ããŠããè»äž¡ã¯åæ¢ãã鳎ãé¿ãã¯ãã§ãã ãããè¡ãããã«ãã¡ãœãããå®è£ ãããŸããã
public void CheckIntersect(Car car, People[] people) { ... if (Intersect(car, people)) { car.Stop(); car.Beep(); } } public bool Intersect(Car car, People[] people) { ... }
åäœããã§ãã¯ãããèªè»¢è»ãã·ã¹ãã ã«çŸããŠé«ééè·¯ã«èµ°ã£ãç·ã«ã¶ã€ãããŸã§ããã¹ãŠãé 調ã§ããã è¡çªãã§ãã¯ãšèªååæ¢ã¯è»ã«å¯ŸããŠã®ã¿è¡ããããããããã¯é©ãããšã§ã¯ãããŸããã
æåã®ã¯ã¬ã€ãžãŒãªã¢ã€ãã¢ã¯ãèªè»¢è»ãããã·ã³ãã¿ã€ãã®æŽŸçç©ã«ããããšããé¡æã§ããå¯èœæ§ããããŸãã çµå±ãããèŠããšãæé ã¯èªè»¢è»ã®ããã«ãã·ã³ã®ã¢ã¯ã·ã§ã³ã®ã¿ã䜿çšããæªãããšã¯äœãèµ·ãããŸããã ããããããã¯ãã®æ¹æ³ã§ã®ã¿ã§ãã ãã®ãããªå¥åŠãªæŽŸçåãããã·ã³åºæã®ãã®ã䜿çšããä»ã®ããã·ãŒãžã£ã«æž¡ããããšããã®ãããªããã·ãŒãžã£ã¯å¿ ç¶çã«å£ããŸãã
2çªç®ã®ã¯ã¬ã€ãžãŒãªã¢ã€ãã¢ã¯ãèªè»¢è»ãšäººãšã®è¡çªããã§ãã¯ããããã®å¥ã®æé ãäœæããããšã§ãã ãããããã®åŸããã¹ãŠã®ããžãã¯ãè€è£œãããããšãããããŸãã ããã«ãæ°ããè»äž¡ããšã«ããã«ããã·ãŒãžã£ãäœæããå¿ èŠããããŸãã ããã¯ãŸã£ããæè»æ§ããããŸããã
ããããè¡çªãã§ãã¯æé ã§è»äž¡ãæã€2ã€ã®ã¢ã¯ã·ã§ã³ã®ã¿ã䜿çšããå Žåãç¹å®ã®ã¿ã€ããã¡ãœããã«æž¡ãã®ã¯ãªãã§ããïŒ
ãã®ã¡ãœããã§äœ¿çšã§ããã¿ã€ãã«æºæ ããå¿ èŠãããã³ã³ãã©ã¯ããå®çŸ©ãããã¹ãŠã®ããŒã¯ã«ã«å®è£ ã§ããŸãã
public interface IVehicle { ... void Stop(); void Beep(); } public class Car : IVehicle { ... } public class Bycycle : IVehicle { ... } public void CheckIntersect(IVehicle vehicle, People[] peoples) { ... if (Intersect(vehicle, peoples)) { vehicle.Stop(); vehicle.Beep(); } } public bool Intersect(IVehicle vehicle, People[] people) { ... }
次ã«ããã®æ¹æ³ã§ã¯ãæ¢åã®ã¿ã€ãã®è»äž¡ãšãå¥çŽæ¡ä»¶ã«åŸã£ãŠå°æ¥ç»å Žããã¿ã€ãã®è»äž¡ã転éã§ããŸãã
äŸåé¢ä¿ã®é転ã®åå -æœè±¡åã¯è©³çŽ°ã«äŸåãã¹ãã§ã¯ãããŸããã 詳现ã¯æœè±¡åã«äŸåããå¿ èŠããããŸãã
ç§ãã¡ã®è¡ã«ã¯ãã¥ãŒã¹éç¥ã·ã¹ãã ããããŸãã ã·ã¹ãã ã¯éèŠãªãã¥ãŒã¹ãåä¿¡ããéœåžã®ã¹ããŒã«ãŒã·ã¹ãã ãä»ããŠããããæŸéããŸãã
public class NotifySystem { private SpeakerSystem _speakerSystem = new SpeakerSystem(); public void NotifyOnWarning(string message) { _speakerSystem.Play(message); } }
ãã¹ãŠæ£åžžã«åäœããŸãããèŠä»¶ã¯å€æŽãããåŸåããããŸãã çŸåšãã¹ããŒã«ãŒã·ã¹ãã ã§ã¯ãªããæºåž¯é»è©±ãä»ããŠSMSãšããŠã¡ãã»ãŒãžãéä¿¡ããå¿ èŠãããå ŽåããããŸãã ãã¡ãããSMSçµç±ã§éç¥ã¡ãã»ãŒãžãéä¿¡ããããã®å¥ã®ãªããžã§ã¯ããäœæããããšãã§ããŸããããã®ããã«ã¯ã»ãšãã©ã®ããžãã¯ãè€è£œããå¿ èŠããããŸãã ãããåé¿ããããã«ãä»ã®æ¹æ³ã䜿çšããŸãã éç¥ã·ã¹ãã ã¯ãååãšããŠãã¡ãã»ãŒãžã®è¡šç€ºæ¹æ³ãæ°ã«ããŸããã æãéèŠãªããšã¯ããããéä¿¡ããããšã§ãã ãããã£ãŠããããè¡ãããšãã§ããŸãã
public class NotifySystem { private IMessageDelivery _messageDelivery; public public NotifySystem(IMessageDelivery messageDelivery) { _messageDelivery = messageDelivery; } public void NotifyOnWarning(string message) { _messageDelivery.SendMessage(message); } }
éç¥ã·ã¹ãã å ã§äœ¿çšããã¡ãã»ãŒãžé ä¿¡ã·ã¹ãã ã®ã€ã³ã¿ãŒãã§ã€ã¹ãåã«çºè¡šããŸãã ãããŠããã®ã€ã³ã¿ãŒãã§ãŒã¹ã®å®è£ ã¯ãéç¥ã·ã¹ãã ã䜿çšããã人ã®è©ã«ããã£ãŠããŸãã å®éãç§ãã¡ã¯æ¶è²»è ã«ãšã£ãŠäŸ¿å©ãªããã«æ¡åŒµã§ãããããªè¡åãã¿ãŒã³ãäœæããŠããŸãã
-ãããŠããããã®ãã¹ãŠã®ååã«ç ©ãããããã©ã®ããã«ã³ãŒããæžãããšãå¯èœã§ããããïŒ
-ãã¡ããïŒ
ãããã§ãåãããã«æ©èœããŸããïŒã
-åœç¶ïŒ
-ã§ã¯ããªãããããã¹ãŠã®å°é£ãOOPãOODã®åœ¢ã§äœ¿çšããå¿ èŠãããã®ã§ããïŒ ããããã¹ãŠã®å°é£ã«ã€ããŠèããªããã°ãããã°ã©ã ããã£ãšæ©ãæžãããšã«ãªããŸãïŒ ãããŠãæžãé床ãéãã»ã©è¯ãïŒ
-ããã°ã©ã ãååã«åçŽã§ããããšã©ãŒã®ãããªãéçºãä¿®æ£ããŸãã¯ä¿®æ£ãäºæ³ãããªãå ŽåãååãšããŠããã¯ãã¹ãŠäžèŠã§ãã ãããïŒ ããã°ã©ã ãè€éãªå Žåã¯ããããå®æãããŠãµããŒãããäºå®ã§ãããããã®ãäžå¿ èŠãªå°é£ãããã¹ãŠäœ¿çšãããšãæãéèŠãªããšãã€ãŸãæ¹åãšãµããŒãã«è²»ãããããªãœãŒã¹ã®æ°ãã€ãŸãã³ã¹ãã«çŽæ¥åœ±é¿ããŸã ã
ãããã®ãã¹ãŠã®ã«ãŒã«ããã¿ãŒã³ããã©ãã€ã ã¯ãã³ãŒããã¢ãžã¥ãŒã«åãæè»ã容æã«æ¡åŒµå¯èœãããã³å€æŽã«èããããããã«ãããšãã1ã€ã®åºæ¬çãªèãæ¹ã«ãã£ãŠçµ±äžãããŠããŸãã ååãšããŠããã®ãããªå°ããççµåãããã¢ãžã¥ãŒã«ã®åäœãå€æŽããæ¹ãããã¹ãŠãæ··åšããŠãã倧ããªã¢ãžã¥ãŒã«ã®åäœãå€æŽãããããå®äŸ¡ã§ãã
ãµããžã§ã¯ããšãªã¢
ãæªãã¢ã«ãŽãªãºã ã®ã³ã¹ãã1,000ãã«ã§ããå Žåãæªãã¢ãŒããã¯ãã£ã®ã³ã¹ãã¯100äžãã«ã«ãªãããšãå¿ããªãã§ãã ãããã
ããã§ããäžèšã§èª¬æããããšã¯ãã¹ãŠãåºæ¬çã«æè¡çãªåé¡ã®è§£æ±ºçã§ãã OOPãOODã®æŠèŠããããã®å©ç¹ãããã³ãããã®äœ¿çšæ¹æ³ã«ã€ããŠã¯ããã§ã«äœå幎ãèšç»ãããŠããŸãã ããšãã°ãSOLIDãªã©ã®2ã3ã®ããŒã¯ãŒããæäœããŠãå€ãã®èª¬ææ å ±ãååŸããã ãã§ååã§ãã
åé¡ãéåžžã«äžè¬çã§ããããã®è§£æ±ºã®ããã«äœããã®ã¢ã«ãŽãªãºã ãå¿ èŠãšããå Žåãã»ãšãã©ã®å Žåããã§ã«ååšããŠããå¯èœæ§ããããŸãã æ€çŽ¢ãšã³ãžã³ã§ã®ããã€ãã®ã¯ãšãªãããšãã°ãã 茪ã«ãªã£ãã¯ãŽã³ãæ°ãã解決ç ããšãç®ã®åã«ããäœçŸãã®çµæã
ããããããžãã¯ãã¢ãžã¥ãŒã«ãšãµãŒãã¹ã«æ£ããåå²ããã«ã¯ãæè¡çãªç¥èã ãã§ã¯äžååã§ãããæ€çŽ¢ãšã³ãžã³ã¯ããã§ã¯åœ¹ã«ç«ã¡ãŸããã äž»é¡åéãããç解ããå¿ èŠããããŸãããããã¯æ¢ã«åé¡ã«ãªã£ãŠããŸããããã°ã©ãã³ã°ãšã¯ãŸã£ããé¢ä¿ã®ãªãããšãåŠã¶ããšã«å€å€§ãªåªåãæãå¿ èŠãããããã§ãã ãã®ãããéçºè ã¯æè¡çãªåé¡ã解決ããããšã奜ã¿ãã¢ããªã¹ãã«é Œã£ãŠããžãã¹äžã®åé¡ã解決ããŸãã ããããã¢ããªã¹ãã¯ããã°ã©ã ã®å éšæ§é ãèªèããŠããŸãããå éšæ§é ã¯ããžãã¹ã®æ§é ãåæ ããŠããŸãããããã®æ§é ã«é¢ããéçºè ã®ã¢ã€ãã¢ãåæ ããŠããŸãã ãããŠããã®èŠè§£ãçŸå®ããé ãããã»ã©ããã®æ§é ã¯ãããžãã¹ã§çºçããå€åã«åãããŠå€æŽããããšãããé£ãããªããŸãã
ãããåé¡ã®äºéã®è§£éã«ãããã®ã§ãã æåã«ãã¢ããªã¹ãã¯ã¢ããªã±ãŒã·ã§ã³ã§è¿œå ãŸãã¯å€æŽããå¿ èŠããããã®ãç解ããããšããããžãã¹ãŠãŒã¶ãŒãšéä¿¡ããŸãã ãã®åŸã圌ã¯ãã®ç¥èãéçºè ã«èªåã®èšèã§äŒããããšããŸãã ãã®çµæãçå®ãæªããããããããã¹ãŠã®æªã¿ãæé©ãªããã°ã©ã æ§é ã§ã¯ãªããªãå¯èœæ§ããããŸãã
ãŠãŒã¶ãŒã¯ããã¹ãŠãèŠããããã«ãæ¥å ã家ã®éšå±ã®æ¥å ã«å ¥ããªãããã«ãšããé¡ããè¡šæããŸããã éçºè ã¯ãèãçŽãããšãªããå£ã®äžžãç©Žãããã¬ããŠç¢ºèªããŸãããå ããŸã 足ããªãããšãããããŸããã ãã®åŸãéçºè ã¯è¿ãã®2ã€ã®ç©Žãããã¬ããå床確èªããŸããã ååãªå ãããããšã確èªããåŸãéçºè ã¯ã¿ã¹ã¯ãå®äºãããšå€æããŸããã ãã®ååã«ããã°ããã¹ãŠã®å®¶ã«ç©Žã空ããŠããŸããã èŠä»¶ã¯æºããããŸããã
ããããå€ãçµãããå¬ãæ¥ãŠãããã§å¯ããå€ãããŸããã æã£ããŠãŒã¶ãŒã¯èµ°ãå§ããéšå±ãã²ã©ãå¯ããªã£ãããšãèªãå§ããŸããã çç±ãæ確ã«ãããšãæ¥å ã®äžã§ç©Žãéããããã«ãéãããå€ãã®å·ãã空æ°ãéšå±ã«å ¥ããåçµããããšãæããã«ãªããŸããã ç¶æ³ãæ確ã«ããåŸããŠãŒã¶ãŒã¯æ®éã®ãŠã£ã³ããŠãæãã§ããããšãããããŸããããããã€ãã®èŠä»¶ã«ã€ããŠèšåããã®ãå¿ããã¢ããªã¹ãã¯èªåã®ããæ¹ã§äœããäžããäœãèµ·ãã£ãã®ããããããŸããã ãã¹ãŠãåçµããããããå€åºå ã§åé¡ã解決ããå¿ èŠããã£ããããè¯ãçªãéçºããããå¬ã«çªã®ç©ŽãäœãçŽãããããæéã¯ãããŸããã§ããã ãã®ããããæŸèæããšä»²è¯ãããŠãç©Žãããªãšãã¬ã³ã§å¡ãããšã«ããŸããã ãã®æ¹æ³ã¯ãæ¿ããåçµãåãé€ãã®ã«åœ¹ç«ã¡ãååŸã«ã¯æ¥å ãæ®ãããšãã§ããŸããã ããããåæèŠä»¶ã®äžå®å šãªç解ãããããæ°ããåé¡ã®æ°ã誰ãç¥ã£ãŠããã®ã...
éçºã®ãã¹ãŠã®åå è ã®éã§ãã®åé¡ã解決ããããã«ãäœãèµ·ãã£ãŠããã®ãããããŠäœã®ããã«ãããå¿ èŠã§ããã®ãã«ã€ããŠã®å ±éã®å¹³çãªã¢ã€ãã¢ãéçºãããã¹ãã§ãã ããã«ã¯å šäœçãªã¢ãããŒãããããŸãã ãã¡ã€ã³é§åèšèšã®ç®çã¯ãéçºã®ãã¹ãŠã®åå è éã§å ±éã®ç解ãšå ±éã®çšèªïŒå ±éèšèªïŒãéçºããããšã§ãã
ã¢ãã«ã«å¯Ÿããäžååãªç解ã¯ãéçºè ãæè¡çãªåé¡ã解決ããããã«ãéçºè ããã身è¿ã§ç解ããããããšãããããšãããšããäºå®ã«ã€ãªãããŸãã çŽç²ã«æè¡çãªæ¹æ³ã§ããžãã¹äžã®åé¡ã®è§£æ±ºãå«ã¿ãŸãã ãããŠæè¡çãªåé¡ããªãå Žå-圌ãã®çºæãšåœŒãèªèº«ã®è±éçãªè§£æ±ºçã ããã¯ãã¹ãŠãããã°ã©ã å ã®å¥åŠã§äžæçãªæ§é ã®åºçŸã«ã€ãªããã ãã§ãã äžæ¹ãéçºè ãIpoteka Driven Developmentã«åŸãå Žåãããã¯æèçãªéžæãããããŸããã
ããããOODã®ååããã®ä»ã®æœè±¡çãªãããã¯ã«é¢ããçãæ è¡ãçµããŠãããã°ã©ã ã«æ»ãæãæ¥ãŸããã ã¢ãã«ã«ããžãã¹ããžãã¯ãè¿œå ãããšãåçµããéœåžã®ã¹ãããã·ã§ããã ãã§ãªããæ¬æ Œçãªã¢ãã«ãåŸãããŸããã å®éã®ã¢ãã«ã®ç¶æ ãšåãæ¹æ³ã§ç°¡åã«ç¶æ ãå€æŽã§ããã¢ãã«ã
ãã¬ãŒã³ããŒã·ã§ã³ããžãã¯
ç§ãã¡ã®ãã¹ãŠã®æåã«ããããããããŠãŒã¶ãŒã¯çµ¶æ» ããã¢ãã¿ãŒã®åã§ã€ã©ã€ã©ããŠåŸ ã¡ç¶ããŠããŸãã ç§ãã¡ã¯éœåžã®ã¢ãã«ãäœæããããã«çåœãå¹ã蟌ã¿ããã®å€åã®è«çãèšè¿°ããŠãéåžžã«éèŠãªä»äºãããŸããã ä»ãç§ãã¡ã¯ãŠãŒã¶ãŒã«ç§ãã¡ããã£ãããšããèŠããæ©äŒãäžããå¿ èŠããããŸãããããè¡ãã«ã¯ããŠãŒã¶ãŒãšå¯Ÿè©±ããããã«ã¢ããªã±ãŒã·ã§ã³ãæããå¿ èŠããããŸãããŸãããŠãŒã¶ãŒã¯èªåã®éœåžã§äœãèµ·ãã£ãŠããã®ããè»ãã©ã®ããã«åãã®ããå€çªãã©ã®ããã«ç¹ç¯ããã®ãã人ã ãã©ããžé£ã³åºãã®ããèŠãããšæã£ãŠããŸãããããŠæ¬¡ã«ã圌ã¯è¡ã«åœ±é¿ãäžããããšæã£ãŠããŸã-ä¿¡å·æ©ãåãæ¿ããæŒå€ãå€ããæ°ãã家ãäœããŸããªã©ã
ããããå šäœãå šäœãšããŠã«ããŒããããšã¯ãåçŽãªå Žåã«ã®ã¿å¯èœã§ããã¢ãã«ãè€éãªå Žåãç»é¢äžã«å®å šã«è¡šç€ºããããã«ç解ããããã«ãããã¯é£ããã ãã§ãªããã»ãšãã©äžå¯èœã«ãªããŸããè€éãã«å¯ŸåŠããæåã®æ¹æ³ã¯ãããããè¡ãããã«ãè€éããããåçŽãªéšåã«åå²ããããšã§ããã¢ãã«ã®ç¶æ ãéšåã§è¡šç€ºããŸããæãéèŠãªããšã¯ããããã®éšåãæ£ããèå¥ããããšã§ãããã®ãããªåéšåã¯ãã§ããã ãèªçµŠèªè¶³ã§ãªããã°ãªããŸãããããã€ãã®æçšãªæ å ±ãç解ããããå€æŽã«é¢ããŠå¿ èŠãªæ±ºå®ãäžãããããã®ã«ååã§ãããããã£ãŠããŠãŒã¶ãŒã®ã¿ã¹ã¯ã«å¿ããŠç¶æ ãããŒãã«åå²ãããããããŠãŒã¶ãŒã«è¡šç€ºããããšããŸãã
ããšãã°ã亀差ç¹ã®ä¿¡å·æ©ã調æŽããŸãããããè¡ãããã«ãç§ãã¡ã¯ã©ã®å®¶ãç«ã£ãŠãããã人ã ãåããŠãããäœãã§ããããéä¿¡å·ãåŸ ã£ãŠããããè¡ã®å察åŽã§äœãèµ·ãã£ãŠããããç¥ãå¿ èŠã¯ãããŸããã決å®ãäžãããã«å¿ èŠãªã®ã¯ãååæ¶ãšãã®äžã«ãããã®ã«é¢ããæ å ±ã ãã§ããè»ã®æ°ãšè»ç·ã®æ°ã暪ææ©éã§äœäººã®äººãåŸ ã£ãŠããããä¿¡å·æ©ã®ä¿¡å·ã¯äœã§ããããã®ã¿ã¹ã¯ã®ã³ã³ããã¹ãã§ã®äº€å·®ç¹ã¯ãä»ã®ãªããžã§ã¯ãïŒè»ãä¿¡å·æ©ã人ïŒãæ¥ç¶ãããŠããã«ãŒããªããžã§ã¯ãã§ããããšãã°ãéœåžã®äº€éæµå šäœã管çãããªã©ã®å¥ã®ã¿ã¹ã¯ã®å Žåã亀差ç¹ã¯å¥ã®ã«ãŒããªããžã§ã¯ãïŒéœåžå šäœã®èŒžéã€ã³ãã©ã¹ãã©ã¯ãã£ïŒã®äžéšã«ãªããŸãã
ãŠãŒã¶ãŒã®ç»é¢ã«äº€å·®ç¹ã®ç¶æ ã衚瀺ãããšãå®éã«ã¯ãããã°ã©ã ã«ã¢ã¯ã»ã¹ãããšãã®åœŒã®ãåçãã衚瀺ããããŠãŒã¶ãŒã¯ããã調ã¹ãŠæ±ºå®ããæ©äŒãäžããããŸãããŠãŒã¶ãŒã¯ããã®ãåçããããããè§åºŠããç 究ããèªåã«åœ¹ç«ã€äœããåŠã¶ããšãã§ããŸãããã®ç¥èã«åºã¥ããŠã圌ã¯ã¢ãã«ã®ç¶æ ã®å€æŽã«ã€ããŠæ±ºå®ãäžãããšãã§ããŸãããããè¡ãããã«ã圌ã¯ãäŸãã°ã亀éä¿¡å·ãåãæ¿ããããšãã§ããŸãããã¡ãããåçã¯ããªãŒãºããã«ã¢ãã¡ãŒã·ã§ã³åããããšãã§ããŸããå®æçã«å€æŽããçºçããå€æŽã衚瀺ããŸãããã ããææ°ã®ã¹ããŒã¿ã¹ã衚瀺ãããä¿èšŒã¯ãããŸããã
å®éã®ã¢ãã«ãä»®æ³ã¢ãã«ã«è»¢éããéçšã§ãããã¯ãã©ã¡ãŒã¿ãšãã®å€ã®é人éçãªã»ããã«å€ãããŸããããããŠãããªãã®å¿ãæããšããã«ããã®ããŒã¿ã»ããã¯ããããå€æãããŸãããããã£ãŠãã¯ãã¹ããŒãã¯ãã¢ãã«ã®ä»ã®éšåãšåæ§ã«ãããŸããŸãªæ¹æ³ã§è¡šç€ºã§ããŸãããããŠãããããã¹ãŠã䜿ããããããã§ã¯ãããŸããããã®å©äŸ¿æ§ã¯ããŠãŒã¶ãŒã®ææ決å®ã®ã¹ããŒããšå質ã«è¡šããŸãã
ããšãã°ã亀差ç¹ã®ç¶æ ãããã€ãã®ãªã¹ãã®åœ¢åŒã§ç»é¢ã«è¡šç€ºã§ããŸããäžæ¹ã§ã¯ãçŸåšèµ°è¡äžã®ãã¹ãŠã®è»ããªã¹ãããããäžæ¹ã§ã¯-亀差ç¹ã«ãã人ã ããªã¹ãããŸãããªã¹ãã«å ããŠãä¿¡å·æ©ãšäº€å·®ç¹ã®ååãšåº§æšãå«ãããã€ãã®ããã¹ããã£ãŒã«ãã衚瀺ããã¹ã€ããã®ã»ãããç»é¢ã«è¡šç€ºãããŸãã
ãŸãã¯ã亀差ç¹ã人ã«ãšã£ãŠãã䟿å©ãªæ¹æ³ã§è¡šç€ºã§ããŸããå®éã®ã¢ãã«ã«èŠããããã«äº€å·®ç¹ãæããè»ã人ã眮ããä¿¡å·æ©ãæããŸããè§ã®ã©ããã«ã亀差ç¹ã®äœçœ®ã瀺ãã¢ã€ã³ã³ãšãšãã«ãéœåžã®ãããããã衚瀺ããŸããæããã«ã2çªç®ã®ã±ãŒã¹ã§ã¯ãç¶æ ã®èªèãã¯ããã«äŸ¿å©ã§é«éã«ãªããŸããã©ã¡ãã®å Žåã§ããç»é¢ã«ã¯åãããŒã¿ã衚瀺ãããŸãã
ããã°ã©ã ã®æ®ãã®éšåã§ãåãã§ã-ããŒã¿ãç»é¢ã«è¡šç€ºããã ãã§ãªããã§ããã ã䟿å©ã§ç解ãããããã®ã«ããããšãéåžžã«éèŠã§ãã
ãããŠãMicrosoft HoloLensã®ãããªãã®ã䜿çšããå Žåãäžè¬çã«ãä»®æ³éœåžãçŸå®ã®ããã«è¡šç€ºããããããã«äŸ¿å©ã«ãããã§ããŸãã
ç¶æ ä¿å
, , .
â â .
â â .
. . â , â . , âŠ
ãã¡ãããç§ãã¡ã®äžçã¯å®ç§ãšã¯ã»ã©é ããã®ã§ãããã³ã³ãã¥ãŒã¿ãŒã¯ç¶ç¶çã«åäœããããšã¯ã§ããŸãããããã«ãã³ã³ãã¥ãŒã¿ãŒã®RAMã¯ãã¢ãã«ã®ãã¹ãŠã®ç¶æ ãã¡ã¢ãªã«ä¿æããã®ã«ååã§ã¯ãªãå ŽåããããŸãããããã£ãŠãã³ã³ãã¥ãŒã¿ãŒã®ã·ã£ããããŠã³ã«èããããããã«ç¶æ ãç¶æããããšã¯ãã»ãšãã©ã®ããã°ã©ã ã®éèŠãªèŠçŽ ã§ãããŸããã¢ãã«ã®ãã¹ãŠã®ãªããžã§ã¯ããåæã«å€æŽãããããšã¯ãªããããéåžžã¯åžžã«ä¿åç¶æ ãç¶æããå°ããªéšåã§ä¿åç¶æ ãã埩å ããŠãå¿ èŠãªå€æŽã衚瀺ãŸãã¯å€æŽã§ããŸãããã®åŸãæ°ããç¶æ ãå®å šã«ä¿åã§ããŸãã
ç¶æ ãä¿åããã«ã¯ãããŸããŸãªæ¹æ³ããããŸããäœããã®åœ¢åŒã§ãã¡ã€ã«ãä¿åãããããã£ã¹ã¯ãŸãã¯USBãã©ãã·ã¥ãã©ã€ãã«æžã蟌ãã ããç¹å¥ãªã¹ãã¬ãŒãžã·ã¹ãã ã䜿çšãããã§ããŸããçŸæç¹ã§æãäžè¬çãªæ¹æ³ã¯ããã®ããã«ããŒã¿ããŒã¹ã䜿çšããããšã§ããçŸåšæã人æ°ã®ããã®ã¯ãªã¬ãŒã·ã§ãã«ããŒã¿ããŒã¹ã§ãã
ãã€ãŒã«ãåçºæãããRDBMSã䜿çšããŠã¢ãã«ã®ç¶æ ãç¶æããåé¡ã解決ããŸãããããŒã¿ã®ä¿åãšååŸã®å©äŸ¿æ§ã«å ããŠãããŸããŸãªå¶éã䜿çšããŠå®è£ ãããããŒã¿æŽåæ§å¶åŸ¡ãªã©ã®è¿œå ã®äŸ¿å©ãªæ©èœãæäŸããŸãããŸããããŒã¿ããŒã¹ã¯ä¿åæã®ããŸããŸãªé害ããä¿è·ããå€æŽãããç¶æ ãéšåçã«ããèšé²ã§ããªããããç Žæç¶æ ã«ãªããŸãã
ããŒã¿ããŒã¹ã§ã¯ããã¹ãŠã®æ å ±ã¯ããŒãã«ã«ä¿åãããŸããååãšããŠããªããžã§ã¯ãã®åã¿ã€ãã«ã¯ç¬èªã®ããŒãã«ããããŸãããŸãããã®è¡šã®ãªããžã§ã¯ãã®åããããã£ã«ã¯åããããŸãããã®ãããããã¿ã€ãã®ã€ã³ã¹ã¿ã³ã¹ãä¿åããã«ã¯ãé©åãªåã»ããã䜿çšããŠããã®ã€ã³ã¹ã¿ã³ã¹ã«é©ããããŒãã«ãäœæããå¿ èŠããããŸãã
ããŒãã«ã®å¿ èŠãªæ§é ããã¹ãŠèª¬æããã®ã§ãå®å šæ§ãå¿é ããªãããã«ãæçµçã«ããŒã¿ããŒã¹ã«ç¶æ ãä¿åã§ããŸãããã ãããã®ããã«ã¯ããããã®ããŒãã«ã䜿çšããŠç¶æ ãä¿åããã³ããŒãããããšãã¢ããªã±ãŒã·ã§ã³ã«æããå¿ èŠããããŸãããããè¡ãããã«ãå®æããããŒã«ãORMã®åœ¢åŒã§ååŸããããŒã¿ããŒã¹å ã®ã¿ã€ããšããŒãã«éã®ãããã³ã°ã説æããŸããã¿ã€ããããã»ã©å€ããªãå ŽåããŸãã¯ãµãŒãããŒãã£ã®ããŒã«ã䜿çšããããªãå ŽåããŸãã¯äœ¿çšã§ããªãå Žåã¯ãä»ã® æ¹æ³ããããŸãã
ä¿åããå¥ã®èå³æ·±ãæ¹æ³ã¯ãã¢ãã«èªäœã®ç¶æ ãä¿åããã®ã§ã¯ãªãããã®ç¶æ ãå€æŽããã¢ã¯ã·ã§ã³ãèšè¿°ããããšã§ããäžé£ã®åããšããŠãããŒã¿ããŒã¹å ã®ããçŽããã°ãŸãã¯ãã§ã¹ã®è©Šåã®èšé²ã«äŒŒãŠããŸãããã®ã¢ãããŒãã¯ãã€ãã³ããœãŒã·ã³ã°ãšåŒã°ããŸãã
-èããŠãããŒã¿ãä¿åããããã®æ§é ãäœæãããããã«å¶éãããªã¬ãŒãããŒãã«éã®é¢ä¿ãªã©ãè¿œå ããããšãããããŸãããã¢ããªã±ãŒã·ã§ã³ãµãŒããŒäžã®ã¢ãã«ã«æ¢ã«ååšããããžãã¹äžã®å¶çŽãè€è£œããŸããïŒ
-ãã®ããã«ãªããŸãã
-è€è£œãæªãããšãç¥ããã³ã«ããããè€è£œãããããšãå€æããŸãããããŒã...
éå±€å
ããã°ã©ã ãæ éã«äœæããç°ãªãã¢ã¯ã·ã§ã³ãæ··åšãããªãããã«ãããããæçµçã«ãããã€ãã®ç°ãªãããžãã¯ã¬ã€ã€ãŒããããŸããã
ããžãã¹ããžãã¯
ããã¯ãã¢ãã«ã®ç¶æ ãå€æŽããããã°ã©ã ããžãã¯ã®äžéšã§ããå€æŽãè¡ãããã«æºãããªããã°ãªããªãæ¡ä»¶ãšãå€æŽèªäœã«ã€ããŠèª¬æããŸãã圌女ã¯ã¢ãã«ãç¥ã£ãŠãããå©çšå¯èœã§ãã
ãã¬ãŒã³ããŒã·ã§ã³ããžãã¯
ããã¯ãã¢ãã«ã®ç¶æ ãšäœ¿çšå¯èœãªã¢ã¯ã·ã§ã³ããŠãŒã¶ãŒã«è¡šç€ºããããã°ã©ã ã®ããžãã¯ã§ãã圌女ã¯ã衚瀺ããå¿ èŠãããã¢ãã«ãšåŒã³åºãããšãã§ããããžãã¹ããžãã¯ãç¥ã£ãŠããŸãã
ããŒã¿ã¢ã¯ã»ã¹ããžãã¯
ããã¯ãã¢ãã«ã®ç¶æ ãä¿åããã³ããŒãããæ¹æ³ãç¥ã£ãŠããããã°ã©ã ã®ããžãã¯ã§ãã圌女ã¯ã¢ãã«ãšãããŒã¿ããŒã¹ããã®ããŒã¿ãã©ã®ããã«åã蟌ãããšãã§ããããç¥ã£ãŠããŸãã
ã¢ããªã±ãŒã·ã§ã³ããžãã¯
ããã¯ãæ¥çå€ã®ããã«ãã¹ãŠãçµã³ä»ããããžãã¯ã§ãã圌女ã¯ããžãã¹ããžãã¯ãããŒã¿ã¢ã¯ã»ã¹ããžãã¯ãããã³ãã¬ãŒã³ããŒã·ã§ã³ããžãã¯ã«ã€ããŠç¥ã£ãŠããŸãã圌女ã¯ããããçµã³ã€ããå©ãããäºãã®çžäºäœçšã確ç«ããŸãã
ãã®åé¢ã«æºæ ãããšãã¢ããªã±ãŒã·ã§ã³ã®å€æŽãç°¡åã«ãªããŸããã¬ã€ã€ãŒã®çžäºç解ãå°ãªããããžãã¯ãçžäºã«é ãããŠããã»ã©ãå€æŽã容æã«ãªããŸããå®éããã¬ãŒã³ããŒã·ã§ã³ããžãã¯ã®éãã¯äœã§ãããã¢ãã«ã®ç¶æ ã¯ã©ãã«ã©ã®ããã«ä¿åãããŸããïŒãŸãããã®éã«ãããŒã¿ã¹ãã¬ãŒãžã®ããžãã¯ãšã®éãã¯äœã§ããããã®ããŒã¿ã¯ã€ã³ã¿ãŒãã§ã€ã¹ã§ã©ãã§ã©ã®ããã«è¡šç€ºãããŸããïŒçµå±ã®ãšããããããã衚瀺ããã«ã¯ããã€ãã®æ¹æ³ãããããããã¯äºãã«å€§ããç°ãªãå¯èœæ§ããããŸããåæã«ãã¢ãã«ã¯ãã¢ããªã±ãŒã·ã§ã³ããã®ç¶æ ãä¿åããæ¹æ³ãããã®ç¶æ ãç»é¢ã«è¡šç€ºãããæ¹æ³ãæ°ã«ããŸãããä»ã®ã¬ã€ã€ãŒã¯ããã°ã©ã ã®äžå¿éšåã§ãããããã¢ãã«ãŸãã¯ããžãã¹ããžãã¯ã®å€æŽã®ã¿ãä»ã®ã¬ã€ã€ãŒã«åœ±é¿ãäžããŸãã
2段
â ! â . â !
â , , . â .
â ⊠â . â , .
â , â . â , .., , .
â ? â . â , , .
.
äºãã®å€æŽã確èªããã«ã¯ããŠãŒã¶ãŒã¯ã¢ãã«ã®åãç¶æ ã§äœæ¥ããå¿ èŠããããŸããã¢ãã«ã®ç¶æ ã¯ããŒã¿ããŒã¹ã«ä¿åããããããããã¯ãŠãŒã¶ãŒãå ±éã®ããŒã¿ããŒã¹ã䜿çšããå¿ èŠãããããšãæå³ããŸããååãšããŠããã¹ãŠã®ãŠãŒã¶ãŒã®ããã°ã©ã ãã¢ã¯ã»ã¹ã§ããå¥ã®ã³ã³ãã¥ãŒã¿ãŒã«é 眮ãããŸãã
ããã§ãåæã«è€æ°ã®ãŠãŒã¶ãŒãã¢ãã«ã®åãç¶æ ãèŠãŠå€æŽã§ããŸããããããå¥ã®åé¡ãç»å ŽããŸãã- 競äºã¢ã¯ã»ã¹ã®åé¡ã§ããããŸããŸãªæ¹æ³ã§è§£æ±ºã§ããŸããæãäžè¬çãªæ¹æ³ã¯ããªãœãŒã¹ã«å€æŽãå ããåã«ããªãœãŒã¹ãããã¯ããŠã¢ã¯ã»ã¹å°çšã«ããããšã§ããããã䜿çšããŸãããããè¡ãã«ã¯ãããã°ã©ã å šäœã泚ææ·±ã調ã¹ãããã¯ãè¿œå ããå¿ èŠãããå Žæãç解ããå¿ èŠããããŸãã
ã¿ã¹ã¯ãå°æ°ã®ãªãœãŒã¹ãçæéããã¯ããå¿ èŠãããå Žåã«é©ããŠããŸãã倧éã®ãªãœãŒã¹ããããã¯ããé·æéãããè¡ãå¿ èŠãããå Žåãããã¯æªãããšã§ãããã®ãããªå Žåãå¥ã®ã¢ãããŒããè©Šãããšãã§ããŸãã
ããã°ã©ã ã2å°ã®ã³ã³ãã¥ãŒã¿ãŒã«ç©ççã«åå²ããåŸãã¯ã©ã€ã¢ã³ããµãŒããŒïŒ2å±€ïŒã¢ãŒããã¯ãã£ãååŸããŸããã
ãã®ç©ççãªåé¢ã¯ãããã«æè¡çãªåé¡ãè¿œå ããŸãããŸãããããã¯ãŒã¯æ¥ç¶ãåæãããå¯èœæ§ããããããã¯è¿œå ã®é害ãã€ã³ãã«ãªããŸããããã¯ããããã¯ãŒã¯ã®åæãŸãã¯ãµãŒããŒã®ã¢ã¯ã»ã¹äžèœãšã©ãŒãæ£ããåŠçããããã«ãã¢ããªã±ãŒã·ã§ã³ãéçºããéã«èæ ®ããå¿ èŠããããŸãã
第äºã«ããããã¯ãŒã¯ãä»ããããŒã¿äŒéã«ã¯ããå€ãã®æéãå¿ èŠã§ããããããèæ ®ããå¿ èŠããããŸããäžæ¹ã§ã¯ãããŒã¿ååŸãé«éåããããã«ãããŒã¿ãã¯ã©ã€ã¢ã³ãã«ãã£ãã·ã¥ã§ããŸããäžæ¹ãå€æŽã¯ç¶ç¶çã«éä¿¡ãããã®ã§ã¯ãªããã¿ã¹ã¯ã®äžéšãšããŠèç©ãããåäžã®ãªã¯ãšã¹ãã§éä¿¡ãããŸãã
Nå±€
-ãããŠãç§ãã¿ãã¬ããããè¡ãå¶åŸ¡ããã®ã¯ãŸã æ®éã§ãããªããªããç§ãä»äºãã家ã«åž°ãéã圌ãäœããæ°ããåã«ç ãã«èœã¡ããããªè€éãªèšç®ãããããã§ãã -ãŠãŒã¶ãŒã®äžäººã«å°ããã
-ãããŠããã¹ãŠã®ã¢ã¯ã·ã§ã³ã«ã¢ã¯ã»ã¹ã§ããããã§ã¯ãªãæ°ãããŠãŒã¶ãŒãå¿ èŠã§ãã -å¥ã®ãŠãŒã¶ãŒãèšã£ãã
éçºè ã®ç®ã«ã¯éŠŽæã¿ã®ããå€èŠ³ãç»å ŽããŸãã...
æ°ããåé¡ã解決ããã«ã¯ãããã°ã©ã ã®ããžãã¹ããžãã¯ããŠãŒã¶ãŒã³ã³ãã¥ãŒã¿ãŒããããã®å°çšã®ã³ã³ãã¥ãŒã¿ãŒïŒéåžžã¯ã¢ããªã±ãŒã·ã§ã³ãµãŒããŒãšåŒã°ããïŒã«è»¢éããå¿ èŠããããŸãã
ã¬ã€ã€ãŒãžã®è«çã®ãã¡ããšããåå²ã¯ãç§ãã¡ã®æã«ããã£ãŠããŸãããã¬ãŒã³ããŒã·ã§ã³ããžãã¯ãšããžãã¹ããžãã¯ã¯æ¢ã«å®å šã«åé¢ãããŠãããããæ®ãããã®ã¯ããããç©ççã«åé¢ãããããã®çžäºäœçšã®ããã®è¿œå ã®ã¢ããªã±ãŒã·ã§ã³ããžãã¯ãäœæããããšã ãã§ãããç§ãã¡ã®ã·ãã¯ã¯ã©ã€ã¢ã³ãå€§å¹ ã«ããžãã¹ããžãã¯ãå«ãã§ããã·ã³ããŒããšãªãã·ã³ã¯ã©ã€ã¢ã³ãã
çæãšããŠãã¯ã©ã€ã¢ã³ã/ãµãŒããŒã¢ãããŒãã®å Žåã®ããã«ããããã¯ãŒã¯ã®åé¡ã®å¯èœæ§ãšãããžãã¹ããžãã¯ãšãã¬ãŒã³ããŒã·ã§ã³ããžãã¯ã®ç©ççãªåé¢ã«ããã¢ããªã±ãŒã·ã§ã³ã®é床ã®äœäžãè¿œå ãããŸããããã«ãå€æŽã«ã¯å€æŽãããå°é£ã«ãªããšããäºå®ãå«ãŸããŸããããŒã¿è»¢éã«å¿ èŠãªã³ãŒããå«ããããå€ãã®ã³ãŒãã«åœ±é¿ããŸã ã¢ããªã±ãŒã·ã§ã³ãµãŒããŒãšã¯ã©ã€ã¢ã³ãã®éã
2ãšããŠ3
å®éãäžèšã®åé¡ã解決ããããã«ã3å±€ã¢ãŒããã¯ãã£ã䜿çšããå¿ èŠã¯ãããŸããã2å±€ã¢ãŒããã¯ãã£ã§ãããã®åé¡ã解決ããã«ã¯ãããžãã¹ããžãã¯ãããŒã¿ããŒã¹ã«ç§»åããŠãã¯ã©ã€ã¢ã³ããèãããŸãããã®ã¢ãããŒãã«ã¯é·æãšçæããããŸãã
ç¹çãã¹ãã¯ãããžãã¹ããžãã¯ãšã¢ãã«ã®ç¶æ ãç©ççã«åé¢ãããŠããããé床ãšãã©ãŒã«ããã¬ã©ã³ã¹ã®äž¡æ¹ã«ãã©ã¹ã®å¹æãããããšã§ãããã€ãã¹ã®ãã¡ãããŒã¿ããŒã¹ã§æãéèŠãªããšã¯ãããžãã¹ããžãã¯ããµããŒãããã®ã§ã¯ãªããããŒã¿ãä¿åããã³ååŸã§ããããšã§ãããããã£ãŠãå¯èœæ§ã®èšèªãã䜿çšããŸãããŒã¿ããŒã¹ã§ã¯ãææ°ã®é«ã¬ãã«èšèªãããæ©èœãå£ã£ãŠããŸãããŸããå€çš®å€æ§ãªãã¬ãŒã ã¯ãŒã¯ã䜿çšããéåžžã®æ©èœã¯ãããŸããããããã¯ãã¹ãŠãæè»ãªã³ãŒããæžãèœåãšã³ã¹ãã«åœ±é¿ããŸãã
ãã1ã€ã®æ¬ ç¹ã¯ãã¹ã±ãŒãªã³ã°ããèœåã§ããè² è·ã®é«ãæäœã«å¯Ÿå¿ããã¢ããªã±ãŒã·ã§ã³ãµãŒããŒã®ã¹ã±ãŒãªã³ã°ã¯ãããŒã¿ããŒã¹ãããç°¡åã§ãããããã®åŽé¢ãèæ ®ãããšãããžãã¹ããžãã¯ã«åå¥ã®ãªã³ã¯ãã¢ããªã±ãŒã·ã§ã³ãµãŒããŒãšããŠäœ¿çšããæ¹ããããŒã¿ããŒã¹ã«ä¿æãããããå®äŸ¡ã§ããããšãå€ãããšãããããŸãã
ãµãŒãã¹
â - . â , â , â . â - , ? â .
â â â , ? â .
æåã®æ®µéã§ååãªæéãè²»ããã察象åéãååã«ç解ããŠããããããµãŒãã¹ã®ã°ã«ãŒããéžã³åºãããšãã§ããŸãããããšãã°ã亀éå¶åŸ¡ãµãŒãã¹ããšãã«ã®ãŒç®¡çãµãŒãã¹ããŸãã¯å»ºç©ç®¡çãµãŒãã¹ã§ãããããã®ãµãŒãã¹ã¯ãã¹ãŠä»®æ³éœåžã®äžéšã§ãããã»ãšãã©æ¥ç¶ãããŠããããã»ãšãã©æ¥ç¶ãããŠããŸããããããã£ãŠãããã°ã©ã ã³ãŒãã¯åãæ¹æ³ã§èšè¿°ããããµãŒãã¹ããšã«åé¡ãããŠããŸãããããå®çŸããããã«ãåãµãŒãã¹ã«å¿ èŠãªãããªãã¯ã¡ãœããã»ãããç¹å®ããä»ã®ãã¹ãŠãé ããŠããŸãããããã£ãŠããµãŒãã¹ãããã©ãã¯ããã¯ã¹ãã«å€ããŸãããããã¯ãã¡ãœããã¢ã¯ã»ã¹ä¿®é£Ÿåãã€ã³ã¿ãŒãã§ã€ã¹ãæœè±¡ã¯ã©ã¹ãªã©ã®ããŸããŸãªèšèªããŒã«ã䜿çšããŠç°¡åã«å®çŸã§ããŸããã
æ¥ç¶æ§ãäœããããã»ãšãã©ã®å Žåããããã®ãµãŒãã¹ã¯ãã¹ãŠäºãã«ç¬ç«ããŠå€æŽã§ããŸãããããããªããªãç©ççã«ã¯ããããã®ãµãŒãã¹ã¯ãã¹ãŠ1ã€ã®ããã°ã©ã ã§ããããã®ãããªå€æŽãã¯ã©ã€ã¢ã³ããåå¥ã«ã€ã³ã¹ããŒã«ããããšã¯ã§ããŸããããµãŒãã¹ãé »ç¹ã«å€æŽããããã®ãããªå€æŽãã§ããã ãæ©ãã¯ã©ã€ã¢ã³ãã«ã€ã³ã¹ããŒã«ããå¿ èŠãããå Žåãããã¯ããŸã䟿å©ã§ã¯ãããŸãããä»ã®ãµãŒãã¹ã«åŒ·å¶çã«äŸåããŠãããããé¿ããããšæããŸãã
ãã®åé¡ã«å¯ŸåŠããããã«ãããã°ã©ã ãç©ççã«ããã€ãã®éšåã«åå²ããŸããããã®ãããªç©ççãªåé¢ã¯ãããŸããŸãªãã¡ã€ã«ïŒã©ã€ãã©ãªïŒãžã®ãµãŒãã¹ã®å²ãåœãŠã§ããããã«ãããããã°ã©ã ãè€æ°ã®ãã¡ã€ã«ïŒã¡ã€ã³ã®å®è¡å¯èœãã¡ã€ã«ãšäžé£ã®ã©ã€ãã©ãªïŒã«åå²ã§ããŸããã
ãã®ç©ççãªåé¢ã«ããããµãŒãã¹ãåå¥ã«æŽæ°ããããšãå¯èœã«ãªããŸããããã¯ããµãŒãã¹ã©ã€ãã©ãªã®åçŽãªçœ®ãæãã§ãããµãŒãã¹ã¯ç©ççã«åé¢ãããŠãããšããäºå®ã«ãããããããéåžžã«äŸ¿å©ãªã¢ããªã±ãŒã·ã§ã³ã®äžè¬çãªããžãã¯ãåŒãç¶ã䜿çšããåãããã»ã¹ã«ååšããŸããããã«ãããåäžã®ã¢ããªã±ãŒã·ã§ã³ã®ãã¹ãŠã®æ©èœã䜿çšã§ããŸããããã«ããã®æ瀺çãªåé¢ã«ãããäžéšã®éçºè ã¯ç¹å®ã®ãµãŒãã¹ã§ã®ã¿äœæ¥ã§ããŸãã
ããã°ã©ã å šäœã®ãã¯ã©ãã·ã¥ããåé¿ããããã«ããµãŒãã¹ã®åäœäžã«çºçããããŸããŸãªãšã©ãŒãåŠçããã¡ã«ããºã ãããã°ã©ã ã«è¿œå ããŸããããã«ãããäžéšã®ãµãŒãã¹ã倱æããŠãããã°ã©ã ã¯åäœãç¶ããŸãã
ãã ãããã®ãããªå®å®æ§ãååã§ãªãå Žåã¯ããµãŒãã¹ãç°ãªãããã»ã¹ã«åå²ã§ããŸãããããè¡ãã«ã¯ãã¢ããªã±ãŒã·ã§ã³ããžãã¯ãå€æŽããŠãããã»ã¹ééä¿¡ãäœããã®äŸ¿å© ãªæ¹æ³ã§ãµããŒãããå¿ èŠããããŸãã
ãã®ã¢ãããŒãã®å©ç¹ã¯ãåã ã®ãµãŒãã¹ããšã«ç¬èªã®ãã¯ãããžãŒã»ããã䜿çšã§ããããšã«ãèµ·å ããŸãããã¡ãããããã¯éçºè ã«ãšã£ãŠçŽ æŽãããé€ã§ãããã ãããã®å Žåãéçºè ã®äºææ§ããªããªããæ¬ ç¹ã«ãªãå¯èœæ§ããããŸãã
åæ§ã®å Žåã®ããã«ããã®ã¢ãããŒãã®æ¬ ç¹ã«ã¯ãçžäºäœçšã®é床ã®äœäžã«é¢é£ããåé¡ããããã»ã¹éã§ã®ããŒã¿è»¢éã®äžæã®å¯èœæ§ãå«ãŸããŸãããŸããããžãã¹ããžãã¯ãåé¢ãããšãããšãã°åæ£ãã©ã³ã¶ã¯ã·ã§ã³ã䜿çšãããªã©ãè€æ°ã®ãµãŒãã¹ãåæã«å«ãã¿ã¹ã¯ã§ããŒã¿ã®æŽåæ§ãç¶æããå¿ èŠããããšãã圢ã§ãè¿œå ã®åé¡ãçããããšããããŸãã
-èããŠããªã圌ãã¯ãããã®ãã€ã¯ããµãŒãã¹ã§ãããªã«æ©èããŠããã®ã§ããïŒ
ãéçºè ã¯ãããžãã¹ããžãã¯ãç©ççã«åé¢ãããšãççµåã§ç°¡åã«äº€æå¯èœãªå®å®ããã¢ãžã¥ãŒã«ãäœæã§ãããšèããŠããŸãã
ãäœãã以åã«ããããæ©ãŸããŠãããã®ããã«...
ç©ççãªåé¢ã¯ããã€ãã®æè¡çãªåé¡ã解決ããŸããã代ããã«ä»ã®åé¡ããããããŸããããã¡ãããæåã®æè¡çãªåé¡ã解決ããå¿ èŠããããŸããããããã解決ããå©ç¹ãæ°ããåé¡ã®åºçŸã®æ¬ ç¹ãè¶ ãããã©ãããåžžã«æ€èšãã䟡å€ããããŸãã
ããã°ã©ã éšåã®ç©ççãªåé¢ãçºçãããã³ã«ããã®åé¢ãé ãã€ã³ãã©ã¹ãã©ã¯ãã£å±€ãå®è£ ããå¿ èŠããããŸããã¯ããæè¡çãªèŠ³ç¹ããèšããšããã®ãããªã€ã³ãã©ã¹ãã©ã¯ãã£ã®äœæã¯ãã¡ãããçŽç²ã«æè¡çãªèå³æ·±ãäœæ¥ã§ãããããããã°ã©ãã¯åãã§ãããåŒãåããŸããããããããã§åé¡ãå®éã«è§£æ±ºãããªãå Žåãå©çãããããããšãªããããã°ã©ã ã®ã³ã¹ããšè€éããå¢å ãããã ãã§ãã
ããŒã«
-ãããŠããªããããŒã¿ããŒã¹ã«éåžžã®ã¯ãšãªãäœæãã代ããã«ãäž¡æ¹ã®ããŒãã«ãã¢ããªã±ãŒã·ã§ã³ãµãŒããŒã«ãã«ããããããè±éçã«çµåããçµæããã£ã«ã¿ãªã³ã°ããŠå¿ èŠãªããŒã¿ãååŸããŸããïŒ
-æã«ãã³ããŒããæã£ãŠããªãå Žåããã¹ãŠã®ã¿ã¹ã¯ã¯éã®ããã«èŠããŸãã
èšèªãã©ã€ãã©ãªããã¬ãŒã ã¯ãŒã¯ããŠãŒãã£ãªãã£-ããã¯ãéçºè ãäœæ¥ã®éçšã§äœ¿çšãããã®ãã¹ãŠã§ããããã¯ãã¹ãŠãæè¡çãªåé¡ã解決ããã³ã¹ããæå°éã«æããããã«å¿ èŠã§ããããããžã§ã¯ãã«åºæã®ããžãã¹äžã®åé¡ã解決ããããã®æéãããå€ãæ®ããŸãããããã£ãŠãåŽåçç£æ§ã«çŽæ¥åœ±é¿ãããããããŒã«ã®æ£ããéžæãéèŠã§ãã倧ãã£ã±ã«èšãã°ãããªãã¯ã®ãããã§åæ¥ã®éäœããåãããšãã§ããŸãããŸãã¯ãããªãã¯é»æ°ãžã°ãœãŒããšãããšãã§ããŸã-匷æããŠãããªãã¯çµãããŸããïŒ
ããŒã«ã¯ããŸããŸã§ãããããŸããŸãªç®çã«åãããŠèšèšãããŠããããããããã®æ£ããã¢ããªã±ãŒã·ã§ã³ãåæ§ã«éèŠã§ãããã¡ãããã¯ããŒããŒã§éãæã€ããšã¯å¯èœã§ãïŒãããŠãããã¯æ³ããã䟿å©ã§ãïŒããããã§ãããã³ããŒã»ã©ç°¡åã§äŸ¿å©ã§ã¯ãããŸããã
ããããéçºè ã®éã§ã¯ããããã§çºæãããŠããªãããšããéåžžã«æªãã·ã³ãããŒã ããããŸãããã®æå³ã¯ãç¹å®ã®ç¯å²ã®ã¿ã¹ã¯ã解決ããããã®æ¢è£œã®ããŒã«ã䜿çšãã代ããã«ãéçºè ãç¬èªã®çºæãéå§ãããšããããšã§ããããã¯ãç¬èªã®ãã©ãããã©ãŒã ãäœæããããšããèŠæã«æã匷ãçŸããŸãã
ãã®ãããªããŒã«ã®äœæã¯çŽç²ã«æè¡çãªã¿ã¹ã¯ã§ãããããžãã¹ã®äž»é¡åéãç解ããå¿ èŠããªããããéçºè ã¯ãããè¡ãã®ã倧奜ãã§ããããããéçºè ãããžãã¹äžã®åé¡ã解決ããããšãç®çãšããå Žåãéã«ããµãŒãããŒãã£ã®ããŒã«ã䜿çšããããšã§ã圌ã®äººçã¯æ¥œã«ç°¡çŽ åãããŸãã
çè«ãšå®è·µ
çè«çã«ã¯ãçè«ãšå®è·µã¯ãŸã£ããåãã§ããå®éã«ã¯ããããŸããã
çè«çã«ã¯ããã¡ããããã¹ãŠãçŸããã§ãããå®éã«ã¯ããã¹ãŠãå®å šã«ééã£ãŠããŸããæè¡çç¥èããã¡ã€ã³ç¥èãæéããŸãã¯äººã®äžè¶³-ãããã¯ãã¹ãŠãã³ãŒãã«æãŸãããªãåé¡ãçŸããããã°ã©ã ã®å質ã«åœ±é¿ãäžããŸãã
å®éã«ã¯ãéçºè ã¯ãã°ãã°å質ãšé床ã®åŠ¥åã«çŽé¢ããŸãã顧客ãæºè¶³ãããçŽæãå®ãããšãããšãæ¥ãã§ãã¹ãŠãè¡ãããšã«ãªããŸããããã¯ãæçµçã«ã¯éã®å¹æããããããŸããæ¥ãã§åé¡ã解決ãããšãæªã解決çãäœæããããåŸãªããªããæçµçã«ã¯å€§ããªéªã ããŸã®ããã«èç©ããŠããããžã§ã¯ãå šäœãããªãã®äžã«åããããšããŸãããã®ããããµããŒããšä¿®æ£ã®ã³ã¹ãã¯ããã«é«ããªããç¹ã«åãå€æŽã®ã³ã¹ããé«ããªã£ãçç±ã顧客ã«èª¬æããéã«ãåé¡ãæªåãããã ãã§ãã
ãã®ãããªæªã決å®ã¯ã©ã®ãããžã§ã¯ãã§ãã»ãšãã©é¿ããããªãããããªãã¡ã¯ã¿ãªã³ã°ã®æéãèŠã€ããããšãéåžžã«éèŠã§ãã

ãŸãšã
çµå±ããã¹ãŠã¯ãéã«åž°çãââãŸããéçºãšãµããŒãã®ã³ã¹ããå®ãã»ã©ãããã°ã©ã ãäœæããããšã®åçæ§ã¯é«ããªããŸãããããã£ãŠããã¹ãŠã®ã¢ãããŒã/ããŒã«/ãã³ãã¬ãŒã/ãã©ãã€ã ãªã© éçºãšãµããŒãããã»ã¹ã®ã³ã¹ããåæžãããšãã1ã€ã®ããšã«çŠç¹ãåœãŠãŠããŸãã
ããããéçºãåµé çãªããã»ã¹ã§ããä¿¡ããããªãã»ã©å€æ°ã®ãã¹ãåãåé¡ã解決ããããšã«ãªããããããã«é·æãšçæããããŸãã
ãããŠãéçºè ã ãããã®ãã¹ãã©ãã»ã©è¯ãããå€æããŸãããããã£ãŠããœãããŠã§ã¢éçºã§ã¯ã人ãæãéèŠãªãªãœãŒã¹ã§ãã