ãããã£ãŠããã®èšäºã§ã¯ãåé¡ã«ã€ããŠæ°ãã«èŠãŠãããŸããããã¯ãããããç§ãšååã«TDDã®ç 究ã«æ°ããªåºæ¿ãäžããã§ãããã ãã¹ãã«ããéçºã«èå³ãããä»ã®äººã«ãšã£ãŠã¯äŸ¿å©ã«ãªããšæããŸãã ã³ã¡ã³ãããåŸ ã¡ããŠãããŸãã
ç§ã¯ãTDDãã¢ãžã¥ãŒã«èšèšã®åºæ¬ãåŠã³ãæããããã®ããŒã«ãšããŠäœ¿çšããŸããããã¬ãŒãã³ã°ã®å¹æã¯çåŸã®ãã€ãã«å€§ããäŸåããŠãããšèšããªããã°ãªããŸããã ç§ã¯èªåã®ä»äºãããè¯ããããã®ã§ãTDDãæããäžã§éèŠãªã¹ããã1ãèšç»ããæ°ããæ¹æ³ãåžžã«æ¢ããŠããŸãã ãã®åé¡ã«åœ¹ç«ã€ãã€ã¯ããã¯ãããžãŒãèŠã€ãããšæãã®ã§ãããã«ããªããšå ±æããããšæããŸãã
TL; DRïŒ
å€ãã®TDDæ¯æè ã¯ãéäžç·Žç¿ããšåŒã°ããã¢ãããŒããæšå¥šããŠããŸãããç·Žç¿ã«å€ãã®æéãè²»ããããšã¯ã§ããªããšæããŸãã ç§ã¯äººã ã«ãTDDãæèçã«äœ¿çšãããããšãå§ããŸããããããŸã§ãããã®åèªã®æå³ãã¢ã¯ã»ã·ãã«ãªæ¹æ³ã§èª¬æããè¯ãæ¹æ³ãç¥ããŸããã§ããã ãã¹ããéããŠãã°ã®ä¿®æ£ãéå§ããå Žåã¯ãäž¡æ¹ã®ã¢ãããŒãïŒéäžçããã³æèçïŒã®äœ¿çšãåæã«éå§ã§ããŸãã ãšãã¹ããŒãã¬ãã«ã§ãœãããŠã§ã¢ãèšèšããæ¹æ³ããŸã ããããªãå Žåã§ããå°ãªããšããšãã¹ããŒããšããŠåŠç¿ã§ããŸãã ãããŠããã¹ããéããŠãã°ãä¿®æ£ããããšã§ããããè¡ãããã®èªç¶ã§ãªã¹ã¯ã®ãªãæ©äŒãåŸãããŸãã TDDãç±å¿ã«ãæèçã«ç·Žç¿ããæ©äŒããããŸãã ä»äºã ãã§ãã°ãä¿®æ£ããæ©äŒãããã°ããéäžçãªå®è·µãã«ã€ããŠè©±ããšãã«éåžžçããç¹å¥ãªæ³šæãåŒãä»ããããšãªãããããã®å®è·µã䜿çšã§ããŸãã ãã°ãä¿®æ£ããŠããããšãå šå¡ã«äŒããŠãã ããã 誰ãã奜ãã«ãªãã§ãããã
ãã°ãä¿®æ£ãããŸã§èœã¡ããã¹ããæžãããšããå§ããå¿ èŠããããŸãã 詳现ãå¿ èŠãªå Žåã¯ãéå§ããåã«èªãã§ãã ããã
詳现
Gary Klein's Sources of Powerãèªã¿ãªããã人ã ãã©ã®ããã«ææ決å®ããããã説æããŠããŸãããéäžçãªç·Žç¿ã«é¢ããç§ã®ç« ã泚ç®ãéããŸããã ïŒãã®æ¬ã®104ããŒãžããã®åŒçšãããã€ãã³ã¡ã³ãããŸããïŒ
å¹æçãªææ決å®ã®éµã¯å°éç¥èã®æ§ç¯ã§ãããããèªæã®1ã€ã¯ãå°é家ã®ããã«èããããšã人ã ã«æãããã¬ãŒãã³ã°ãäœæããããšã§ãã
å€ãã®äººããã®èªæãåããåå è ã«ããŒãã§ããå°é家ã¬ãã«ã®æ å ±ã®éãæ倧åãããããªæ¹æ³ã§ãã¬ãŒãã³ã°ãæ§ç¯ããŠããããã«æããŸãã ç§ããããããŸããããæ®éã®åå è ãšããŠãããã®1ã€ã蚪ãããšãã«åæ¢ããŸããã ã¿ãããéããŠãæ°åã®ã«ãŒã«ãšçµè«ãç§ã«æ³šãå§ãããšãã»ãã®æ°æéã§ããªãŒããŒãããŒãããããããèãã®ããããŸãã
ã»ãšãã©ã®å Žåãé·ãããŠè²»çšãããããŸãã
ããã
ããããå°é家ãšããŠèããæ¹æ³ã人ã ã«æããããšãã§ããªãå Žåãããããå°é家ãšããŠå匷ããæ¹æ³ãæããããšãã§ããŸãã
ç¶ããŠâŠ
æç®ãç 究ããåŸãããŸããŸãªåéã§å°é家ãèšç·Žã§ããããã€ãã®æ¹æ³ãç¹å®ããŸããã
- 圌ãã¯éäžçãªå®è·µã«åå ããŠãããããåå®è·µã¬ãã¹ã³ã«ã¯ç®çãšè©äŸ¡åºæºããããŸãã
- 圌ãã¯å¹ åºãçµéšãç©ãã§ããŸãã
- 圌ãã¯ãã£ãŒãããã¯ãåãåããŸãïŒæ£ç¢ºã蚺æãããã³ã¿ã€ã ãªãŒã
- 圌ãã¯èªåã®éã¡ããåŠã¶ããã«ãå ±åäŒããè¡ãããšã§çµéšãè±ãã«ããŸãã
ããã®ããã€ãã¯ããªãã¿ã®ããã«èãããŸãããäœãã¯TDDãã©ã¯ãã£ã¹ããããå€ããåŠã¶æ°ããæ©äŒãè¡šããŠããŸãã
4åã®3ã¯ããã»ã©æªããªã
以åã«éäžçãªç·Žç¿ã«ã€ããŠè¿°ã¹ãŸããã ãé»éã®åŠç¿æ©äŒãç¡é§ã«ããªãã§ïŒã㧠ãæ°ããå®è·µã¯ç 究ãšèŠãªãããšãã§ãããšæžããŸããã ãã®æ¯phorã¯é³æ¥œããåããããã®ã§ãç 究ã§ã¯ãã¯ããã¯ã®ç·Žç¿ã«åºã䜿çšãããŠããŸãã 次ã«ãã¢ã¹ãªãŒãã¯ç·Žç¿ãã²ãŒã ãã¬ãŒãã³ã°ãšèããããšãã§ããŸãã ããããã»ãšãã©ã®ããã°ã©ããŒã¯æ¥ã ã®ä»äºä»¥å€ã§ç·Žç¿ããããšã¯ãŸããªãã®ã§ããéåžžã®ä»äºãäžã«é©çšã§ãããã®ãããªç·Žç¿ã¢ãŒããèæ ®ããããšã¯çã«ããªã£ãŠããŸãã
ç§èªèº«ã¯æåã«ããã¹ããã¡ãŒã¹ããã¢ãããŒããç 究ãã次ã«æéã«å¶éããããå®éã®çµæãæåŸ ãããæ¥åžžæ¥åã®æãã®äžã§ããã¹ãé§åãã¢ãããŒããç 究ããŸããã ä»æ¯ãè¿ã£ãŠã¿ããšãç§ã¯ãã¯ã©ã€ã³ãå°é家ãã¬ãŒãã³ã°ã®ãœãŒã¹ãšããŠãªã¹ãããŠãã4ã€ã®ããšã®ãã¡3ã€ãè¡ã£ãããšãç解ããŠããŸãã
- TDDã䜿çšããŠã2000幎ã®åããã2001幎11æã«IBMãé¢ãããŸã§ã®äœæ¥ã³ãŒãã®ã»ãšãã©ãã¹ãŠãæžãããã®åºç¯ãªçµéšå±€ãéçºããŸããã
- æ£ç¢ºã§ã蚺æããã¿ã€ã ãªãŒãªãã£ãŒãããã¯ãåãåããäœåãã®è³ªåãããããŸããŸãªã¡ãŒãªã³ã°ãªã¹ãã§çå£ãªè°è«ã«åå ããŸããã ïŒåœæStackOverflowã¯ãããŸããã§ãããïŒãŸããä»ã®äººããã®å€ãã®è³ªåã«çããŸããããã®ãããå€ãã®ã³ãŒãã®èªã¿åããæžã蟌ã¿ãæ¹åãå¿ èŠã§ããã
- ã¡ãŒãªã³ã°ãªã¹ããäŒè°ããŠãŒã¶ãŒããŒãã£ã³ã°ã§è³ªåã«çãããã³ã«ãå€ããããã¯ã«äœåºŠãäœåºŠã觊ããŠãå€ãçãã«ç£šãããããæ°ããæŽå¯ãäœéšããããšãã§ããŸããã ãã®çµéšã¯ãã¹ãŠãæçµçã«ç§ã®æåã®æ¬ã«å€ãããŸãããJUnitRecipesïŒPractical Methods for Programmer Testingã§ãã
ããããéäžçãã€ç±å¿ã«ïŒãããŠæèçã«ïŒç·Žç¿ãããšããŠããç§ã®å®è·µçãªæŒç¿ã®æ確ãªç®æšãšè©äŸ¡åºæºãçå®ããããšã¯ããŸããã§ããã ããæ£ç¢ºã«ã¯ãæã ç§ã¯èšªåããŸããããããé »ç¹ã«ã¯èšªåããŸããã§ããã ååãšããŠãç§ã¯ãã®ãããªç®æšãæ瀺çã«èšå®ããŸããã§ãããèšå®ããå Žåãããã¯å¶ç¶ã«èµ·ãããŸããã ä»ãç§ã®éå»ã®çµéšãæãåºããããããæ°ããæèšãåŠã¶æã§ãã
éäžçãªTDDãã©ã¯ãã£ã¹
ãœãããŠã§ã¢ã·ã¹ãã ã®é«å質èšèšã®ããã®ããŒã«ãšããŠTDDãå®è·µãããå Žåã¯ãè·å Žã§è©ŠããŠã¿ãŠãã ããã
ããã€ãã®ãã°ä¿®æ£ãååŸããŸãã ã»ãšãã©ã®å Žåããæåã®ãã¹ããïŒtest-firstïŒã®ååã䜿çšããŠãã°ãä¿®æ£ããæ¹æ³ãæ¢ã«ç¥ã£ãŠããŸããã念ã®ããããã®ããã»ã¹ã«ã€ããŠç°¡åã«èª¬æããŸãã
- ãã®ãã°ãåå ã§ã¯ã©ãã·ã¥ããçµ±åãã¹ããäœæããŸãã ãã¹ãã¯æåŸãŸã§è¡ãå¿ èŠã¯ãããŸããããå¿ èŠãªéãç¶è¡ã§ããŸãã äž»ãªããšã¯ãæ¢åã®ãã°ã®ããã«èœã¡ãããšã§ãã
- ãã°ã®å Žæã«è¿ã¥ãããããå°ããªïŒããçŠç¹ãçµã£ãïŒãã¹ãã®äœæãéå§ããŸãã ããã«ã¯ã Saff SqueezeãŸãã¯åæ§ã®ææ³ã䜿çšã§ããŸãã å¿ èŠã«å¿ããŠãããã¬ãŒã䜿çšããããšãã§ããŸãã
- ãã®ãã°ã®åå ãšãªããšã©ãŒã®æ¬è³ªã説æããæå°éã®ãã¹ãïŒãŸãã¯ãã°ã«ããã€ãã®çç±ãããå Žåã¯è€æ°ã®ãã¹ãïŒãããã°åæ¢ããŸãã
- ãšã©ãŒãä¿®æ£ãããã¹ãŠã®ãã¹ãã«åæ Œããããšã確èªããŠããããã¹ãŠã®å€æŽãã³ãããããŸãã
- ãã°ã«ããã«ã³ãŒããŒã泚ããŸãã
ããã§ã¯ãã¯ã©ã€ã³ã®4ã€ã®ãã€ã³ãã«æ»ã£ãŠããã®æ¹æ³ããšãã¹ããŒãã¬ãã«ã§ãœãããŠã§ã¢ãèšèšããæ¹æ³ãåŠã¶ã®ã«ã©ã®ããã«åœ¹ç«ã€ããèŠãŠã¿ãŸãããã
ããã¯æ¿ããç·Žç¿ã®ããã«èãããŸããïŒ ã¯ã ãã®æ¹æ³ã§ãã°ãä¿®æ£ããããã«åº§ã£ãŠãããšãããã¹ãã®äœæãç·Žç¿ããæ©äŒãé ã®äžã®ãããã¬ãŒãšè¿œè·¡ã³ãŒãã«ããŸãäŸåããªãããšãåŠã¶æ©äŒããããã°ããŠããã³ãŒãã«é¢ããç§ã®ç¥èãïŒãã¹ããéããŠïŒããããè¡šçŸãææžåããæ¹æ³ãåŠã¶æ©äŒãšèããŸãã
æ確ãªç®æšãšè©äŸ¡åºæºã¯ãããŸããïŒ ç§ã¯æ確ãªç®æšãèŠãŠããŸãïŒãã°ãä¿®æ£ãããã¹ããæžãããšãåŠã³ãããçŠç¹ãçµã£ããã¹ããæžãããšãåŠã³ãã³ãŒãã«é¢ããç¿åŸããç¥èãææžåããŠãå€æŽãäžè¬çãªãªããžããªã«éä¿¡ãããŸã§ã«ãã®ç¥èãæ¶ããªãããã«ããŸãã è©äŸ¡åºæºãšããŠã次ã®ãããããéžæã§ããŸãã
- ãã°ãä¿®æ£ããåŸãã°ããããŠãããã®ãã¹ãã«æ»ããèªåãäœãããŠããããç解ããã®ã¯ç°¡åã§ããïŒ
- ä»ã®èª°ããç§ã®ãã¹ããèªãã§ãç§ããã£ãŠããããšãç解ããã®ã¯ã©ããããç°¡åã§ããïŒ
- 倧èŠæš¡ãªãã¹ãããå°èŠæš¡ãªãã¹ãã«ç°¡åã«ç§»è¡ã§ããŸããïŒ
- 倧èŠæš¡ãªãã¹ãããå°èŠæš¡ãªãã¹ãã«åãæ¿ãããšãæ å ±ã倱ãããŸããïŒ
- ãã®ç¹å®ã®ãã°ãäºåºŠãšèµ·ãããªããšç§ã¯ã©ãã»ã©èªä¿¡ããããŸããïŒ
- ãã°ãšæŠããšããç§ã¯ã©ãã»ã©ç©ããã§å¿«é©ã«æããŸããïŒ
ãããã®åºæºãååã«æ確ã«ãããã©ããã¯ããããŸããããå°ãªããšããããããå§ããããšãã§ããŸãã ããããäžç·ã«ãããè¯ãè©äŸ¡åºæºãäœæããããšãã§ããŸãã
ããã¯ãå¹ åºãçµéšå±€ãæ§ç¯ããã®ã«åœ¹ç«ã¡ãŸããïŒ ãã®ããã«ããŠä»åŸæ°ãæã§50åã®ãã°ãä¿®æ£ããå Žåã«åœ¹ç«ã¡ãŸãã å°ãªããšãããã®æ¹æ³ã§ãã¹ãŠã®ãã°ãä¿®æ£ããããšã«æ±ºããå Žåãç§ã¯çå®ã«ããªãã®éã®çµéšãèç©ããŸãã ç¹ã«ãã·ã¹ãã ã®ãã¹ãŠã®éšåã®ãã°ãä¿®æ£ããå Žåã ããã«ãè€æ°ã®ã·ã¹ãã ã«ããå Žåã
æ£ç¢ºã蚺æãã¿ã€ã ãªãŒãªãã£ãŒãããã¯ãåŸãããŸããïŒ ããæãã æ°ãããã¹ããäœæãããã³ã«ãåæ ŒãŸãã¯äžåæ Œã«ãªããŸãã ãããã£ãŠãå°ãªããšããã³ãŒãã®å£ããéšåã«ã¢ãããŒããå§ããããšãç解ã§ããŸãã ç§ã®ãã¹ããäœããã®åœ¢ã§ããã蚌æããã®ã«ååå°ãããªããŸã§ã¯ã©ãã·ã¥ãåŒãèµ·ããã³ãŒãã®äžéšãèŠã€ããããšã100ïŒ ç¢ºä¿¡ããããšã¯ã§ããŸãããç§ã¯åŸã ã«ãã®æ¹åã«åãã£ãŠããŸãã
æ°ããæŽå¯ãåŸãããã«ã以åã®çµéšãåèããã®ã«åœ¹ç«ã¡ãŸããïŒ ã¯ãããããã ããããåããã°ã2åä¿®æ£ããå¿ èŠã¯ãããŸããã ããããã¯ããç§ã¯ãã¹ãŠã®æ°ãããã°ã§ãã®ããã«åäœãããããã·ã¹ãã ã®åãéšåãäœåºŠãåŠçããå¿ èŠããããŸãã ã·ã¹ãã ã®ããããéšåã§ãã°ãä¿®æ£ããã°ããã»ã©ãéå»ã®ãã¹ãã«æ»ã£ãŠæ°ããçµéšãå€ããã¹ããšæ¯èŒããæ©äŒãå¢ããŸãã èªåããã£ãŠããããšãéå»ãšæ¯ã¹ãŠå°ãæ¯èŒãããšãããã¯æ°ããæŽå¯ãåŸãæ©äŒãäžããŠãããŸãã
ãããã£ãŠããã®ãããªãã°ä¿®æ£æ¹æ³ã¯ãå®è·µè ãå°é家ãšããŠåŠç¿ããã®ã«åœ¹ç«ã€ãšæãããŸãïŒå°ãªããšãããã®æ¹æ³ãšã¯ã©ã€ã³ã«ãã£ãŠèª¬æãããå°é家ãã¬ãŒãã³ã°ã®ã¢ãã«ã®äž¡æ¹ã®è§£éã«ãããŠïŒã èªåã§è©ŠããŠã¿ãŠããã®ã¢ãããŒãã«æè¬ããŸãã
ãã°ã®åŠç以å€
å°é家ã¬ãã«ã§ã¢ãžã¥ãŒã«èšèšã®ååãç 究ããããã«ãTDDãã©ã®ããã«äœ¿çšã§ããŸããïŒ éäžã§ããããé倱ã«ã€ããŠèšåããªããã°ãªããŸããã ããã¯ããã»ã©é倧ãªé倱ã§ã¯ãªããåæãšèª€è§£ã®çµæã§ãã ç§ã¯åžžã«ãæèçãªã¢ãããŒããã䜿çšããããšãç¹ã«éèŠã ãšèããŠããŸããã ãããã£ãŠã誰ãããã¹ãã«ããéçºããæ©èœããªããããèŠãããããŸãã¯ã害ãåãŒãããšäž»åŒµãå§ãããšãç§ã¯è°è«ã«åå ããåãèããäœåºŠãç¹°ãè¿ããŸãã
ã«ãŒã«èªäœã¯äœãããŸããã 人ã ã¯ãã¹ãŠãããŸãã TDDã¯ãä»ã®ç·Žç¿ãšåæ§ã«ãéæ¥å»ãè³ã®é»æºãå ¥ããå¿ èŠããããŸãã 圌ã¯æèçã«éåããªããã°ãªããŸããã
ããã¯æ¬åœã ã£ãããããã圹ã«ç«ããªã...ä»æ¥ãŸã§ã ã¯ã©ã€ã³ã¯ããæèçãªå®è·µããšã¯äœãã説æãããããæ£ç¢ºã§é©çšå¯èœãªæ¹æ³ãç§ã«æããã«ãããšç¢ºä¿¡ããŠããŸãã ä»æ¥ãããã¬ãŒãã³ã°ã§äœ¿çšããŸãã TDDïŒããã³ã¢ãžã¥ãŒã«èšèšïŒã®åŠç¿ã«æé»çã«äœ¿çšããããã«èŠããŸãããä»ã®ãšãããç°¡åã«èŠããããæ¹æ³ã¯ãããŸããã ããããšããã²ã€ãªãŒã»ã¯ã©ã€ã³ã
ãæèçã«ãTDDãç·Žç¿ããæ¹æ³
æ°ç§ã§äŒæ©ãåããTDDããã€ã©ã®ããã«åŠç¿ããããèããŠãã ããã ã©ã®ã³ãŒãïŒ äœæïŒ ã©ã®ãããªæ¡ä»¶ã§ïŒ ãããã®ã«ãŒã«ã«å³å¯ã«å¶éããå¿ èŠã¯ãããŸããããããã»ã¹ã®åçåã«åœ¹ç«ã¡ãŸãã ã©ã®ã±ãŒã¹ã§TDDã䜿çšããæºåãã§ããŠããããã©ã®ã±ãŒã¹ã§ã¯ãªãããèªåã§æ±ºå®ããããšãéåžžã«éèŠã§ãã ããã¯ãä»ã®ãšãããèªåã ãã®ããã«å®çŸ©ããŠãã ããã åŸã§ååãšåæããããšãã§ããŸã2 ã
TDDã§éåãããã¬ãŒã ã¯ãŒã¯ã決å®ãããããããã®ãã¬ãŒãã³ã°ã®ç®æšãšè©äŸ¡åºæºãèšå®ã§ããŸãã ç§ã¯ããã€ãã®ã¢ã€ãã¢ãæããŸãã
TDDãã¬ãŒãã³ã°ã®ç®æš
- 以åã«äœ¿çšããããšããªãã©ã€ãã©ãªã䜿çšããŠããã¹ããéããŠçµ±åãã€ã³ããäœæããŸãã
- ã³ãŒãã®ãããã«å€§ããéšåããã¬ãŒã ã¯ãŒã¯ãšã®çµ±åããåé¢ããŸãã
- ãã¬ãŒã ã¯ãŒã¯æåã®ãã¹ãã©ã€ãã©ãªïŒRobolectricãNUnitASPãrspec-railsãJSFUnitãªã©ïŒãå¿ èŠãšãããã¹ããå°ãªãããéåžžã®ãã¹ãã©ã€ãã©ãªïŒéåžžã®JUnitãRSpecããŸãã¯pytestïŒã䜿çšãããã¹ããå¢ãããŸãã
- 次ã®ãã¹ãã®äœæã«ãããæéãççž®ããŸãã
TDDã®ãã¬ãŒãã³ã°ã®è©äŸ¡åºæºã
- ã·ã¹ãã ã®ãã®éšåãéåžžãããç°¡åã«ããŸãããïŒ
- ã·ã¹ãã ã®ãã®éšåã®ååã¯ä»ã®äººã«ãšã£ãŠããããããã§ããããã®ã³ãŒããå€æŽããæ¹æ³ãç解ããã®ã«åœ¹ç«ã¡ãŸããïŒ
- æ¢åã®ã³ãŒããå€æŽããã®ã§ã¯ãªããæ°ããã³ãŒããè¿œå ããã ãã§ã·ã¹ãã ã®ãã®éšåãæ¡åŒµã§ããŸããïŒ
- ãã¹ãã®ç°å¢ãæ§æããããã«å¿ èŠãªã³ãŒãã¯ãäœæããã°ããã®ã·ã¹ãã ã®éšåã«ã®ã¿äŸåããŸããïŒ
- ãã¹ãã«è€æ°ã®ãã¹ããå«ãŸããå Žåãããããäºãã«åŒ·ãé¢é£ããŠãããšæ³å®ããŸããïŒ
- ãã¹ãã¯ååã«éãåæ ŒããŸããïŒ ãŸãã¯ãå°ãªããšã以åãããéããªã£ãŠããŸããïŒ
å°ãªããšã10åéäžç·ã«åº§ã£ãŠããã°ããããã®æçšãªåºæºãããã«æ°ååèãåºãã§ãããã ããã€ãéžæããŠãTDDãç·Žç¿ãã次ã®ããã°ã©ãã³ã°ã»ãã·ã§ã³ã®ããã«ãããã念é ã«çœ®ããŠãã ããã
ãããŠãå€ãçµéšããæ°ããæŽå¯ãåŸããšãã質åã«ç§»ããŸãããããªããªããç§ã¯ãã°ãã°ããã«åºäŒããä»ã®äººãæãã圌ããšç·Žç¿ããããã§ãã çµéšãåŠçããããã«ãèªåã§ã¯ã©ã¹ãå®æœããå¿ èŠã¯ãããŸããã ããšãã°ãä»ã®äººã®è³ªåã«çããããšãã§ããŸãã äŸãã°ãç§ã¯ç°ãªã人ã ããæ¥ãåã質åã«ç¹°ãè¿ãçããŸãã ïŒç§ã¯éåžžèªåèªèº«ãç¹°ãè¿ãããšãå«ããŸããããããã®ç¹°ãè¿ããå®éã«ã¯ã¯ããã«äŸ¡å€ãããããšã«æ°ä»ããŸãããïŒãããã®è³ªåã«çããã»ã©ãç解ã«åæ ããããã«ãªããŸãã æéã®çµéãšãšãã«ãç§ã®ã¢ã€ãã¢ã¯ããŸããŸãªæ°ãã課é¡ã«ééãã匷åãããããããæåããæ°ãã課é¡ã«åœãå¹ã蟌ã¿ãŸãã ãŸããç§ã¯ã³ãŒããªããªãŒãã«åå ããç¹ã«æ°ãã人ã ãšåãå°ããªããºã«ã«äœåºŠãåãçµãã§ããŸãã æ¯å¹Žãã²ãŒã ã®ãã©ã€ããã«åãçµãã§ããéãæ°ããæŽå¯ãçµéšããŠããŸãã
ãããŠä»ãã²ã€ãªãŒã»ã¯ã©ã€ã³ã®ã¢ãã«ã®1ã€ã®éèŠãªãã€ã³ãã«è¡ããããšæããŸããããã¯ãä»æ¥ãã®èšäºãæžããã£ããã«ãªããŸããã
è±å¯ãªçµéš
é·å¹ŽãTDDãããã¶ã€ã³ãæããããã®ãã¯ããã¯ããšèª¬æããŠããŸããããã®ãã¯ããã¯ã§ã¯ãèšèªã¹ãã«ã䌞ã°ãã¡ã«ããºã ã«äŒŒãã¡ã«ããºã ã䜿çšã§ããŸãã ã©ããã£ãŠæ¯åœèªã話ãããšãåŠã³ãŸãããïŒ ã»ãšãã©ã®å Žåã次ã®ããã«ãªããŸããã
- æåã¯ãæéã®çµéãšãšãã«ã ããªãã¯ããªãã®åšãã®äººã ã®ã¹ããŒããèããã°ããã§ãã
- ããæç¹ã§ãããªãã¯éåžžã«ç°¡åãªãã¬ãŒãºã話ãå§ããŸããã
- ãããã®ãã¬ãŒãºãèšãå§ãããšããä»ã®äººãããªãã®ã¹ããŒãã«ã©ã®ããã«åå¿ãããã«æ°ã¥ããŸããã
- æã ä¿®æ£ããããã§ã¯ãªããããèšãå¿ èŠããããšèª¬æããŸããã
- ãããã®èª¬æããããæ£ããããã¬ãŒãºãæ§ç¯ããããã®ã«ãŒã«ãšååãæœåºããŸããã
- æ°ããææ¡ãäœæããéã«ã¯ããããã®ã«ãŒã«ãšååã«äŸåããŠããŸããã
ãããŠããã®ããã»ã¹ã¯æ¢ãŸãããšãªãç¶ããŸããã ããªãã話ãèšèªã¯ãå®éšãè©äŸ¡ãçžäºåœ±é¿ãä¿®æ£ã®è©Šã¿ãæ°ããã«ãŒã«ãšååã®æœåºãªã©ãä»ã®äººãšã®ç¶ç¶çãªã³ãã¥ãã±ãŒã·ã§ã³ã®ããŒã«ã«ãªããŸãã-ãªã©ã
ç§ã®æèŠã§ã¯ãTDDã䜿çšãããšãåæ§ã®æ¹æ³ã§ã³ãŒãèšèšãåŠç¿ã§ããŸãã ããã«ãããåŸæ¥ã®ããã°ã©ãã³ã°ã®å¢çãè¶ããŠãããã°ã©ãã«ããããç°¡åã«ãã¹ãã§ããŸãããŸãã¯ããã®ã³ãŒããã³ã³ããã¹ãããåé¢ããŠåé¢ç°å¢ã§å®è¡ã§ããããŸãã¯ãã§ããæ¢åã®ã³ãŒããå€æŽããã®ã§ã¯ãªããã³ãŒããè¿œå ããŠæ°ããåäœãè¿œå ããŸãã ãã®ãããªæšå®å€ã¯ã³ãŒããèªãã§è°è«ããããšã§ãåŸããããšäž»åŒµãããããããŸããããããã°ã©ããŒãã³ãŒããšå¯Ÿè©±ããããåæ©ã¥ããã®ã¯TDDã§ãã ã ãã®ã€ã³ã¿ã©ã¯ãã£ããªã¹ã¿ã€ã«ã®ã³ãŒãäœæã«ãããåŸæ¥ã®ãããããæžãããã£ãã«èªãããšã®ãªããã¢ãããŒããããã¯ããã«å¹ççãã€è¿ éã«çµéšãç©ãããšãã§ãããšæããŸãã å°ãªããšããTDDã¯ãããã°ã©ããŒãç°ãªãèŠç¹ã§ã³ãŒããèŠãããã«åæ©ä»ããŸãã
ãã®ã¢ãããŒãã®äž»ãªåœ¹å²ã¯ããªãã¡ã¯ã¿ãªã³ã°ã§ãããªãã¡ã¯ã¿ãªã³ã°äžã«ãæ¢åã®ã³ãŒããè©äŸ¡ãããã®åé¡ãç解ããŠç¹å®ããæ¹åããæ¹æ³ãææ¡ãããã®æ¹æ³ã«åŸã£ãŠå€æŽããå¿ èŠããããŸãã ïŒãã¹ããªãã§å€§èŠæš¡ãªãªãã¡ã¯ã¿ãªã³ã°ãå®è¡ãããã¯ãããŸããããããããã¹ããäœæããŠããªããã°ããªãã¡ã¯ã¿ãªã³ã°æã«ååãªèªä¿¡ãæãŠãããã«ãªããŸããã§ãããïŒåãã³ãŒããããããã«ç¹å®ã®åé¡ãããå Žåãšãªãå ŽåããããŸããããã«ãããããŸããŸãªèšèšãªãã·ã§ã³ãæ¯èŒããæã䟡å€ã®ãããã®ãéžæã§ããŸããããã°ã©ããŒã¯ããåããšãåŸãã®ãªãã¡ã¯ã¿ãªã³ã°æ¡ä»¶ãæ¯èŒããã³ãŒãã®æ¹åããããã圱é¿ãè©äŸ¡ããæ©äŒããããŸãã
ããªãã¡ã¯ã¿ãªã³ã°åãã®èšèšãã誀ã£ãããŸãã¯æ£ããæ§æãããŠãããäžååã«å®åŒåãããèšèªè¡šçŸãšæ¯èŒã§ããŸãããŸããããŸããŸãªãã€ã¯ããªãã¡ã¯ã¿ãªã³ã°ææ³ïŒããšãã°ããç¶æ¿ãå§ä»»ã«çœ®ãæããããŸãã¯ãå€æ°ãå°å ¥ãããïŒ-ãããã®åŒãä¿®æ£ããã³æ¹åã§ããã«ãŒã«ãšååã䜿çšããŸãããã®å Žåããªãã¡ã¯ã¿ãªã³ã°èªäœã®åäœã¯ããããã®ã«ãŒã«ãšååãé©çšããŠåŒïŒã³ãŒãïŒãä¿®æ£ããåäœã«äŒŒãŠããŸãããããŠãããªãã¯ããã°ã©ããŒãã©ã®ããã«ãããç¥èŠããããšããã¢ã€ãã¢ãéããŠããªãã®å€æŽãè©äŸ¡ããããšãã§ããŸããèªåã§äœæ¥ãè©äŸ¡ã§ããªãå Žåãäžå®ãæããå Žåã¯ãä»ã®äººã«ãªãã·ã§ã³ãæäŸããŠãè©äŸ¡ãæ±ããŠãã ããã圌ãã¯ããªããä¿®æ£ããããå°ãªããšãæªãã¹ã¿ã€ã«ãææããããšãã§ããŸããåãããã«ãã®ã¡ãœããã䜿çšããŠæ¯åœèªãåŠç¿ããã®ã§ãããã䜿çšããŠã¢ãžã¥ã©ãŒã³ãŒãèšèšèšèªãåŠç¿ããŸãã
1 ãSwitchã®ç¬¬3ç« ãèªãã§ã人ã ã®è¡åãå€ããæå©ããããŠãã ããã
2 ãå®å šãªå®éšãéããŠæ°ãããã©ã¯ãã£ã¹ãé©çšããæ¹æ³ãããŒã ã«æããããšã§ãããã©ãŒãã³ã¹ãåäžãããããšãã§ããŸããç§ã¯ããã«ã€ããŠè©³ããæžããŠããŸãããããããçŽæããŸããæ°ããèšäºãåŸ ã€ããšãã§ãããã§ããã ãæ©ãããã«ã€ããŠç¥ãããå Žåã¯ãç§ã«é£çµ¡ããŠãã ãããç§ãã¡ã¯ååããŸãã