12æã«æ°ãããµã³ã¯ãããã«ãã«ã¯ã¡ããŠã¹ãçºè¡šãããšããç§ãã¡ã¯ã»ãã®æ°äººã®ã¹ããŒã«ãŒã®ååãç¥ã£ãŠããŸããã ãããŠä»ãäŒè°ã®1é±éåãŸã§ã«ãKotlinã®ãã«ããã©ãããã©ãŒã 䜿çšã«é¢ãã話ãããžã§ããµã³ã¬ãã³ã®ãç§å¯ãåºèª¿è¬æŒãŸã§ãäŒè°ã§èãããšãã§ããå ±åã«ã€ããŠè©±ããŠããã ãŸã è¡ããã©ãã決ããŠããªããªãããããããªãã®æ±ºå®ã«åœ¹ç«ã€ã§ãããïŒ
ã¯ãã¹ãã©ãããã©ãŒã ã¬ããŒã
ã¢ãã€ã«éçºã®å šäžçãšåæ§ã«ãMobiusã¯iOSãšAndroidã«åãããŠããŸããéåžžãåã¬ããŒãã¯ãããã®ãã©ãããã©ãŒã ã®ãããããåç §ããŸãã ããããåæ¹ã«ãšã£ãŠæçšãªãã®ããããŸãããããããå§ããŸãããã
iOSããã³Androidçšã®Kotlinãã«ããã©ãããã©ãŒã ã¢ãŒããã¯ãã£
å€ãã®äººãKotlinããAndroidã®èšèªããšèŠãªããŠããŸãããå®éã«ã¯ãKotlinã®äœæè ã«ã¯ãã£ãšéå¿çãªèšç»ããããŸãã 1ã€ã®èšèªã§ã®ã¯ãã¹ãã©ãããã©ãŒã éçºçšã§ããã1幎åã«iOSãKotlin / Nativeãããžã§ã¯ãã®ã¿ãŒã²ãããã©ãããã©ãŒã ã®1ã€ãšåŒãã§ããŸããã ãããŸã§ã®ãšãããããã¯ãã¹ãŠå®éšã¢ãŒãã§ãããããã«èå³æ·±ãããšã§ã.Androidã§ã®Kotlinã®äœ¿çšã¯ãã¹ãŠã®ãã§ã³ã¹ã§æ¢ã«æžãããŠããŸãããçŸæç¹ã§ã¯ãã¯ãã¹ãã©ãããã©ãŒã ã®ãã¥ã¢ã³ã¹ã«ç²ŸéããŠãã人ã¯ååŸã«ç«ãã€ããŠæ¢ãå¿ èŠããããŸãã ãŸããã¡ããŠã¹ã§ã¯æ¬¡ã®ãããªãã®ãèŠã€ããããšãã§ããŸããRomanYatsynaãšIvan Vazhnov ïŒRevolutïŒããããã¯ãéããŸãã
ããªãã奜ãã«ãªãA / Bãã¹ã
A / Bãã¹ãã§ã¯äœãé£ããã§ããããïŒ AãšBã補åäžã«åº§ã£ãŠããããããã¯ããè¯ãèŠãã-補åäžã«æ®ã£ãã ãããå®éã2018幎ã«ã¯ããã®ãããªãã¹ãã¯æ®µéçãªå±éãšæ··åããç¶ãããã®çµæã¯åžžã«æ£ããåæããããšã¯éããããŠããããã¹ãã®ãµããŒããªã©ã®ãããã¯ã¯ãA / Bãªãã·ã§ã³ã«é¢ä¿ãªããçåãæèµ·ãç¶ããŠããŸãã ã¡ããŠã¹ã§åœŒãã¯çããèŠã€ããŸãã
ãã«ãã¢ãžã¥ãŒã«ãããžã§ã¯ãã¢ãŒããã¯ãã£
GoogleãInstant Appsã®ãµããŒãã矩åä»ããå ŽåãAndroidã¢ããªã±ãŒã·ã§ã³ã¯éåžžã«åœ¹ç«ã€ãšãããžã§ãŒã¯ããããŸããããã«ã¯ã¢ããªã±ãŒã·ã§ã³ã®ã¢ãžã¥ãŒã«åãå¿ èŠãªãããå šå¡ããã¹ãã²ããã£ã解ããå¿ èŠããããã³ãŒãã®å質ãåçã«åäžããŸãã ãŸããå質åäžã«ã€ããŠèããããã«ãäžããã®ãã€ã³ã¿ãŒããå¿ èŠãªãå Žåã¯ãAvitoã®Evgeny Suvorovã®çµéšã圹ç«ã€ãããããŸããã圌ã¯iOSãšAndroidã®äž¡æ¹ã§40äžè¡ã®ã³ãŒãã®ãããžã§ã¯ãã®ã¢ãžã¥ãŒã«åã«ã€ããŠè©±ããŠããŸãã
Avitoã§ã®ã¢ãã€ã«ã¢ããªã®ãªãªãŒã¹
Avitoã§ã®ã¢ãã€ã«éçºã®ããŒãã®ç¶ç¶ïŒ Alexey Shpirkoã¯ãã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ã®ãªãªãŒã¹ããã»ã¹ãã©ã®ããã«ç·šæãããŠããããããã»ã¹ã®ã©ã®ã¹ããããèªååããããããªãªãŒã¹åã®æåãã¹ãã®éãæžããæ¹æ³ãäœãå£ããŠããªãããšã確èªããŸãã
ã¢ãã€ã«ã¢ããªã®ãªããŒã¹ãšã³ãžãã¢ãªã³ã°ïŒæ¹æ³ãçç±ãããã³ãã®çç±
æ°ååãã«ãã¢ãã€ã«ã¹ã¿ãŒãã¢ããã«æè³ãããŠãããæè³å®¶ã¯æè³ã®çµæã誰ãæã«å ¥ããããªãããšãæãã§ããŸãã ãããåæã«ãå€ãã®å ŽåããªãœãŒã¹ã¯ãªããŒã¹ãšã³ãžãã¢ãªã³ã°ã«å¯Ÿããä¿è·ã®ããã«å²ãåœãŠãããŸããã ãã®æ²ãããã©ããã¯ã¹ã«é©ããããããŸãããããã®ä¿®æ£ã«å®è¡å¯èœãªè²¢ç®ãããããšãã§ããŸããã¬ããŒããèŠãŠãèªåãå®ãæ¹æ³ãèŠã€ããŠãã ããã
ãæ¯ããããã«ãã¹ã¬ããã«ã€ããŠæ±ºããŠèšããªãã£ãããš
ç§ã¯èªããªããã°ãªããŸããïŒ Fernando Cehasa ïŒIBMïŒã¯Androidã®ããã¯ã°ã©ãŠã³ããæã¡ããã«ãã¹ã¬ããã®ã¬ããŒãã§ã¯ãã®ããã¯ã°ã©ãŠã³ãã«åºã¥ããŠæ§ç¯ããŸãããiOSéçºè ãèå³ããããŸãã æçµçã«ãã¹ã¬ããã®åé¡èªäœã¯ãç¹å®ã®ãã©ãããã©ãŒã ãããã¯ããã«åºç¯ã§ãã ã¹ããŒã«ãŒãè¯ããã°ããã®ãããã¯ãæ°žé ã«èãããšãã§ããŸãã ãããŠãã§ã«ãã³ãã§ã¯ãçãã®äœå°ã¯ãããŸããã圌ã¯ãã§ã«ä»¥åã«ã¡ããŠã¹ã§å ¬æŒãã倧è¡ã«æãããŠããŸããã ã¹ãŒããŒããŒãã³ã¢ã¯åŸ ã€äŸ¡å€ããããŸããããç¥èã磚ããšå€ãã®äººã«åœ¹ç«ã¡ãŸãã
壮倧ãªæŠãïŒiOS vs. Android
ç§ãã¡ã¯æ£çŽã«èªããŸããç§ãã¡ã¯ã ãžã§ããµã³ã»ã¬ãã³ã®ã¹ããŒãããäœãäŒè°ãç· ããããã®ãæ£ç¢ºã«äœãæåŸ ããŠããã®ãããŸã£ãã詳ããã¯ããã£ãŠããŸããã ããããæåŸã®æåŸã«ããžã§ããµã³ã¯äºæž¬äžå¯èœãªã·ã§ãŒãäžæŒããŸããããæçµçã«èª°ãããããæ°ã«å ¥ããŸããã ãã®ãããããã§ã¯ãAndroidãšiOSã®æŠããèšç»ãããŠããããšããããšãç¥ã£ãŠãã䟡å€ããããéå±ããªãããšãæåŸ ããå®è£ ã®è©³çŽ°ã«é©ããäžããŸãã
iOS
iOS SDKãä¿¡é Œãã
å€ãã®äººã ã¯ãfastlaneããŒã«ããFelix Krauseãç¥ã£ãŠããŸãã æè¿ãfastlane.ci CIã·ã¹ãã ãçºè¡šãããFelixã«ã€ã³ã¿ãã¥ãŒããŸãã ã ãããã圌ã®é¢å¿ã¯ããã«éå®ããããiOSéçºã®äžçã«ãããã»ãã¥ãªãã£åé¡ã圌ã«ãšã£ãŠéèŠã§ãã ãããŠãMobiusããµãŒãããŒãã£SDKã䜿çšãããªã¹ã¯ã«ã€ããŠèª¬æããŸãã
iOSã§ã®é³å£°å¿çã¢ããªã®æ§ç¯
é³å£°å¶åŸ¡ã¯è¿ éã«å®è¡ãããã ãã§ãªãã容赊ãªãå®è¡ãããŸãããã®çµæãiOSéçºè ã§ããããGoogleããã®Dialogflowã®æäœæ¹æ³ã«ã€ããŠèããããšãã§ããŸãã Martin MitrevskiããããšiOSã®é³å£°ã€ã³ã¿ãŒãã§ã€ã¹ã®ãã¥ã¢ã³ã¹ã«ã€ããŠè©±ããŸãã
iOSã¢ããªã±ãŒã·ã§ã³ã§ã®ãã¹ãã®ã¬ã€ã€ãŒ
Ewa LudwiczakãšAleksander Grzybã¯ãAllegroã§ããŒã ãšããŠåããŠãããæé50äžäººä»¥äžã®ãŠãŒã¶ãŒã察象ã«ã¢ããªã±ãŒã·ã§ã³ããã¹ãããçµéšã«ã€ããŠè©±ããŠããŸãã éçã³ãŒãåæãã䜿ããããã®ãã¹ããŸã§ããã¹ãŠã®ã¬ã€ã€ãŒã段éçã«å®è¡ããŸãã
ãLearn Private RyanãããŸãã¯ã¢ãã€ã«ããã€ã¹ã§ãªãã©ã€ã³ã®é¡èªèãè¡ãæ¹æ³
å人çãªç¥ãåãã®ããªã女ã®åãšåœŒå¥³ã®è¶£å³ã®ååãç¥ããããšæã£ãããšã¯ãããŸãããïŒ ãã®ã€ãã³ãã®å±éã®1ã€ã®ãªãã·ã§ã³ã¯ãå人ã®èå¥ã§ãã ãã³ã©ã€ã¢ã·ã£ãã³ã¯ãé¡èå¥ãšã¯äœããã¢ãã€ã«ããã€ã¹ã§ãã®åé¡ã解決ã§ãããã©ãããæ€èšããŸãã ããã«ããã®åé¡ã解決ããéã®ç²ããšè€éãã調ã¹ããã®ãããªã¢ããªã±ãŒã·ã§ã³ã§ãªãªãŒã¹ããããšãçŸå®çãã©ããã«ã€ããŠãè°è«ããŸãã
100äžåã®æãiPhoneã«åããæ¹æ³
Konrad Feilerã¯ãéçºè ã«ãªã£ãæ°åŠè ã§ãã ãããŠãããã圱é¿ããŸããã¬ããŒãã§ã¯ã圌ã¯é ãããè¡ããã¡ã¢ãªã®åºæ¬ãæãäžããããã©ãŒãã³ã¹ãæé©åããŸãã ãããŠã圌ã¯ããã®ç¥èãSceneKit / ARKitã§äœçŸäžãã®æãiPhoneã«ããŒãããã¢ããªã±ãŒã·ã§ã³ãäœæããã®ã«ã©ã®ããã«åœ¹ç«ã€ãã«ã€ããŠèª¬æããŸãã
äŸåé¢ä¿ãããŒãžã£ãŒã¯åãªãcURLã§ã¯ãããŸãã
Ivan VavilovããäŸåé¢ä¿ãšè²¬ä»»ã®æãæåãªãããŒãžã£ãŒã®å éšæ§é ã«ã€ããŠèªããŸãããããã®ãããŒãžã£ãŒã䜿çšããéã«æ³å®ããå¿ èŠããããŸãã 圌ã¯äŸåé¢ä¿ãã€ã³ã¹ããŒã«ãããšãã«åé¡ãèæ ®ããäŸåé¢ä¿ã°ã©ãã解決ããããã®ã¢ã«ãŽãªãºã ãåæããŸãã ãŸããéäžåãããŒãžã§ã³ç®¡çãã»ãã¥ãªãã£ã®åé¡ã«ã察åŠããŸãã
Yandex.Mapsã®æ¡åŒµçŸå®
å€ãã®äººãARKitã«ã€ããŠèããããšããããŸããã倧èŠæš¡ãªãããžã§ã¯ãã§ãããè©Šãã人ã¯ã»ãšãã©ããŸããã Yandexã¯ãç»é¢äžã«æ©è¡ã«ãŒãã®ããã³ããã衚瀺ããããšã§ãããè¡ã£ãæåã®äŒç€Ÿã®1ã€ã§ããä»ã§ã¯ãåžžã«ããããæããŠãã人ã§ãèªå® ãžã®éãèŠã€ããããšãã§ããŸãã ã©ããªãã¥ã¢ã³ã¹ã«ééããŸãããïŒ Dmitry Trimonovã«äŒããŠãã ãã ã
ããŒã¿é§ååUIïŒç¡å¶éã®ãã¯ãŒ
Alexey DemedeckiããããŒã¿é§ååUIã³ã³ããŒãã³ããæ§ç¯ããã³ãã¹ãããææ³ã«ã€ããŠèª¬æããŸãã ãã®ã¢ãããŒãã«ãããåã ã®ã¢ãžã¥ãŒã«ã®æ倧éã®åé¢ãã¹ãããã·ã§ãããã¹ãããŠããããã¹ããããã³ã€ã³ã¿ã©ã¯ãã£ããã¹ãïŒã¹ããŒãªãŒããã¯ïŒã®èšè¿°ãå¯èœã«ãªããŸãã ããŒã¿é§åã®ææ³ã䜿çšããŠãã¢ãã¡ãŒã·ã§ã³ãç»é¢éã®é·ç§»ãã€ã³ã¿ã©ã¯ãã£ããªãžã§ã¹ãã£ãŒãäœæããæ¹æ³ãäŸã§ç€ºããŸãã äŸã¯iOSãã©ãããã©ãŒã ãšSwiftèšèªã«çŠç¹ãåœãŠãŸããããã®ææ³ã¯Androidã«éåžžã«é©ããŠããŸãã
ä¿è·ãããã¢ããªã±ãŒã·ã§ã³ïŒã¢ãã€ã«ãã³ãã³ã°ã®è§£æ
ãã¢ããªã±ãŒã·ã§ã³ã®ç¹å¥ãªã»ãã¥ãªãã£ãå¿ èŠãªãã®ãã人ã ã«å°ããå Žåãäž»ãªçãã®1ã€ã¯ããéãã§ãã éè¡ã¯ãåçãã£ã«ã¿ãŒãé©çšããããã®æ¡ä»¶ä»ãã¢ããªã±ãŒã·ã§ã³ãããåžžã«é«ãã»ãã¥ãªãã£ãå¿ èŠãšããŠããŸãã ãããŠãCFTäŒç€Ÿã®ååã¯ãéèæè¡ã»ã³ã¿ãŒããæå³ããŸã-ãã€ãªã¡ããªãã¯èªèšŒãããŒãã§ãŒã³ãSSLãã³æ¢ããªã©ã«ã€ããŠè©±ãã®ã¯åŸæ¥å¡ã®ããªã« ã»ãºãšããšã¢ã«ãã ã»ãã°ããã§ããããšã¯é©ãããšã§ã¯ãããŸããã
Playgroundsã§ã®ã¢ããªã±ãŒã·ã§ã³ã®æºå
Playground-Driven Developmentã䜿çšããçµéšã«è§ŠçºãããDenis KirillovãšKonstantin Yurichev㯠ãiOSã§ã®åæ¥éçºã§ãã®æ¹æ³è«ã䜿çšããçµéšã«ã€ããŠèª¬æããŸããå°æ¥çã«ã¯ããšã³ã³ãŒãäžã«ã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ããããã°ã§ããŸãã PDDã®å®è¡å¯èœæ§ã確信ããç§ãã¡ã¯ããã®æ¹æ³è«ã«åŸã£ãŠäŒç€Ÿã®äž»èŠãªãµãŒãã¹ã®éçºã«çæããŸããã ãããã©ã®ããã«èµ·ãã£ãã®ãããããäœã«ã€ãªãã£ãã®ããã¬ããŒããã家ãåºãããšãªããããç¹°ãè¿ãæ¹æ³ã«ã€ããŠåŠã³ãŸããã
Android
巚人ã®è©ã®äžïŒã³ããªã³ãç 究ããèšèª
ãã®1幎ã§ãã®ãã©ãããã©ãŒã ã§Kotlinãã©ã®ããã«æé·ããããAndroidéçºè ã«äŒããå¿ èŠã¯ãããŸããã ã¡ããŠã¹ã¯ãKotlinã®éçºãçããAndrey Breslavã«ãããã¬ãŒã³ããŒã·ã§ã³ãè¡ããŸããKotlinã¯ãä»ã®èšèªã®æ©èœã«ãã£ãŠã©ã®ããã«åœ±é¿ãåãããã«ã€ããŠèª¬æããŸãã ãããŠãã¬ããŒãã®åŸã«ãã¢ã³ãã¬ã€ã«åœŒèªèº«ã®è³ªåãããæ©äŒããããŸã-å¿ ãããã³ããªã³ãšä»ã®èšèªãšã®é¢ä¿ã«ã€ããŠã§ã¯ãããŸããã
äŸã§ã®ãããã¡ã€ãªã³ã°ïŒããã«ããã¯ãæ¢ã
Android Studioã®ææ°ããŒãžã§ã³ã§ã¯ããããã¡ã€ã©ãŒãæ¹åããããã€ãã£ãã³ãŒãã«åŸãããšãåŠç¿ããŸããã ãããããããã¡ã€ã©ãŒãæã£ãŠããã ãã§ã¯ååã§ã¯ãããŸãã-ããã䜿çšã§ããå¿ èŠããããŸãã
ã¬ããŒãã¯æè¡çãªã±ãŒã¹ã§ãã åäœããã¢ããªã±ãŒã·ã§ã³ããããŸãã ããã¯ååã«éãåäœããªããšããæãããããŸãã æåã«ã Arthur Badretdinovã¯ãçŽæãããæ£ç¢ºãªããŒã«ã®å©ããåããŠããã®æ°æã¡ãã©ãã»ã©çå®ããç解ããŸãã 次ã«ãããã€ãã®ããŒã«ã1ã€ãã€äœ¿çšããŠãã®ã¢ããªã±ãŒã·ã§ã³ããæºåãããåæã«æé©åãè¡ããŸãã ãã¹ãŠã®æé©åãåªåã«å€ããããã§ã¯ãªããããããããã®çµæã远跡ããŸãã æåŸã«ãã¢ããªã±ãŒã·ã§ã³ãã¢ã»ã³ããªããã¢ã»ã³ããªãŸã§ã©ã®ããã«æ©èœãããã確èªã§ããããã€ãã®ããŒã«ãèŠãŠãããŸãã
ãŽã¡ã€ãªãªãã¹ãã¯å¿ èŠãããŸããïŒã³ããªã³ã®ã³ã«ãŒãã³ãæ¯æããŠRxJavaãæŸæ£ããŸã
Kotlinã§ãããžã§ã¯ããéå§ããéçºè ã®65ïŒ ã¯ãRxJava 2ãããã¯ã°ã©ãŠã³ãããŒã«ãšããŠéžæããŠããŸãã ãããããã®éžæã¯ã©ã®çšåºŠæ£åœåãããŸããïŒ Kotlinã³ã«ãŒãã³ã¯ãRxJavaã®åŒ·åãªä»£æ¿åãšãªããŸãã ã¬ããŒãã§ã¯ã ãŠã©ãžããŒã«ã»ã€ã¯ãããäž¡æ¹ã®ã¢ãããŒããæ¯èŒããããããã®é·æãšçæãæ€èšããã³ã«ãŒãã³ã䜿çšããæ¹ã䟿å©ãªå ŽåãšãRxãªãã§ã¯å®è¡ã§ããªãå Žåã確èªããŸãã äž¡æ¹ã®ã¢ãããŒãã䜿çšããŠèšè¿°ãããã³ãŒãããã¹ãããæ¹æ³ãšãããããå ±åãããæ¹æ³ãæããã«ãªããŸãã
JobSchedulerãšã®å°é£ãªé
2018幎11æãŸã§ã«ãå šå¡ãtargetSdk 26+ã«åãæ¿ããããšãäœåãªããããŸããã€ãŸããã»ãŒãã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ããã©ãããã©ãŒã JobSchedulerãæ瀺çãŸãã¯æé»çã«äœ¿çšããããšã«ãªããŸãã ãã ãããã®ã³ã³ããŒãã³ãã¯çæ³ãšã¯ã»ã©é ããã®ã§ããããŠãŒã¶ãŒãç®ã«ããããšã¯ãªããšäºæ³ãããå€ãã®åé¡ãããããŠãŒã¶ãŒã«å±ããŸã§ã¯çºçããªãå¯èœæ§ããããŸãã ã¬ããŒãã§ã¯ã Arthur Vasilov ïŒYandexïŒããã®ãããªãã¹ãŠã®åé¡ãæ€èšããAndroidã³ãŒãã®ãšã©ãŒã«ã€ããŠè°è«ããã§ããã ãç°¡åã«JobSchedulerã«åãæ¿ããæ¹æ³ãåæããŸãã
èªçãçæ»ããŸãã¯ã·ã¹ãã å ã®ã¢ããªã±ãŒã·ã§ã³ã«äœãèµ·ããã
Androidã¯éåžžã«è€éãªã·ã¹ãã ã§ãããéåžžã®éçºè
ããã¯é ãããŠããããŸããŸãªããšãèµ·ãããŸãã ã¬ããŒãã§ã¯ã Anton Dudakov ïŒYandexïŒãåæããŸãã
-Androidèªäœã®èµ·åæ¹æ³ãã¢ããªã±ãŒã·ã§ã³ã®èµ·åæ¹æ³ã
-誰ãããªããã©ã®ã¡ã«ããºã ããã³ã©ã®ã¡ãœããã䜿çšããŠãèµ·åããã¢ããªã±ãŒã·ã§ã³ã³ã³ããŒãã³ããåŒã³åºããã
-ç¹å®ã®ãªãœãŒã¹ãžã®ã¢ã¯ã»ã¹æš©ã®èŠæ±ã¯ã©ãã§è¡ãããããã«åºã¥ããŠã·ã¹ãã ãæš©å©ãä»äžãããã©ããã決å®ããŸãã
-ã¢ããªã±ãŒã·ã§ã³ãæçµçã«ã©ã®ããã«æ»ã¬ãïŒäœã殺ãããšãã§ãããããããèªåèªèº«ã殺ããšã©ããªããã
Odnoklassnikiãžã®ã¢ããããŒã
Odnoklassniki Androidã¢ããªã±ãŒã·ã§ã³ã§ã¯ããŠãŒã¶ãŒã¯ããŸããŸãªã³ã³ãã³ããããŠã³ããŒãã§ããŸãã ããã«ã¯ãåçããããªãã¡ã¢ãé³å£°ã¡ãã»ãŒãžã補åãã«ã¿ãã°ãªã©ããããŸãã ãµãŒããŒãžã®é ä¿¡ãé«éã«ãªãã»ã©ããŠãŒã¶ãŒã¯å¹žãã«ãªããŸãã ããã«ãããŸããŸãªçç±ã§ã³ã³ãã³ãã倱ãããå¯èœæ§ãäœããªããŸãã ãã®ãããã¢ããããŒããããŒãžã£ãé«éåããã¿ã¹ã¯ãç»å ŽããŸããã ããªã«ã»ãããã®å ±åã¯ãããããåºããã®ãšåœŒããééããåé¡ã«ã€ããŠã®ãã®ã§ãã
ãµãŒãã¹ïŒããªãã¯åœŒããªãã§ã¯çããããŸãããã圌ããšå ±ã«çããæ¹æ³
Jonathan LevinããAndroidã®ããã¯ã°ã©ãŠã³ãã¯ãŒã¯ã®å¶éãã©ã®ããã«å€åãããããéçºè ã«ã©ã®ããã«åœ±é¿ãããã«ã€ããŠè©±ããŸãã ããããã¬ããŒãããYãXã«é©çšããããšããäžé£ã®æ瀺ã«ãªã£ãå Žåã圌ã¯ãžã§ããµã³ã«ã¯ãªããŸããã 代ããã«ã圌ã¯ããªã¹ããŒãèãã質åãäœæãããŠãµã®ã®ç©Žã«ç»ãããšãèŠæ±ããå ±åæžãçŽæããŸãã
ArCoreã§ã¢ããªã«çŸå®ãè¿œå ããŸã
äŒè°ã«é¢ãã2ã€ã®iOSã¬ããŒãã§ARKitã«ã€ããŠããã«èª¬æããŸãããAndroidåŽãèŠéããŸããã ARCoreã¯ä»¥åã«å°å ¥ãããŸããããå®éã®çµè«ãå°ãåºãã®ã«ååãªæéãçµéããŸãã-ãããŠYuliya Kaleda ïŒJetïŒãããããå ±æããŸãã
Androidãã«ãã¡ãã£ã¢ããã€ã¹ã®éçºã«ããããã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£
é床ãäœäžããªãããšãã³ãŒããæ確ã§ç解ããããããšã確èªããæ¹æ³ã¯ïŒ Ivan Alyakskin ïŒEPAM SystemsïŒãšåŠçã¯ãLinuxã«ãŒãã«ããAndroidãã¬ãŒã ã¯ãŒã¯ãŸã§ãããã©ãŒãã³ã¹ã®æé©åã®è€éããç解ããŸãã
ã¢ã¯ã¿ãŒã¢ãã«ïŒå€ãã¢ãããŒãã®æ°ããèŠæ¹
éåžžã倧èŠæš¡ãªãããžã§ã¯ãã«ã¯ãRxJavaã䜿çšããå€éšããã³å éšã·ã¹ãã ããã£ã±ãã§ãã ãã®ã¢ãããŒãã¯ãã§ã«äºå®äžã®æšæºã«ãªã£ãŠããŸãããå€ãã®äººã¯ãäŒæ¥ã§ã¢ã¯ã¿ãŒã¢ãã«ã§ããããšã蚌æãããŠãããŸã£ããç°ãªãéçºãã©ãã€ã ããããšã¯èããŠããŸããã
Vladimir Tebloev ïŒSberbank-TechnologyïŒã«ãããã®ã¬ããŒãã§ã¯ãã¢ã¯ã¿ãŒã¢ãã«ãšã¯äœããã¢ãã€ã«ããã€ã¹ã§éçºããéã«ã¢ã¯ã¿ãŒã¢ãã«ãã©ã®ããã«åœ¹ç«ã€ãããŸãã¢ã¯ã¿ãŒã¯ErlangãšScalaã ãã§ãªã䜿çšã§ããããšãåŠã³ãŸãã éåžžã®åæã³ãŒããªã©ã®ããã«æ©èœãã軜éã®éåæã¹ã¬ããã«ã€ããŠè©±ããŸãããã Kotlinã®ã³ã«ãŒãã³ã«è§Šããé«éã§å¿çæ§ã®é«ãã·ã¹ãã ãæ§ç¯ããéã®ãã®ã¢ãããŒãã®åºæ¬çãªæ§è³ªã«ã€ããŠã説æããŸãã
ãã¹ãŠãæ³èµ·ãããïŒèªåå ¥åãã¬ãŒã ã¯ãŒã¯ãšã¢ã«ãŠã³ã転éAPI
éçºè ã«ãšã£ãŠããŠãŒã¶ãŒã®ããã€ã¹ã®å€æŽã¯ããã»ã©æªãã¯ãããŸããïŒåœŒã¯ããã«äœãä»ã®ãã®ãã€ã³ã¹ããŒã«ã§ããŸãã ããããAndroid Oã®ãªãªãŒã¹ã«ãããæ°ããããã€ã¹ã§äœ¿ãæ £ããå¿å°ããã§ãŠãŒã¶ãŒãæºè¶³ãããæ°ããããŒã«ãç»å ŽããŸããã
-èªåå
¥åãã¬ãŒã ã¯ãŒã¯-ãŠãŒã¶ãŒã®å人ããŒã¿ã®èªåå
¥åã
-ã¢ã«ãŠã³ã転éAPI-ããã€ã¹éã®ããŒã¿ç§»è¡ã®ã·ã¹ãã ããã»ã¹ã«çµ±åããæ©èœã
Kirill Borisovã®ã¬ããŒãããããããã®ããŒã«ã®äœ¿çšã®åºæ¬ãšãããã«é¢é£ããèœãšãç©ŽãåŠã³ãYandexã§ã®å®è£ ã®çµéšãç¥ãããšãã§ããŸãã
AOSPã®æŠèŠããŸãã¯Androidãã«ãã§å€ãéããæ¹æ³
Victor Lapin ïŒAdvantumïŒã¯ãAOSPãšã¯äœãããã®æ§æèŠçŽ ãGoogle Androidãšç°ãªãçç±ãç¹å®ã®ããã€ã¹çšã«æ¢è£œã®ãã¡ãŒã ãŠã§ã¢ãçµã¿ç«ãŠãæ¹æ³ã説æããŸãã
ãã«ãäžã®èåã®åé¿ïŒKaptãšãã®ä»ã®åéº
Android Dev Podcastã§å€ãã®äººã«ç¥ãããŠããDenis Neklyudovããããžã§ã¯ãã®ç涯ã®ç©èªãèªããŸããå€ãã®äººãããã§ããããã«ãã¢ããªã·ãã¯ãªæ§è³ªã®ããã«ããŸãã«ãé·ãééãŸãå§ããŸããã ãã«ãæéã®æµ®ãæ²ã¿ã䌎ãã¹ããŒãªãŒã ããã¯ã1幎ã«ããããªãã¡ã¯ã¿ãªã³ã°ãšèª¿æ»ã®çµæã§ãããäž»ã«ã¹ã±ãŒã«Uberããã³Facebookã®è£œåã§ã®ã¿å®è¡ãããŸãã Gradleã®èšå®ãDagger2ã®æ§æãããã³æ¥ç¶ãæžããããã®ããªãããŒãªãœãªã¥ãŒã·ã§ã³ã®æ€èšã«è²»ãããæéã¯ã1ãæ以äžããããŸããã ãããŠãçµè«ãšæ±ºå®ã¯å¥è·¡çã«ã¬ããŒãã®æéã«ã¡ããã©åãŸããŸããã
æåŸã«
ãã¬ãŒã³ããŒã·ã§ã³ã«å ããŠãäŒè°ã§ã¯äœãæ°ããããšããããŸããæåã®æ¥ã®çµããã«ãããŒãã²ãŒã ã§ã®ããŒãã£ãŒã«å ããŠãBoFã»ãã·ã§ã³ãéå¬ãããŸãã ãã®ãããè¬æŒè ã®è©±ãèãã ãã§ãªããç·æ¥ã®ãããã¯ã®è°è«ã«å人çã«åå ããããšãå¯èœã§ãã
äŒè°ã«åå ããããšã«æ°ä»ããå Žåããµã€ãã§ç»é²ãè¡ãããŸã ã ãããŠããŸã äœããã®æ å ±ïŒããšãã°ãã¬ããŒãã®æ£ç¢ºãªã¹ã±ãžã¥ãŒã«ïŒãå¿ èŠã§ããããšã«æ°ä»ãããªããããã¯ããã«ãããŸãã