æãã¯è¨èã«ã ã¯ã¦ãªããã°ã¯ãããªãã®æããèããæ®ãããã ãã¾ãã¾ãªäººã綴ã£ãå¤æ§ãªä¾¡å¤è¦³ã«è§¦ãããã§ããå ´æã§ãã
æãã¯è¨èã«ã ã¯ã¦ãªããã°ã¯ãããªãã®æããèããæ®ãããã ãã¾ãã¾ãªäººã綴ã£ãå¤æ§ãªä¾¡å¤è¦³ã«è§¦ãããã§ããå ´æã§ãã
http://java-ja.yoshiori.org/index.php?%E7%AC%AC%E5%8D%81%E4%BA%94%E5%9B%9E 30åé å»ãã ãã¹ã éçºè 顧客 å質ä¿è¨¼ ããããã®ç«å ´ã§ã®ãã¹ãããã ç¾å¨ã®ã½ããã¦ã§ã¢éçºä¸æ¬æ± ãã¼ã¸ã§ã³ç®¡ç branchãã©ãã¾ã§mergeãããã¨ãã®ç®¡çã大å¤ã ã£ã ã¢ãã³ãªSCM(Mercurial,Git)ã§ã¯ãã®è¾ºæ¶ãã¦ã¦ããã¦ããã楽ã«ãªã£ãããã¼ã ãã¹ãã£ã³ã° èªåå Hudson èªååâèªåå 3æ¬è¶³ã®ã¤ã¹ã®è¶³ã¿ãããªãã®ãªã®ã§ä¸ã¤ç ´ç¶»ããã¨å ¨é¨ç ´ç¶»ãã åä½ããã»ãããã®2軸 ãããã«ããâãªãã¡ã¯ã¿ãªã³ã° ãªãã¡ã¯ã¿ãªã³ã°ã¯ä¸æ°ã«ãããããããã¨ããã¨ã¨ã¦ãå¤§å¤ å¸¸ã«ç´°ãããªãã¡ã¯ã¿ãªã³ã°ãç¶ãã redâgreen,refactoringã®ãã£ã¼ãããã¯ãµã¤ã¯ã«ã¯è²ããªã¹ã±ã¼ã«ã§åãã TDDã¨å質
æ ªå¼ä¼ç¤¾ãã¯ã³ã´ã®æ¬ç¤¾ã«ã¦éå¬ããããjava-jaã®ç¬¬15ååå¼·ä¼ã«åå ãã¦ã¾ããã¾ãããï¼ãã¯ã³ã´ãããããã¨ããããã¾ãï¼åéãã®ç¤¾é¢¨ãå£éè¦ããã¦ãããããã£ãã§ãï¼ ä»åã®ãã¼ãã¯TDDã¨ãã¢ãããTDDã®æ¨©å¨ã§ãã@t-wadaããï¼http://twitter.com/t_wadaï¼ã®è¬ç¾©ï¼å®éã«TDDï¼ãã¢ãããä½é¨ããæéãè¨ããããé常ã«å å®ããæéãéããã¾ããã 以ä¸ãTwitterã«ã¢ããããææ³ã転è¼ã ã¨ã«ããç²ããï¼ããã¦æ £ãã¦ããªãããããããã³ã¼ããé²ã¾ãªãï¼æ®æ®µã®åç²å´ãã¦ååããã³ã¼ããé²ã¾ãªããªããæããã«çç£æ§ãä¸ãã£ã¦ããããã«è¦ãããã§ãéããéã ããããªã«çç£çã«ã³ã¼ããæ¸ããã¨ã¯æããªãã£ãï¼ TDDãé²ãã¦ãããã¡ã«ãèªåãæå³ããªãèããè¦è½ã¨ããtypoãªã©ã®ææã次ã ã«é£ã³åºãããæ¸ãä¸ãã£ããã¹ãã³ã¼ããæ®æ®µèªåãä½ã£ã¦ãããã®
ããã 第äºåããããæ¥æ¬ãã¢ããã°ã©ãã³ã°ã®åjava-jaæ¯é¨ä¼ @dwango ä¼å ´æä¾ã®ãã¯ã³ã´æ§ã«æè¬ã 1. id:t-wadaããã«ããè¬æ¼ 第ä¸åã®ã¾ã¨ã ãã®ããã£ãã§ãã ååã®KPT æ®å½±ãå ¥ã£ã¦ããã£ã èªç±ã«çºè¨ãã¦ã©ãã©ãè¨ããé°å²æ°ãè¯ãã£ã ä»åãèªéããã«åã£ã¦ä¸ãã ãã¢ã®äº¤ä»£ãç¡ãã£ã ä»åã¯ï¼ãï¼å交代ããã ãã«ãã£ã¼ãã³ãã©ã¼ã¡ã³ãµã©ãèªé èªå·±ç´¹ä» d.hatena.ne.jp/t-wada, twitter.com/t_wada ãWEB+DB PRESSãã§è²ã æ¸ãã¦ãã¾ãã gihyo.jpã§ãé£è¼ä¸ http://gihyo.jp/dev/serial/01/tdd TDDã¨ã¯ï¼ ããã¹ãé§åéçºå ¥éãã±ã³ãã»ãã㯠TDD ãã¹ãæ¸ã ãã®ãã¹ãå®è¡ããã¦å¤±æããã(Red) ç®çã®ã³ã¼ããæ¸ã ãã¹ããæåããã(Green) ãã¹
java-ja 第åäºåã«è¡ã£ã¦ãããï¼ ãã¯ã³ã´ãããããã¨ãï¼ éè¦äºé TDDã¯é»éã®å転ãTDDã¯SBRï¼ã¹ãã£ã¼ã«ãã¼ã«ã©ã³ï¼ ã¨ã³ã¸ãã¢ã¯ã¸ã§ã¸ã§ãèªãã¹ã åå id:t-wadaã®ã話ã¯Seaser Conference 2009 Winterã§æè´ãã¦ããã®ã§ã ååã®ã話ã¯è¥å¹²ãã¶ãæ°å³ã ã£ãã®ã§ãããçµæ§å¿ãã¦ãï¼ãããäºã«ï¼ã®ã§ã復ç¿ã§èãã¦ãã¾ãã ãããjava-jaãååããããªãæ¿ã話ãåºã¦ãããä¸äºè¦ç´ ã楽ããã£ãã§ãï½ ãã¨JUnitMax便å©ãã å¾å TDDï¼ãã¢ããåä½é¨ ãã¢ããããããããããããããããããããããã ã³ã¼ãã§ä¼è©±ã§ããã£ã¦ã®ã楽ãããã¾ãã ãã¢ã®æ°æã¡ãï¼ãè¨èãã§ãªããã³ã¼ããã§ç解ã§ããï¼ ã¾ãçµå§å©ãããã¦ã°ããã§ãããã»ã»ã» æ¬å½ã«ãä¸è©±ã«ãªãã¾ããã ããããã«çµé¨å¤ã足ãã¦ãªãã»ã»ã» ã§ãé常ã«è¯ãçµé¨ã«ãªã£ã
第äºåãããã æ¥æ¬ãã¢ããã°ã©ãã³ã°ã®ä¼java-jaæ¯é¨ä¼ï¼ä»®ï¼ã«è¡ã£ã¦ããã*1 ã大äºãªãã¨ã¯ã¿ããªJOJOã«æãã£ãã(id:t-wada)ãã¨ã¯è¨ã£ã¦ãªãã£ããããã«è¿ãããªã ã£ããTDDã¯é»éã®å転ããããã¹ãã£ã¼ã«ã»ãã¼ã«ã»ã©ã³ã¯ã»ã¨ãã©èªãã§ãªãã®ã§ããããããã 次ã®Java-jaã¯JOJOåå¼·ä¼ãä¼ç»ããã¦ããã4é¨ã®éä¸ã¾ã§ã¯è²·ã£ã¦ããã©ãã¨è¨ã£ããã¿ããªã«disãããã t-wadaã®è¬ç¾©ã§å°è±¡ã«æ®ã£ãã㨠ã»TDDã®ä¸æ¬æ± ã»ãã¼ã¸ã§ã³ç®¡ç ã»ãã¹ã ã»èªåå ãã®ä¸æ¬ã®ãã©ããæ¬ ãã¦ããã¾ãæ©è½ããªããæ¤ åã®è¶³ã®ãããªãã®ã ã»TDDã¯å質ãä¿è¨¼ããªãããã ãå質ãåä¸ããã ã»äººã«ãã£ã¦ã¯TDDã¯åé·ããã¨ãã°3æéã³ã¼ããæ¸ãã¦ããããä¸çºã§éããããªäººã«ã¯ããã¹ãã§ç¢ºèªããå¿ ç¶æ§ã¯ç¡ãã*2 ã»TDDã¯ãããªãã«èªç¥ããã¦ãããããããç«ã¡åããã¹ãã¯ã
java-jaã«è¡ã£ã¦ãã¾ããã åç°ãããã®è¬æ¼ã§ TDDï¼ãã¹ãé§åéçºï¼ãå¦ã¶ã¨ãããã®ã ãã¡ã®ä¼ç¤¾ã§ããã¹ãã®èªååãå¿ è¦ã ãªã¼ã£ã¨ æã£ã¦ããã®ã§ããããã«åå¼·ã«ãªã£ãã ãããã£ãã®ã¯åç°ããã®ãã¢ã³ã¹ãã¬ã¼ã·ã§ã³ã ãã¢ããã°ã©ãã³ã°ã§TDDãããã¨ãããã®ã§ã ã¡ã½ããã®å½åãããªãã¡ã¯ã¿ãªã³ã°ã®ä»æ¹ã¾ã§å¤§ãã«è°è«ã«ãªã£ã¦ çãä¸ãã£ãã eclipseãããã£ããã¼ã
æ¯åº¦ããªãã¿java-jaã¤ãã³ãã第äºåãããã æ¥æ¬ãã¢ããã°ã©ãã³ã°ã®ä¼java-jaæ¯é¨ä¼ ã«è¡ã£ã¦ãã¾ãããããã¯6/6ã®ã話ã å ´æã¯ãã¯ã³ã´ã®ä¼è°å®¤ã å½¢å¼ã¨ãã¦ã¯id:t-wadaã®ãããããTDDã®è¬ç¾©ã®ãã¨ãå®éãã®å ´ã§ãã¢çµãã§ãã¢ãããã ããï¼ã¨ãã£ãæãã id:t-wadaã®ãããããTDDã®ã話ã¾ã¨ã èããªãããã¤ã³ããæ¸ãçããã®ããã®ã¾ã¾ã¯ãã¤ãã¦ã¿ãã ãã¹ããã ãã¹ãã失æããã(RED) ç®çã®ã³ã¼ããæ¸ã æåã®ãã¹ããæåãããï¼GREENï¼ ãã¹ããéãã¾ã¾ã§ãªãã¡ã¯ã¿ãªã³ã°(Refactor) DeveloperTestingã¨ã¯ã»ã»ã» PGã® PGã«ãã PGã®ããã®ãã¹ã ï¼æ¬æ± ãã¼ã¸ã§ã³ç®¡ç PJã«å¿ è¦ãªãã®ããã¹ã¦ç®¡çãã¼ã«ã«ã¶ã¡ãã ãã¹ãã£ã³ã° èªååï¼èªååï¼ ç¹°ãè¿ãã¨ãåç´ä½æ¥ã¯æ©æ¢°ã«ãããã XFDããã¹ããè½ã¡ã
ã¤ãã³ãã«åå ãããçæ§ããããã¨ããããã¾ããã ããã¦ãä¼å ´ãæä¾ãã¦ãã ãã£ãæ ªå¼ä¼ç¤¾ãã¯ã³ã´ãã¾ãããã¦ä¼å ´è¨å¶ãé ä¿¡è¨åçã ãå°½åããã ãã coji ããã«ã礼ç³ãä¸ãã¾ãããããã¨ããããã¾ããã ä¹ ãã¶ãã® java-ja ã§ãããã java-ja ã¯ãã¯ã java-ja ã§ããã話ãã¦ãã¦æ¬å½ã«æ¥½ããã£ãã§ããã¾ã¨ããã¨ã TDD ã¯é»éã®å転ãªã®ã§ã¿ã㪠SBR(Steel Ball Run) ãèªãã§ãã ãããã å½æ¥è³æã¯ãã¡ãã§ã(ã¾ãã slideshare ã®åãè¾¼ã¿ã«å¤±æããªãã ãã?) ãã¢ããã®ãã¢ã¯ id:kompiro ã¨ãµããã§è¡ãã¾ãããid:kompiro ã¯åæ¥ Twitter ã§ç¡è¶æ¯ãããã«ãé¢ããã快諾ãã¦ããã¾ããããããã¨ããããã¾ããEclipse ã®ã·ã§ã¼ãã«ããæ©è½ã Quick-JUnit ãã©ã°ã¤ã³ããã㦠Kent
ä¹ ã ã« java-ja è¡ã£ã¦ãã java-jaï¼ æ±äº¬ã®çé¢ç®ãªã¤ãã³ãã¯ä¹ ã ã§ãããå®ã«åå¹´ã¶ãï¼(ï¾ â`) ãã¯ã³ã´ã®ä¼è°å®¤ã«ãéªéãã¾ãããæ¬æ¥ãªãåæ¥ã¯ç©ºèª¿ãæ¢ã¾ã£ã¡ãããã ãã©ï¼ç¡çè¨ã£ã¦åããã¦è²°ã£ãã¨èãã¾ããããã¯ã³ã´++ãid:coji++ã 50人ãããå ¥ãã¦ï¼ç¡ç· LAN å®åã®ä¼è°å®¤ã£ã¦ãªããªãç¡ããã§ãããããããï¼ç¡ç·ãç§ç©ã§ããã£ããéãéããããã¨ããããã¾ãã TDD ã¯é»éã®å転 åå㯠id:t-wada ã«ãã TDD è¬åº§ãã ããããã¤ãã®å¥´ããªãã£ãæãã ãªãï½ äºç¿ãçããã ãTDD ã¯é»éã®å転ã§ãããã¨ããã®ã¯å ãã¿ã SBR ã§ãããã¨ãæèããã¨å®ã¯ãã®ãããæ·±ãè¨èã ã¨ãããã¨ã«ããããæ°ã¥ãããé»éã®å転ã¯ã¹ã¿ã³ãã§ã¯ãªããã¹ãã«ã ãã¤ã¾ã TDD ã¯åªåã«ãã£ã¦æã«å ¥ãããã¨ãåºæ¥ãæè¡ãªã®ã ã ãã¿ã¯ã¼ãºã»ã¯ã¨ã¹ãã®ãã´ã¯
é害
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}