æåã®éšå -
ç¶æ³ãæ³åããŠã¿ãŠãã ããã ããªãã¯æ°ããæ©èœãéçºãããšãã課é¡ã«çŽé¢ããŠããŸãã ããªãã«ã¯å 人ãã¡ã®çµéšããããŸãã ããªãã«ã¯é埳ç矩åããªããšä»®å®ãããšãããªããªãã©ãããŸãã?
ã»ãšãã©ã®å Žåãå€ãéçºã¯ãã¹ãŠå¿ãããããã¹ãŠãæåããå§ãŸããŸãã ä»äººã®ã³ãŒããæãäžããã®ã奜ããªäººã¯ããŸãããæéãããã°ãç¬èªã®ã·ã¹ãã ã®äœæãå§ããŠã¿ãŠã¯ãããã§ããããã ããã¯å
žåçãªã¢ãããŒãã§ãããå€ãã®ç¹ã§æ£ããã§ãã ããããç§ãã¡ã®ãããžã§ã¯ãã§ã¯ãéãè¡åãåããŸããã ç§ãã¡ã¯ãåä»»è
ã«ãã utPLSQL ã§ã®åäœãã¹ãã®éçºã«åºã¥ããŠå°æ¥ã®èªåãã¹ã ã·ã¹ãã ãæ§ç¯ãããã®åŸãããã€ãã®æ¹åã§äžŠè¡ããŠäœæ¥ãé²ããŸããã
- å€ãåäœãã¹ãã埩å ããŸãã ãªã«ããªãšã¯ããã¹ãããã€ã€ã«ã㣠ã·ã¹ãã ã®æ¢åã®ç¶æ ã«é©å¿ããããã¹ãã utPLSQL æšæºã«é©å¿ãããããšãæå³ããŸãã
- æ£ç¢ºã«äœããã©ã®ãããªæ¹æ³ãšããã»ã¹ãç解ããŠåé¡ã解決ããããèªåãã¹ãã§ã«ããŒããŸããã ãã®æ å ±ãé ã®äžã«å ¥ããŠããããèªåãã¹ãã®ã³ãŒãã«çŽæ¥åºã¥ããŠçµè«ãå°ãåºãå¿ èŠããããŸãã ããã§ãã«ã¿ãã°ãäœæããããšã«ããŸããã åèªåãã¹ãã«åºæã®ããŒã¢ãã㯠ã³ãŒããå²ãåœãŠã説æãäœæããèšå®ãä¿®æ£ããŸãã (ããšãã°ãã©ã®ãããªæ¡ä»¶ã§å®è¡ãããããã¹ãã®å®è¡ã倱æããå Žåã«äœãèµ·ããããªã©)ã åºæ¬çã«ãèªåãã¹ãã«é¢ããã¡ã¿ããŒã¿ãå ¥åãããã®ã¡ã¿ããŒã¿ã utPLSQL ã¹ããŒãã®æšæºããŒãã«ã«é 眮ããŸããã
- æ¡å€§æŠç¥ã®å®çŸ©ãããªãã¡èªåãã¹ãã«ããæ€èšŒã®å¯Ÿè±¡ãšãªãæ©èœã®éžæã ç§ãã¡ã¯ãã·ã¹ãã ã®æ°ããªæ¹åãæ¬çªç°å¢ããã®ã€ã³ã·ãã³ããã·ã¹ãã ã®äž»èŠãªããã»ã¹ã® XNUMX ã€ã«æ³šæãæãããšã«ããŸããã ãããã£ãŠããªãªãŒã¹ãšäžŠè¡ããŠéçºãè¡ããããé«ãå質ã確ä¿ããåæã«ååž°ã®ç¯å²ãæ¡å€§ããéèŠãªç®æã§ã®ã·ã¹ãã ã®ä¿¡é Œæ§ã確ä¿ããŸãã æåã®ããã«ããã¯ã¯ãå°åæã«ããå²åŒãããŒãã¹ã®é åžããã»ã¹ã§ããã
- åœç¶ã®ããšãªãããç§ãã¡ã¯æ°ããèªåãã¹ãã®éçºãéå§ããŸããã æåã®ãªãªãŒã¹ã®ã¿ã¹ã¯ã® XNUMX ã€ã¯ããã€ã€ã«ã㣠ã·ã¹ãã ã®äºåå®çŸ©ããããµã³ãã«ã®ããã©ãŒãã³ã¹ãè©äŸ¡ããããšã§ããã ç§ãã¡ã®ãããžã§ã¯ãã«ã¯ãæ¡ä»¶ã«åŸã£ãŠã¯ã©ã€ã¢ã³ããéžæãããå³å¯ã«åºå®ããã SQL ã¯ãšãªã®ãããã¯ããããŸãã ããšãã°ãæåŸã®è³Œå ¥ãç¹å®ã®éœåžã§è¡ããããã¹ãŠã®é¡§å®¢ã®ãªã¹ãããŸãã¯å¹³åè³Œå ¥é¡ãç¹å®ã®å€ãè¶ ãã顧客ã®ãªã¹ããååŸããŸãã èªåãã¹ããäœæããåŸãäºåå®çŸ©ããããµã³ãã«ããã§ãã¯ãããã³ãããŒã¯ ããã©ãŒãã³ã¹ ãã©ã¡ãŒã¿ãŒãä¿®æ£ããããã«è² è·ãã¹ããå®è¡ããŸããã
- èªåãã¹ãã®æäœã¯äŸ¿å©ã§ããã¹ãã§ãã æãäžè¬ç㪠XNUMX ã€ã®ã¢ã¯ã·ã§ã³ã¯ãèªåãã¹ãã®å®è¡ãšãã¹ã ããŒã¿ã®çæã§ãã ãã®ããã«ããŠãèµ·åã¢ãžã¥ãŒã«ãšããŒã¿çæã¢ãžã¥ãŒã«ãšãã XNUMX ã€ã®è£å©ã¢ãžã¥ãŒã«ãã·ã¹ãã ã«ç»å ŽããŸããã
ã©ã³ãã£ãŒã¯ãXNUMX ã€ã®å ¥åããã¹ã ãã©ã¡ãŒã¿ãŒãæ〠XNUMX ã€ã®æ±çšããã·ãŒãžã£ãšããŠè¡šãããŸãã ãã©ã¡ãŒã¿ãšããŠãèªåãã¹ãã®ããŒã¢ãã㯠ã³ãŒããããã±ãŒãžåããã¹ãåãèªåãã¹ãèšå®ããŸãã¯äºçŽãããããŒã¯ãŒããæž¡ãããšãã§ããŸãã ãã®æé ã§ã¯ãæ¡ä»¶ãæºãããã¹ãŠã®èªåãã¹ããéžæããŠå®è¡ããŸãã
ããŒã¿çæã¢ãžã¥ãŒã«ã¯ããã±ãŒãžãšããŠæäŸããããã¹ã察象ã·ã¹ãã ã®ãªããžã§ã¯ã (ããŒã¿ããŒã¹å ã®ããŒãã«) ããšã«ãããã«ããŒã¿ãæ¿å ¥ããç¹å¥ãªããã·ãŒãžã£ãäœæãããŸãã ãã®æé ã§ã¯ãããã©ã«ãå€ãæ倧å€ãŸã§å ¥åããããããæåéãæãã¯ãªãã¯ããã ãã§ãªããžã§ã¯ããäœæãããŸãã ãŸãã䜿ãããããèæ ®ããŠãçæãããããŒã¿ã®ãã³ãã¬ãŒããäœæãããŸããã ããšãã°ããã¹ãçšé»è©±ãšè³Œå ¥ãå®äºããç¹å®ã®å¹Žéœ¢ã®ã¯ã©ã€ã¢ã³ããäœæããŸãã
- èªåãã¹ãã¯ãã·ã¹ãã ã«ãšã£ãŠé©åãªæéå
ã«å®è¡ãããå¿
èŠããããŸãã ãã®ãããæ¯æ¥å€éã®æã¡äžããèšç»ããããã®çµæã«åºã¥ããŠçµæã«é¢ããã¬ããŒããäœæããã瀟å
ã¡ãŒã«ã§éçºããŒã å
šäœã«éä¿¡ãããŸããã å€ãèªåãã¹ãã埩å
ããæ°ããèªåãã¹ããäœæããåŸã®åèšå®è¡æé㯠30 åã§ããã æã¡äžãã¯å¶æ¥æéå€ã«è¡ãããããããã®ãããªããã©ãŒãã³ã¹ã¯èª°ã«ãšã£ãŠãé©ããŠããŸããã
ããããäœæ¥é床ã®æé©åã«åãçµãå¿ èŠããããŸããã ãããã¯ã·ã§ã³ãã€ã€ã«ãã£ã·ã¹ãã ã¯å€éã«æŽæ°ãããŸãã ãªãªãŒã¹ã®äžéšãšããŠãå€éã«ç·æ¥ã«å€æŽãå ããå¿ èŠããããŸããã åå5æã«èªåãã¹ãã®çµæãåŸ ã€XNUMXåã¯ããªãªãŒã¹ã®è²¬ä»»è ãåã°ãããã®ã§ã¯ãããŸããã§ããïŒã¢ã¬ã¯ã»ã€ã»ãŽã¡ã·ã¥ã³ãã«ç±çãªæšæ¶ïŒïŒããããŠç¿æãç§ãã¡ã®ã·ã¹ãã ã«å¯ŸããŠããããã®æž©ããèšèããããããŸããã ããããã®çµæãäœæ¥æéã®åºæºã¯XNUMXåã«èšå®ãããŸããã
ããã©ãŒãã³ã¹ãé«éåããããã«ã3 ã€ã®æ¹æ³ã䜿çšããŸããã4 ã€ã¯ããã€ã€ã«ã㣠ã·ã¹ãã ã®ã¢ãŒããã¯ãã£ã«ããéåžžã«äŸ¿å©ãªãããXNUMX ã€ã®äžŠåã¹ã¬ããã§èªåãã¹ãã®å®è¡ãéå§ããŸããã ãããŠãèªåãã¹ããããèªäœã§ãã¹ãããŒã¿ãäœæãããã·ã¹ãã å ã§é©åãªãã®ãèŠã€ããããšããå Žåãç§ãã¡ã¯ãã®ã¢ãããŒããæŸæ£ããŸããã å€æŽåŸãç·äœæ¥æé㯠XNUMX ïœ XNUMX åã«ççž®ãããŸããã
- èªåãã¹ããå«ããããžã§ã¯ãã¯ãããŸããŸãªã¹ã¿ã³ãã«ãããã€ã§ããå¿
èŠããããŸãã åãçµã¿ã®åãã«ãç¬èªã®ããã ãã¡ã€ã«ãäœæããè©Šã¿ããããŸããããèªåã§äœæããèªåã€ã³ã¹ããŒã«ã¯å®å
šã«æããããã®ã§ããããšãæããã«ãªããç£æ¥çšãœãªã¥ãŒã·ã§ã³ã«ç®ãåããŸããã ãããžã§ã¯ãã«ã¯å€ãã®ã³ãŒããçŽæ¥å«ãŸããŠãã (ãŸããèªåãã¹ãã®ã³ãŒããä¿åããŸã)ãããŒã¿ã¯ã»ãšãã©ãããŸãã (äž»ãªããŒã¿ã¯èªåãã¹ãã«é¢ããã¡ã¿ããŒã¿ã§ã) ãšããäºå®ã«ããããããžã§ã¯ãã«çµ±åããã®ã¯éåžžã«ç°¡åã§ããããšãããããŸããããªãããŒã¹ãããžã§ã¯ãã
ããã¯ãããŒã¿ããŒã¹ ã¹ããŒãã®å€æŽã远跡ã管çãé©çšããããã®ãªãŒãã³ ãœãŒã¹ã®ããŒã¿ããŒã¹ã«äŸåããªãã©ã€ãã©ãªã§ãã ã³ãã³ãã©ã€ã³ãŸãã¯Apache Mavenãªã©ã®ãã¬ãŒã ã¯ãŒã¯ãä»ããŠç®¡çãããŸãã Liquibaseã®åäœåçã¯éåžžã«ã·ã³ãã«ã§ãã ç¹å®ã®æ¹æ³ã§ç·šæããããããžã§ã¯ãããããŸããããã¯ãã¿ãŒã²ãã ãµãŒããŒã«ããŒã«ããå¿ èŠãããå€æŽãŸãã¯ã¹ã¯ãªãããšããããã®å€æŽãã©ã®ãããªé åºã§ã©ã®ãããªãã©ã¡ãŒã¿ã§ã€ã³ã¹ããŒã«ãããã決å®ããå¶åŸ¡ãã¡ã€ã«ã§æ§æãããŸãã
DBMS ã¬ãã«ã§ã¯ãLiquibase ãããŒã«ãã㯠ãã°ãä¿åããç¹å¥ãªããŒãã«ãäœæãããŸãã åå€æŽã«ã¯èšç®ãããããã·ã¥ãããããããžã§ã¯ããšããŒã¿ããŒã¹å ã®ç¶æ ã®éã§æ¯åæ¯èŒãããŸãã Liquibase ã®ãããã§ãã·ã¹ãã ãžã®å€æŽãããããåè·¯ã«ç°¡åã«ããŒã«ã¢ãŠãã§ããŸãã èªåãã¹ãã¯ãã³ã³ãã (éçºè ã®å人ã«ãŒã) ã ãã§ãªãããã¹ã ã«ãŒãããªãªãŒã¹ ã«ãŒãã§ãå®è¡ãããããã«ãªããŸããã
ããã§ã¯ãåäœãã¹ã ã·ã¹ãã ãé©çšããçµæã«ã€ããŠè©±ããŸãããã
- ãã¡ãããç§ãã¡ã¯ãŸã第äžã«ãããè¯ããœãããŠã§ã¢ã®éçºãéå§ãããšç¢ºä¿¡ããŠããŸãã èªåãã¹ãã¯æ¯æ¥å®è¡ããããªãªãŒã¹ããšã«æ°åã®ãã°ãæ€åºãããŸãã ããã«ããããã®ãšã©ãŒã®äžã«ã¯ãæ¬åœã«å€æŽãããæ©èœã«éæ¥çã«ã®ã¿é¢é£ããŠãããã®ããããŸãã ãããã®ãšã©ãŒãæåãã¹ãã«ãã£ãŠçºèŠããããã©ããã¯éåžžã«çãããã§ãã
- ããŒã ã¯ãç¹å®ã®æ©èœãæ£ããåäœãããšããèªä¿¡ãåŸãŸãã... ãŸã第äžã«ãããã¯ç§ãã¡ã®éèŠãªããã»ã¹ã«é¢ãããã®ã§ãã ããšãã°ãéå» XNUMX ãæéããªãªãŒã¹ããšã«å€æŽãå ããããã«ãããããããå°åæã«ããå²åŒãšããŒãã¹ã®é åžã«åé¡ã¯ãããŸããã§ãããã以åã®æéã§ã¯ããçšåºŠã®é »åºŠã§ãšã©ãŒãçºçããŸããã
- ãã¹ãã®å埩åæ°ãæžããããšã«æåããŸããã èªåãã¹ãã¯æ°ããæ©èœçšã«äœæãããŠãããããã¢ããªã¹ããšããŒãã¿ã€ã ã®ãã¹ã¿ãŒã¯ããé«å質ã®ã³ãŒããååŸã§ããŸãã ããã¯ãã§ã«æ€èšŒãããŠããŸãã
- èªåãã¹ãã®éçºã®äžéšã¯éçºè ã«ãã£ãŠäœ¿çšãããŸãã ããšãã°ãã³ã³ããäžã®ãã¹ã ããŒã¿ã¯ããªããžã§ã¯ãçæã¢ãžã¥ãŒã«ã䜿çšããŠäœæãããŸãã
- éçºè ã«ããèªåãã¹ã ã·ã¹ãã ã®ãåãå ¥ããã確ç«ããããšãéèŠã§ãã ãããéèŠãã€æçšã§ãããšããç解ããããŸãã ãããŠç§èªèº«ã®çµéšããèšãã°ãããã¯æ±ºããŠäºå®ã§ã¯ãããŸããã èªåãã¹ããäœæããä¿å®ããã³éçºããçµæãåæããå¿ èŠããããŸãããå€ãã®å Žåããããã®æéã³ã¹ãã¯ãŸã£ãã䟡å€ããããŸããã æ¬çªç°å¢ã«è¡ã£ãŠããã§åé¡ã«å¯ŸåŠããæ¹ãã¯ããã«ç°¡åã§ãã ç§ãã¡ã®åœã§ã¯ãéçºè ãåããªããŠãèªåãã¹ãã§æ©èœãã«ããŒããããæ±ããŸãã
次ã®ã¹ããã
èªåãã¹ããããžã§ã¯ãã®éçºèšç»ã«ã€ããŠè©±ããŸãããã
ãã¡ãããSportmaster ãã€ã€ãªã㣠ã·ã¹ãã ãåç¶ããçºå±ãç¶ããéããèªåãã¹ããã»ãŒç¡éã«éçºã§ããŸãã ãããã£ãŠãéçºã®äž»ãªæ¹åæ§ã¯ã«ããŒãšãªã¢ã®æ¡å€§ã§ãã
èªåãã¹ãã®æ°ãå¢ãããšãç·äœæ¥æéã¯çå®ã«å¢å ããåã³ããã©ãŒãã³ã¹ã®åé¡ã«ç«ã¡è¿ããªããã°ãªããŸããã ããããã解決çã¯äžŠåã¹ã¬ããã®æ°ãå¢ããããšã§ãã
ãããããããã¯æãããªéçºæ¹æ³ã§ãã ãã£ãšéèŠãªããšã«ã€ããŠè©±ãå Žåã¯ã次ã®ç¹ã匷調ããŸãã
- èªåãã¹ã㯠DBMS ã¬ãã«ã§ç®¡çãããããã«ãªããŸããã äœæ¥ãæåãããã«ã¯ãPL/SQL ã®ç¥èãå¿ èŠã§ãã å¿ èŠã«å¿ããŠãã·ã¹ãã 管ç (ã¡ã¿ããŒã¿ã®èµ·åãäœæãªã©) ã¯ãJenkins ãªã©ã䜿çšããŠãããçš®ã®ç®¡çããã«ããåãåºãããšãã§ããŸãã
- 誰ããå®éçããã³å®æ§çãªææšã奜ã¿ãŸãã èªåãã¹ãã®å Žåããã®ãããªæ®éçãªææšã¯ã³ãŒã ã«ãã¬ããžãŸãã¯ã³ãŒã ã«ãã¬ããž ã¡ããªãã¯ã§ãã ãã®ã€ã³ãžã±ãŒã¿ãŒã䜿çšãããšããã¹ã察象ã·ã¹ãã ã®ã³ãŒãã®äœããŒã»ã³ããèªåãã¹ãã®å¯Ÿè±¡ãšãªã£ãŠããããå€æã§ããŸãã ããŒãžã§ã³ 12.2 以éãOracle ã¯ãã®ã¡ããªãã¯ãèšç®ããæ©èœãæäŸããæšæºã® DBMS_PLSQL_CODE_COVERAGE ããã±ãŒãžã®äœ¿çšãæšå¥šããŸãã
åœç€Ÿã®èªåãã¹ã ã·ã¹ãã ã¯ãŸã 1 幎ã»ã©åã«å®æããã°ãããªã®ã§ãã«ãã¬ããžãè©äŸ¡ããææãæ¥ãŠãããããããŸããã ç§ã®æåŸã®ãããžã§ã¯ãïŒã¹ããŒããã¹ã¿ãŒã«ãããã®ã§ã¯ãªããããžã§ã¯ãïŒã§ããããèµ·ãããŸããã èªåãã¹ãã«åãçµãã§ãã 10 幎åŸãçµå¶é£ã¯ã³ãŒãã®äœããŒã»ã³ããã«ããŒããããè©äŸ¡ãããšããã¿ã¹ã¯ãèšå®ããŸããã ã«ãã¬ããžã 20% ãè¶ ããã°ãçµå¶é£ã¯æºè¶³ããã§ãããã ç§ãã¡éçºè ã¯XNUMXïŒ çšåºŠã®çµæãæåŸ ããŠããŸããã ã³ãŒãã«ãã¬ããžããã¡ããã¡ãã«ããŠæž¬å®ãããšãããXNUMX% ã§ããã ãããç¥ãããã«ãç§ãã¡ã¯è³ãåãã«è¡ããŸããããã©ã®ããã«è³ãç²ã£ãã®ãããããŠãã®åŸã©ãã«è¡ã£ãã®ãã¯ãŸã£ããå¥ã®è©±ã§ãã
- èªåãã¹ãã§ã¯ãå ¬éããã Web ãµãŒãã¹ããã¹ãã§ããŸãã Oracle ã§ã¯ãããè¡ãããšãã§ãããããå€ãã®åé¡ãçºçããããšã¯ãªããªããŸãã
- ãããŠãã¡ãããåœç€Ÿã®èªåãã¹ã ã·ã¹ãã ã¯å¥ã®ãããžã§ã¯ãã«é©çšã§ããŸãã ç§ãã¡ãåãåã£ããœãªã¥ãŒã·ã§ã³ã¯æ±çšçãªãã®ã§ãOracle ã®äœ¿çšã®ã¿ãå¿ èŠã§ãã ä»ã® Sportmaster ãããžã§ã¯ãã§ãèªåãã¹ãã«èå³ããããšèããã®ã§ãããããç§ãã¡ã¯ããã«è¡ãããšã«ãªãã§ãããã
æèŠ
èŠçŽããŠã¿ãŸãããã ã¹ããŒããã¹ã¿ãŒã®ãã€ã€ã«ã㣠ã·ã¹ãã ãããžã§ã¯ãã§ã¯ãèªåãã¹ã ã·ã¹ãã ã®å®è£ ã«æåããŸããã ãã®åºç€ãšãªã£ãŠããã®ã¯ãStephen Feuerstein ã® utPLSQL ãœãªã¥ãŒã·ã§ã³ã§ãã utPLSQL ã®åšå²ã«ã¯ãèªåãã¹ãçšã®ã³ãŒããšãã©ã³ãã£ãŒãããŒã¿çæã¢ãžã¥ãŒã«ãªã©ã®è£å©çãªèªäœã¢ãžã¥ãŒã«ããããŸãã èªåãã¹ãã¯æ¯æ¥å®è¡ãããæãéèŠãªããšã«ãæ©èœããå©çããããããŸãã ç§ãã¡ã¯ãããé«å質ãªãœãããŠã§ã¢ããªãªãŒã¹ãå§ããŠãããšç¢ºä¿¡ããŠããŸãã åæã«ãçµæãšããŠåŸããããœãªã¥ãŒã·ã§ã³ã¯æ±çšçã§ãããOracle DBMS äžã§èªåãã¹ããçµç¹ããå¿ èŠããããããããããžã§ã¯ãã«èªç±ã«é©çšã§ããŸãã
PS ãã®èšäºã¯ããŸãå ·äœçã§ã¯ãªãããšãå€æããŸãããããã¹ããå€ããæè¡çãªäŸãã»ãšãã©ãããŸããã ãããã¯ãäžççã«èå³æ·±ããã®ã§ããå Žåã¯ããã®ãããã¯ãç¶è¡ããéå» XNUMX ãæéã§äœãå€ãã£ããã説æããã³ãŒãäŸã瀺ããŸãã
ä»åŸåŒ·èª¿ãã¹ãç¹ãé瀺ãå¿ èŠãªè³ªåãããå Žåã¯ãã³ã¡ã³ããèšå ¥ããŠãã ããã
ç»é²ãŠãŒã¶ãŒã®ã¿ãã¢ã³ã±ãŒãã«åå ã§ããŸãã
ããã«ã€ããŠè©³ããæžããŸããããïŒ
-
ã¯ãããã¡ãã
-
çµæ§ã§ã
12 人ã®ãŠãŒã¶ãŒãæ祚ããŸããã 4åã®ãŠãŒã¶ãŒãæ£æš©ããã
åºæïŒ habr.com