Kotlinã³ã³ããªãã¥ãŒã¿ãžã®éºããéããªãåã¯ãããç®æããã®ã ââã³ãããã»Androidãšã³ãžãã¢å¯ç°å¥äºã®å Žå
Androidã¢ããªã®éçºã«ãããŠGoogleãæ£åŒã«ãµããŒãã衚æããèšèªãKotlinïŒã³ããªã³ïŒãããããæ¡çšãããšã³ãžãã¢ãäŒæ¥ãå¢ããŠããããã ãOSSçºå±ã«æ¬ ãããªãã³ã³ããªãã¥ãŒã¿ã®æ°ã¯äžçã§200äººèŠæš¡ãæ¥æ¬äººã®ã³ã³ããªãã¥ãŒã¿ãå€ãããã§ã¯ãªãã
ã³ãããã§Androidã¢ããªéçºãæ åœãããšã³ãžãã¢å¯ç°å¥äºæ°ã¯ãã®äžäººããªãå¯ç°æ°ã¯Kotlinã³ã³ããªãã¥ãŒã¿ã®éãç®æããã®ããã³ã³ããªãã¥ãŒã¿ææŠãä»äºã«çãããããããèªèº«ã®æé·ã«ã€ããŠèããã
Kotlinãæ±ããŠè»¢è·ããŠããç·
ãããã®äžæ©ãæ¯ããããããŒãã«ãåŠæŽ»ã»åŠåš ã»åºç£ã»åè²ãŠã®çåãæ©ã¿ã解決ããQ&Aã¢ããªããããªããå±éããã³ããããAndroidã¢ããªéçºãæ åœããå¯ç°å¥äºæ°ã¯ã©ã€ããã¢ããããã³ã°ç³»ã¢ããªéçºã®ã¹ã¿ãŒãã¢ãããDiverseãçµãŠã2016幎10æãå瀟ã«è»¢è·ããŠããã
転è·ã決æãããã£ããã¯ãCTOã®å³¶ç°éææ°ãšè©±ãæ©äŒãããããã®ãšã ããããªãã®ã¢ããªç»é¢ãèŠããããããšããšã³ãžãã¢ãšããŠã®æè¡çé¢å¿ãšããžãã¹ã®ç€ŸäŒçæçŸ©ã®äž¡æ¹ãå ¥ç€Ÿã®æ±ºãæã«ãªã£ãã
ããããã¡ã®åºç£å ±åã®æçš¿ã1æéã«1åãããã®é »åºŠã§å¯ãããããããç¥ãã³ã¡ã³ããã¿ã€ã ã©ã€ã³ã«ããµããŠããŸãããçŽç²ã«æåãããšãšãã«ãã³ããããšããäŒç€ŸãšããããªããšãããµãŒãã¹ã¯ãããããŠç€ŸäŒã«è²¢ç®ããŠãããã ãªãšå®æããŸããã

