Flutter 1.0 Release 最前線レポート

Yukihiro Murata
FiNC Tech Blog
Published in
8 min readDec 10, 2018

- Flutter Meetup Tokyo#6 @ FiNC Technologies 開催報告 -

FiNC Technologiesに10月からJoinしました、エンジニアインターンのMuratanです。

先日 2018/12/06、Flutter Meetup Tokyo#6がFiNC Technologiesにて開催されました。

(前回Flutter Meetup Tokyoの記事はこちら)

ちょうどMeetup開催の2日前である2018/12/04、GoogleがFlutter 1.0をリリースしたことを発表し、盛り上がりを見せるFlutter界。

今回の記事では現地からの速報レポートをお届けします!

0. Sponsor’s Talk by Yuki Nanri

オープニングのスピーチでは、FiNC Technologiesの南里より、 Flutter1.0で発表された機能や、FiNCでFlutterを技術選定するための障壁と可能性についての説明がありました。

具体的には、既存アプリへのリスクを最小限に(Flutter Module)しながら、Flutterを導入する方法や、社内外の新規サービスなどに関しても利用できないか可能性を探っています。
またiOSのプラットフォームの制約上、中長期的に問題ないかどうか議論が進んでいます。

Flutter1.0では、主に以下の機能が拡張され、FiNC Technologiesにおいて導入の可能性を言及していました。

- iOSサポートの強化
- 新たなFirebaseサービスの追加
- Flutterアプリサイズの最適化
- 既存アプリへのFlutter Moduleの導入
- Platform Views
- Mobileを超えた機能(Hummingbird, Desktop App)

数々のクロスプラットフォームが話題になってきましたが、Flutterが今後浸透していくのでしょうか?
今後のFlutter Communityの動きに注目です。

1. Flutterでチャット機能を作る上で考えたこと by shogo.yamada

Flutterについて議論できるプラットフォームを自分で作りたいと、FlutterとFirebaseでチャット機能を実装。特にバックエンドに関しては、Firebaseのサービスを数多く利用し、チャット機能サービスに付随するバックエンド側を作られているのが印象的でした。これがmBaaSか!と思いました。

2. Flutter with Redux -REQUの場合 by kitoko552

REQUでは、アプリをFlutterで書いており、アーキテクチャに関しては、データフローを単一方向に行うReduxを利用しているようです。
通常のReduxと異なる部分としては、ユーザーのインプットに関して処理を行う部分はViewModelを介している部分です。
Flutterに関しては、BLoCなど新たなアーキテクチャも出てきているので、引き続き追っていきたい部分です。

3. Flutterでチュートリアル画面を作ろう by Karmactonics

Flutterでチュートリアル画面を作った話をして頂きました。
SharedPreferenceによって、チュートリアルの表示条件を出し分けしており、ユーザーの利用状況に応じての出し分けを行なっています。
ソースコードも公開して頂いております!

4. IntelliJ IDEAのFlutter Live Previewおためし会
by BannoTakuya/NanoNano

このLTでは、IntelliJを利用して、ライブプレビュー機能の実用性の検証を行なって頂きました。
単純なWidgetの構成の場合、問題なくプレビューが表示されますが、少し複雑な場合レンダリングに失敗するなど、まだまだ改善が必要な状況であるようです。

5. Heroウィジェットでおしゃれに画面遷移をする by rykgy

FlutterのHero Animationsを用いることで、画面間のWidgetをシームレスにアニメーションさせる試みを発表して頂きました。押したボタンのアイコンがそのまま移っていくようなアクションは、確かに分かりやすい!

(※こちら資料ございましたらご連絡頂けると幸いです)

6. Flutterをスマートウォッチで動かしてみた by taikichi

このLTでは、Flutterをスマートウォッチで動かせるのか?という新しいチャレンジを行なっています。
もちろんFlutter公式でもサポートしていませんが、Flutterのセンサープラグインを利用し、スマートウォッチのセンサーデータの取得とUI実装まで問題なく動いておりました!!ますますFlutterの可能性を感じますね!

7. Flutter lifecycle ハンドリング by cch-robo

このLTでは、Flutterにおいてのアプリケーションと画面のライフサイクルに関して言及しています。特に画面ごとのライフサイクルのハンドリングに関して、具体的なソースコードを例に教えて頂きました。

8. Flutterアプリの難読化とエラーレポート(iOS) by macs_6

このLTでは、リリース時に重要なソースの難読化に関してお話頂きました。
特にiOSにおいての難読化をメインに話して頂きました。
iOSでは、Dartのソースが難読化の対象であり、その際の設定ファイルの書き方、またmapファイルに関しての知識を共有して頂きました。

9. Flutterどころか、モバイルアプリ開発をしたことない私がFlutter技術書を書いてみたお話 by ShoShimohata

このLTでは、モバイルアプリ未経験の方がどのように、勉強して技術書典に本を出すに至ったまでのエピソードに関してお話し頂きました。
本業がアプリ開発ではない方がFlutterアプリを作って登壇してくださっている機会が増えてきたように思います!!

終了後は懇親会。登壇者を中心に熱くネットワーキングが行われる中、飛び込みLTがなんと3つも!

最後の登壇者は、「Flutterは結構何でもできるので、ぜひ早くやってみてください!」と締めくくられていました。

これからますます盛り上がりを見せていくFlutter、要注目です!

iOS/Androidエンジニア募集中!!

最後になりますが、株式会社FiNC Technologiesのクライアントエンジニアは、大規模アプリケーションを効率よく開発するために様々な技術領域にチャレンジしています。

ご興味がある方はぜひこちらからご応募下さい!!

--

--

Yukihiro Murata
FiNC Tech Blog

東京大学教養学部4年。シンガポール国立大留学を経て、現在社会経済学専攻。