GoogleããŒã ã¯ã2020幎第3ååæã®Flutteréçºè 調æ»çµæããªãªãŒã¹ããŸãããã³ã¡ã³ãä»ãã®è³æã®ç¿»èš³ãå ¬éããŠããŸãã
ãã®èšäºã¯ãFlutter UX Research TeamïŒFlutter UXRïŒïŒJayeon LeeãYoyoyang HouãJack KimãTao DongïŒã«ãã£ãŠäœæãããŸããã
2020幎8æãFlutterããŒã ã¯ç¬¬10åååæéçºè 調æ»ãéå§ããŸããã 10æ¥éã§ãäžçäžã®7,668人ã®Flutteréçºè ãåæ ŒããŸããããããããçŽ7.4åãããŠåçããŸãããåèšã§39ã4æ¥ã§ããããã£ãŒãããã¯ããå¯ãããã ãããããšãããããŸããçµæãå ±æããããšæããŸãã
ãã€ãã®ããã«ãããŸããŸãªFlutterã³ã³ããŒãã³ãã«å¯Ÿããæºè¶³åºŠã«ã€ããŠè³ªåããŸãããããã«ããã®ååæã¯ãFlutter for webãsliversïŒè€éãªã¹ã¯ããŒã«å¹æãäœæããããã®ãŠã£ãžã§ããïŒããã©ãããã©ãŒã åºæã®åé¡ã®ãããã°ãªã©ã®æ°ãããããã¯ã«é¢ãããã£ãŒãããã¯ãæ¢ããŠããŸããããã®èšäºã§ã¯ãåãããã¯ã詳ããèŠãŠãããŸãã
èŠçŽããŒã¿
- åçè
ã®94ïŒ
ãFlutterãã¬ãŒã ã¯ãŒã¯å
šè¬ã«æºè¶³ããŠããïŒPSAT-è¯å®çã«æºè¶³ïŒã58ïŒ
ãéåžžã«æºè¶³ããŠããŸãïŒVSAT-éåžžã«æºè¶³ïŒãPSATã®ã·ã§ã¢ã¯å€ãã£ãŠããŸããããVSATã®å²åã¯çå®ã«å¢å ããŠããŸãã
- ããã®éçºè
ã®ã·ã§ã¢ã¯26ïŒ
ãã31ïŒ
ã«å¢å ããŸãããäžçŽãŠãŒã¶ãŒã®å²åãå¢ããŠããŸãã
- , 3 Flutter for web, 59% . 71% Flutter , -UI.
- , , 79% . (36%) , .
- 71% , . (32%), (28%) (28%).
ãã®ååæãFlutterã«éåžžã«æºè¶³ããŠãããŠãŒã¶ãŒã®å²åã¯é廿é«ã®58ïŒ ã«éããŸãããå šäœãšããŠãFlutterãŠãŒã¶ãŒã¯ãã³ãã¥ããã£ã®æ¥æ¿ãªæé·ã«ããããããã補åïŒ94ïŒ ïŒã«äŸç¶ãšããŠæºè¶³ããŠããŸããæ¬¡ã®ã°ã©ãã¯ãFlutterã®æºè¶³åºŠãæéã®çµéãšãšãã«ã©ã®ããã«å€åãããã瀺ããŠããŸãã
ãŠãŒã¶ãŒã®58ïŒ ãããFlutterå šè¬ã«ã©ã®çšåºŠæºè¶³ããŠããŸããããšãã質åã«ãéåžžã«æºè¶³ããšåçããŸããã
ç§ãã¡ã®ãŠãŒã¶ãŒããŒã¹ã¯ãããã€ãã®éèŠãªå€æŽãåããŸããããŸããFlutterãã¬ãŒã ã¯ãŒã¯ã®äŒæ¥ãŠãŒã¶ãŒã®å²åã¯ç¬¬1ååæãšç¬¬2ååæã®26ïŒ ãã31ïŒ ã«å€§å¹ ã«å¢å ããŸããããæ°èäŒæ¥ã®éçºè ã®å²åã¯äŸç¶ãšããŠçŽ35ïŒ ã§ãã
FlutterãŠãŒã¶ãŒã®å€§å€æ°ãã¹ã¿ãŒãã¢ããã§åããŠãããšããäºå®ã«ãããããããäŒæ¥éçºè ã®å²åã¯26ïŒ ãã31ïŒ ã«å€§å¹ ã«å¢å ããŠããŸãã
, Flutter . Surf : .
â , .
, , . , Android iOS, â . , , .
ããã«ãFlutterã®äœ¿çšçµéšã®äž»èгçãªè©äŸ¡ã¯ããŠãŒã¶ãŒããŒã¹ã§å€§å¹ ã«å€æŽãããŸãããæ¬¡ã®ã°ã©ããããããããã«ãåå¿è ãŠãŒã¶ãŒã®å²åã¯åŸã ã«æžå°ããäžçŽãŠãŒã¶ãŒã®å²åã¯åŸã ã«å¢å ããŠããŸããããã¯ãç§ãã¡ã®ã³ãã¥ããã£ã«ã¯ãåå¿è ãšç¥èãå ±æã§ããçµéšè±å¯ãªãŠãŒã¶ãŒãããããšãæå³ããŸããäœããåŠãã ãç¥èãå ±æãããããããšã«èå³ãããå Žåã¯ãä»ã®Flutteréçºè ãšã®ãªã³ã©ã€ã³ãã£ã¹ã«ãã·ã§ã³ã«åå ã§ããŸããè¡ã[ã³ãã¥ããã£]ã¿ãflutter.devã«ã
äžçŽãŠãŒã¶ãŒã®ã·ã§ã¢ã¯çå®ã«äŒžã³ãŠããŸã
. , Flutter-. , «» - . Flutter- . , , , .
, pro-. .
, . HR-. Flutter-, software-. , .
Flutter for Web
Flutterã¯ãå®å®ããããŒãžã§ã³ã§ã®ã¢ãã€ã«éçºã®ãµããŒãã«å ããŠãããŒã¿çã®WebéçºããµããŒãããŠããŸããä»åã¯ãæåã®FlutterãŠãŒã¶ãŒã«ãæåã«äœã«åãçµãã¹ãããçè§£ããããã«ãWebã¢ããªã±ãŒã·ã§ã³ãã¯ãŒã¯ãããŒãããã³ããã¥ã¡ã³ãã®ããã©ãŒãã³ã¹ãå€èŠ³ãæ©èœã«é¢ããŠã©ã®ãããªåé¡ããã£ãããæ£ç¢ºã«æããŠããããŸããã
調æ»ã®åå è ã¯ãFlutterãåºç¯å²ã«äœ¿çšããŠWebã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããŸãããæ¬¡ã®ã°ã©ãã®3è¡ç®ã«ãããšãçŽ33ïŒ ããåçšWebã¢ããªã±ãŒã·ã§ã³ã§Flutterãè©äŸ¡ããïŒ15ïŒ ïŒãããã䜿çšããŠã¢ããªã±ãŒã·ã§ã³ã®ãã¢ããŒãžã§ã³ãäœæããïŒ11ïŒ ïŒããŸãã¯åçšã¢ããªã±ãŒã·ã§ã³ããªãªãŒã¹ããïŒ7ïŒ ïŒãšå ±åããŸããã
ãŠãŒã¶ãŒã®33ïŒ ïŒ4449人äž1468人ïŒããåçšWebã¢ããªã±ãŒã·ã§ã³ã§Flutterãè©äŸ¡ããïŒ15ïŒ ïŒãããã䜿çšããŠã¢ããªã±ãŒã·ã§ã³ã®ãã¢ããŒãžã§ã³ãäœæããïŒ11ïŒ ïŒããŸãã¯åçšã¢ããªã±ãŒã·ã§ã³ããªãªãŒã¹ããïŒ7ïŒ ïŒãšå ±åããŸããã
ç¹ã«ãã¢ãã€ã«éçºãšWebéçºã®äž¡æ¹ã®çµéšãæã€ãŠãŒã¶ãŒã®29.5ïŒ ããéå»3ãæéïŒæœåšçãªåæ¥ç®çã§ïŒFlutter forWebãããçå£ã«äœ¿çšããŠããŸããå²åã¯ããã©ãããã©ãŒã ã«é¢ãã以åã®éçºè ã®çµéšã«åºã¥ããŠç°ãªããŸããæããã«ã以åã¯Webéçºã®ã¿ã«åŸäºããŠããåçè ã¯ä»£æ¿Webãã¬ãŒã ã¯ãŒã¯ãšããŠFlutterã䜿çšããŸããïŒ22ïŒ ã¯æœåšçãªåæ¥ç®çã§Flutter for Webã䜿çšããŸããïŒãã以åã¯ã¢ãã€ã«éçºã®ã¿ã«åŸäºããŠããåçè ã¯çµ±åã®ããã«Flutter forWebãç©æ¥µçã«äœ¿çšããŸããWebéçºããïŒ16ïŒ ãFlutter for Webã䜿çšïŒã
éå»3ãæéã«Webäžã§Flutterã忥çã«äœ¿çšãããŠãŒã¶ãŒã®å²åã¯ãã¢ãã€ã«ããã³Webãã©ãããã©ãŒã ã§ã®ä»¥åã®çµéšã«åºã¥ããŠç°ãªããŸãã
ãŸããFlutter WebããŒã ã¯ãWebã¢ããªã±ãŒã·ã§ã³ã®ã«ãã¯ã¢ã³ããã£ãŒã«ã«é¢é£ããããŸããŸãªåé¡ã«é¢ãããã£ãŒãããã¯ãåéããŸããããŸããæãéèŠãªèª¿æ»åå è ã¯ããã©ãŠã¶ã®ããã²ãŒã·ã§ã³ãšããŒãžå±¥æŽïŒ55ïŒ ïŒãéžæããããã¹ãã®ã³ããŒ/貌ãä»ãïŒ34ïŒ ïŒãã¹ã¯ããŒã«ç©çåŠïŒ33ïŒ ïŒãããã³ããã¹ãã®åŒ·èª¿è¡šç€ºïŒ32ïŒ ïŒãèæ ®ããŠããããšãåŠã³ãŸãããåçè ã¯ãŸããããŒãžããã²ãŒã·ã§ã³ãšã¢ãã€ã«ã¬ã€ã¢ãŠãã®Webãžã®é©å¿ã«é¢ããããè¯ãããã¥ã¡ã³ããæ±ããŸããã
Flutter for Web . , Flutter Team web. FlutterDevPodcast Flutter for Web , , . , UX, . CEO .
ãŠãŒã¶ãŒã«ãããšãããã©ãŠã¶ããã²ãŒã·ã§ã³ãšããŒãžããã²ãŒã·ã§ã³ãã¯ãFlutterã䜿çšããŠWebã€ã³ã¿ãŒãã§ã€ã¹ãæ§ç¯ããéã®æãéèŠãªæ©èœã§ãã
FlutterããŒã ã¯éçºè ã®ãã£ãŒãããã¯ãèæ ®ã«å ¥ããç©æ¥µçã«æ¹åã«åãçµãã§ããŸããããã²ãŒã·ã§ã³ãšããŒãžããã²ãŒã·ã§ã³ã«é¢é£ããäž»ãªãŠãŒã¶ãŒã®åé¡ã«å¯ŸåŠããããã«ãããŒã ã¯æè¿Navigator2ããªãªãŒã¹ããŸããããŸããéžæããããã¹ãã®ã³ããŒ/貌ãä»ãã®ãµããŒãã远å ããéžæããããã¹ãïŒç¹ã«ãªããããã¹ãïŒã®æ©èœãæ¹åããäºå®ã§ããç§ãã¡ã¯ãã³ãã¥ããã£ã®åé¡ã«åºã¥ããŠãã¹ã¯ããŒã«ã®ç©çåŠãšããã©ãŒãã³ã¹ã®åé¡ã«åãçµãã§ããŸãã
æåŸã«ãç§ãã¡ã®ããŒã ã¯ãã¯ãŒã¯ãããŒãããã©ãŒãã³ã¹ãããã³ãµãŒãããŒãã£ã®APIã«é¢ãããã£ãŒãããã¯ãåãåããŸãããåçè ã«ãããšããã¹ãŠã®äž»èŠãªã¯ãŒã¯ãããŒã®äžã§ãæãå°é£ãªã®ã¯ãããã°ã§ãããããŒãžã®èªã¿èŸŒã¿é床ãšã¹ã¯ããŒã«ã¯ãåçè ãæãé »ç¹ã«ããã©ãŒãã³ã¹ã®åé¡ã«ééããåŽé¢ã§ãã調æ»ã®åå è ã¯ãããŒã«ã«ã¹ãã¬ãŒãžïŒSQLiteãªã©ïŒãFirebaseã¹ãã¬ãŒãžãFlutter forWebçšã®Googleãããã®ãµããŒãã匷åããããæ±ããŸãããFlutter for Webã®éçºã«äŒŽããç§ãã¡ã®ããŒã ã¯ãããã®åŽé¢ã®æ¹åã«åãçµã¿ãŸãã
解説
ãã¡ãããFlutter forWebãå®ç§ã«ããããšã®é¡æã¯ç§°è³ã«å€ããŸãããã¬ãŒã ã¯ãŒã¯ã¯ãåŸæ¥ã®ç«¶åä»ç€Ÿã®æ¬æ Œçãªä»£æ¿åã«ãªãæºåãã§ããŠããŸããïŒç§ã®æèŠã¯æçœã§ãïŒããããæ¹åãšæ¹åã«ã¯ãŸã é·ãéã®ãããããŸãã
ã¹ã©ã€ããŒ
SliverãŠã£ãžã§ããïŒSliverAppBarãSliverListãªã©ã®ãSliverãã§å§ãŸããŠã£ãžã§ããïŒã¯ãè€éãªã¹ã¯ããŒã«å¹æãäœæããããã«äœ¿çšãããŸããå€ãã®ã¹ã¯ããŒã«å¹æã¯ãListViewãGridViewãPageViewãAnimatedListãªã©ã®ãŠã£ãžã§ããã䜿çšããŠå®è£ ã§ããŸãããã¹ã©ã€ããŒãŠã£ãžã§ããã¯ãã¹ã¯ããŒã«ãã¥ãŒãã«ã¹ã¿ãã€ãºããUIãããçŸããããã®ã«åœ¹ç«ã¡ãŸãã
ãã®ãããªè€éãªã¹ã¯ããŒã«å¹æã¯ãã¹ã©ã€ããŒãŠã£ãžã§ããã䜿çšããŠå®è£ ã§ããŸãã
ãã©ãã¿ãŒããŒã ã¯ãã¹ã©ã€ããŒã®ãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«ã€ããŠããŸããŸãªã¹ããŒãªãŒãåŠã³ãŸãããã¢ããªã±ãŒã·ã§ã³ã§ã¹ã©ã€ããŒã䜿çšããªãã£ããšèšã人ãããã°ãããŸããŸãªå¹æãå®è£ ããããã«ããå€ãã®ã¹ã©ã€ãµãŒãå¿ èŠã ãšèšã人ãããŸãããä»ååæãç§ãã¡ã®ããŒã ã¯ãFlutterãŠãŒã¶ãŒãã¹ãªãããã©ã®ããã«äœ¿çšããããããããçè§£ããããã«èª¿æ»ãæŽæ°ããããšã決å®ããŸããã
ç§ãã¡ãæåã«åŠãã ããšã¯ã調æ»åå è ã®å€§å€æ°ïŒ49ïŒ ïŒãåçŽãªã¹ã¯ããŒã«å¹æãåããUIãèšèšããŠãããšããããšã§ãããè€éãªå¹æãæã€UIã¯39ïŒ éçºãããŠããŸãã ïŒèª¿æ»ã§ã¯ãåçŽãªã¹ã¯ããŒã«å¹æãšè€éãªã¹ã¯ããŒã«å¹æã®äŸã瀺ãããŸãããïŒè€éãªå¹æãå¿ èŠãªäººã®78ïŒ ã¯ãç®çã®å¹æãéæããããã«ã¹ã©ã€ããŒãå¿ èŠã§ãããšè¿°ã¹ãŸããã
åçŽãªã¹ã¯ããŒã«å¹æã®ããUIã¯ãè€éãªå¹æã®ããUIïŒ39ïŒ ïŒãããå€ãã®ãŠãŒã¶ãŒïŒ49ïŒ ïŒã«ãã£ãŠéçºãããŠããŸãã
ã¹ã©ã€ããŒãå¿ èŠãªãŠãŒã¶ãŒã®20ïŒ ã¯ãã¹ã©ã€ããŒã詊ããããšããªããšçããŠããŸããããã«è峿·±ãã®ã¯ãã¹ãªããã䜿çšããããšã®ãããŠãŒã¶ãŒã®35ïŒ ãåé¡ããããšå ±åããããšã§ããæå€§ã®èª²é¡ã¯äœããšå°ãããšãæ€çŽ¢ãæåã«ã©ã³ã¯ä»ãããïŒ36ïŒ ïŒãæ¬¡ã«æ¢çŽ¢ïŒ30ïŒ ïŒãæåŸã«äœ¿ããããïŒ19ïŒ ïŒãç¶ããŸããã
æ€çŽ¢ã¯ã¹ã©ã€ããŒãŠãŒã¶ãŒã«ãšã£ãŠæãé »ç¹ãªåé¡ã§ããããšã倿ãããŠã£ãžã§ãããšãã®äœ¿ããããã®åŠç¿ã«é¢ããå ±åãããåé¡ã¯å°ãªã
ãªããŸããããããã®åé¡ããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ã«åœ±é¿ãäžããããªããããflutter.devãæŽæ°ããŠãã¹ã©ã€ããŒãŠã£ãžã§ãããèŠã€ããŠå¯Ÿå¿ãããã®ãç°¡åã«èª¿æ»ã§ããããã«ããäºå®ã§ããæ å ±ã Flutterã«ãªãæ°ããã¹ã©ã€ããŒãæ¢ããŠããå Žåã¯ãsliver_toolsãsticky_headersãªã©ã®ã³ãã¥ããã£ã§éçºããããœãããŠã§ã¢ããã±ãŒãžã詊ããŠãã ããã Flutterã³ãã¥ããã£ãããã®åéã§ã®ããªãã®æèŠãæè¿ããŸãã
ãŸããã¹ã©ã€ããŒã«ãŸã 粟éããŠããããã¹ã©ã€ããŒã«ã€ããŠè©³ããç¥ãããå Žåã¯ã次ã®ãªãœãŒã¹ãæäŸããŸãã
ã¹ã©ã€ããŒãè¬è§£ãïŒå°ããªèšäºïŒ
ã¹ã©ã€ããŒã®èª¬æ-åçãªã¬ã€ã¢ãŠãã®äœæïŒYouTubeã®ãTheBoring Flutter Development ShowãããšããœãŒã12ïŒ
ã³ã¡ã³ã
Sliver-å€ãã®Flutteréçºè ã«ãšã£ãŠã®ã€ãŸããã圌ãã¯æããŠããŠçè§£ãããŠããŸããããããããã®çç±ã¯ãã³ã³ããŒãã³ããæäœããããã®æãééçãªAPIãšããŠã£ãžã§ããã®ããªãããŒãªãã¹ãã§ã¯ãããŸãããCustomScrollViewãSliverListãSliverChildBuilderDelegate-å šäœåãæ§ç¯ããäžã§ãããã®åã³ã³ããŒãã³ããã©ã®ãããªåœ¹å²ãæãããŠããããçè§£ãããŸã§ã¯ãçµéšè±å¯ãªã€ãªã¥ãŒãžã§ãã¹ãã®ããªãã¯ãè§£æããããšããŠããããã§ããå®éãã¹ã©ã€ããŒãšåæ§ã®ã¡ã«ããºã ããç§ãFlutterãæããäž»ãªçç±ã®1ã€ã§ããè€éãªããšãããã ãã®èœåã¯ãå€ãã®äŸ¡å€ããããŸãã
ãã©ãããã©ãŒã åºæã®åé¡ã®ãããã°
åœç€Ÿã§ã¯åå調æ»ãæã ã¯ãã®èŠã€ãã£ããã©ãããã©ãŒã éã§ãã©ãããã©ãŒã åºæã®ãã©ãã«ã·ã¥ãŒãã£ã³ã°ãã¢ããªã±ãŒã·ã§ã³ã®ãã¹ãããã©ãã¿éçºè ã«ãšã£ãŠæãå°é£ãªèª²é¡ã§ããç¹å®ã®ãã©ãããã©ãŒã ã«åºæã®ãšã©ãŒãçºçããŸããããã©ã®åé¡ãããåªå ãããŠãããããããã¯ããšã«ã°ã«ãŒãã«ã°ã«ãŒãåã§ãããã©ããã¯ããããŸããã§ããããããã°ãšãã¹ããæ¬åœã«é£ããçç±ãçè§£ããããã«ããŠãŒã¶ãŒãçŽé¢ããŠããåé¡ã®çš®é¡ãå°ããŸããã
ãŸãããŠãŒã¶ãŒããããã°ãããã©ãããã©ãŒã åºæã®åé¡ãå°ããŸããããã®çµæãã»ãšãã©ã®å Žåã ããŒã«ã®åé¡ïŒ32ïŒ ïŒãããŸããŸãªãã©ãããã©ãŒã ã§ã®èŠèŠçãªéãïŒ28ïŒ ïŒãäŸåé¢ä¿ã®ç®¡çïŒ28ïŒ ïŒãããŸããŸãªãã©ãããã©ãŒã ã§ã®æ©èœã®éãïŒ27ïŒ ïŒãããŸããŸãªãã©ãããã©ãŒã ã§ã®ãã©ã°ã€ã³ã®æ©èœã®éãïŒ26ïŒ ïŒããŸãããã€ãã£ãæ©èœãæ¬ èœããŠããããšããããããŸãïŒ25ïŒ ïŒã
解説
æè¿ãMetalãç¡å¹ã«ããFlutterEngineã®ã«ã¹ã¿ã ãã«ããGitHubã«ç»å ŽããŸãããããããªããšãiOSçšã«æ§ç¯ãããã¢ããªã±ãŒã·ã§ã³ãã¯ããã«ã¹ã ãŒãºã«åäœããããšãããããŸããããã®ãããªæ¬åœã«åä»ãªãã©ãããã©ãŒã ã®åé¡ã«ééããããšã¯ãã£ãã«ãããŸãããããã«ãããããããããªãã¯åžžã«ãããã®æºåãã§ããŠããå¿ èŠããããŸããå®å šã«æŠè£ ããã«ã¯ããµããŒããããŠãããã©ââãããã©ãŒã ã®åºæ¬ãæ·±ãæãäžããã ãã§åœ¹ç«ã¡ãŸãã
æãäžè¬çãªãã©ãããã©ãŒã åºæã®åé¡ã«ã¯ãããŒã«ã®åé¡ãèŠèŠçãªéããäŸåé¢ä¿ã®ç®¡çã®åé¡ãå«ãŸããŸãã
調æ»ã®åå è ã¯ããããã°ããååé¡ã®é倧床ãšè€éããè©äŸ¡ããŸãããæãéèŠãªãããã°ã®åé¡ã¯ããã€ãã£ãæ©èœã®æ¬ åŠãããã©ãŒãã³ã¹ã®éããããã©ãŒãã³ã¹ã®éãããã©ã°ã€ã³æ©èœã®éããããã³ãªãªãŒã¹ã®åé¡ã§ãããããã°ã§æãé£ããåé¡ã¯ããã€ãã£ãæ©èœã®æ¬ åŠãç¹å®ã®ããã€ã¹ã®åé¡ãããã©ãŒãã³ã¹ã®éããäŸåé¢ä¿ã®ç®¡çãšããŒã«ã§ãã
å³ã®æ³šïŒå·Šããå³ãžïŒïŒé£æåºŠ-é£æåºŠããã¹ãã®åé¡-ãã¹ãã®åé¡ãèŠèŠçãªéã-èŠèŠçãªéããéèŠæ§-éèŠæ§ãããã€ã¹åºæã®åé¡-ç¹å®ã®ããã€ã¹ã«åºæã®åé¡ãäŸåé¢ä¿ç®¡çã®åé¡-äŸåé¢ä¿ç®¡çã®åé¡ããªãªãŒã¹ã®åé¡-ãªãªãŒã¹ã®åé¡ãããŒã«ã®åé¡-ããŒã«ã®åé¡ãåäœã®éã-æ©èœã®éãããã€ãã£ãæ©èœã®æ¬ åŠ-ãã€ãã£ãããŒã«ã®æ¬ åŠããã©ã°ã€ã³ã®åäœã®éã-ãã©ã°ã€ã³ã®æ©èœã®éããããã©ãŒãã³ã¹ã®äžäžèŽ-ããã©ãŒãã³ã¹ã®éãã
ãã©ãããã©ãŒã åºæã®åé¡ã®éèŠæ§ãšè€éããã°ã©ãã®ããã³ããªã«ãã¯ã95ïŒ ã®ä¿¡é Œåºéã瀺ããŠããŸã
è€æ°ã®ãã©ãããã©ãŒã ã§ã¢ããªã±ãŒã·ã§ã³ããã¹ãããå Žåãåçè ã®85ïŒ ãããããéåžžã«ãŸãã¯éåžžã«éèŠã§ãããšè¿°ã¹ãŸããããããã調æ»å¯Ÿè±¡è ã®27ïŒ ã«ãšã£ãŠãããã¯éåžžã«ãŸãã¯éåžžã«å°é£ã§ããããšã倿ããŸããããããã£ãŠãè€æ°ã®ãã©ãããã©ãŒã ã§ã¢ããªã±ãŒã·ã§ã³ããã¹ãããããšã¯éèŠã§ãããã»ãšãã©ã®éçºè ã«ãšã£ãŠã¯ããã»ã©é£ãããããŸããã質åã«å¯Ÿãã詳现ãªåçãããiOSïŒç¹ã«Windowséçºè ïŒã®ãã¹ããè€æ°ã®ç»é¢ãµã€ãºã®ãã¹ããããã³è€æ°ã®ç©çããã€ã¹ã§ã®ãã¹ãã§æãäžè¬çãªãã¹ãã®åé¡ãçºçããããšãããããŸããã
次ã®ååæã§ã¯ãç§ãã¡ã®ããŒã ã¯ããå€ãã®æéãè²»ããããã°ãå€§å¹ ã«æžãããããŒã«ãäŸåé¢ä¿ã®ç®¡çãããã³ãªãªãŒã¹ã«é¢é£ããäž»èŠãªåé¡ã解決ããŸãããŸãããããã®ãããã¯ã«é¢ããããã¥ã¡ã³ããåŒãç¶ãæ¹åããŠãããŸããããšãã°ããŠãŒã¶ãŒãiOSã¢ããªããã¹ãããã®ã«åœ¹ç«ã€GitHubActionsãBitriseãªã©ã®CIããŒã«ã®ãŠãŒã¶ãŒããã¥ã¡ã³ããæ¹åããŸãã
ãªããžããªããã©ã€ããŒãã§ãªãéããGitHubã¢ã¯ã·ã§ã³ã®ã³ã¡ã³ãã¯åé¡ãããŸãããããããã¯ãmacOSçšã®ä»®æ³ãã·ã³ã§ãã«ãããããã®ç¡æã®ãã«ãæéã¯æã«ããã200åã«ãªããŸããFlutterãããžã§ã¯ãã«æé©ãªã¯ãŒã¯ãããŒã®èšå®ã«é¢ããç§ã®èšäºãèªãã§ãã ããã
次ã¯äœã§ãã
ããªãã®æèŠã¯ç§ãã¡ã®æ±ºå®ã«æ¯æ¥åœ±é¿ãäžããŸããç§ãã¡ã¯ãã®äŒçµ±ã«å¿ å®ã§ããç¶ããç§ãã¡ã®èª¿æ»ãžã®ããªãã®åçã«åºã¥ããŠæ±ºå®ãäžãç¶ããŸããåŒãç¶ããåå ããã ãããæèŠããèãããã ããããŸããFlutter UXç ç©¶ããŒã ã¯ãFlutterãšã¯ã¹ããªãšã³ã¹ãåäžãããããã«ãããŸããŸãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ïŒUXïŒèª¿æ»ã宿œããŠããŸããç ç©¶ã«åå ãããå Žåã¯ãç»é²ããŠãã ãããããªãã®ç«åè£ã¯å°æ¥ã®ç ç©¶ã§èæ ®ãããŸãã