â²ã³ãããæ ªåŒäŒç€Ÿãå¯ç° å¥äºæ°
ããšããšãå¯ç°æ°ã¯ãã€ããŒã¹æä»£ãKotlinããŸã ããŒãžã§ã³1.0.0以åããæŽ»çšãããããã¯ãã®ããã€ããããã§æžããŠãããAndroidãšã³ãžãã¢ãšããŠæ°ããæè¡ãžã®é¢å¿ã¯äººäžŠã¿ä»¥äžã ã£ãã®ã ã
åœæKotlinã¯Androidã®æšæºèšèªãšã¯ãããŠããªãã£ãããåœå ã§æ¡çšããäŒæ¥ãå°ãªãã£ããå¯ç°æ°ã®å ¥ç€Ÿã決ãŸãããŸã 瀟å ã«äžäººãKotlinãšã³ãžãã¢ãããªãã«ãé¢ããããã³ãããã¯Kotlinãæ¡çšããããšã決å®ããããŸãã«ãå¯ç°æ°ãKotlinãæ±ããŠã³ãããã«ãã£ãŠãããšããæãã ã£ãã
ãã¡ãããå¯ç°æ°ãå ¥ç€Ÿããããšããçç±ã ãã§å°å ¥ãããããã§ã¯ãªããKotlinãå°å ¥ããã«ã¯ç€Ÿå ã§å°å ¥ã®æçŸ©ããã¬ãŒã³ãããSyntaxãã¢ãã³ã§ç°¡æœãJavaã«ã¯ãªã䟿å©ãªææ³ã倿°ååšã誰ããããã¡ã³ããããªãã£ã®é«ãã³ãŒããæžãããçµæçã«ã³ãŒãéãå°ãªããŠæžããªã©ãJavaã«æ¿ããŠKotlinã䜿ãããšã®æçŸ©ãäžçæžåœèªã£ãããããã«Androidéçºã®å ¬åŒèšèªã§ã¯ãªãã®ã§æè¡æ å ±ã¯ãŸã å°ãªããããå ¥ããªãã¡ãªãããããå°å ¥ããã¡ãªããã®æ¹ãã¯ããã«å€§ããããšå説ããã
å¯ç°æ°ã¯ãã¬ãŒã³å 容ãå®è·µãããã®ããã«ãå ¥ç€ŸåŸããã1ã«æã§ããããªãå šäœã®ã³ãŒãéã®10ïŒ ãKotlinã§çœ®ãæããããããŸã§WebViewã䜿ã£ãŠããããããªãã ããæ©èœã®äžéšããã€ãã£ãåããããæ°æ©èœã远å ãããããã¿ã€ãã³ã°ã§åŸã ã«Kotlinã«ç§»è¡ãçŸæç¹ã§ã¯ã³ãŒãã®85ïŒ ãKotlinã§æžããããŸã§ã«ãªã£ãã
ãã ãKotlinå°å ¥ãšãããã¯ãæ¹åã ãã§ã¯ãèªåã®äŒç€Ÿãžã®è²¢ç®ã¯äžååãäœããã£ãšä»²éãã¡ã«åºæ¿ãäžãããããšã¯æåããèããŠãããããã§èªèº«ã«èª²ããç®æšããKotlinã®ã³ã³ããªãã¥ãŒã¿ã«ãªããããšã ã£ãã®ã ã2016幎段éã§ã¯ã³ã³ããªãã¥ãŒã¿æ°ã150 åã»ã©ã§æ¥æ¬äººã®ã³ã³ããªãã¥ãŒã¿ãå°ãªãã£ããããã³ã³ããªãã¥ãŒã¿ãç®æãæçŸ©ã¯ååã«ãã£ãã
æåã®ç°å¢èšå®ã«ããã£ããäœããæãã€ããŠããããè¿·ã
ãããããªãã®Kotlinåã1å²çšåºŠçµããæç¹ã§ããã°ãæžããŸãããç°¡åãªå 容ã§ããããæå€ãšç€Ÿå€ããã®åé¿ã倧ããã£ããã¿ããªKotlinã«æ³šç®ããŠãããã ãªã£ãŠãã³ã³ããªãã¥ãŒã¿ãšããŠããã«OSSã«è²¢ç®ã§ãããããã®ææŠã¯ãã£ãšç€Ÿå ã«ããåºæ¿ãäžãããä»ããã©ã€ããããã¿ã€ãã³ã°ã ãããèããã®ã§ãã
ããããã³ã³ããªãã¥ãŒã¿ãžã®éã¯ããã»ã©å¹³åŠã§ã¯ãªãã£ãã
Kotlinã«ã³ã³ããªãã¥ãŒãããããã«ã¯ãKotlinãããŒã«ã«ç°å¢ã§åããããã®ç°å¢æ§ç¯ãå¿ é ã ããããã§ãŸãããã£ãã
ãåã¯ãã£ã±ãAndroid Studioã§ã®éçºãäžå¿ã ã£ãã®ã§ãæ°ããç°å¢ããã«ãããçµéšãããŸããªãã£ããã§ããããããä»ã§ãããã«ãèªååããŒã«ã®Gradleã䜿ã£ãŠãã«ãã¯ãã®ãããç°¡åã«ãªããŸããããåœæã¯ãŸã ãããæŽã£ãŠããªãã£ãã
æçµçããã©ã³ãããããŒãžãããå šç¶åããªãããªãã§ïŒã£ãŠæãããã®äœæ¥ã«2ïœ3ã«æãããããã£ãŠããŸããèåãªKotlinã³ã³ããªãã¥ãŒã¿ã§ãããããããã®ããã°ãåèã«ããªãããªããšãæåã®å£ãä¹ãè¶ããŸããã

