Wrikeã¯çŸåšDartã®æ倧ã®æ¶è²»è ã®1ã€ã§ããããïŒãã ãã DartUPã«ã³ãã¡ã¬ã³ã¹ã§ç€ºãããŠããããã«ã 圌ãã ãã§ã¯ãããŸããïŒããã®çºè¡šãITã®äžçå šäœã«ãšã£ãŠæå³ãããã®ã«ã€ããŠè©³çŽ°ãªåæãè©Šã¿ãŸããã
çš®åã®ãã¿ãã¬ïŒ ãŸããªããã¹ãŠããã©ãã¿ãŒã«ãªããŸã
TLDR
-Flutter ã Dartãäœã§ãããããããªãå Žåã¯ã ãã·ã¢èªã話ãã³ãã¥ããã£ã®ãã£ããã§è³ªåã§ããŸã
-ãã¹ãŠã®ã¬ããŒãã¯YouTubeã§èŠã€ããããšãã§ããŸã
-ããã«ãã¹ãŠã®ããã®ãçæ³çãªã¯ã©ã€ã¢ã³ããã衚瀺ãããŸã
ãªãªãŒã¹ã®ãã©ãã¿ãŒ
ããŒãžã§ã³1.0ãããŠã³ããŒãå¯èœã«ãªããã¢ããªã±ãŒã·ã§ã³ãå£ããããšãæããããšãªããã¢ããªã±ãŒã·ã§ã³ãå®å šã«è£œååã§ããŸãã ãã¡ããããªãªãŒã¹åã«ã¯ãé倧ãªå€æŽã¯ããã»ã©å€ããããŸããã§ããããããã§ãããŒãžã§ã³ã®å é ã«ããã1ããšããæ°åã¯ãå°æ¥ã®ä¿¡é Œæ§ãé«ããŠããŸãã ãã¡ãããæè¿ãdevãã©ã³ãã§ã®ã³ããããçã£ãããã«é£ã³ãŸããããããã§ãçŽ æŽãããã®ã§ããªãªãŒã¹ã¯éåžžã«æåŸ ãããŠããŸããã å®å®æ§ã«å ããŠãã¡ã€ã³ããŒãžã§ã³ã«äœãè¿œå ãããŸãããïŒ
Flutterã«é¢ããããã€ãã®çµ±èšïŒ
-Flutterã¢ããªã±ãŒã·ã§ã³ã®2å人以äžã®ãŠãŒã¶ãŒ
-25äžäººã®éçºè ïŒããŒã¿ç以éïŒ
-Playã¹ãã¢ã®3000åã®ã¢ããª
-GitHubã§34çªç®ã«äººæ°
- ãã¯ã»ã«å®ç§ãªiOSãµããŒã
å ¬éåã¯ãFlutterããŒã ã¯äž»ã«ãããªã¢ã«ãã¶ã€ã³ãŠã£ãžã§ããã«éç¹ã眮ããŠããŸããããããã¯ååãšããŠç解ã§ãããã®ã§ãã ããããæ¢åã®CupertinoãŠã£ãžã§ããã¯æŽæ°ãããŠãªãªãŒã¹ã«è¿œå ããããããé ãã¯ãããŸããã ç§ã¯ãã®ãªããžããªãèŠãããšããå§ãããŸã ã iOSèšå®ããŒãžã¯ãã®äžã§åäœæãããŸããããççŽã«èšã£ãŠããã€ãã£ãã®ãã®ãšåºå¥ããããšã¯éåžžã«å°é£ã§ãã
- æ¢åã®ã¢ããªã±ãŒã·ã§ã³ã«è¿œå ããæ©èœ
é·å¹Žã«ããããèšå€§ãªæ°ã®ã¢ããªã±ãŒã·ã§ã³ãAppStoreãšPlayStoreã«èç©ãããŠããŸããã ãããŠãã»ãšãã©ã®å Žåãæ£åžžã«æ©èœãããœãªã¥ãŒã·ã§ã³ããå¥ã®ãã¡ãã·ã§ããã«ãªãã¬ãŒã ã¯ãŒã¯ãã«å®å šã«æžãçŽãããã¯ãããŸããã ããããFlutterã䜿çšãããšãæ¢åã®ã¢ããªã±ãŒã·ã§ã³ãéçºããããã®ã¢ãããŒããšãææ°ã®ã¢ãããŒãã®ãã¹ãŠã®å©ç¹ãçµã¿åãããããšãã§ããŸãã ãããè¡ãæ¹æ³ã«ã€ããŠã¯ã ãã¡ããã芧ãã ãã ã
- ãã©ãããã©ãŒã ãã¥ãŒ
Flutter 1.0ã§ã¯ããã©ãã¿ãŒãã¥ãŒãšãã€ãã£ããã¥ãŒãçµã¿åãããããšãã§ããŸããçŸåšã次ã®ãããªãã®ã®ãµããŒãã®è¿œå ã«ç©æ¥µçã«åãçµãã§ããŸãã
- Webãã©ãŠã¶
webview_flutterã¯ããã©ãããã©ãŒã ãã¥ãŒããŠã£ãžã§ãããšããŠäœ¿çšããããã«ãªããŸããã
- Googleããã
google_maps_flutterã¯ããã©ãããã©ãŒã ãã¥ãŒããŠã£ãžã§ãããšããŠã䜿çšããŸãã
- 50èšèªã§ã®ããŒã«ãªãŒãŒã·ã§ã³ïŒåœéåïŒ
Flutterã€ã³ã¿ãŒãã§ãŒã¹ã¯ã50ã®èšèªããµããŒãããããŒã«ã©ã€ãºããµããŒãããããã«ãªããŸããã ãããããã®å¯ã®æ¢çŽ¢ãå§ããããšãã§ããŸã ã
Flutterã§ã§ããããš
å®éãã»ãšãã©ãã¹ãŠïŒ ãŸããããã§ãªããªããããããããããã ãã®ãã¬ãŒã ã¯ãŒã¯ã®å šæ©èœãå®èšŒããããã«ãããã¹ãŠã®æŽå²ãã¢ããªã±ãŒã·ã§ã³ïŒ PlayStore ã AppStore ïŒãã«ã³ãã¡ã¬ã³ã¹ã§çŽ¹ä»ãããŸããã
é¢ä¿è ã«ãããšããã®ãããžã§ã¯ãã¯3ãæé3人ã®ããŒãã¿ã€ã ã§è¡ãããŸããã è±å¯ãªã¢ãã¡ãŒã·ã§ã³ãèãããšãéåžžã«ã¯ãŒã«ã«èŠããŸãã ãã¡ãããæçè«è ã¯ãããããšã³ãã®æºåž¯é»è©±ã§ãã®ãããªãã®ã衚瀺ããã®ãè¯ãããšã«æ°ä»ããããããŸããããæã匷åãªããã€ã¹ã§ã¯ãªãææè ã¯ã©ãã§ããïŒ ããŠãã«ã³ãã¡ã¬ã³ã¹ã§ã¯ã2013幎ã®iPhoneã§ãã¢ããªã±ãŒã·ã§ã³ãæ£åžžã«èµ·åããŠåäœããããšã瀺ãããŸããã ãã®ã¢ããªã±ãŒã·ã§ã³ã®ãœãŒã¹ã³ãŒããå ¬éãããã©ã®ããã«äœæããããã確èªããŠãã ããã
ä»ã«äœïŒ
- ãã¶ã€ããŒåã
2Dã²ãŒã ã®éçºã«ç¹åããFlutterã«ç©æ¥µçã«é¢å¿ãæã£ãŠãã2Dimensionsã¯ãéåžžã«ã¯ãŒã«ãªããšãç¡æã§è¡ããFlareã¢ãã¡ãŒã·ã§ã³ãšãã£ã¿ããªãªãŒã¹ããŸããã åæã«ããã®ã¬ããŒãã§ç€ºããããã¢ããæåã®å£°ãäžããèŽè¡ã®äººã ã¯ãFlutterã§ãããŸãæ©èœããŸãã
- CI / CD
ã¯ã©ãŠãCI / CDããŒã«ã§ããNevercodeãFlutterã®ãµããŒããçºè¡šããŸããã 圌ãã¯ãFlutterçšã«ç¹å¥ã«äœæãããæ°ããCodemagicããŒã«ïŒããŒã¿ïŒãçºè¡šããã¯ã³ã¯ãªãã¯ã§ãããžã§ã¯ããããã«ãã·ã¹ãã ã®ã»ããã¢ãããæ¯æŽããŸããã ãã¢ã§ã¯ãGitHubããªã³ã¯ããŠãªããžããªãæå®ããã ãã§ååã§ããããšã瀺ãããŸããããã®åŸãäœæ¥äžã®CIã·ã¹ãã ãååŸããŸãã
- ãæ¯æã
ãã£ãã·ã¥ã¬ã¹æ±ºæžç«¯æ«äŒç€Ÿã®Squareã¯ãæ°ããFlutter察å¿SDKããªãªãŒã¹ããŸããã ã¯ããç§ãã¡ã®åœã§ã¯ãã®ã·ã¹ãã ã¯ããŸã人æ°ããããŸããïŒå€§äžå€«ãå®éã«ã¯ãŸã£ããæ©èœããŸããïŒããã¢ã¡ãªã«ã«ãšã£ãŠã¯éåžžã«äŸ¿å©ãªãã®ã§ãã
ãã¹ãŠããã©ãã¿ãŒ
åœåãFlutterã¯ã¯ãã¹ãã©ãããã©ãŒã ãã¬ãŒã ã¯ãŒã¯ãšããŠèããããŠããŸãããããããã®ãã©ãããã©ãŒã ã¯ãã¡ããã¢ãã€ã«ã§ããã ããããçµå±ã®ãšãããããã ãã§ã¯ãããŸããã
RaspBerry Piã®ãããªãšããŸããã¯ã«å ããŠããã¬ãŒã ã¯ãŒã¯ã¯äžçãæ¯é ããåŸåããããŸãã
ãã©ãã¿ãŒãã¹ã¯ããã
ã¯ããFlutterã¯ãã§ã«ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã§èµ·åãããŠããŸãïŒ ãã¡ããããããŸã§ã®ãšãããããã¯ãããã¿ã€ãã«ãããŸããããWindowsãMacOSãããã³Linuxã«çµã¿èŸŒãããšã¯éè¿ã«è¿«ã£ãŠããããã§ãã ãŸãããã¹ã¯ãããã§ããã°ã©ã ãå®è¡ããã ãã§ãé·ããšãã¥ã¬ãŒã¿ãŒãèµ·åãããŸã§åŸ ã€ã®ã§ãããã¯éçºè ã®ãšã¯ã¹ããªãšã³ã¹ãå€§å¹ ã«åäžãããŸãã ãããŠãã¡ããã Electronãšã®é¡äŒŒç¹ã¯ããã«ç€ºåãããŸãã æ¯èŒããã«ã¯ææå°æ©ã§ãããç§ãã¡ãæã£ãŠããã®ã¯çŽç²ã«ææ©çã§ãïŒ
- 巚倧ãªChromeã©ã³ã¿ã€ã ãå®è¡ããå¿ èŠã¯ãããŸãã
- JSãCSSãHTMLã®è§£æã«æéãç¡é§ã«ããå¿ èŠã¯ãããŸãã
- AoTã³ã³ãã€ã«ã®ãããã§ããã¹ãŠããã€ãã£ãïŒãã€ããªïŒã³ãŒãã«ã³ã³ãã€ã«ãããŸããã€ãŸãã
- ã³ã³ãã³ãã衚瀺ããå®å šãªèªç±
çµæã¯ã©ããªããŸã-衚瀺ãããŸãã
ããããªïŒWebã®ãã©ãã¿ãŒïŒ
ãã®äŒè°ã®æ倧ã®é©ãã¯ãFlutter WebããŒã³ããããžã§ã¯ãã§ãã
ããã¯ã©ããªåç©ã§ãäœãšäžç·ã«é£ã¹ãŸããïŒ ãã®èšäºãã次ã®ããã«ãããŒã ã¯Webéçºçšã®èšèªãšããŠDartã®ãã¹ãŠã®å©ç¹ã掻çšããããšã決å®ããŸãããJSã§ã®å¹ççãªã³ã³ãã€ã«ããããŠãã¡ããããããšçžäºéçšããŠèšå€§ãªæ°ã®ã©ã€ãã©ãªãåå©çšããŸãã ãã ãããã¹ãŠãããã»ã©ã¹ã ãŒãºãªããã§ã¯ãããŸãããWebçšã®ãŠã£ãžã§ãããæ§ç¯ããããžãã¹ããžãã¯ãåå©çšããã®ãããã»ã©é£ãããªãå Žåãã¬ã³ããªã³ã°ã¯åé¡ãåŒãèµ·ããå¯èœæ§ããããŸãã
ããã³ã°ããŒããã¢ã¢ããªã±ãŒã·ã§ã³
çŸåšãããŒã ã¯æ¬¡ã®2ã€ã®æ¹æ³ãè©ŠããŠããŸãã
- HTML + CSS + Canvas
- CSS Paint API
å人çã«ã¯ã2çªç®ã®æ¹æ³ã¯ç§ã«ãšã£ãŠããææãªããã«æããŸããããã¡ããããã©ãŠã¶ãŒãšã®äºææ§ã«é¢ããŠã¯æãä¿¡é Œæ§ãäœãæ¹æ³ã§ãã ããããIEãç§ãã¡ãå»ããšãããã¥ãŒã¹ããã£ããã«ãããã»ã©æªããªããããããŸããã èšäºã§åé¡ã®è©³çŽ°ãèªãããšãã§ããŸããããŒã ã¯ãä»åŸã®Google IOã«ã€ããŠã®ãã¥ãŒã¹ãå¢ãããšããäºå®ã«ã€ããŠã³ã¡ã³ãããŸããã
ããã¯ã©ãããæå³ã§ããïŒ
ãããŠããããã¯ã«ã€ããŠå°ãèããŸããã äžè¬çã«ãFlutterã¯äœã®ããã«ããã®ã§ããïŒ ãããããã§ã¯ãªãïŒãªããããã¢ãã€ã«éçºè ã®éã§ããã»ã©å€ãã®è«äºãåŒãèµ·ããã®ã ãŸãããŸã第äžã«ãããã®ç°å¢ã®ããã«ã人ã ã¯ãããäœã§ãããæ°ãããã®ãã¹ãŠãåãå ¥ããã®ãèŠæã§ãã 次ã«ãäž»ãªæžå¿µäºé ã¯æ¬¡ã®ãšããã§ãã
- Googleã§æåŸ ããããšã¯ã§ããŸããã éãæ¹æ³ãšéããæ¹æ³
- ãã®æè¡ã¯ãã€ãã£ãéçºè ã«ä»£ãããã®ã§ã¯ãããŸããããã¬ãŒã ã¯ãŒã¯ã®äœæè ãèš±å¯ãããã®ã§ã¯ãªããããªããæããã®ã¯äœã§ãæžãããšãã§ããŸã
- ããã¯ãã¹ãŠé ããäžå¿«ãªã©
ããŠãé çªã«ãã£ãŠã¿ãŸãããã 倧æIT巚人ã®äžå®å®ãã«ã€ããŠã ã¯ããããã ãã§ãã ãã ãã1ã€ã ããããŸããFlutterã¯å®å šã«ãªãŒãã³ãœãŒã¹ã§ããããã¹ãŠã®ã³ãŒãã¯GitHubã«ããããªãŒãã³ã©ã€ã»ã³ã¹ã®äžã«ãããŸãã ãããã£ãŠãããšãGoogleãééã決å®ãããšããŠããã³ãã¥ããã£ã¯ãã€ã§ãéçºãç¶ããããšãã§ããŸãã
楜ããäºå®ïŒDartèšèªã®ã¡ã€ã³ãããŒãžã£ãŒãšãã以åã®ãã¹ãŠã®Flutter Tim Sneathãã¡ã€ã³ã§ãã... Silverlightã ãã¡ããçŽ æŽããããªãªãŒã¹æçš¿ã§ãã éå»æ°å¹ŽéãèŠããŠãèªãã§ããããšããå§ãããŸãã
ããã«ã€ããŠããããŠãã€ãã£ãéçºè ã«ãšã£ãŠã¯ã©ãã§ããïŒ iOSã¢ãŒããã¯ãã®äžçŽå¯ç€Ÿé·ã§ããå Žåã¯ãå¿ èŠãããŸããã ãŸããçå£ã«ãããªãã¯ã¢ããªã±ãŒã·ã§ã³ãããéãããè¯ããã€ãã£ãã«æžãããšãã§ããã§ãããã ãããã äžã€ã ãã ãããŠã1ã€ã®ãã©ãããã©ãŒã ã®äžã ããããããžãã¹ãšããŠã¹ãŒããŒã¡ã¬æ©èœãå¿ èŠãªãå Žåã¯ã©ããªããŸããïŒ ç§ã¯ãã¹ãŠãè¿ éã«ãæ¯èŒç確å®ã«ããããŠå®äŸ¡ã«è¡ãå¿ èŠããããŸãã ãããŠãããã§ããã©ãã¿ãŒã«ã€ããŠèããŠã¿ãŸãããïŒ
ããšãã°ãç§ã¯ã¢ãã€ã«éçºè ã§ã¯ãããŸããããäžè¬çã«ãããã³ããšã³ããèªããã®ã¯æ®å¿µã§ãã ãŸããç¹å¥ãªç¥èããªããŠãã2ã€ã®ãã©ãããã©ãŒã çšã®ã¢ããªã±ãŒã·ã§ã³ãäœæããã¹ãã¢ã§ãªãªãŒã¹ããŸããã
æåŸã«ãFlutterãé«éUIãããã¿ã€ãã³ã°ã®ããŒã«ãšããŠæ±ã£ãŠã¿ãŸãããïŒ
ã¯ãã¹ãã©ãããã©ãŒã ãšãã¬ã³ãã«ã€ããŠå°ãã çµè«ãšããŠ
ãã©ãã¿ãŒã¯å®¹èµŠãªãå¢ããå¢ããŠããŸãã 圌ãšé¢ä¿ãç¯ãæ¹æ³ã¯ãã¿ããªã®ä»äºã§ãã ãã ããçŸåšã顧客æåã®ãµãŒãã¹ã®æ代ã§ã¯ãã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ãè¿ éã«äœæã§ããããšãããžãã¹ã®æåã®éµã§ãã ããã¯ããã©ãããã©ãŒã ãšããŠã®JavaScriptããããèªå€§åºåã«ãã£ãŠç€ºãããŠããŸãã ãã ããJSã«ã¯å€§ããªæ¬ ç¹ã1ã€ãããŸããèšèªã¯ãããŸããããã©ãããã©ãŒã ã¯ãããŸããã ã¯ã©ã€ã¢ã³ãã®ææ決å®ãå€ããããšãè€éã§å€§ããªãã·ã³ã«ãªããéåžžã«åºãç¥èãå¿ èŠã«ãªããŸãã ããã§ã¯ãWebPackãšReactNativeã®äž¡æ¹ãå®è¡ã§ããŸããWebãã¬ãŒã ã¯ãŒã¯ã®è±å¯ãã«ã€ããŠã®ãžã§ãŒã¯ã¯é·ãéååšããŠããŸããã
äžçã§ãã¹ãŠã®ãã©ãããã©ãŒã çšã®ã¢ããªã±ãŒã·ã§ã³ãç°¡åã«äœæãããã¹ãŠã®ããã€ã¹éã§ã³ãŒããæ倧éã«åå©çšããæ¹æ³ãããã°ããããåè ãšãªããŸãã ãããŠãææŠè ãããããã§ãã