1. ããã°ã©ãã³ã°ç¿åŸã®çŸå®
ããã°ã©ãã³ã°ãåŠã¶ããšã¯ãæ°ããèšèªãåŠã¶ã®ãšäŒŒãŠããŸããåãã¯é£ããæãããããããŸããããç¶ç¶çãªåŠç¿ãšå®è·µãéããŠãåŸã ã«ã¹ãã«ã磚ããŠããããšãã§ããŸããããããäžäœã©ããããã®æéãå¿ èŠãªã®ã§ããããïŒãŸãããªã人ã«ãã£ãŠç¿åŸã¹ããŒããç°ãªãã®ã§ããããïŒãã®ã»ã¯ã·ã§ã³ã§ã¯ããããã®çåã«çããŠãããŸãã
1.1. ç¿åŸã«ãããå¹³åçãªæé
ããã°ã©ãã³ã°ã®ç¿åŸæéã¯ãç®æšãšããã¹ãã«ã¬ãã«ãåŠç¿æéã䜿çšããåŠç¿ãªãœãŒã¹ã«ãã£ãŠå€§ããå€ãããŸããäŸãã°ãåºæ¬çãªãŠã§ããµã€ããäœæããã¹ãã«ã身ã«ã€ããã®ã«ã¯æ°é±éããæ°ã¶æãäžæ¹ã§è€éãªãœãããŠã§ã¢ãã¢ããªã±ãŒã·ã§ã³ãéçºããèœåãç¿åŸããã®ã«ã¯æ°å¹ŽãããããšããããŸããããããäžè¬çã«ã¯ãæ¯æ¥æ°æéã®åŠç¿ãç¶ç¶ããããšã§ã6ã¶æãã1幎çšåºŠã§åºæ¬çãªããã°ã©ãã³ã°ã¹ãã«ãç¿åŸããããšãã§ãããšèšãããŠããŸãã
1.2. å人差ã®èŠå
ããã°ã©ãã³ã°ã®ç¿åŸé床ã«ã¯å人差ããããŸããããã¯ãåŠç¿æ¹æ³ãåæç¥èãåŠç¿ç°å¢ããããŠã¢ãããŒã·ã§ã³ãªã©ã®èŠå ã«ãã£ãŠåœ±é¿ãåããŸããäŸãã°ãITé¢é£ã®åŠéšãå°æ»ããŠãã人ã¯ãããã°ã©ãã³ã°ã®åºç€ç¥èããããããç¿åŸãæ©ããªãããšãèããããŸãããŸããæ¯æ¥ã®åŠç¿æéã䜿çšããææã®è³ªããç¿åŸé床ã«å€§ãã圱é¿ããŸãã
1.3. ããã°ã©ãã³ã°ã®é£æ床ãšçš®é¡
ããã°ã©ãã³ã°èšèªããã¬ãŒã ã¯ãŒã¯ã«ã¯å€çš®å€æ§ãªãã®ããããŸãããããã®äžã«ã¯ãåå¿è ã«ãšã£ãŠåŠã³ããããã®ããéã«é£æ床ãé«ããã®ãååšããŸããäŸãã°ãPythonãJavaScriptã¯åå¿è ã«ãšã£ãŠåŠã³ãããèšèªãšããŠç¥ãããŠããŸããäžæ¹ãC++ãJavaã¯ãããé«åºŠãªæŠå¿µãç解ããå¿ èŠããããããåŠç¿ã®é£æ床ãäžããããšããããŸãããããã£ãŠãã©ã®ããã°ã©ãã³ã°èšèªãæè¡ãåŠã¶ãã«ãã£ãŠãç¿åŸã«ãããæéãå€ãã£ãŠããŸãã
ãã®ã»ã¯ã·ã§ã³ãéããŠãããã°ã©ãã³ã°ã®ç¿åŸã«é¢ããçŸå®çãªã€ã¡ãŒãžãæã€ããšãã§ããã§ããããã次ã®ã»ã¯ã·ã§ã³ã§ã¯ãå¹æçãªåŠç¿æ¹æ³ã«ã€ããŠè©³ãã解説ããŠãããŸãã
2. å¹æçãªåŠç¿æ¹æ³
ããã°ã©ãã³ã°ãåŠã¶æ¹æ³ã¯å€å²ã«ããããŸããç¬åŠã§ã®åŠã³æ¹ãåŠæ ¡ãè¬åº§ã§ã®åŠã³æ¹ããããŠå®éã«ãããžã§ã¯ããæãããããšã§ã®åŠã³æ¹ãªã©ãããããã®æ¹æ³ã«ã¯ç¹é·ãšå¹æããããŸãããã®ã»ã¯ã·ã§ã³ã§ã¯ãããããã®åŠç¿æ¹æ³ã®ç¹åŸŽããããããã®åŠç¿ãªãœãŒã¹ãå®è·µçãªãããžã§ã¯ãã®åãçµã¿æ¹ã«ã€ããŠè©³ãã解説ããŠãããŸãã
2.1. ç¬åŠãšåŠæ ¡ã»è¬åº§ã®éã
ç¬åŠã§ããã°ã©ãã³ã°ãåŠã¶å Žåãèªåã®ããŒã¹ã§åŠã¹ããšããã¡ãªããããããŸãããŸããèªåã®èå³ãç®çã«åãããŠåŠç¿å 容ãéžã¶ããšãã§ãããããã¢ãããŒã·ã§ã³ãä¿ã¡ããããšèšããŸããäžæ¹ãåŠæ ¡ãè¬åº§ã§åŠã¶å Žåã¯ãå°é家ããçŽæ¥æå°ãåããããšãã§ãããããåºç€ãããã£ãããšåŠã¶ããšãã§ããŸãããŸããåãç®çãæã£ã仲éãšåŠã¶ããšã§ãåŠç¿ã®å±ã¿ã«ãªãããšããããŸãã
2.2. ããããã®åŠç¿ãªãœãŒã¹
ããã°ã©ãã³ã°ãåŠã¶ããã®ãªãœãŒã¹ã¯ç¡æ°ã«ååšããŸããåå¿è åãã®ææãããªã³ã©ã€ã³ã§ç¡æã§å©çšã§ãããã¥ãŒããªã¢ã«ãããã«ã¯å°éæžãªã©ãå€å²ã«ããããªãœãŒã¹ãå©çšã§ããŸããç¹ã«ãCodecademyãfreeCodeCampãªã©ã®ãªã³ã©ã€ã³ãã©ãããã©ãŒã ã¯ãåå¿è ããäžçŽè ãŸã§ã®åŠç¿ã«é©ããŠããŸãããŸããGitHubã«ã¯å€ãã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ããå ¬éãããŠãããå®éã®ã³ãŒããèªãããšã§åŠã¶ããšãã§ããŸãã
2.3. å®è·µçãªãããžã§ã¯ãã®åãçµã¿æ¹
ããã°ã©ãã³ã°ã®åŠç¿ã«ãããŠãå®éã«æãåãããŠãããžã§ã¯ããäœæããããšã¯éåžžã«å¹æçã§ããäŸãã°ãã·ã³ãã«ãªãŠã§ããµã€ããã¢ããªã±ãŒã·ã§ã³ãäœæããããšã§ãåŠãã ç¥èãå®éã«æŽ»çšããããšãã§ããŸãããŸãããããžã§ã¯ããéããŠãå®éã®éçºãããŒãããŒã ã§ã®äœæ¥ãåé¡è§£æ±ºã®ã¹ãã«ãªã©ãå®åã§å¿ èŠãšãããèœåã身ã«ã€ããããšãã§ããŸãã
ãã®ã»ã¯ã·ã§ã³ãéããŠãå¹æçãªããã°ã©ãã³ã°åŠç¿æ¹æ³ã«ã€ããŠã®ç解ãæ·±ããããšãã§ããã§ããããã次ã®ã»ã¯ã·ã§ã³ã§ã¯ãããã°ã©ãã³ã°åŠç¿ã®éå£ããã®å ææ¹æ³ã«ã€ããŠè©³ãã解説ããŠãããŸãã
3. ããã°ã©ãã³ã°åŠç¿ã®éå£
ããã°ã©ãã³ã°ã®åŠç¿ã¯ãå€ãã®äººã«ãšã£ãŠææŠçãªçµéšãšãªããŸããæ°ããæŠå¿µãæè¡ãåŠã¶éçšã§ãããŸããŸãªéå£ã«çŽé¢ããããšããããŸãããã®ã»ã¯ã·ã§ã³ã§ã¯ãããã°ã©ãã³ã°åŠç¿ã®éå£ãšããããä¹ãè¶ããããã®æ¹æ³ã«ã€ããŠè©³ãã解説ããŠãããŸãã
3.1. ããããæ«æãã€ã³ã
ããã°ã©ãã³ã°åŠç¿ã«ãããŠãå€ãã®äººãçŽé¢ããæ«æãã€ã³ãã¯ä»¥äžã®ãããªãã®ã§ãã
ç解ãé£ããæŠå¿µ: ç¹ã«ãªããžã§ã¯ãæåãååž°ãªã©ã®æŠå¿µã¯ãåããŠåŠã¶äººã«ãšã£ãŠã¯é£æ床ãé«ããšæããããšãå€ãã§ãã
ãšã©ãŒã¡ãã»ãŒãžã®å¯ŸåŠ: ã³ãŒããæžããŠå®è¡ããéã«åºããšã©ãŒã¡ãã»ãŒãžã®æå³ããããããããã解決ããã®ãé£ãããšæããããšããããŸãã
é·æéã®åŠç¿: äžã€ã®åé¡ããããžã§ã¯ãã«åãçµãã®ã«å€ãã®æéããããããšã§ãé²æãæãã«ãããªãããšããããŸãã
3.2. ã¢ãããŒã·ã§ã³ã®ç¶ææ¹æ³
åŠç¿ã®ã¢ãããŒã·ã§ã³ãç¶æããããã®æ¹æ³ã¯ããã€ããããŸãã
å°ããªç®æšãèšå®ãã: 倧ããªç®æšãéæããããã«ã¯ãå°ããªã¹ããããèžãããšã倧åã§ããæ¯æ¥ã®åŠç¿ã®é²æãèšé²ããå°ããªæåäœéšãç©ã¿éããããšã§ãã¢ãããŒã·ã§ã³ãç¶æããããšãã§ããŸãã
仲éãšåŠã¶: åãç®çãæã£ã仲éãšäžç·ã«åŠã¶ããšã§ãå±ãŸãåã£ãããçåç¹ãå ±æããããšãã§ããŸãã
å®éã®ãããžã§ã¯ãã«åãçµã: åŠãã ç¥èãå®éã®ãããžã§ã¯ãã«æŽ»çšããããšã§ãåŠç¿ã®ææãå®æããããšãã§ããŸãã
3.3. åŠç¿ã®å¹çåãã¯ããã¯
å¹ççã«åŠç¿ãé²ããããã®ãã¯ããã¯ãããã€ãååšããŸãã
ãã¢ããŒããã¯ããã¯: 25åéã®éäžåŠç¿ãš5åéã®äŒæ©ãç¹°ãè¿ãããšã§ãéäžåãç¶æããªããåŠç¿ãé²ããæ¹æ³ã§ãã
ã¢ã¯ãã£ãã©ãŒãã³ã°: ååçã«æ å ±ãåãåãã®ã§ã¯ãªããèªãåé¡ã解決ããããšã§ãæ·±ãç解ããããšãã§ããŸãã
ãã£ãŒãããã¯ãæ±ãã: ä»è ããã®ãã£ãŒãããã¯ãåãåãããšã§ãèªåã®ç解ã®æµ ãã誀解ãä¿®æ£ããããšãã§ããŸãã
ãã®ã»ã¯ã·ã§ã³ãéããŠãããã°ã©ãã³ã°åŠç¿ã®éå£ãšãã®å ææ¹æ³ã«ã€ããŠã®ç解ãæ·±ããããšãã§ããã§ããããã次ã®ã»ã¯ã·ã§ã³ã§ã¯ãç¿åŸåŸã®ãã£ãªã¢ãã¹ã«ã€ããŠè©³ãã解説ããŠãããŸãã
4. ç¿åŸåŸã®ãã£ãªã¢ãã¹
ããã°ã©ãã³ã°ã®ã¹ãã«ãç¿åŸããåŸãã©ã®ãããªãã£ãªã¢ãã¹ãéžã¶ããšãã§ããã®ã§ãããããããã°ã©ããŒãšããŠã®éã¯ãã¡ãããä»ã®è·çš®ãšã®é£æºããã¹ãã«ã®ç¶ç¶çãªåäžæ¹æ³ã«ã€ããŠãèããããšãéèŠã§ãããã®ã»ã¯ã·ã§ã³ã§ã¯ãç¿åŸåŸã®ãã£ãªã¢ã®éžæè¢ããã¹ãã«ã磚ãç¶ããããã®æ¹æ³ã«ã€ããŠè©³ãã解説ããŠãããŸãã
4.1. ããã°ã©ããŒãšããŠã®é
ããã°ã©ãã³ã°ã®ã¹ãã«ãç¿åŸããåŸãæãçŽæ¥çãªãã£ãªã¢ãã¹ã¯ããã°ã©ããŒããœãããŠã§ã¢ãšã³ãžãã¢ãšããŠã®éã§ããããã«ã¯ããŠã§ãéçºãã¢ããªéçºãã·ã¹ãã éçºãªã©ãããŸããŸãªåéãååšããŸãããŸããå°éæ§ã«å¿ããŠãããã³ããšã³ããããã¯ãšã³ãããã«ã¹ã¿ãã¯ãšãã£ã圹å²ã«åãããããšããããŸãããã®ãã£ãªã¢ãéžã¶ããšã§ãèªåã®ã¹ãã«ã掻ãããŠãå€ãã®ãããžã§ã¯ãã補åã®éçºã«æºããããšãã§ããŸãã
4.2. ä»ã®è·çš®ãšã®é£æº
ããã°ã©ãã³ã°ã®ã¹ãã«ã¯ãããã°ã©ããŒãšããŠã ãã§ãªããä»ã®è·çš®ãšã®é£æºã«ã圹ç«ã¡ãŸããäŸãã°ããã¶ã€ããŒãšããŠåãå Žåãããã°ã©ãã³ã°ã®ç¥èããããšããã¶ã€ã³ãšå®è£ ã®ã®ã£ãããçž®ããããšãã§ããŸãããŸããããŒã±ãã£ã³ã°ãããŒã¿ã¢ããªã¹ããšããŠåãå Žåãããã°ã©ãã³ã°ã䜿ã£ãŠããŒã¿ã®è§£æãèªååãè¡ãããšãã§ããŸããããã«ãããããå¹ççãªæ¥åéè¡ãå¯èœãšãªããŸãã
4.3. ã¹ãã«ã®ç¶ç¶çãªåäžæ¹æ³
æè¡ã®é²åã¯æ¥é²ææ©ã§ãããããã°ã©ãã³ã°ã®äžçãåžžã«æ°ããæè¡ããã¬ã³ããåºãŠããŸãããã®ãããç¶ç¶çãªåŠç¿ã¯éåžžã«éèŠã§ãããªã³ã©ã€ã³ã®ãã¥ãŒããªã¢ã«ãã»ãããŒãã¯ãŒã¯ã·ã§ããã«åå ããããšã§ãææ°ã®æè¡ãåŠã¶ããšãã§ããŸãããŸãããªãŒãã³ãœãŒã¹ãããžã§ã¯ãã«åå ããããšã§ãå®è·µçãªçµéšãç©ãããšãããããã§ãã
ãã®ã»ã¯ã·ã§ã³ãéããŠãããã°ã©ãã³ã°ã¹ãã«ãç¿åŸããåŸã®ãã£ãªã¢ãã¹ããã¹ãã«ã磚ãç¶ããããã®æ¹æ³ã«ã€ããŠã®ç解ãæ·±ããããšãã§ããã§ããããã次ã®ã»ã¯ã·ã§ã³ã§ã¯ãããã°ã©ãã³ã°åŠç¿ã®ãŸãšããšãä»åŸã®åŠç¿ã®é²ãæ¹ã«ã€ããŠè©³ãã解説ããŠãããŸãã
5. äžçã®ãããããã°ã©ããŒãã¡ã®åŠç¿æ³
ããã°ã©ãã³ã°ã®åŠç¿ã¯ãå€ãã®äººã«ãšã£ãŠå€§ããªææŠãšãªããŸããããããäžçã®ãããããã°ã©ããŒãã¡ã¯ã©ã®ããã«ããŠãã®å°äœã«å°éããã®ã§ããããã圌ãã®åŠç¿æ³ãèãæ¹ãç¥ãããšã§ãç§ãã¡ãå¹æçãªåŠç¿ã®ãã³ããåŸãããšãã§ããŸãããã®ã»ã¯ã·ã§ã³ã§ã¯ãäžçã®ãããããã°ã©ããŒãã¡ã®åŠç¿æ³ã«ã€ããŠè©³ãã解説ããŠãããŸãã
5.1. æåãªããã°ã©ããŒã®åŠç¿ã¹ããŒãªãŒ
å€ãã®æåãªããã°ã©ããŒãã¡ã¯ãç¬èªã®åŠç¿æ¹æ³ãçµéšãæã£ãŠããŸããäŸãã°ããªãŒãã¹ã»ããŒãã«ãºã¯ãLinuxã«ãŒãã«ãéçºããéçšã§å€ãã®ç¥èãçµéšãç©ã¿äžããŸããã圌ã¯ãèªãã®èå³ã奜å¥å¿ãè¿œæ±ããããšã§ãæ·±ãç¥èã身ã«ã€ããããšãã§ããŸããã
ãŸãããã«ã»ã²ã€ãã¯ãè¥ãé ããã³ã³ãã¥ãŒã¿ã«èå³ãæã¡ãå€ãã®æéãããã°ã©ãã³ã°ã«è²»ãããŠããŸããã圌ã®åŠç¿ã®å§¿å¢ãæ ç±ã¯ãå€ãã®ããã°ã©ããŒã«ãšã£ãŠå€§ããªã€ã³ã¹ãã¬ãŒã·ã§ã³ãšãªã£ãŠããŸãã
5.2. 圌ãã®ããããåŠç¿æ³
ãããããã°ã©ããŒãã¡ã¯ãç¬èªã®åŠç¿æ³ãã¢ããã€ã¹ãæã£ãŠããŸããå€ãã®ããã°ã©ããŒã¯ãå®éã®ãããžã§ã¯ãã«åãçµãããšã§ãæ·±ãç解ãçµéšãåŸãããšãã§ãããšèšããŸãããŸããç¶ç¶çãªåŠç¿ããæ°ããæè¡ããã¬ã³ãã«åžžã«ã¢ããããŒãããããšã®éèŠæ§ã匷調ãããŠããŸãã
ããã«ãå€ãã®ãããããã°ã©ããŒã¯ã倱æãæããã«ææŠããããšã®å€§åããèªã£ãŠããŸãã倱æãçµéšããããšã§ãããæ·±ãç解ãæ°ããçºèŠãããããšãã§ãããšã®ããšã§ãã
5.3. ãããããã°ã©ããŒã«å ±éããç¹åŸŽ
äžçã®ãããããã°ã©ããŒãã¡ã«ã¯ãããã€ãã®å ±éããç¹åŸŽããããŸãããŸãã奜å¥å¿ãæºçã§ãããæ°ããããšãåŠã¶ããšã«æ ç±ãæã£ãŠããŸãããŸããç¶ç¶çãªåªåãæããŸããåžžã«èªåãé«ããããã®åŠç¿ãç¶ããŠããŸãã
ããã«ãå€ãã®ãããããã°ã©ããŒã¯ãã³ãã¥ããã£ã«ç©æ¥µçã«åå ããŠããŸããä»è ãšã®ã³ãã¥ãã±ãŒã·ã§ã³ãéããŠãæ°ããç¥èãèŠç¹ãåŸãããšãã§ãããšèããŠããŸãã
ãã®ã»ã¯ã·ã§ã³ãéããŠãäžçã®ãããããã°ã©ããŒãã¡ã®åŠç¿æ³ãèãæ¹ã«ã€ããŠã®ç解ãæ·±ããããšãã§ããã§ããããã圌ãã®çµéšãã¢ããã€ã¹ãåèã«ãèªåèªèº«ã®åŠç¿æ¹æ³ãèŠçŽãããšã§ãããå¹æçãªåŠç¿ãå¯èœãšãªããŸãã
6. ãŸãšã
ãã®èšäºãéããŠãããã°ã©ãã³ã°ã®ç¿åŸæéãåŠç¿æ¹æ³ããããããã°ã©ããŒãã¡ã®åŠç¿æ³ãªã©ãå€ãã®æ å ±ãåŠã¶ããšãã§ããŸãããæåŸã«ããããŸã§ã®å 容ããŸãšããä»åŸã®åŠç¿ã®é²ãæ¹ãç¶ç¶çãªåŠç¿ã®éèŠæ§ã«ã€ããŠèããŠã¿ãŸãããã
6.1. ç¿åŸæéã®ãªã¢ã«
ããã°ã©ãã³ã°ã®ç¿åŸæéã¯ãå人ã®èæ¯ãåŠç¿æ¹æ³ãç®çã«ãã£ãŠå€§ããç°ãªããŸããããããäžã€èšããããšã¯ãç¶ç¶çãªåªåãšå®è·µãå¿ èŠã§ãããšããããšã§ããçæéã§ã®ã¹ãã«ã¢ãããå¯èœã§ãããæ·±ãç解ãå®è·µçãªã¹ãã«ã身ã«ã€ããããã«ã¯ãé·æçãªèŠç¹ã§ã®åŠç¿ãå¿ èŠã§ãã
6.2. ããããã®åŠç¿ã®é²ãæ¹
ããããã®åŠç¿ã®é²ãæ¹ãšããŠã¯ããŸãèªåã®ç®çãèå³ãæ確ã«ããããšã倧åã§ããããã«åºã¥ããŠãé©åãªåŠç¿ãªãœãŒã¹ãæ¹æ³ãéžã³ãèšç»çã«åŠç¿ãé²ããŠããããšãããããã§ãããŸããå®éã®ãããžã§ã¯ãã«åãçµãããšã§ãåŠãã ç¥èãå®è·µçã«æŽ»çšããããšãã§ããŸãã
6.3. ç¶ç¶çãªåŠç¿ã®éèŠæ§
æè¡ã®é²åã¯æ¥é²ææ©ã§ãããããã°ã©ãã³ã°ã®äžçãåžžã«æ°ããæè¡ããã¬ã³ããåºãŠããŸãããã®ãããç¶ç¶çãªåŠç¿ã¯éåžžã«éèŠã§ããæ°ããæè¡ãç¥èãåŠã¶ããšã§ãèªåã®ã¹ãã«ãåžžã«ã¢ããããŒãããæ代ã®å€åã«å¯Ÿå¿ããããšãã§ããŸãã
ãã®èšäºãéããŠãããã°ã©ãã³ã°åŠç¿ã®å€ãã®åŽé¢ã«ã€ããŠåŠã¶ããšãã§ããŸãããæåŸã«ãåŠã³ã¯çµããããªããã®ã§ããç¶ç¶çãªåªåãšå¥œå¥å¿ãæã¡ç¶ããããšã§ãããé«ãã¹ãã«ãç¥èã身ã«ã€ããããšãã§ããã§ãããã