ãã®åŸãæžæãããšã¯å€ãã£ããäŸãã°ãã°ä¿®æ£ãæ©èœæ¹åãããã©ãŒãã³ã¹æ¹åãæ©èœè¿œå ãªã©èª²é¡(Issue)ã¯ç¡æ°ã«ãããã©ãããæãã€ããŠããã®ããã©ããè²¢ç®ããããã®ããé£ããã®ãã®èŠåœãã€ããªãã£ãã
è¿·ãéã«çç·Žã®ã³ã³ããªãã¥ãŒã¿ãã¡ãã©ãã©ãIssueã解決ããŠãããèªåãã§ãããã®ã£ãŠãããã ããããã³ã³ããªãã¥ãŒã·ã§ã³ã®åå¿è ã«ã¯çŠããçãŸããã
ããããããªãã§ãããããçæããªãããšã«ã¯ã³ã³ããªãã¥ãŒã¿ã«ã¯ãªããŸãããçãã³ãŒããç°¡åãªãã®ã§ããŸãã¯ããŒãžãããã³ã³ããªãã¥ãŒã¿ã«ãªãããšãéèŠãªãã§ããåãæåã®ãšã£ããããšããŠåãçµãã ã®ã¯ãæšæºã©ã€ãã©ãªã®ãµã³ãã«ãæäŸããŠæ¬²ãããšããIssueã§ãããKotlinã®èšèªæ§é ã«ã¯çŽæ¥é¢ä¿ãªããšã¯ãããã®ã®ããµã³ãã«ã³ãŒãæäŸãKotlinã«è²¢ç®ããããã®çŽ æŽãããæ¹æ³ã§ãã
ã ããIssueã«å¿ããŠãµã³ãã«ã³ãŒãããã«ãªã¯ãšã¹ãããŠãããããã¬ãã¥ãŒããŠããããŸã§ã«ã¯çµæ§ãªæéãããã£ããæ©ããŠ1ã2é±éãé·ãå Žåã¯æ°ã¶æãšããã®ãããã
ãã®éã®å¯ç°æ°ãšããã°ãã£ãšKotlin挬ãããããã«ã³ã³ããªãã¥ãŒãäœæ¥ã¯æ¥åæéã«ã¯æã¡èŸŒãŸãªãã£ããã®ã®ãå®¶ã«åž°ãã°æ·±å€ãŸã§ã³ãŒããæžãç¶ããã忥ã¯è¶£å³ã®ãŽã¹ãã«åå±ãããããµã«ã®ç·Žç¿ãæ¬ ãããªãã£ããããã®ã¹ããã®æéã¯ãã¹ãŠã«ãã§ã§ã®ã³ãŒãã£ã³ã°ã«æãæ®ããã
èªåã®éšå±ã§ãããšããŒã£ãŠããŸããä»äººãããç°å¢ã®ã»ããéäžã§ãããšããã®ã ãKotlinã«å šèº«å šéãæã¡èŸŒã¿ããããããšããŒããŒãããã®å©ãå§¿ã¯ãããããã«ãã§ã®å®¢ãã¡ã«ã¯ä¿®è¡å§ã®ããã«èŠããããšã ããã
2017幎11æãå¯ç°æ°ã®æžããæåã®ãµã³ãã«ã³ãŒããããããããŒãžããããåããŠã®ã³ã³ããªãã¥ãŒã¿èªå®ããããŸã§ã«ãªããš11ã«æã®æéãèŠããŠããã
äœã¶æãããŒãžãããã«èœã¡èŸŒã圌ã«ãCTOå³¶ç°ããããèšèãšã¯
ãã³ã³ããªãã¥ãŒã¿ã«ãªãããšã§ç€Ÿå ã®ä»ã®ãšã³ãžãã¢ã«åºæ¿ãäžãããã®ã¢ãããŒã·ã§ã³ã¢ããã«ã€ãªãããââãããªæãã§ææŠãç¶ããŠããã®ã§ããããªããªãããŒãžãããããšããªããèªä¿¡ã倱ãããšããã³ãã³ãããŸããã
å®ã¯ã³ã³ããªãã¥ãŒã¿ææŠã®ããšã瀟å ã§ç¥ãã®ã¯ãå¯ç°æ°ä»¥å€ã«ã¯CTOã®å³¶ç°æ°ã®ã¿ãããææŠã諊ããŠãåšå²ã¯èª°ãæ°ã«ããªãã¯ãã ã
ãå³¶ç°ããã«ã¯æ¯æ¥é¡ãåãããŠé²æãå ±åããŠããŸããããå幎ããã£ãŠãã¢ãŠãããããŒãããããã®æéããµãŒãã¹éçºã®ããã«æ³šãã ããç®ã«èŠããã¢ãŠãããããåºããã¯ããèªåããã£ãŠããããšã¯ç¡æå³ã§ã¯ãªãã£ãã®ã ããããšãã€ãæçŽã£ãããçµæã¯ã©ããªããããããªãããã©ãæåŸãŸã§ãããããšèšã£ãŠãããŸãããããã§è ¹ã決ãŸããŸãããã

