ITã«ã³ãã¡ã¬ã³ã¹ã®ã¬ããŒããèããšãããããããå€ãã®ç¹å®ã®æ å ±ãåŠã¶ããšãã§ããã ãã§ãªããããäžè¬çãªå šäœåãèŠãããšãã§ããŸããã¬ããŒãã¯äžç·ã«ãæ¥çãçŸåšçããŠãããèå³ãæã£ãŠãããã®ã«ã€ããŠè©±ããŸãã
Mobius 2017ã¯å é±ãµã³ã¯ãããã«ãã«ã¯ã§éå¬ãããŸãã-ã€ãã³ãã¯ã©ãã§ãããïŒãŸãã2017幎ã®ã¢ãã€ã«éçºã«é¢ããäžè¬çãªçµè«ã¯ãããã«è¿°ã¹ãããããšããå°ãåºãããšãã§ããŸããïŒ
äŒè°ã¯å»å¹Žãšããã€ãã®éãããã£ã ã ãŸãã1æ¥ã§ã¯ãªã2æ¥ã§æåã«è¡ãããŸããã åæã«ããæ£ç¢ºã«2åã®ã¬ããŒãããšããç®æšãèšå®ããŸããã§ãããé·ãäŒæ©ããããããåªå ããã¹ããŒãã®åŸã«ã¹ããŒã«ãŒã®è³ªåãé©åã«è©Šãã®ã«åœ¹ç«ã¡ãèŽè¡ã¯ãã®æ©äŒãç©æ¥µçã«æŽ»çšããŸããã
第äºã«ãä»åã¯èŠ³å®¢ã®äºæ³å€ã«å€§ããªå°ççåºããããããŸããã å°ãç°¡ç¥åããããã«ãäŒè°ã®èŽè¡ã®3åã®1ã®ã¿ããµã³ã¯ãããã«ãã«ã¯ããçŽæ¥ã3åã®1ãã¢ã¹ã¯ã¯ãããæ®ãã®3åã®1ãå°åããã§ããã ãããŠãäºæãã¬è©³çŽ°ã¯ããã·ã¢ãžã®èšªåãšäŒè°ãžã®åå ãçµã¿åãããããšã«ããæ¥æ¬ããã®æ°äººã®äººã ã®ååšã§ããïŒ3ã€ã®å¹³è¡ããå ±åã®ãããã»ãšãã©ã®å Žåã1ã€ã¯åœŒããéå±ããŠããªããŠãè±èªã話ããŠããŸããïŒã
第äžã«ããªã³ã©ã€ã³ãããŒããã£ã¹ããå€æŽãããŸãããé·ãäŒæ©ã«ãããäŒè°ã®åå è ã¯é©åã«ã³ãã¥ãã±ãŒã·ã§ã³ããšãããšãã§ããŸãããŸãããããŒããã£ã¹ãã®èŠèŽè ã¯äœããã¹ãã§ããããã 圌ãã®ããã«ãäŒæ©ã¯ãããŒããè¡ãããã¹ããŒã«ãŒãšã®ã€ã³ã¿ãã¥ãŒãè¡ãããŸããã äŒè°ã®2æ¥ç®ã«ã1ã€ã®ããŒã«ïŒããã³äŒæ©ïŒã®æŸéãYouTubeã§å ¬ç¶ãšè¡ãããããšãæãåºããŠãã ããããã¹ãŠãã©ã®ããã«èµ·ãã£ãããèªåã§ç¢ºèªã§ããŸãã
ããã€ã«ãµããªã³ã®åºèª¿è¬æŒã§ã¯ã圌ãFuturiceã§åããŠããéã«èŠ³å¯ããã¢ãã€ã«éçºã®ååã«ã€ããŠäŒè°ãéããŸãã ïŒäŒç€Ÿã®ä»äºã«ã€ããŠããã€ã«ããå¥ã®ã€ã³ã¿ãã¥ãŒãåããŸããïŒã 圌ã®ã¹ããŒãã§ã¯ãå€ãã®æè¡ãèšåãããŸãã-ãããããããã®ã©ãããããŒã«ã§æãè奮ãåŒãèµ·ãããã®ã§ã¯ãªããå€ãã®èŠ³å®¢ã®ææ ãšæããã«å ±é³Žãããã®ã¹ã©ã€ãïŒ
åºèª¿è¬æŒã®åŸãå šå¡ã3ã€ã®éšå±ã«å ¥ããŸããã2æ¥éã§åœŒãã«èããããã¹ãŠã®ããšãèªãããšã¯ããŸãããã代ããã«æ³šç®ãã¹ãäž»ãªåŸåããªã¹ãããŸãã
React Native
ããã«ã€ããŠæåã«è©±ããã®ã¯ãããã€ã«ã»ãµããªã³ã ãã§ããã 圌ã¯ãReact Nativeãççºçãªæé·ãèŠããŠãããä»ã§ã¯ãã®æè¡ãç¡èŠããããšã¯äžå¯èœã§ããããåæã«éåžžã«ç©è°ãéžããã®ã§ããããšã«æ³šç®ããŸããã 圌ã«ãããšãåŸæ¥ã®ãã€ãã£ãéçºã®å°é家ã¯ãååãšããŠãã®ãããªãããã¿ã€ãäœæé床ãéæããããšã¯ã§ããŸããããšèªèããŠããŸãããä»ã®ããã€ãã®åŽé¢ã¯åœŒããæ¿æãããŸãã ãããFacebookãããžã§ã¯ãã§ãããšããäºå®ã¯ãç¥çŠãšåªãã®äž¡æ¹ãšåŒã¶ããšãã§ããŸãïŒããšãã°ãFacebookã¯ããã®éã暪åãããããäŒç€ŸããReact Nativeã®ã©ã€ã»ã³ã¹ãåãæ¶ãããšãã§ããŸãïŒã JavaScriptã¯ãç¥çŠãšåªãã®äž¡æ¹ãšåŒã¶ããšãã§ããŸãïŒãVisual Basicã®ããã«ãªããŸããïŒæå³ããªãé åã§äœ¿çšããããïŒã äžæ¯ã®å€ã...ãããã圌ãã¯ç¥çŠãšåŒã°ããŠããŸããã ããã€ã«ã¯æ¬¡ã®ããã«ããŒããèŠçŽããŸããïŒãç§ã¯ãããããªãããéããŠããããè©Šããªããã°ãªããŸãããã
ããã«ç¶ããŠã ãŠã©ãžããŒã«ã»ã€ã¯ãã ïŒEPAMïŒã¯ãã³ãŒããšç¹å®ã®åé¡ã®è§£æ±ºçãšãšãã«ãããã¯ã«æ·±ãçªå ¥ããŸããã ãããããããæå³ã§ã¯æ·±ãããŸãã圌ã®ã¬ããŒãã¯ãäž»ã«å人çã«æè¡ãè©Šãã人ã察象ãšããŠãããã¬ããŒãåŸã®åé¡ã«ã€ããŠã¯ãçè«çã«å€ãã®äººããŸã èå³ãæã£ãŠããããšãããããŸãã Sberbank Technologiesã§React Nativeã䜿çšããçµéšã«ã€ããŠè©±ããDmitry EvstratovãšDaniil Kalintsevã«ãã次ã®ã¬ããŒãã¯ããã®ãããªèŠèŽè ãããçšåºŠå©ããããšãã§ããŸãã
建ç¯
ã¡ããŠã¹ã«ã¯å€ãã®å»ºç¯ã¬ããŒããããããã®ãã¡ã®1ã€ã«ã¯å€èŠ³ã®ç°åžžãªæŽå²ããããŸããã Androidéçºè ã®Evgeni Matsyuk ïŒKaspersky LabïŒã¯ãã¬ããŒããClean Architectureããèæ¡ãã1æã«ããŒããŒã§ãManifest of Architectural Painããçºè¡ããç¹å¥ã«äœæãããTelegramãã£ããã§çã¿ãåãã¡åãããä¿ããŸããã æ°ãæã®ãã¡ã«ããã£ããã¯700人ã®åå è ã«æ¡å€§ããŸãããã誰ãäºæ³ããŠããªãã£ããããEvgenyãšAlexander Blinov ïŒREDMADROBOTïŒãæãã§ãããã®ã®ã»ãã®äžéšã«åãŸãã»ã©å€ãã®è°è«ãçã¿åºããŸããã ããã§ãã圌ãã¯ããèªäœã§ãã¯ãªãŒã³ã¢ãŒããã¯ãã£ãã«ã€ããŠå€ãã®ããšãèšãããšãã§ããŸããïŒãå€ãã®äººããã£ãŒãã£ããã¬ã€ã€ãŒãåé€ã§ãããã©ãããå°ããŸããéåžžãããŸãã¡ãªããããªãã€ã³ã¿ã©ã¯ã¿ãŒãåé€ãããã®ã§ãããç§ã¯å人çã«ã¯äžè²«æ§ã®å©ç¹ãïŒãããã³æ¢åã®ãããžã§ã¯ãããã®æ¹åã«æ®µéçã«å€æŽããæ¹æ³ã
ãããŠãè°è«ã¯ãã¬ãŒã³ããŒã·ã§ã³ã®åŸãçµãããŸããã§ããã ãã£ããã¯åŒãç¶ã掻çºã«è¡ããã2æ¥ç®ã¯ã¡ããŠã¹ããŒã«ã§ããã·ã¥ãŒã¯ãšããªãããå¥ã®è¬æŒè ã§ãããã§ã«ãã³ãã»ãã¹ãšå»ºç¯ã«ã€ããŠæŽ»çºã«è°è«ããŠããæ§åãèŠãããšãã§ããŸããã åã¯éããŠããŸãïŒ
ãã1ã€ã®ã建ç¯ãã¹ããŒã«ãŒã§ããDenis Neklyudov ïŒ90SecondsïŒããæ°çŸäººã®é»ä¿¡ãã£ããã管çããŠããŸã ããããAndroid Devããããã£ã¹ããã£ããã§ãã ãŸããMobiusã§ã¯ããã³ã°ã¢ãŠãã䜿çšããã¹ããŒã«ãŒã°ã«ãŒãããã®ããããã£ã¹ãã®ãªãªãŒã¹ãæé ããŸããã æ®å¿µãªãããé³ã®åé¡ã«ããèŠèŽè ã¯ãªãªãŒã¹ã楜ããããšãã§ããŸããã§ããããå°ãªããšãé¢ä¿è å šå¡ãå€ãã®åã³ãåŸãŸããã
ç§ãã¡ã¯ããã¹ã«ã誰ããã¢ãŒããã¯ãã£ã«ã€ããŠè°è«ããããçç±ãå°ããŸããã圌ã®ããŒãžã§ã³ã¯ããã§ããããšãå€æããŸããïŒãæ°å¹Žåãã¢ãã€ã«äŒè°ã§åœŒãã¯åçã®è¡šç€ºãªã©ã®ç¹å®ã®åé¡ã«ã€ããŠå€ãã®ããšã話ããŸããã ãã®ããã建ç¯ããŒããžã®ç§»è¡ããããŸãããã
ã¹ããŒã«ãŒAnton Keksã¯å¥ã®ããŒãžã§ã³ãèŠã€ããŸããã
ã³ããªã³
æšå¹Žã®Kotlinã«ã€ããŠã®ã¡ããŠã¹ã§ã¯ããå ¥éããããã¯ãKotlin Androidã¢ããªïŒãªããããè¯ãã®ããã§1åã®è¬æŒãããããã®ãšãã®ã¹ããŒã«ãŒã¯JetBrainsããã§ããã ä»åãäŒç€Ÿã¯ã¹ãã³ãµãŒãšããŠäŒè°ã«åå ããKotlinããŒã ã®ä»£è¡šè ãåãã§è³ªåã«çããŸããããAndroidã®ã¬ããŒãã§ã¯ãJetBrainsã®åå ãªãã§ã誰ããåãã§èšèªã«ã€ããŠè©±ããŸãã-ä»ã§ã¯ãããã®ãããªèšèªã¯ãããŸãã詳现ãæŽçããŸãã
ãããŒã»ããªãŠã¹ã©ãŒã¯ãã¹ãã§ã³ããªã³ã䜿çšããããšã«ã€ããŠè©±ããŸããã ã¢ã³ãã³ãšãã£ãªããã»ã±ã¯ã¹å åŒã¯ã³ããªã³ã®ããºã«ã代衚ãã ããã¹ã»ãã¯ãªããŠããšã¹ããã³ã»ãŽã³ãã£ããã¯åœŒãã®å»ºç¯ã¬ããŒãã§ã³ããªã³ã¯éèŠãªã³ã³ããŒãã³ããšããŠç»å ŽããŸãã-ãããŠãããã¯ã¬ããŒãã®ã¿ã€ãã«ã«èšèªãçŽæ¥å ¥ããããå Žåã®ã¿ã§ããééã§èšåãããŠããŸããã
ãããŠããã®ãããªå ±åæžãã誰ããããã¯ã·ã§ã³ã§Kotlinã䜿çšããŠããã®ãããšå°ãããããšããå€ãã®ææããã£ãã®ã§ãèŽè¡ã¯åŠåçãªé¢å¿ããéãŸã£ãŠããŸããã§ããã äžè¬ã«ãéå»1幎éã«KotlinãAndroidç°å¢ã§ã®äººæ°ãå€§å¹ ã«é«ããããšã¯æããã§ããã
奜å¥å¿ã匷ãã§ãã ããæè¿ãKotlin / Nativeãããžã§ã¯ããå°å ¥ãããŸãããããã¯iOSã®ãã©ãããã©ãŒã ã®1ã€ã§ãã å°æ¥çã«ã¯ãJetBrainsã¯ã¯ãã¹ãã©ãããã©ãŒã ã¢ãã€ã«éçºãç®æããŠããã1ã€ã®èšèªã§äž¡æ¹ã®äž»èŠãªãã©ãããã©ãŒã ãèšè¿°ããã³ãŒããåå©çšã§ããŸãïŒããæå³ãåãReact Nativeãšç«¶åããŸãïŒã ãããŠä»ãAndroidã®äžçã§å€ãã®ããšãéæããããšããã§ã«å¯èœã«ãªã£ããšããäŒç€Ÿã«ãšã£ãŠæ°ããªèª²é¡ãçããŸãã1ã€ã®ãã©ãããã©ãŒã ã ãã§ãªããå°æ¥ã®Mobiusã§èšèªã«ã€ããŠè©±ãããšãã§ããã§ããããã
ã¹ã€ãã
ãAndroidçšKotlinã¯iOSçšSwiftã«äŒŒãŠããŸãããšããäŸãã¯å®å šã«æ£ããããã§ã¯ãããŸããããæ¯èŒãé¿ããããšã¯å°é£ã§ãã Androidã¯ç¬¬1èšèªãããé »ç¹ã«äœ¿çšããŸãããiOSã®äžçã§ã¯ç¬¬2èšèªãå®éã«æºãåããäŒè°ã¯ãããæ確ã«åæ ããŸããã Kotlinã®å Žåã®ããã«ãåã®Mobiusã®èšèªã«é¢ããã¬ããŒãã1ã€ãã£ãå ŽåïŒ ãAdvanced Swift Generics-Tã«åãæ¿ããŸãããã ïŒãä»åã¯ããââã©ãŒãã³ã¹ããã¹ã容ææ§ãã¹ã¯ãªããã§ã®Swiftã®äœ¿çšãšãã3ã€ããããŸãã
1幎åãåã®ã¡ããŠã¹ã®åã«ãSwiftãäŒç€Ÿã§ã©ã®ããã«é²ãã§ããã®ããä»ã®äººã«äœãã¢ããã€ã¹ããã®ããè€æ°ã®ã¹ããŒã«ãŒã«å°ãããšããçãã«ã¯å€ãã®æ³šæããããŸããïŒãæ°ãããããžã§ã¯ããéåžžã«å€§ãããé·æéãã¬ã€-å人çã«ãç§ã¯ãŸã Objective-Cã«åŸããŠããŸãã ããããä»ã§ã¯ãªããªã£ãŠããŸãããªã³ã©ã€ã³ãããŒããã£ã¹ãã§iOSã¹ããŒã«ãŒã«ã2017幎ã«Objective-Cã§æ°ãããããžã§ã¯ããéå§ããæå³ã¯ãããŸããããšå°ãããšã圌ãã¯ç¹å®ã®ã±ãŒã¹ã ããæãä»ããŸããïŒããšãã°ããã¹ãŠãçžäºéçšã§ããå ŽåïŒ C ++ïŒã
確ãã« ã1幎åã«ãããŒãžã§ã³3.0ã¯å®éã«éåžžã®ããŒãžã§ã³1.0ã«ãªãããšèªã£ãIgor Kashkuta ïŒBadooïŒã¯ã圌ã®äºæž¬ãä¿®æ£ããŸãããAppleã¯ãã以éããã©ã³ãå€æŽããABIã®å®å®æ§ã4.0ã«å»¶æããŠä»¥æ¥ã 4.0ã¯çã«éåžžã®ããŒãžã§ã³1.0ã§ããã Mobius 2018ã§ã®1幎éã«åœŒã®ç«å Žãæ確ã«ããããšãå¿ããªãã§ãã ããïŒ
ãŸããYandexã®Nikolai LikhogrudãiOSã¢ããªã±ãŒã·ã§ã³ã®èªã¿èŸŒã¿æéãæé©åããããšã«ã€ããŠè©±ããŠããã¬ããŒãã§ã¯ãSwiftã¯å®å šã«å®å®ãããiOSã®äžéšã«ãªããŸããããObjective-Cã«æ¯ã¹ãŠèªã¿èŸŒã¿æéããããã«é·ããªã£ãŠããŸãã å€ãã®äººã«ãšã£ãŠéããéèŠã«ãªãããšã¯ãŸããããŸãããããã®ç¬éã¯å¥œå¥å¿ã匷ããèªæã§ã¯ãããŸããã
ãã¬ã³ãã«å ããŠ
ãŸãã倧ããªãã¬ã³ãã«åœãŠã¯ãŸããªãããã©ãŒãã³ã¹ããããŸããããç¹å®ã®ããªãºã ãéããŠã¢ãã€ã«éçºãèŠããããèå³æ·±ãããšãå€æããŸããã ããšãã°ãã²ãŒããŒã§ããPhilip Keks ïŒCreative MobileïŒã¯ããã³ã³ãœãŒã«ã¬ãã«ã§ã®æ°ããã¹ããŒããã©ã³ã®ããã©ãŒãã³ã¹ãã«é¢ããåºåã®äž»åŒµãééã£ãŠããçç±ã説æããŸããã ã²ãŒãã³ã°ã»ãã·ã§ã³ã®æšæºæéã枬å®ããéç±ã®å¯èœæ§ãè©äŸ¡ããããã€ã¹ãã©ãã ãããŒãã§ããããå€æããåŸãCreative Mobileã¯äºæ³å€ã®çµè«ã«éããŸããïŒGalaxy S8ã®ãããªæ°ããã¹ããŒããã©ã³ã«ããŸã匷åã§ãªãã³ã³ããŒãã³ããã€ã³ã¹ããŒã«ãããŠããå Žåãå®éã«ã¯ããããããã«çµãããšãã§ããŸãã ãªãŒããŒããŒãã¯ã²ãŒã ã ãã§ãªãã Alexander KorshakãMobiusã§360床ã®ãããªãšVRã«ã€ããŠè©±ãã以åã«ã€ã³ã¿ãã¥ãŒã§ç§ãã¡ã«ãã®è³ªåãéåžžã«ã€ããããšã話ããŸãã ã
ãããŠã«ã³ãã¡ã¬ã³ã¹ã¯ãã¢ãã€ã«éçºãç°ãªãè§åºŠããèŠããã¬ãŒã³ããŒã·ã§ã³ã§çµäºããŸããã Jonathan Levin ïŒKolGeneïŒã¯éçºè ã§ããã¹ã¿ãŒãã¢ããã§ããããããæè¡ãšè£œåã®2ã€ã®èŠ³ç¹ããç¶æ³ãæããŠããŸãã ãããŠãMobius 2017ã§ã®åœŒã®æåã®ã¬ããŒããAndroidãã©ãããã©ãŒã å ã§äœãèµ·ãã£ãŠãããã«ã€ããŠã§ãã£ãå Žåããåºèª¿è¬æŒããã¢ããªã±ãŒã·ã§ã³ãã補åãäœãæ¹æ³ãã¯å€éšã§äœãèµ·ãã£ãŠãããã«ã€ããŠã§ãã ããŒã«ã§ã®å€ãã®ç¬ã声ã¯ããžã§ããµã³ã®ãã¬ãŒãºã«ãã£ãŠåŒãèµ·ããããŸããã
ãããªãã¯é·ãéãæ éã«ã¢ããªã±ãŒã·ã§ã³ãäœæããæçµçã«ã¹ãã¢ã«çœ®ããŠã誰ããããã€ã³ã¹ããŒã«ããŸããã ãããŠãããªãã¯æãïŒãªããããªã®ãããªã圌ãã¯æãã§ããªãã®ããRxJavaãããïŒ
å®éãRxJavaã®ãããªãã¯ãããžãŒã2æ¥éç¶ããŠèããŠãããšããšã³ããŠãŒã¶ãŒãè奮ããããã®ãããããããããšãå¿ããããšãã§ããŸãã ãããŠãã¢ãã€ã«éçºãªã©ã®å€§è¡ãŠãŒã¶ãŒã«çŠç¹ãåœãŠãæ¥çã§ã¯ãå¿ããŠã¯ãªããªãããšã¯ç¹ã«éèŠã§ããçµå±ã®ãšããããã¹ãŠã®æè¡ãã¬ã³ãã¯äººã ã®ããã®ãã®ã§ããã人ã ã¯åŸåã®ããã§ã¯ãããŸããã