ååã®çãããããã«ã¡ã¯ãä»æ¥ã¯ãã³ãŒãã£ã³ã°ãæ¬æ Œçã«éå§ããåã«è¡ãå¿
èŠãããæºåäœæ¥ã«ã€ããŠèª¬æããŸããããå
·äœçã«ã¯ãã¢ããªã±ãŒã·ã§ã³ ã¢ãŒããã¯ãã£ã®èšç»ãšäœæã«ã€ããŠã§ãã ããããã©ãããå§ããã°ããã§ãããã? ãã®ã¢ãŒããã¯ãã£ãæ§ç¯ããã«ã¯ã©ãããã°ããã§ãããã? ãã¹ãŠã®ããšãšåæ§ãæåããå§ããå¿
èŠããããŸããã€ãŸããã¢ã€ãã¢ã䜿ã£ãŠãç§ãã¡ã®ãããžã§ã¯ãã®ã¢ã€ãã¢ã¯ãåºæ¬çãªæ©èœãåãã䟿å©ãªé»å ±ããããäœæããããšã§ãããæ£ç¢ºã«ç¹°ãè¿ããŠã¿ãŸãããã ããŠãŒã¶ãŒãšããŠãèå³ã®ãã JavaRush äžã®ã°ã«ãŒãã§æ°ããèšäºãå
¬éããããšãã«éç¥ãåä¿¡ã§ããããã«ããããšèããŠããŸããã YAGNI ååã«åŸã£ãŠãã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããŸããããã¯ãå¿
èŠãªãã®ã ããæåããããšãæå³ããŸãããã€ãå®éã«åœ¹ç«ã€ãããããªããšããçç±ã ãã§ãäºåã«äºçŽããŠæ©èœãäœæããããšã¯ãããŸãããã¯ããèªã¿åãå¯èœã§æ¡åŒµå¯èœãªã¢ããªã±ãŒã·ã§ã³ãäœæããŸãããããã¯ãæé·ã®ããã®ãããŒã¿ããŒã¹ ã¹ããŒããäœæãããšããæå³ã§ã¯ãããŸããããã®ãæé·ãããµããŒãããªãããã«ã¯ããããå®å
šã«æŸæ£ããæ¹ãè¯ããšå€æããŸãããããã«ãããéçºäžã®äžå¿
èŠãªãµããŒããäžå¿
èŠãªãã¹ããåé¿ã§ããŸããåŸã§ãç§ãã¡ã®ãããžã§ã¯ããå®çšŒåã«å
¥ããš (ãããã€ã®ãªã¹äž»çŸ©ã§ãç¥ç§° prod - Production ããæ¥ãŠããŸã)ãããã«äœãã§ããããã«ãªããŸããã¢ã€ãã¢ã決ããããå°ãããããããŠçµµãæãå¿
èŠããããŸããäœãæãããïŒããŸããŸãªãŠãŒã¶ãŒã®ã°ã«ãŒããžã®ãµãã¹ã¯ãªãã·ã§ã³ã«é¢ããããŒã¿ãä¿åããæ©èœãå¿
èŠã«ãªããŸããTelegram ã§ã¯ãŠãŒã¶ãŒ ID ããã£ãã ID ã®åœ¢ã§äœ¿çšã§ããããšãç¥ã£ãŠããŸãããããŠãæ°ããèšäºã®æ€çŽ¢ãå®éã«ã©ã®ããã«è¡ãããããšããã¢ã€ãã¢ããããŸããæ°ããèšäºã賌èªããŠãããã¹ãŠã®ã°ã«ãŒããæ€çŽ¢ãããã£ããã«éä¿¡ããŸããããã«åºã¥ããŠãæåã®è¿äŒŒå€ãšããŠæ¬¡ã®ããšãåŸãããŸã (ããã¯è£
食ãªãã®å±éå³ã§ã):ç§ã®ææžãã®æåãç解ãããããšãæã¿ãŸãã: å±éãã©ãããã©ã®ããã«å§ãŸãããæ£ç¢ºã«ç€ºããããšèããŠããŸããæåã®æ®µéã¯å®äºããŸãããäœãèµ·ãããã¯ãªããšãªã決ãŸããŸãããããŒã¿ããŒã¹å
ã®ã¢ãã«/ããŒãã«ã«ã€ããŠã¯äžã§èª¬æããŸãããããããããã¯èæ¡ã§ããæŽç·ŽãããŠãããèªã¿ããã圢åŒã«ä¿®æ£ããããšã¯å¯èœã§ããããããã¹ãã§ãã磚ãããããŠãããšãã«ããããã®åäœã«é¢ããçµ±èšãååŸãããããšãæãåºããŸããããããè¿œå ããŸããããã®å³ã§ã¯ãäœãã©ã®ããã«é
眮ãããããæ確ã§ããã€ãŸããã©ã®ãããªããŒãã«ãšãã£ãŒã«ããããã«å«ãŸããããããŒãã«ã®ãšã³ãã£ãã£åã¯äœããšããããšã§ãããã®ãã¡ã®ããã€ããååšããããšã決å®ãããŸããã
- ãŠãŒã¶ãŒ - ãããã䜿çšããé»å ±ãŠãŒã¶ãŒã«é¢ããæ å ±ãã芧ã®ãšããããã£ãã ID ãšããŠãŒã¶ãŒãã¢ã¯ãã£ããã©ããã®ãã©ã°ã®ã¿ãä¿åãããŸãããªãïŒãªããªããç§ãã¡ã®ç®æšã¯ãŠãŒã¶ãŒã«é¢ããæ å ±ãåéããããšã§ã¯ãªãããŠãŒã¶ãŒã«å©çãããããããšã ããã§ãã
- GroupSub - ããã«ã¯ã賌èªããŠããã°ã«ãŒãã«é¢ããæ å ±ãšã賌èªè ã«éä¿¡ãããææ°ã®èšäºã衚瀺ãããŸãã
- çµ±èš - ã¹ããŒããäœæããŠããŸãã - åŸã§äœæããŸããããã¯ãããžã§ã¯ãã® MVP ã®äž»ãªç®æšã§ã¯ãããŸããã
äœæ¥çšã®ãªããžããªãäœæãã
æåŸã«ãé»å ±ããããæäœããããã®ãªããžããªãäœæã§ããŸãã- ãªããžããªã®ååãšãã®ç°¡åãªèª¬æãªã©ããã§ã«ããç¥ã£ãŠããé ç®ãå ¥åããŸãã
- ã©ã€ã»ã³ã¹ãè¿œå ããŸã - Apache 2.0 (ã©ã€ã»ã³ã¹ã¯èªç±ã«éžæã§ããŸã)ã
- ç§ãã¡ã®ãããžã§ã¯ãã¯çŸåšå©çšå¯èœã§ã - ããã«ãã®ãããžã§ã¯ããžã®ãªã³ã¯ããããŸã: JavaRush Telegrambotã
ãªããžããªã«ãããžã§ã¯ããäœæãã
ãããžã§ã¯ããæäœããã«ã¯ãproject ãªã©ã® GitHub ããŒã«ã䜿çšãããšããã§ããããããã¯äœã§ããïŒããã§ã¯ãã¿ã¹ã¯ãäœæãããã®å®äºã远跡ããã¿ã¹ã¯ã®ã¹ããŒã¿ã¹ãä¿åã§ããŸãã誰ãããããå®è¡ãããã決å®ããŸãããããè¡ãã«ã¯ãäœæãããããžã§ã¯ãã§[ãããžã§ã¯ã]ãã¿ã³ãèŠã€ããããã§æ°ãããããžã§ã¯ããäœæããŸããã芧ã®ãšãããããã§ã¯ãããžã§ã¯ãã®ååãæå®ãã説æããäœæ¥ãããã³ãã¬ãŒããéžæããŸãã -èªåã«ã³ãã³ãä»ã®ç§ãã¡ã«ãšã£ãŠããããäœãæå³ãããã¯ããã»ã©éèŠã§ã¯ãããŸãããéèŠãªããšã¯ãã¿ã¹ã¯ãåã«åããããŒããçšæããååãã¿ã¹ã¯ã®ã¹ããŒã¿ã¹ã«ãªãããšã§ãã- To do - å®è¡ãèšç»ãããŠãããã¹ãŠã®ã¿ã¹ã¯ã
- é²è¡äž - çŸåšäœæ¥äžã®ã¿ã¹ã¯ã
- å®äº - ãã®ãããžã§ã¯ãå ã§ãã§ã«å®äºããã¿ã¹ã¯ã
ãããžã§ã¯ãã®ã€ã·ã¥ãŒïŒèª²é¡ïŒãæžããŸã
ã©ã®ãããªã¿ã¹ã¯ãäœæããããç解ããããã«ããããžã§ã¯ãã«äœãå«ãããã決ããŸããããããŒã¿ããŒã¹ã«ã¢ã¯ã»ã¹ããããŒã¿ããŒã¹ ã¹ããŒãã管çããã³å€æŽã§ããããã«ãJavaRush 㧠REST ãªã¯ãšã¹ããå®è¡ããŠèšäºã®ããŒã¿ãååŸã§ããããã«ãç°¡åãã€è¿ éã«èµ·åã§ããã¢ããªã±ãŒã·ã§ã³ãå¿ èŠã§ããããã«åºã¥ããŠã次ã®ãã¯ãããžãŒãéžæã§ããŸãã- SpringBoot - ã¢ããªã±ãŒã·ã§ã³ã®ãã¬ãŒã ã¯ãŒã¯ãšããŠã
- Spring Data - ããŒã¿ããŒã¹ãæäœããããã
- Flyway - ããŒã¿ããŒã¹ç§»è¡ã®äœæ¥çšã
- MySQL - ãããžã§ã¯ãã®ããŒã¿ããŒã¹ãšããŠã
- Telegrambot StringBoot ã¹ã¿ãŒã¿ãŒ - ãã¬ã°ã©ã ããããæäœããããã®ã©ã€ãã©ãª
- Unirest ã¯ãREST ãªã¯ãšã¹ããåŠçããããã®ã©ã€ãã©ãªã§ãã
ã¿ã¹ã¯äœæãã³ãã¬ãŒã
次ã®ãã³ãã¬ãŒãã䜿çšããŠã¿ã¹ã¯ãäœæããŸãã- ã¿ã¹ã¯åã¯JRTB-{IssueNumber}:{IssueDescription}ã®ããã«ãªããŸããããã§ã:
- {IssueNumber} ã¯åé¡ã®ã·ãªã¢ã«çªå·ã§ããååã®åé¡ãããã 1 ã€åãäžããŠã¿ãŸãããã
- {IssueDescription} - åé¡ã®ç°¡åãªèª¬æã
- ã¿ã¹ã¯ã®æ¬æã§ã¯ãã¿ã¹ã¯ã®ãã詳现ãªèª¬æãäœæããŸã (ã¿ã¹ã¯åã®èª¬æãšäžèŽããå ŽåããããŸã)ã
- åãå ¥ãåºæºã¯èŠä»¶ã®ãªã¹ãã§ããããããæºãããåŸã«ã¿ã¹ã¯ã¯å®äºãããšèŠãªãããŸããããã°ãä»äºãåŒãåããåºæºããããã䜿çšãããšãã¬ãã¥ãŒæ åœè (è±èªã® reviewer - reviewer - ã¿ã¹ã¯ã®å®äºæ¹æ³ãèŠã人) ã¯ãã¿ã¹ã¯ãå®å šã«å®äºãããã©ãããææ¡ã§ããŸãã
- [æ©èœ] JRTB-0: ã¹ã±ã«ãã³ Spring ããŒã ãããžã§ã¯ãã®äœæ- ããã§ãã¹ãŠãæ確ã§ããåã®èšäºã§è¡ã£ãããšã®æåã®éšåãå®è¡ããå¿ èŠããããŸãã
- [æ©èœ] JRTB-2: ãããžã§ã¯ãã«é»å ±ããããè¿œå ããŸã- åçŽã«å¿çããŠãçããŠããããšãäŒãã空ã®ããããè¿œå ããŸãã
- [æ©èœ] JRTB-3: ãã¬ã°ã©ã ãããã®ã³ãã³ããã¿ãŒã³ãå®è£ - ãã¬ã°ã©ã ãããã§ã³ãã³ããæäœããããã®æ£ããã¢ãããŒããèšå®ããŸãããããããŸã§ã«ããã€ãã®ããŒã ã«ã€ããŠã
- [æ©èœ] JRTB-1: ãªããžã㪠ã¬ã€ã€ãŒãè¿œå ããŸããããã¯æ倧ã®ã¿ã¹ã¯ã® 1 ã€ã§ããããŒã¿ããŒã¹ãæäœããããã«å¿ èŠãªãã¹ãŠã®äœæ¥ãçµåãããŸãã
- [æ©èœ] JRTB-5: ãŠãŒã¶ãŒãšããŠãã°ã«ãŒãããµãã¹ã¯ãªãã·ã§ã³ã«è¿œå ããããšèããŠããŸããããã¯ãã¢ãžã£ã€ã«ã®ç解ã«ãããæåã®ãŠãŒã¶ãŒ ã¹ããŒãªãŒã§ããããã¯ãŠãŒã¶ãŒã«ãšã£ãŠå€§ããªã¡ãªããã«ãªããŸãããããã«ã°ã«ãŒã ãµãã¹ã¯ãªãã·ã§ã³ãè¿œå ã§ããããã«ãªããŸãã
- [æ©èœ] JRTB-12: æ°ããèšäºã«é¢ããéç¥ãéä¿¡ããããã®ã¹ã±ãžã¥ãŒãªã³ã°ãå®è£ ããŸããããã§ã¯ãæ°ããèšäºãã°ã«ãŒãããšã«å ¬éãããã°ã«ãŒãã«ç»é²ããŠãããã¹ãŠã®ãŠãŒã¶ãŒã«éä¿¡ãããå Žåã«ãæ°ããèšäºãæ€çŽ¢ããå®è£ ã«ãªããŸãã
- [æ©èœ] JRTB-6: ãŠãŒã¶ãŒãšããŠãèªåã®ã°ã«ãŒãã®ãµãã¹ã¯ãªãã·ã§ã³ã®ãªã¹ãã確èªããããšèããŠããŸããããã§ã¯ãã¹ãŠãç°¡åã§ãããŠãŒã¶ãŒããµãã¹ã¯ã©ã€ãããŠãããã¹ãŠã®ã°ã«ãŒãã®ãªã¹ãã衚瀺ããã³ãã³ããè¿œå ããŸãã
- [æ©èœ] JRTB-7: ãŠãŒã¶ãŒãšããŠãèªåã®ãµãã¹ã¯ãªãã·ã§ã³ããã°ã«ãŒã ãµãã¹ã¯ãªãã·ã§ã³ãåé€ãããã§ããããã§ã¯ãã°ã«ãŒãå ã®æŽæ°ã«å¯ŸãããŠãŒã¶ãŒã®ãµãã¹ã¯ãªãã·ã§ã³ã®åé€ãå®è£ ããå¿ èŠããããŸãã
- [æ©èœ] JRTB-8: ãŠãŒã¶ãŒãšããŠãããã䜿çšããŠéã¢ã¯ãã£ãã«èšå®ããã- ãããã®åæ¢ãå®è£ ããŸããã€ãŸããäœæ¥ãåæ¢ããããã«ã·ã¹ãã å ã§å®è¡ããå¿ èŠããããã¹ãŠã®ããšã§ãã/stopã³ãã³ããåŠçã«è¿œå ããŸãã
- [æ©èœ] JRTB-9: ãŠãŒã¶ãŒãšããŠããããã®æäœãéå§ãããã以åã«ãããã䜿çšããŠããå Žåã¯ã¢ã¯ãã£ãã«èšå®ããããšèããŠããŸã- /start ã³ãã³ãã®åŠçãè¿œå ããŸãããŸãã«ç§ãã¡ãæãéãã§ãã
- [æ©èœ] JRTB-10: 管çè ãšããŠãããçµ±èšã確èªããã- ãããçµ±èšã®ã³ã¬ã¯ã·ã§ã³ãäœæããŸãã管çè æ©èœã®è¿œå ã
- [æ©èœ] JRTB-11: ãŠãŒã¶ãŒãšããŠããã®é»å ±ãããã®ããã¥ã¡ã³ããåç §ããããšèããŠããŸããããã¥ã¡ã³ãã®äœæã§ããã¯ããã¯ããåéããããªãã§ã¯çããŠãããŸããããããŠãããåŠã¶ã®ãæ©ããã°æ©ãã»ã©ãããã¯ããªãã«ãšã£ãŠããè¯ãã§ãããïŒïŒ
ãªããžããªã«èšå ¥ãã
ã³ãŒãã£ã³ã°ãå§ããåã«ä»ã«äœãããå¿ èŠããããŸãã? - èè ããããã®æ®µèœãããã€è¿œå ã§ããŸããã深淵ããåŒãåºããŠããŸãã?? ââããããä»äºã®è¯ãã¯çŽ°éšã«è¡šããŸãããããŠã圌ããããçã«ããªã£ãŠããã®ã§ãã ããã§ããã 1 ã€è©³çŽ°ãè¿œå ããŸãããããããžã§ã¯ãã人æ°ãåããä»ã®éçºè ã«ãšã£ãŠç解ã§ããããã«ããã«ã¯ããããžã§ã¯ãã«èšå ¥ããå¿ èŠããããŸããäœãè¿œå ããã°ããã§ãããã? å®è¡ã§ããããšã®å®å šãªãªã¹ãã«ã€ããŠã¯ãèšäºãGitHub äžã®ãããžã§ã¯ãã§ã®äœæ¥ã®æé©å: Github ãã³ãã¬ãŒã ãªããžããªã«ã€ããŠç¥ããã§èª¬æããŸããããã²èªãã§ã¿ãŠãã ãããç§ãã¡ã«ãšã£ãŠãæ確ãªããŒãžã§ã³ç®¡çãšãç§ãã¡ãäœãããŠããã®ããæ確ã«ç解ããããšãéèŠã§ãããããã£ãŠããããžã§ã¯ããžã®å€æŽãèšé²ããã RELEASE_NOTES ãã¡ã€ã«ãè¿œå ããŸãããäŸãšããŠãç§ã®ãããžã§ã¯ãã® RELEASE_NOTESãèŠãŠã¿ãŸããã(ã¯ããç§ããšãã«ã®ãŒãšåµé æ§ã泚ãã ãã®ã瀺ããŠã¿ãŸããã)ãæ°ããããŒãžã§ã³ããšã®å€æŽç¹ãèšèŒãããŠããŸããæ°ããã¿ã¹ã¯ãäœæããããã®ãã³ãã¬ãŒããè¿œå ããŸãããããã«ã¯ 4 ã€ã®ãªãã·ã§ã³ããããŸãã- ãã°ã¬ããŒãã¯ãäœæ¥äžã«ãã°ãèŠã€ãããŠãŒã¶ãŒ/ãã¹ã¿ãŒã«ââãã£ãŠäœæãããã¿ã¹ã¯ã§ããããã¯éåžžã«éèŠãªããšã§ãããã°ä¿®æ£ã®ç®¡çã«åœ¹ç«ã¡ãŸãã
- æ©èœãªã¯ãšã¹ãã¯ãæ°ããæ©èœãè¿œå ããã¿ã¹ã¯ã§ãããããžã§ã¯ãã®æåã®ã¿ã¹ã¯ã¯ãã¹ãŠæ©èœèŠæ±ã¿ã¹ã¯ã§ãã
- æ¹åãªã¯ãšã¹ã- ã¢ããªã±ãŒã·ã§ã³ã®åäœãæ¹åããããã®ã¿ã¹ã¯ãããšãã°ãããããæäœãããšãã«ãã¹ãã®åçãå€æŽããå Žåãªã©ã§ããç§ã¯ãã¯ãã«ã«ã©ã€ã¿ãŒã§ã¯ãªãã®ã§ãå®å šã«æ£ããçããå°ãåºãããšã¯ã§ããŸãããã ãããããããªãã«æ欲ãšèœåããããªãããããæäŸããŠãã ãã:)
- 質åã¯ãã¢ããªã±ãŒã·ã§ã³ã®åäœã«é¢ããéçºè ãžã®è³ªåã§ãããšãŠã䟿å©ãªãã®ã§ããä»äºãç解ããŠããªãããçåããããšããŸãããã®æ¹æ³ã§è³ªåãããšãçŽæ¥çããåŸãããšãã§ããŸãã
GO TO FULL VERSION