ãšã³ãžãã¢éå£ã®äžã§CTOã«ã§ããããšã®äžã€ããã¡ã³ããŒã®ã¢ãããŒã·ã§ã³ã®ãµããŒãã ããç°¡åãªã»ããžéãããªãææŠã¯å¿ ãè¯ãçµæããããããââå³¶ç°æ°ã®èšèãå¯ç°æ°ã¯ãã®ããã«åãæ¢ããã®ã ã
ãªãCTOã®å³¶ç°æ°ã¯èŸæ±åŒ·ã圌ã®äžæ©ãæ¯ãç¶ããã®ã ãããïŒ ããã¯ãäŒç€Ÿãå©çšããOSSã«å¯ŸããŠã³ããããããããšã¯ã倧ããªãªã¹ã¯ãããžã«ãªããšèããŠããããã ãã³ãããã§ããããã䜿ãåããããææ°ã®ãªãªãŒã¹ãä»åŸã®éçºæ¹éãªã©ãææ¡ããŠããããšã¯æ¬¡ã®æè¡éžæã®ãšãŠãæçãªæ å ±ã«ãªããããããèãã«åºã¥ãå³¶ç°æ°ã®ååããããã³ã³ããªãã¥ãŒã¿ææŠã¯ç¡äºã«å®ãçµã¶ããšã«ãªã£ãã
çŸåšã§ã¯ãæ°å°ãªãæ¥æ¬äººKotlinã³ã³ããªãã¥ãŒã¿ã®äžäººãšããŠãå¯ç°æ°ã¯çŸæç¹ã§13åã®ãã«ãªã¯ãšã¹ããè¡ãããã®ãã¡10åã®ã³ãŒããããŒãžãããŠãããçŸæç¹ã§ãäžçã«239åããã³ã³ããªãã¥ãŒã¿ïŒã¡ãªã¿ã«Kotlinã³ãã¥ããã£ã§ã¯ãContributorã§ã¯ãªããããŠKontributorãšè¡šç€ºããïŒã®äžã§10å以äžãããŒãžãããŠãããšã³ãžãã¢ã¯å€ãã¯ãªãã
ææŠåœæã¯ã³ã³ããªãã¥ãŒã¿ã«ãªã£ããšãã®èªåãã€ã¡ãŒãžã§ããŠããããã§ã¯ãªãããã¡ããOSSãæŽ»çšãããšã³ãžãã¢ãšããŠã¯ãã³ã³ããªãã¥ãŒã¿ã«ååãé£ããããšã¯åèªã«ã¯éããªããåœç¶ãèªåã®ã¹ãã«ã¢ããã«ãã€ãªããã
ä»åŸã¯ãã®æ³¢å广ãæåŸ ããããææ°ã®æè¡ãç©æ¥µçã«å°å ¥ããŠããäŒæ¥ã§ããããšãç¥ãããã°ãããã¯ãšã³ãžãã¢æ¡çšã«ãããŠæå©ã«åãã¯ãã ã
ãAndroidéçºè ãªããMaterial Designãã¢ãŒããã¯ãã£ããµãŒãã¹ãã¶ã€ã³ãªã©ãäœãç¹åããæè¡ã®ããäººãæ¥ãŠããããšå¬ããã§ãããäœããèªåããåãåºãã人ãèªåã®æè¡ã§ããŠãŒã¶ãŒãä»ã®ãšã³ãžãã¢ãæ¯ãããšãããã€ã³ããéèŠã§ãã
ããã¯ã³ãããã®Androidéçºè ã«ãããŠæ±ããŠããããšã§ãããä»åå¯ç°æ°ãèªããä»åŸãèŠæ®ããŠKotlinããŠãŒã¶ãŒã®ããã«å°å ¥ããããšã«è¿ãããã®ãããã¯ãã ããã¡ããå¯ç°æ°ãKotlinã ãã«å·çããŠããããã§ã¯ãªãããµãŒãã¹ãåäžãããããã«å¿ èŠãã€æé©ãªæè¡ããã®éœåºŠãéžæã§ããããšããšã³ãžãã¢è³è³ªãšããŠã¯æãéèŠãªããšã ããã ã
ãä»åŸãKotlinã䜿ããªããªãæ¥ããããããããªãã2ïœ3幎å ã®ããšã¯ããããªãããããèšèªã®å®¿åœã§ãããããã©ããªæè¡ã§ããã®çºå±ã«è²¢ç®ãããšããæ°æã¡ã¯å€±ãããšã¯ãªããšæããŸãã
ã³ã³ããªãã¥ãŒã¿æ¯çãç°åžžã«é«ãäŒç€Ÿã次ãªã課é¡ã¯â
å¯ç°æ°ã®ææŠããç¥ããç¥ããã®ãã¡ã«ã瀟å ã®ãšã³ãžãã¢ã«ããåºæ¿ãäžããããšã¯ãããã ã瀟å ã§éå¬ããŠãããã³ããããã«ã·ã§ããšããLTã€ãã³ããããããäŒãªã©ã§è¡ãããæè¡æ å ±ã®å ±æäœå¶ã¯ç€Ÿå ã«ãã空æ°ããããããŠããã
ããŸãå¯ç°æ°ä»¥å€ã«CakePHPã®ã³ã³ããªãã¥ãŒã¿ã4人èªçããŠãããçŸåšã³ãããã«ãããšã³ãžãã¢ã¯11åãã³ã³ããªãã¥ãŒã¿æ¯çãããããŠé«ãäŒæ¥ãšãããã
ãåããããèŠããã§ããããšã¯ããªããšãªãã¿ããªãæããŠãããããªæ°ãããŸããæ°ãã課é¡ã«ææŠãããã£ããã¯äžããããšãã§ããã®ãããããªãããšãå¯ç°æ°ã¯æ¯ãè¿ãã

