æ§æç®¡çã«é¢ããèšäºã®ç¬¬2éšãæžãæºåãã§ãããŸã§ã«é·ãæéãããããŸããã 10æ8æ¥ïŒ
Web Architect Workshop Day ïŒã«éå¬ããã
PHPCONF 2009ã«ã³ãã¡ã¬ã³ã¹ã§ãã¹ã¿ãŒã¯ã©ã¹ããœãŒã¹ã³ãŒããªããžããªã®æŽçæ¹æ³ããšè©±ããã»ã©å¹žéã ã£ããšããäºå®ãããã®äºå®ã«å¯äžããŸããã ãã¬ãŒã³ããŒã·ã§ã³ã®ããã«ãã¬ããŒãã®ããã¹ããšåæ§ã«ããã¬ãŒã³ããŒã·ã§ã³ãäºåã«æºåãããŸããã ã€ãã³ãã®åªããçµç¹ã«ãããããããäŒè°ããã°ã©ã ã«å«ãŸããã¬ããŒãã®è³æã¯äžè¬ã«å
¬éãããŸããã§ããã å ±é
¬ãšããŠããã¬ãŒã³ããŒã·ã§ã³ã§äœ¿çšããè³æãå
¬éããããšã«ããŸããã æ§æç®¡çã«ç¹åãããã®èšäºïŒ
åã®èšäºã®è«ççãªç¶ãïŒã«å ããŠããã¬ãŒã³ããŒã·ã§ã³
ã¹ã©ã€ããå
¬éãããŠããŸãã
ãã®èšäºã§ã¯ãæ§æç®¡çã§äœ¿çšãããããŒã«ã«ã€ããŠèª¬æããŸãã ãããã£ãŠããŸããéçºã§äœ¿çšãããããŒã«ããœãããŠã§ã¢ã®äœæããã»ã¹ã«ã©ã®ããã«åœ±é¿ãããã«ã€ããŠçŠç¹ãåœãŠãããšæããŸãã
- ãŸããåããŒã«ã䜿çšããŠããã€ãã®ç¹å®ã®ã¿ã¹ã¯ã解決ããŸãã
- 第äºã«ãåé¡ã®è§£æ±ºã«ã¯ãäžé£ã®èŠä»¶ãæºããããã®ããŒã«ã®å
è¡äœ¿çšãå«ãŸããŸããããã䜿çšããªããšãããŒã«ã¯å¹æçã§ã¯ãªãããæ©èœããŸããã
- 第äžã«ãå€ãã®å Žåã䜿çšãããå€ãã®ããŒã«ã«ãã£ãŠæèµ·ãããäžé£ã®èŠä»¶ãå®å
šã«æºããããŠããŸããã ããã«ãç°ãªãæ©åšã®èŠä»¶ãäºãã«ççŸããå ŽåããããŸãã ããã¯ãã¹ãŠããã®ãããªè£å©å
·ã®äœ¿çšã®æå¹æ§ãäœäžãããšããäºå®ã«ã€ãªãããŸãã
ããã§ãéçºäžã«ããã°ã©ãã䜿çšããããŒã«ã¯ãã¹ãŠãããŒã«ãšããŠäœ¿çšãããŸããIDEããã¬ãŒã ã¯ãŒã¯ãããŒãžã§ã³ç®¡çã·ã¹ãã ããŸãã¯å¥ã®ãã¯ãããžãŒã§ãã åéçºè
ã¯ãæç€ºçãŸãã¯æé»çã«ã䜿çšããããŒã«ã管çããåé¡ã«çŽé¢ããŠããŸãã ã»ãšãã©ã®å Žåããã®çš®ã®åé¡ã®è§£æ±ºçã¯çŽæçãªã¬ãã«ã§çºçããããéçºããã»ã¹ã®ã»ãšãã©ãæ§ç¯ãããåºæ¬ããŒã«ã®å®å
šã«æèçãªéžæã䜿çšãããŸãã åäžã®ãã©ãããã©ãŒã ã§äœ¿çšãããã»ãšãã©ã®ããŒã«ãçµã¿åãããããšã®ã§ãã人ã¯ã»ãšãã©ããŸããããããã¯ç¢ºç«ãããéçºããã»ã¹ã®æ§ç¯ã«åœ¹ç«ã¡ãŸãã
æ§æç®¡çã§äœ¿çšãããã¢ãããŒãã¯ããã®ãããªç¢ºç«ãããããã»ã¹ã®æ§ç¯ã«è²¢ç®ããå¯èœæ§ããããŸããããã¯ããœãããŠã§ã¢ãããžã§ã¯ãã®äœæ¥ææã®ç®¡çããã³å¶åŸ¡æ¹æ³ãããã«å ãããã倿Žãããã³åã
ã®ã¿ã¹ã¯ãšãããžã§ã¯ãå
šäœã®ã¹ããŒã¿ã¹ã«é¢ããæ
å ±ãæ±ºå®ããéã®äž»ãªèŠåŸã§ããããã§ãã åã«è¿°ã¹ãããã«ïŒ
åã®èšäºã§ ïŒããããã¯æ§æç®¡çã®é¢å¿ã®ç¯å²ã«å
¥ããŸãïŒåé
ç®ã¯ä»¥äžã§åå¥ã«æ€èšãããŸãïŒã
- ããŒãžã§ã³ç®¡ç
- ãã«ã管ç
- åäœãã¹ã
- éçã³ãŒãåæ
- ããã¥ã¡ã³ãçæïŒphpDocïŒ
- ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³
- äŸåé¢ä¿ç®¡ç
- ããŒã¿ããŒã¹çµ±å
- ãã°è¿œè·¡ïŒãã°è¿œè·¡ïŒããã³ã¿ã¹ã¯èšå®å¶åŸ¡ïŒåé¡è¿œè·¡ïŒ
ãŸãã以åã«èšåãããŠããªãããšãããæ§æç®¡çèªäœãè¡ãããšã«ã泚ç®ã§ããŸãã
- ãªãªãŒã¹ç®¡ç
- é
éã®èª¿æŽ
- 確ç«ãããéçºããã»ã¹ã®ç·šæ
- ãœãããŠã§ã¢ãããžã§ã¯ãã®ç°ãªãéšåéã®çžäºäœçšã®æ¹æ³ã®èª¿æŽ
QMã®ããã»ã¹ïŒããŒãžã§ã³ç®¡çããã«ã管çãªã©ïŒãšQMã®ã¿ã¹ã¯ïŒãªãªãŒã¹ç®¡çãæ¶èåã®èª¿æŽãªã©ïŒãæç¢ºã«åºå¥ããå¿
èŠãããããšã«æ³šæããŠãã ããã è±åœã®ããã»ã¹ã®éèŠãªæ©èœãç¹å®ããã«ã¯ããã®ãããªåããã»ã¹ïŒããã³æ§æç®¡çãšã®é¢ä¿ïŒãåå¥ã«æ€èšããå¿
èŠããããŸãã
ããŒãžã§ã³ç®¡ç
ããŒãžã§ã³ç®¡çã¯ãäž»èŠãªæ§æç®¡çããã»ã¹ã§ãã éçºäžã«ããŒãžã§ã³ç®¡çã䜿çšããå¿
èŠããªãããšã¯ãäºå®äžãŒãã§ãã ã»ãšãã©ã®éçºè
ã¯ãCVSãSubversionãVSSãªã©ã®ããŒãžã§ã³ç®¡çã·ã¹ãã ïŒSLEïŒã«ç²ŸéããŠããŸãã 忣ããŒãžã§ã³ç®¡çã·ã¹ãã ã人æ°ãéããŠããŸãïŒgitãmercurialãbazaarã åè¿°ã®ããŒãžã§ã³ç®¡çã·ã¹ãã ã¯ãéçºè
éã®æ§æç®¡çã«é¢ããæŠå¿µã®åœ¢æã«å€§ããªåœ±é¿ãäžããŸãã ãã®ãããéçºè
ã¯éåžžããªããžããªã®ææ
®æ·±ãçµç¹ã«ã€ããŠèããŸããã æãåçŽã§å¯äžã®ãœãªã¥ãŒã·ã§ã³ã¯ãSLEãµãããŒãžã§ã³ãæäŸããŸãã ãã®ãœãªã¥ãŒã·ã§ã³ã¯æãé »ç¹ã«äœ¿çšãããŸãïŒãã©ã³ã¯ããã©ã³ãããã³ã¿ã°ãžã®åå²ã ã»ãšãã©ã®Subversionãªããžããªã§ãã®ãã£ã¬ã¯ããªéå±€ãèŠãããšãã§ããŸãããåžžã«åãããã«äœ¿çšããããšã¯èšããŸãããæè¯ã®å Žåãbranchsãã£ã¬ã¯ããªã«äžŠè¡éçºãã©ã³ãã®ããã€ãã®ãã£ã¬ã¯ããªãèŠãããšãã§ããŸãã ãªããžããªã®åå²ãã£ã¬ã¯ããªæ§é ãäœæããéã®éçºè
ã®äžå®ã¯çè§£ã§ããŸããããã¯å€ãã®å Žåãåå²éã®å€æŽã®ããŒãžã«é¢é£ããå€ãã®åé¡ã®åå
ãšãªããŸãã ããããè€æ°ã®ããŒãžã§ã³ãæã€ããç°ãªããã©ãããã©ãŒã ã§åäœããã¢ããªã±ãŒã·ã§ã³ã®ããŒã éçºã§ã¯ãå䜵ãé¿ããããšã¯ã»ãšãã©äžå¯èœã§ãã ããããå䜵ãå®è¡ã§ããç¶æ³ãèŠå¶ããããšã§ããã®æ°ãæå°éã«æããããšãã§ããŸãã ãããããã®ãããªèŠå¶ã決å®ããã«ã¯ããªããžããªã®ç¶æã«é¢é£ããçŸè±¡ãå®å
šã«çè§£ããå¿
èŠããããŸãã
çµç«ç®¡ç
ãã1ã€ã®éèŠãªæ§æç®¡çããã»ã¹ã¯ãã¢ã»ã³ããªç®¡çã§ãã ã¢ã»ã³ããªç®¡çã¯ã次ã«é¢ããã¢ã¯ã·ã§ã³ã®èªååã§ãã
- ãœãŒã¹ã³ãŒãã®ã³ã³ãã€ã«
- ã¢ããªã±ãŒã·ã§ã³ã®å±é
- åäœãã¹ããå®è¡ãã
- ããŒã¿ããŒã¹ã®åæå
ã¢ã»ã³ããªç®¡çããŒã«ã¯ãäŸå€ïŒmakeãnmakeãcmakeãrakeïŒããããŸãããã¢ã»ã³ããªãã¡ã€ã«ã¯éåžžXMLæ§æïŒAntãNantãMavenãMSBuildãPhingïŒã䜿çšãããšããäºå®ã«ãã£ãŠç¹åŸŽä»ããããããšã«æ³šæããŠãã ããã éåžžãã¢ã»ã³ããªç®¡çããŒã«ã«ã¯ã次ã®ãããªã¢ã»ã³ããªããã»ã¹ã«åºæã®ã³ãã³ãããããŸãã
- ã°ã«ãŒããã¡ã€ã«æäœ
- ç·šé
- å±é
- ããŒãžã§ã³ç®¡çã·ã¹ãã ãšã®çžäºäœçš
ã¢ã»ã³ããªç®¡çããŒã«ã®ãããããã³ãã®ä»ã®ããããã£ã«ãããä»ã®éçºããŒã«ãšç°¡åã«çµ±åã§ããŸãã ã¢ã»ã³ããªç®¡çããŒã«ã¯ãæ§æç®¡çã§èªååãããã»ãšãã©ã®ããã»ã¹ãžã®ãªã³ã¯ãšããŠæ©èœããŸãã
åäœãã¹ã
åäœãã¹ãã¯æ§æç®¡çã®ããã»ã¹ã«å®å
šã«åž°ããããšã¯ã§ããŸããããæ§æç®¡çã«ãããåäœãã¹ãã®ç¹å¥ãªåœ¹å²ã決å®ããéåžžã«éèŠãªããããã£ããããŸãã ãããã£ãŠãè§£éãããããã°ã©ãã³ã°èšèªã§èšè¿°ããããœãããŠã§ã¢ãããžã§ã¯ãã§ã®åäœãã¹ãã®äœ¿çšã«ãããã¢ã»ã³ããªã管çããå¿
èŠæ§ã«å ããŠãæ§æç®¡çã«å¯Ÿãããã培åºçãªã¢ãããŒãã®å¿
èŠæ§ã決ãŸããŸãã ãŸãããªãã¡ã¯ã¿ãªã³ã°ãè¡ãããã¯ãã®å Žæã§åäœãã¹ãã衚瀺ãããŸãã 第äºã«ãåäœãã¹ãã®äœ¿çšã決å®ãããšããååãªã¬ãã«ã§ç¶æããå¿
èŠããããããžã§ã¯ãã®ã¢ãŒããã¯ãã£ãŒããã³è«ççãªæŽåæ§ãéåžžèæ
®ãããŸãã ã€ãŸãããŠããããã¹ãã䜿çšãããšããæ±ºå®ã¯ãéçºçµç¹ã«é¢é£ããå€ãã®è¿œå ããã»ã¹ïŒããã³ã³ã¹ãïŒã®å°å
¥ãèªåçã«æå³ããŸãããããã¯ããã»ã©æçœã§ã¯ãããŸããã
éçã³ãŒãåæ
å€§èŠæš¡ãããžã§ã¯ãã§ã¢ãŒããã¯ãã£ããã³è«çã®æŽåæ§ããµããŒãããããšã«å ããŠãéçºã®åææ®µéã§æ§æãšã©ãŒãç¹å®ããå¿
èŠããããŸãã ãœãŒã¹ã³ãŒãå
ã®æ§æãšã©ãŒãšè«çãšã©ãŒãç¹å®ããããšã«å ããŠãå€ãã®å Žåãã³ãŒãèŠçŽãžã®æºæ ãèªåçã«ç¢ºèªããå¿
èŠããããŸãã ã³ã³ãã€ã«ãããèšèªã§ã¯ã»ãšãã©ã®ãšã©ãŒãã³ã³ãã€ã«æ®µéã§æ€åºããããããéçã³ãŒãåæã¯ã€ã³ã¿ãŒããªã¿ãŒèšèªã«ããé¢é£ããŠããŸãã éçåæãå®è¡ããŠããœãŒã¹ã³ãŒãã¡ããªãã¯ãåéããããã«å¿ããŠã¬ããŒãããããšãã§ããŸãã ãœãŒã¹ã³ãŒãã®éçåæã«äœ¿çšãããã©ã€ãã©ãªã®äŸã¯ã衚ã«ç€ºãããŠããã©ã€ãã©ãªã§ãã
ããã°ã©ãã³ã°èšèª | æ¥œåš |
Java | PMD Findbugs |
C / C ++ | Cppcheck 糞ãã |
CïŒ | Fxcop ã¹ã¿ã€ã«ã³ãã ReSharper |
Php | PHP_CodeSniffer Php sat PHP_Depend ãã¯ã·ãŒ |
Python | ãã€ãã§ãã«ãŒ ãã€ã³ã ãã€ãã¬ãŒã¯ |
ã«ã㌠| ãã© ãã㣠ã«ãŒãã¡ã¹ ãã¬ã€ ãããã° |
ããã°ã©ãã³ã°èšèªã«äŸåããªãããŒã« | ã©ãã ã€ã¹ã« |
ããã¥ã¡ã³ãçæ
ãœãŒã¹ã³ãŒããšjavaDocãphpDocãªã©ã®ã¹ã¿ã€ã«ã®ã³ã¡ã³ãã«åºã¥ãããã¥ã¡ã³ãã®çæã¯ãã©ã€ãã©ãªãåå©çšå¯èœãªã³ã³ããŒãã³ãããã¬ãŒã ã¯ãŒã¯ãªã©ããœãŒã¹ã³ãŒããç©æ¥µçã«äœ¿çšãããããžã§ã¯ãã«æãããé¢é£ããŸããããã¥ã¡ã³ãã®çæã«æããã䜿çšãããããŒã«ã衚ã«ç€ºããŸãã
ç¹å®ã®ããã°ã©ãã³ã°èšèªåã | Php | phpDocumentor |
Java | ãžã£ãã㯠|
C ++ | Cppdoc |
Python | pyDoc |
ã«ã㌠| RDoc |
ãããªãŒ | DelphiCodeToDoc |
CïŒ | Ndoc |
ç¹å®ã®ããã°ã©ãã³ã°èšèªã䜿çšããããšãæåããŠããªã | é
žçŽ |
ROBODoc |
ãã€ã³ããã¹ã |
ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³
ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ïŒCIïŒã¯ãçµ±åã®åé¡ãã§ããã ãæ©æã«ç¹å®ããŠè§£æ±ºããããã«ãé »ç¹ã«èªååããããããžã§ã¯ãã¢ã»ã³ããªãå®è¡ãããœãããŠã§ã¢éçºãã©ã¯ãã£ã¹ã§ãã éçºè
ãã¢ããªã±ãŒã·ã§ã³ã®åéšåã§ç¬ç«ããŠäœæ¥ããéåžžã®ãããžã§ã¯ãïŒç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ã®ãã©ã¯ãã£ã¹ã䜿çšããªãïŒã§ã¯ãã€ã³ãã°ã¬ãŒã·ã§ã³æ®µéãæçµã§ãã CIã説æãã
ãŠã£ãããã£ã¢ã®
ç°¡æœãªèšäºã§æ£ããææãããŠããããã«ãç¶ç¶çãªçµ±åã¯ã©ã®ãããžã§ã¯ãã«ãé©çšã§ããŸããã ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ã®å®è·µãå®è£
ããã«ã¯ããããžã§ã¯ãã¯ããã€ãã®èŠä»¶ãæºããå¿
èŠããããŸãã
- ãœãŒã¹ã³ãŒããšã¢ã»ã³ããªã«å¿
èŠãªãã¹ãŠã®ãã®ã¯ããœãŒã¹ã³ãŒããªããžããªãŸãã¯ç°¡åã«ã¢ã¯ã»ã¹ã§ããå Žæã«ä¿åãããŸãã
- ãªããžããªããã®ã³ããŒæäœããããžã§ã¯ãå
šäœã®ã¢ã»ã³ããªããã³ãã¹ãã¯èªååãããŠãããå€éšããã°ã©ã ããç°¡åã«åŒã³åºãããšãã§ããŸãã
éåžžãç¶ç¶çãªçµ±åããŒã«ã¯ããªããžããªæŽæ°ã€ãã³ããçºçãããšãã«ãã«ããããªã¬ãŒããããã«æ§æãããŸãã ãã«ãããã»ã¹ã«å±éãã§ãŒãºãå«ãŸããŠãããããç¶ç¶çãªçµ±åã調æŽããŠããã¹ãããŒã ãã¢ããªã±ãŒã·ã§ã³ã®äœæ¥çšã³ããŒãšãã¹ãçšã³ããŒãä¿æã§ããããã«ããããšãã§ããŸãã éçºäžããã®ãããªç¶ç¶ççµ±åããŒã«ã¯ãCruiseControlãphpUnderControlãXincãCruiseControl.rbãTeamCityãApache ContinuumãHudsonãParabuildãAtlassian Bambooãªã©ãšããŠäœ¿çšã§ããŸãã
ããŒã¿ããŒã¹çµ±å
æ§æç®¡çã¿ã¹ã¯ãæ€èšããéã«å¥ã®å Žæãå ããéèŠãªåé¡ã¯ãããŒã¿ããŒã¹çµ±åã§ãã ã»ãšãã©ã®å ŽåãããŒã¿ããŒã¹ã¯ã¢ããªã±ãŒã·ã§ã³ã®äžå¯æ¬ ãªéšåã§ãã ã¢ãžã£ã€ã«ææ³ã䜿çšããéçºã«ã¯ãããã°ã©ã ã³ãŒãã®ç¶ç¶çãªæ¹åã ãã§ãªããããŒã¿ããŒã¹ã®æ§é ãšãã®æ©èœãå«ãŸããŸãã éåžžãããã¯äžŠè¡ããŠè¡ãããŸããããã°ã©ã ã³ãŒãã®å€æŽã«äŒŽãããã£ãŒã«ãã¿ã€ãããã£ãŒã«ãåã颿°ãããªã¬ãŒãããŒã¿ããŒã¹ã€ã³ããã¯ã¹ã倿ŽãããŸãã ãããžã§ã¯ãã®ã©ã€ããµã€ã¯ã«äžã®ããŒã¿ããŒã¹ã®é²åã¯ãããã°ã©ã ã³ãŒãã®é²åã«äŒŒãŠãããæ§æç®¡çã®å¯Ÿè±¡ãšããŠããŒã¿ããŒã¹ãæ€èšããå Žåãšã»ãŒåãæ©èœãåããŠããŸãã ããŒã¿ããŒã¹ã®æ§æç®¡çãšããŒã¿ããŒã¹ã®ããŒãžã§ã³ç®¡çã¯ãããã°ã©ã ã³ãŒãã®æ§æç®¡çãšæ¯èŒããŠå€§ããªéãããããŸãããããã¯ãããžã§ã¯ã管çã®äžå¯æ¬ ãªéšåã§ãããããŒã¿ããŒã¹çµ±åããã»ã¹ã«åæ ãããŸãã SQLã¢ããªã±ãŒã·ã§ã³ã¯ãå€ãã®å Žåãã¢ããªã±ãŒã·ã§ã³å
ã®ã¢ããªã±ãŒã·ã§ã³ãšèŠãªãããããŒãžã§ã³ç®¡çãããå¥ã®ãããžã§ã¯ãã«å²ãåœãŠãããŸãã ããŒãžã§ã³ç®¡çããŒã¿ããŒã¹ã§äœ¿çšãããèå¥èŠçŽ ã«ã¯ãDMLïŒããŒã¿ããŒã¹æäœèšèªïŒãšDDLïŒããŒã¿ããŒã¹å®çŸ©èšèªïŒã®2çš®é¡ããããŸãã DMLã¯ãããŒã¿ã®æäœã«äœ¿çšãããSQLã®ãµãã»ããã§ãããã§ãããæ¿å
¥ãåé€ãæŽæ°ïŒCRUDæäœïŒã DDLã¯SQLã®ãµãã»ããã§ããããŸãããããŒãã«ãã€ã³ããã¯ã¹ãããªã¬ãŒãæŽåæ§å¶çŽãªã©ã®äœæãªã©ãããŒã¿ããŒã¹ã®æ§é ãèšè¿°ããããã«äœ¿çšãããŸãã ããŒã¿ããŒã¹çµ±åãæŽçãããšãã¯ãDMLãšDDLã®ææç©ãåé¢ããããããåå¥ã«ç®¡çããããšããå§ãããŸãã
åé¡è¿œè·¡
ã·ã¹ãã ïŒã¿ã¹ã¯èšå®å¶åŸ¡ã·ã¹ãã ïŒã䜿çšããåŸåã¯ããã®ãããªã·ã¹ãã ããœãããŠã§ã¢ãããžã§ã¯ã管çããŒã«ãçµ±åãã詊ã¿ããŸããŸãé »ç¹ã«è¡ãããŠããããšã瀺ããŠããŸãã å€ãã®å Žåãããã¯çŽæ¥ã§ã¯ãªã鿥çã«çºçããŸã-ããŸããŸãªãã©ã°ã€ã³ã®ãªãªãŒã¹ïŒããŒãžã§ã³ç®¡çã·ã¹ãã ãšã®çµ±åãjavaDocãphpDocãŸãã¯Doxygenããã¥ã¡ã³ãã®è¡šç€ºãªã©ïŒã ãã ããCRMïŒå€æŽèŠæ±ç®¡çïŒã«é¢é£ããæ©èœã®åºæ¬ã»ããã«ããæ¹åãå¿
èŠãªèŠçŽ ããããŸãã ãã®ãããªèŠçŽ ã«ã¯ãããšãã°ããŒãžã§ã³ã®åœåããããŸãã ãã ããåé¡è¿œè·¡ã·ã¹ãã ã ãã§ãªãããââãŒãžã§ã³ç®¡çãåæ³ã®ä»ã®ããã»ã¹ã§ãç¹å®ã®èŠåã䜿çšããå¿
èŠããããããæšæºåãããããŒãžã§ã³åã䜿çšã§ããŸããã
ã¢ãžã£ã€ã«
æè»ãªæ¹æ³è«ã®äœ¿çšãå«ããœãããŠã§ã¢éçºãžã®ã¢ãããŒãã«ã¯ãæ§æç®¡çã®çµç¹ã«æã倧ããªåœ±é¿ãäžããå€ãã®ç¹åŸŽçãªç¹æ§ããããŸãã ãããã®ããããã£ã¯æ¬¡ã®ãšããã§ãã
- å€åããèŠä»¶
- å埩æ§
- ç¶ç¶çãªé
ä¿¡ã
æ§æç®¡çããã»ã¹ãæ€èšããå Žåããããã®ããããã£ã¯ãç¹å®ã®ããã»ã¹ã®åã
ã®ã³ã³ããŒãã³ããŸãã¯ã¹ããŒãžã®1ã€ã§ååŸããçµæã«è¡šç€ºããå¿
èŠããããšæ³å®ãããŠããŸãã
ãããã«
ãã®èšäºã§ã¯ãæ§æç®¡çã®äžéšã§ããããã»ã¹ã«ã€ããŠè©³ãã説æããããšãªã説æããŸãã åããã»ã¹ãä¿èšŒããããã«ãå€ãã®éžæè¢ããéžæã§ããåå¥ã®ããŒã«ã䜿çšãããŸãã ããŒã«èªäœã®äžåäžæ§ãããã³ãããã解決ããã¿ã¹ã¯ã®éãã«ãããæå€§éã®çµ±åãšå¹æãéæããããšã¯å°é£ã§ããããšãææãããŸããã æ¬¡ã®èšäºã§ã¯ãããã«ã€ããŠ-远å ã®åœ¢åŒåïŒãœãŒã¹ã³ãŒããªããžããªã®çµç¹åïŒãå°å
¥ããŠãåæ³ã§äœ¿çšãããããŒã«ãããå¹ççã«äœ¿çšããæ¹æ³ã«ã€ããŠèª¬æããŸãã
ç¶ã
åç
§ïŒ
- åé¡è¿œè·¡ã·ã¹ãã ïŒwikiïŒ
- ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ïŒwikiïŒ
- è€æ°ã®ã¢ãžã£ã€ã«ããŒã ã®ããŒãžã§ã³ç®¡ç
- 5ã€ã®ç°¡åãªã¹ãããã§ã®ç¶ç¶çãªå±é
- SVNãªããžããªã¡ããªãã¯æ§ç¯ããŒã«
- ã³ãŒãã«ãã¬ããžåæ
- IBM Rational ClearCaseã§ã®ã³ãŒãã¡ããªãã¯ãšãã®å®çšçãªå®è£
- SLOCCount-ã³ãŒãã®è¡æ°ãã«ãŠã³ãããããã®ããŒã«
- CruiseControlãAntãããã³PHPUnitã䜿çšããé£ç¶ãã«ã-åçŽãªæ§æç®¡çãã©ãããã©ãŒã ãç·šæããäŸ
- PHPCONF 2009ã¬ããŒã