Upgrade to Pro — share decks privately, control downloads, hide ads and more …

モバイルアプリを効率的に開発するクロスプラットフォーム開発という選択肢

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for shige0501 shige0501
February 22, 2020

 モバイルアプリを効率的に開発するクロスプラットフォーム開発という選択肢

Avatar for shige0501

shige0501

February 22, 2020
Tweet

More Decks by shige0501

Other Decks in Programming

Transcript

  1. 自己紹介 - 日本Androidの会 コミュニティ運営委員 中国支部長 - 全然活動できてない - 誰か引き継ぎしたい -

    Client Dev Japan 立ち上げ - クライアントの勉強会をやるコミュニティ - これからやっていこうとしてます - (新型コロナが出てきたので、進め方検討中) - 普段はAndroidアプリの開発エンジニアやってます - フルリモートワーク - 年に数回東京 / 大阪に出張してます
  2. 開発方法が複雑化 / 高度化 (覚えることが増えた) - Androidの場合 - Kotlin - Kotlin

    Coroutine - Android Jetpack - LiveData - DataBinding - Android KTX - 各種ライブラリの知識 - RxJava - etc …
  3. Flutter とはなにか? - 開発言語はDart - DartもGoogleが開発している言語 - GitHub上で2019年最も成長の早い言語 - https://japan.zdnet.com/article/35145190/

    - CやJavaに近い - Kotlinに慣れていると、SmartCastがなかったり、;(セミコロン) の記述が必要だったりと、書き方が古く感じてしまう - 今後の進化に期待
  4. Flutterだとなにが嬉しいのか? - Hot Reload - コードの変更をおこなっても、Flutter Hot Reloadを実行すれ ば大抵の場合はすぐに反映される -

    洗練されたUIで、プラットフォーム間のUI / UXを共通化 - Material Design - 高パフォーマンスの実現 - C++で書かれたSkiaというミドルウェアの恩恵
  5. これまであったクロスプラットフォーム開発との比較 - Xamarin - C# - ホットリロードできない - Unity -

    C# - ゲーム向け - ハイスペックを求めていて、消費電力も大きい
  6. これまであったクロスプラットフォーム開発との比較 - Kotlin Multi Platform - Kotlin - iOS /

    Android / Server の実装をKotlinで統一することができ る - FlutterのようにWebやデスクトップアプリの実装まではまだ踏 み込んでいない - 今後の注目株
  7. Flutterはマルチプラットフォーム開発ができる - Android / iOS以外に、Webと Desktop (Windows / macOS) もサ

    ポート - https://jp.techcrunch.com/2019/05/09/2019-05-07-googles- flutter-framework-spreads-its-wings-and-goes-multi-platfor m/
  8. 何をするアプリなのか? - 個人アプリ - Togglとは? - 作業記録アプリ - 日々の実施した作業を記録 -

    やりたいこと - 日々の実施した作業を日報としてまとめて、Chatworkの指定 した部屋に投稿する
  9. 実際に触ってみた感触 - 難しい - UIの実装方法が少々特殊 - UIの組み方が独特なので、まずはそこを乗り越えないと いけない - iOSやAndroidのUIの組み方とちょっと違う

    - iOS ….. Storyboard - Android ….. Layout EditorやXMLでのレイアウト定 義 - レイアウトやStoryboardに慣れているととっつきにくく感じ る。
  10. 実際に触ってみた感触 - 実際に企業のプロダクションとして使えるのか? - 厳しい - エンジニア不足 - Flutterが書けるエンジニアがまだまだいない -

    できたコードのメンテをできる人不足 - けど、条件付きで採用あり - スピード実装したいスタートアップ - アプリの要件がシンプルなもの - プラットフォーム特有な機能を組み込む場合は少々つら い
  11. 何を見て学ぶと良いか? 1. Flutterの効率良い学び方 a. https://medium.com/flutter-jp/flutter-learning-c5640c5f05b9 ?source=collection_category---4------1----------------------- b. momoさんのサイト。国内でFlutterの詳しさはトップクラスだと 思う 2.

    Flutterの公式サイト a. 一番情報が豊富。上記と合わせてこちらから b. https://flutter.dev/ 3. 書籍 a. Flutter モバイルアプリ開発バイブル b. 基礎から学ぶFlutter
  12. まとめ - Flutterを覚えて帰ってください - Android / iOS 両方のアプリが作れる - スタートアップの間で注目されている

    - Webやデスクトップアプリの開発も可能になるので、定着する と開発の選択肢として広がるかもしれない - もちろん丁寧に作り込むならプラットフォーム個別の開発も選択肢 に - 長期的に運用していくアプリであれば、プラットフォーム毎に近 い環境を選ぶほうがプラス - アプリのライフサイクルがどれぐらいかで見極めて