ä»åŸã¯èªåèªèº«ã®èª²é¡ãšããŠçŸåš10åã®ããŒãžæ°ã3æ¡å°ã«ä¹ããããšãç®æšãããã«ç€Ÿå ããã®OSSãžã®ãããªãè²¢ç®ã¯ãã¡ããã瀟å€åãã«ãKotlinã³ã³ããªãã¥ãŒã¿ããããäŒããéå¬ãã³ã³ããªãã¥ãŒã¿ã®èŒ©åºãæ¯ããããšãããŠãããããšèããŠããã
ãã³ã³ããªãã¥ãŒã¿ãšã¯ãèªåã䜿ã£ãŠããã³ãŒãã«è²¬ä»»ãæã¡ãæè¡ã«å¯ŸããŠèªä¿¡ããã€ããšã«ã»ããªããªãããšå¯ç°æ°ã¯èšãããããããšã³ãžãã¢ã®æèãããã«ãã£ãšé«ã¿ãžãšåŒãäžããŠããããã®ã ã
åæ/æïŒåºé éæš¹
æ®åœ±ïŒåéš å康
ããããã€ãã³ã
ããããã®èšäº

å°äººæ° à 暩éç§»è²ã§å·šå€§ãµãŒãã¹ãåããââLINEãã³ã¬ãã¯ãã¹ãã¡ã³ã¯ã·ã§ãã«ãªéçºäœå¶ãéžãã çç±

195äžããŠã³ããŒãçªç ŽïŒé«å質ãªç¡æé話ã¢ããªãSkyPhoneãéçºã®èå°è£ãšã¯ïŒ











