SlideShare una empresa de Scribd logo
1 de 26
© 2020 NTT DATA Corporation
NTTデータ テクノロジーカンファレンス 2020
ひと漕ぎで二度おいしい!?
Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方
2020年10月16日
株式会社NTTデータ デジタル技術部 高見将則
2
© 2020 NTT DATA Corporation
自己紹介
• 高見将則
• デジタル技術部 Aglieプロフェッショナル担当
• デジタル技術を使った研究開発やプロジェクト支援に従事
• 認定スクラムマスター、認定プロダクトオーナー、AWS SAA
• フロントエンド・モバイルアプリ開発の研究開発のリードエンジニア
• iOS、Android、Flutter、React Native、React.js
• CI/CDパイプライン職人としてリリースサイクル高速化や開発者のDX改善が得意
• 以前はJava、PHPを使った案件のアーキテクチャ設計、AWS設計、EM業など
3
© 2020 NTT DATA Corporation
クロスプラットフォームとは?
• シングルソースで複数プラットフォームで動作するフレームワーク
• Flutter、React Native、Xamarin、Cordova、Ionicなど
• iOS、Android、Web、Windows、macOS、Linuxで動作する
• Google、Facebook、Microsoftなどがリードしている
4
© 2020 NTT DATA Corporation
クロスプラットフォームに関するR&Dの取り組み
• 2018年からFlutter・React Nativeの技術検証に着手
• 商用開発に向けた技術検証結果やサンプルコードを社内・G会社向けへ展開
• Flutter・React Nativeを使ったプロジェクトへの技術支援を実施
5
© 2020 NTT DATA Corporation
今日話すことと話さないこと
• 話すこと
• NTTデータにおけるFlutterを使ったモバイルアプリ開発の実績について
• Flutterを例にしたクロスプラットフォームに対する期待と実態の紹介
• Flutterの商用案件経験を踏まえて、クロスプラットフォームとどう付き合っていくべきなのか
• 話さないこと
• どのクロスプラットフォームがイケてるか?
• Flutterを使った最適なソフトウェアアーキテクチャや状態管理の話
• Webやデスクトップを含めたクロスプラットフォームの知見
© 2020 NTT DATA Corporation 6
Flutter x NTTデータ
7
© 2020 NTT DATA Corporation
Flutterとは?
• Google製のクロスプラットフォーム開発フレームワーク
• 2018年のGoogle I/Oにて正式発表、10/16時点の最新のstableは1.22.1
• iOS、Androidに続いてWeb、Linux、Windows、macOSに順次対応中
• 主な特徴
• 開発言語はDart
• Declarative UI(宣言的UI)
• プラグインによる機能拡張が可能
• OS固有のビューや実行コードの記述が可能
8
© 2020 NTT DATA Corporation
Flutter製の有名なスマートフォンアプリ
Flutter製の主要なGoogleプロダクト
• Stadia
• Google Ads
• Google Analytics
• Google Pay※1
2020年9月時点で100,000以上のアプリがGoogle Play Storeで公開中※2
※1. https://developers.googleblog.com/2020/09/google-pay-picks-flutter-to-drive-its.html
※2. https://medium.com/flutter/announcing-flutter-windows-alpha-33982cd0f433
9
© 2020 NTT DATA Corporation
NTTデータにおけるFlutter採用プロジェクトの実績
PoC、社内アプリ、企画型案件、商用案件を着実に遂行中
N1 Neuro AI審査員
オフショアを活用し低予算で両OSを短期間でリリース
Sakenomy
少数精鋭で両OSをサービス運営、Flutter for Webも利用中
某金融機関様 アプリリニューアル案件
約100画面のiOS・Androidアプリを半年でリプレース
お出かけ混雑マップ
リモートかつ1.5ヶ月の超短期間で両OSを商用リリース
https://www.nttdata.com/jp/ja/news/release/2020/061801-01/
https://sakenomy.jp
© 2020 NTT DATA Corporation 10
クロスプラットフォームに向けられる
期待と現実
11
© 2020 NTT DATA Corporation
クロスプラットフォームを使えば生産性が2倍!?
ワンコードでiOS・Androidが開発できる!
工数半減!!生産性2倍!!
ひと漕ぎで二度おいしい??
12
© 2020 NTT DATA Corporation
クロスプラットフォームで見込める生産性向上効果
OS共通部分をワンコードで書けるところが強み
• OS共通機能部分は共通化によって記述量が減り生産性向上が見込める
• OS別の機能はフレームワークでの対処がない場合は個別実装になる
13
© 2020 NTT DATA Corporation
実際のソースコードから見る共通化効果の実態
ビジネス要件によってはOS固有実装は避けられない
• 共通化の恩恵を得るにはiOS / Androidで共通のデザイン・機能が前提
• 実際はクロスプラットフォームのAPIで吸収しきれないOS差分実装は一定数ある
• 要件によってはOS固有実装の割合が増えるケースもある
• OS別デザイン差分
• WebView
• Push通知
• 位置情報
• Bluetooth
• NFC
• 音声・動画再生
• ファイルI/O
• OS別3rd Party SDK利用
…
14
© 2020 NTT DATA Corporation
【参考】実際のソースコードから見る共通化効果の実態
OS別による機能差分度合いで共通化効果が決まる
• A案件はOS差分はほぼなしでFlutterによる共通化に全振り
• B案件はビジネス要件上OS別SDKを利用しておりOS別実装の割合が多い
Flutter案件のソースコード
割合(LoC)
A案件 B案件
Flutter関連ソースコード 79.4% (4677) 59.1% (55963)
Android関連ソースコード 7.8% (459) 19.0% (18075)
iOS関連ソースコード 12.8% (751) 21.9% (20714)
15
© 2020 NTT DATA Corporation
クロスプラットフォームの恩恵を受けるための隠れたコスト
1. フレームワークのバージョンアップに追従し続ける
• Flutterのstableバージョンの更新は約3ヶ月に一回ペース
• 最新OS対応、バグ改修は最新版にのみ反映される
2. OS差分をなるべく減らすデザイン・機能であり続ける
• クロスプラットフォームの恩恵を得るためには共通化が前提
3. クロスプラットフォームを扱える開発者を抱え続ける
• 新規技術のため市場にも人材が不足がち
継続して安定開発し続けるために払うべきコストがある
16
© 2020 NTT DATA Corporation
トータルで見ると実態は1.x漕ぎで二度おいしい
ワンコードでiOS・Androidが開発できる!
工数半減!!生産性2倍!!
1.x 漕ぎで二度おいしい!
※ 0≦x<1で x はビジネス要件に依存
© 2020 NTT DATA Corporation 17
クロスプラットフォームと
どう付き合っていくべきか?
18
© 2020 NTT DATA Corporation
クロスプラットフォームの恩恵を受け続けるための工夫
1. フレームワークのバージョン追従コストを下げる
2. OS差分実装をなるべく少なくする
3. フレームワークが扱える開発者を戦略的に育成する
19
© 2020 NTT DATA Corporation
1.フレームワークのバージョン追従コストを下げる
• 自動テストの仕組みをCIパイプラインとして構築する
• フレームワークが持つ単体テスト・UIテストの仕組みをフル活用する
• 実機テスト・改修サイクルを短縮するためにCDパイプラインを構築する
• アプリ資材作成、資材配布を自動化する
• フレームワークが提供するAPIを中心に利用して野良プラグインは極力使わない
• メンテナンスされない野良プラグインはバージョンアップの足枷になる
20
© 2020 NTT DATA Corporation
2. OS差分実装をなるべく少なくする
• iOSとAndroidでなるべくデザインや機能を統一する
• Material Designに寄せてCupertino(iOS-Style)はなるべく使わない
• OS別の固有の実装を生む機能追加をなるべく控える
21
© 2020 NTT DATA Corporation
3.クロスプラットフォーム開発者を戦略的に育成する
• クロスプラットフォーム経験者は希少人材のため育成が前提
• 技術転換の素養のある開発者を公式チュートリアルやOJTで育成する
• iOSエンジニア・Androidエンジニア
• React.js・Vue.js ・Angular等の経験があるWebフロントエンドエンジニア
• フルスタック傾向のあるバックエンドエンジニア
• 新規技術の学習意欲の高いジュニアエンジニア
• デジタル技術部の社員・協働者内に40名以上のFlutter技術者を育成済み
© 2020 NTT DATA Corporation 22
まとめ
23
© 2020 NTT DATA Corporation
クロスプラットフォームとどう付き合うべきか?
• クロスプラットフォームを採用する前に
• ビジネス要件や開発体制などを考慮して個別実装よりも価値が見込めるか
• OSによる機能・デザイン差分が少なく共通化効果が見込めるか
• クロスプラットフォームとしばらく心中する覚悟を持てるか
• クロスプラットフォームを採用したら
• フレームワークのバージョンアップに追従し続ける
• OS差分をなるべく生まないようにデザイン・機能追加する
• フレームワークが扱える開発者を戦略的に育成する
24
© 2020 NTT DATA Corporation
まとめ
• クロスプラットフォームは銀の弾丸ではない
• 特定の条件下においてアジリティ高く開発する手段の一つ
• 継続的に恩恵を受け続けるには見えないコストを払う必要がある
• OS別に作るよりも生産性が高くなるかはビジネス要件次第
• 自身の置かれた状況から多角的に判断して最適な技術選択をすべき
© 2020 NTT DATA Corporation
26
© 2020 NTT DATA Corporation
【おまけ】万が一のときOS別実装にスムーズに戻せるか?
• いざという時にクロスプラットフォームを捨てる選択肢を考えておく
• メインデベロッパーのメガプレイヤーがメンテナンスを放棄した
• ビジネス上致命的な阻害要因となる実装不具合が解消できない
• クロスプラットフォームが扱える開発者が継続的に維持できなくなった
• クロスプラットフォーム↔OS別実装の段階的移行も技術的に可能になりつつある
• 既存アプリにクロスプラットフォームを追加して実装を共通化する事例が出つつある
※1. https://docs.google.com/presentation/d/1fWd2hsDXhIidYIpmkKLClOTpcyHrvmuagn2JN9ZW0lo
※2. https://fortee.jp/iosdc-japan-2020/proposal/ffc2099c-a65c-414b-90f0-677b90260201
※1 ※2

Más contenido relacionado

La actualidad más candente

こわくない Git
こわくない Gitこわくない Git
こわくない GitKota Saito
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean ArchitectureAtsushi Nakamura
 
PHPからgoへの移行で分かったこと
PHPからgoへの移行で分かったことPHPからgoへの移行で分かったこと
PHPからgoへの移行で分かったことgree_tech
 
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例sairoutine
 
俺のTerraform CI/CD ライフサイクル
俺のTerraform CI/CD ライフサイクル俺のTerraform CI/CD ライフサイクル
俺のTerraform CI/CD ライフサイクルHonMarkHunt
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ増田 亨
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編infinite_loop
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織Takafumi ONAKA
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていることonozaty
 
FINAL FANTASY Record Keeperのマスターデータを支える技術
FINAL FANTASY Record Keeperのマスターデータを支える技術FINAL FANTASY Record Keeperのマスターデータを支える技術
FINAL FANTASY Record Keeperのマスターデータを支える技術dena_study
 
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Appsグリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & AppsGoogle Cloud Platform - Japan
 
MagicOnion入門
MagicOnion入門MagicOnion入門
MagicOnion入門torisoup
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay都元ダイスケ Miyamoto
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門Kohei Tokunaga
 
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割Recruit Lifestyle Co., Ltd.
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話Kumazaki Hiroki
 

La actualidad más candente (20)

【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。 【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
 
Docker Compose 徹底解説
Docker Compose 徹底解説Docker Compose 徹底解説
Docker Compose 徹底解説
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
PHPからgoへの移行で分かったこと
PHPからgoへの移行で分かったことPHPからgoへの移行で分かったこと
PHPからgoへの移行で分かったこと
 
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
 
俺のTerraform CI/CD ライフサイクル
俺のTerraform CI/CD ライフサイクル俺のTerraform CI/CD ライフサイクル
俺のTerraform CI/CD ライフサイクル
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
TLS, HTTP/2演習
TLS, HTTP/2演習TLS, HTTP/2演習
TLS, HTTP/2演習
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
 
FINAL FANTASY Record Keeperのマスターデータを支える技術
FINAL FANTASY Record Keeperのマスターデータを支える技術FINAL FANTASY Record Keeperのマスターデータを支える技術
FINAL FANTASY Record Keeperのマスターデータを支える技術
 
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Appsグリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
 
MagicOnion入門
MagicOnion入門MagicOnion入門
MagicOnion入門
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
 
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
 

Similar a ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)

ロボットサービス開発の現場から
ロボットサービス開発の現場からロボットサービス開発の現場から
ロボットサービス開発の現場からKohei Kojima
 
Androidの衝撃 クラウドで進化する組込システム
Androidの衝撃 クラウドで進化する組込システムAndroidの衝撃 クラウドで進化する組込システム
Androidの衝撃 クラウドで進化する組込システムMasahiro Hidaka
 
タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217知礼 八子
 
IOT and Lean Manifacturing
IOT and Lean ManifacturingIOT and Lean Manifacturing
IOT and Lean ManifacturingOsaka University
 
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)Osaka University
 
TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報
TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報
TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報Yuto Kawabata
 
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬日本マイクロソフト株式会社
 
≪インテル x ブロケード 特別対談≫ 2020年。どうなる?車とデータセンタの関係 ~SDxの、その先へ~
≪インテル x ブロケード 特別対談≫ 2020年。どうなる?車とデータセンタの関係 ~SDxの、その先へ~ ≪インテル x ブロケード 特別対談≫ 2020年。どうなる?車とデータセンタの関係 ~SDxの、その先へ~
≪インテル x ブロケード 特別対談≫ 2020年。どうなる?車とデータセンタの関係 ~SDxの、その先へ~ Brocade
 
3Dリッチコンテンツビジネス活用のご提案ver3.1
3Dリッチコンテンツビジネス活用のご提案ver3.13Dリッチコンテンツビジネス活用のご提案ver3.1
3Dリッチコンテンツビジネス活用のご提案ver3.1ITDORAKU
 
Building a Flutter Development Environment with VSCode and Useful Extensions
Building a Flutter Development Environment with VSCode and Useful ExtensionsBuilding a Flutter Development Environment with VSCode and Useful Extensions
Building a Flutter Development Environment with VSCode and Useful ExtensionsShotaro Suzuki
 
Web RTCにより拓かれるコミュニケーションサービスの形 「新たなバリュー創造へ。ntt comのチャレンジ」webアプリケーション エバンジェリスト ...
Web RTCにより拓かれるコミュニケーションサービスの形 「新たなバリュー創造へ。ntt comのチャレンジ」webアプリケーション エバンジェリスト ...Web RTCにより拓かれるコミュニケーションサービスの形 「新たなバリュー創造へ。ntt comのチャレンジ」webアプリケーション エバンジェリスト ...
Web RTCにより拓かれるコミュニケーションサービスの形 「新たなバリュー創造へ。ntt comのチャレンジ」webアプリケーション エバンジェリスト ...Mickey Miki
 
IoT Application Development by XPages on Bluemix
IoT Application Development by XPages on BluemixIoT Application Development by XPages on Bluemix
IoT Application Development by XPages on BluemixAtsushi Sato
 
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜日本マイクロソフト株式会社
 
ドコモオープンイノベーションの取り組みと提供APIのIoT展開について
ドコモオープンイノベーションの取り組みと提供APIのIoT展開についてドコモオープンイノベーションの取り組みと提供APIのIoT展開について
ドコモオープンイノベーションの取り組みと提供APIのIoT展開についてAPI Meetup
 
Microsoft Developer Forum 2011 KeyNote by Akihiro Ooba
Microsoft Developer Forum 2011 KeyNote by Akihiro OobaMicrosoft Developer Forum 2011 KeyNote by Akihiro Ooba
Microsoft Developer Forum 2011 KeyNote by Akihiro Oobajunichi anno
 
Software for Edge Heavy Computing @ INTEROP 2016 Tokyo
Software for Edge Heavy Computing @ INTEROP 2016 TokyoSoftware for Edge Heavy Computing @ INTEROP 2016 Tokyo
Software for Edge Heavy Computing @ INTEROP 2016 TokyoShohei Hido
 
Microsoft Intelligent Edge Technologies
Microsoft Intelligent Edge TechnologiesMicrosoft Intelligent Edge Technologies
Microsoft Intelligent Edge TechnologiesTakeshi Fukuhara
 

Similar a ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料) (20)

ロボットサービス開発の現場から
ロボットサービス開発の現場からロボットサービス開発の現場から
ロボットサービス開発の現場から
 
Androidの衝撃 クラウドで進化する組込システム
Androidの衝撃 クラウドで進化する組込システムAndroidの衝撃 クラウドで進化する組込システム
Androidの衝撃 クラウドで進化する組込システム
 
Node-RED v1.3新機能紹介
Node-RED v1.3新機能紹介Node-RED v1.3新機能紹介
Node-RED v1.3新機能紹介
 
タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217タブレットセミナ[八子] R 20110217
タブレットセミナ[八子] R 20110217
 
IOT and Lean Manifacturing
IOT and Lean ManifacturingIOT and Lean Manifacturing
IOT and Lean Manifacturing
 
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
 
TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報
TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報
TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報
 
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
 
≪インテル x ブロケード 特別対談≫ 2020年。どうなる?車とデータセンタの関係 ~SDxの、その先へ~
≪インテル x ブロケード 特別対談≫ 2020年。どうなる?車とデータセンタの関係 ~SDxの、その先へ~ ≪インテル x ブロケード 特別対談≫ 2020年。どうなる?車とデータセンタの関係 ~SDxの、その先へ~
≪インテル x ブロケード 特別対談≫ 2020年。どうなる?車とデータセンタの関係 ~SDxの、その先へ~
 
3Dリッチコンテンツビジネス活用のご提案ver3.1
3Dリッチコンテンツビジネス活用のご提案ver3.13Dリッチコンテンツビジネス活用のご提案ver3.1
3Dリッチコンテンツビジネス活用のご提案ver3.1
 
GotAPIの概要と技術解説
GotAPIの概要と技術解説GotAPIの概要と技術解説
GotAPIの概要と技術解説
 
Building a Flutter Development Environment with VSCode and Useful Extensions
Building a Flutter Development Environment with VSCode and Useful ExtensionsBuilding a Flutter Development Environment with VSCode and Useful Extensions
Building a Flutter Development Environment with VSCode and Useful Extensions
 
Web RTCにより拓かれるコミュニケーションサービスの形 「新たなバリュー創造へ。ntt comのチャレンジ」webアプリケーション エバンジェリスト ...
Web RTCにより拓かれるコミュニケーションサービスの形 「新たなバリュー創造へ。ntt comのチャレンジ」webアプリケーション エバンジェリスト ...Web RTCにより拓かれるコミュニケーションサービスの形 「新たなバリュー創造へ。ntt comのチャレンジ」webアプリケーション エバンジェリスト ...
Web RTCにより拓かれるコミュニケーションサービスの形 「新たなバリュー創造へ。ntt comのチャレンジ」webアプリケーション エバンジェリスト ...
 
IoT Application Development by XPages on Bluemix
IoT Application Development by XPages on BluemixIoT Application Development by XPages on Bluemix
IoT Application Development by XPages on Bluemix
 
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
 
ドコモオープンイノベーションの取り組みと提供APIのIoT展開について
ドコモオープンイノベーションの取り組みと提供APIのIoT展開についてドコモオープンイノベーションの取り組みと提供APIのIoT展開について
ドコモオープンイノベーションの取り組みと提供APIのIoT展開について
 
Microsoft Developer Forum 2011 KeyNote by Akihiro Ooba
Microsoft Developer Forum 2011 KeyNote by Akihiro OobaMicrosoft Developer Forum 2011 KeyNote by Akihiro Ooba
Microsoft Developer Forum 2011 KeyNote by Akihiro Ooba
 
Software for Edge Heavy Computing @ INTEROP 2016 Tokyo
Software for Edge Heavy Computing @ INTEROP 2016 TokyoSoftware for Edge Heavy Computing @ INTEROP 2016 Tokyo
Software for Edge Heavy Computing @ INTEROP 2016 Tokyo
 
Microsoft Intelligent Edge Technologies
Microsoft Intelligent Edge TechnologiesMicrosoft Intelligent Edge Technologies
Microsoft Intelligent Edge Technologies
 
Smart Store Map
Smart Store MapSmart Store Map
Smart Store Map
 

Más de NTT DATA Technology & Innovation

OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)NTT DATA Technology & Innovation
 
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方NTT DATA Technology & Innovation
 
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...NTT DATA Technology & Innovation
 
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)NTT DATA Technology & Innovation
 
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)NTT DATA Technology & Innovation
 
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...NTT DATA Technology & Innovation
 
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
 
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
 
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
 
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)NTT DATA Technology & Innovation
 
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...NTT DATA Technology & Innovation
 
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)NTT DATA Technology & Innovation
 
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)NTT DATA Technology & Innovation
 
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)NTT DATA Technology & Innovation
 
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...NTT DATA Technology & Innovation
 
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)NTT DATA Technology & Innovation
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)NTT DATA Technology & Innovation
 
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 

Más de NTT DATA Technology & Innovation (20)

OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
 
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
 
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
 
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
 
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
 
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
 
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
 
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
 
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
 
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
 
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
 
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
 
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
 
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
 
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
 
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
 
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
 
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
 

Último

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 

Último (9)

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 

ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)

  • 1. © 2020 NTT DATA Corporation NTTデータ テクノロジーカンファレンス 2020 ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方 2020年10月16日 株式会社NTTデータ デジタル技術部 高見将則
  • 2. 2 © 2020 NTT DATA Corporation 自己紹介 • 高見将則 • デジタル技術部 Aglieプロフェッショナル担当 • デジタル技術を使った研究開発やプロジェクト支援に従事 • 認定スクラムマスター、認定プロダクトオーナー、AWS SAA • フロントエンド・モバイルアプリ開発の研究開発のリードエンジニア • iOS、Android、Flutter、React Native、React.js • CI/CDパイプライン職人としてリリースサイクル高速化や開発者のDX改善が得意 • 以前はJava、PHPを使った案件のアーキテクチャ設計、AWS設計、EM業など
  • 3. 3 © 2020 NTT DATA Corporation クロスプラットフォームとは? • シングルソースで複数プラットフォームで動作するフレームワーク • Flutter、React Native、Xamarin、Cordova、Ionicなど • iOS、Android、Web、Windows、macOS、Linuxで動作する • Google、Facebook、Microsoftなどがリードしている
  • 4. 4 © 2020 NTT DATA Corporation クロスプラットフォームに関するR&Dの取り組み • 2018年からFlutter・React Nativeの技術検証に着手 • 商用開発に向けた技術検証結果やサンプルコードを社内・G会社向けへ展開 • Flutter・React Nativeを使ったプロジェクトへの技術支援を実施
  • 5. 5 © 2020 NTT DATA Corporation 今日話すことと話さないこと • 話すこと • NTTデータにおけるFlutterを使ったモバイルアプリ開発の実績について • Flutterを例にしたクロスプラットフォームに対する期待と実態の紹介 • Flutterの商用案件経験を踏まえて、クロスプラットフォームとどう付き合っていくべきなのか • 話さないこと • どのクロスプラットフォームがイケてるか? • Flutterを使った最適なソフトウェアアーキテクチャや状態管理の話 • Webやデスクトップを含めたクロスプラットフォームの知見
  • 6. © 2020 NTT DATA Corporation 6 Flutter x NTTデータ
  • 7. 7 © 2020 NTT DATA Corporation Flutterとは? • Google製のクロスプラットフォーム開発フレームワーク • 2018年のGoogle I/Oにて正式発表、10/16時点の最新のstableは1.22.1 • iOS、Androidに続いてWeb、Linux、Windows、macOSに順次対応中 • 主な特徴 • 開発言語はDart • Declarative UI(宣言的UI) • プラグインによる機能拡張が可能 • OS固有のビューや実行コードの記述が可能
  • 8. 8 © 2020 NTT DATA Corporation Flutter製の有名なスマートフォンアプリ Flutter製の主要なGoogleプロダクト • Stadia • Google Ads • Google Analytics • Google Pay※1 2020年9月時点で100,000以上のアプリがGoogle Play Storeで公開中※2 ※1. https://developers.googleblog.com/2020/09/google-pay-picks-flutter-to-drive-its.html ※2. https://medium.com/flutter/announcing-flutter-windows-alpha-33982cd0f433
  • 9. 9 © 2020 NTT DATA Corporation NTTデータにおけるFlutter採用プロジェクトの実績 PoC、社内アプリ、企画型案件、商用案件を着実に遂行中 N1 Neuro AI審査員 オフショアを活用し低予算で両OSを短期間でリリース Sakenomy 少数精鋭で両OSをサービス運営、Flutter for Webも利用中 某金融機関様 アプリリニューアル案件 約100画面のiOS・Androidアプリを半年でリプレース お出かけ混雑マップ リモートかつ1.5ヶ月の超短期間で両OSを商用リリース https://www.nttdata.com/jp/ja/news/release/2020/061801-01/ https://sakenomy.jp
  • 10. © 2020 NTT DATA Corporation 10 クロスプラットフォームに向けられる 期待と現実
  • 11. 11 © 2020 NTT DATA Corporation クロスプラットフォームを使えば生産性が2倍!? ワンコードでiOS・Androidが開発できる! 工数半減!!生産性2倍!! ひと漕ぎで二度おいしい??
  • 12. 12 © 2020 NTT DATA Corporation クロスプラットフォームで見込める生産性向上効果 OS共通部分をワンコードで書けるところが強み • OS共通機能部分は共通化によって記述量が減り生産性向上が見込める • OS別の機能はフレームワークでの対処がない場合は個別実装になる
  • 13. 13 © 2020 NTT DATA Corporation 実際のソースコードから見る共通化効果の実態 ビジネス要件によってはOS固有実装は避けられない • 共通化の恩恵を得るにはiOS / Androidで共通のデザイン・機能が前提 • 実際はクロスプラットフォームのAPIで吸収しきれないOS差分実装は一定数ある • 要件によってはOS固有実装の割合が増えるケースもある • OS別デザイン差分 • WebView • Push通知 • 位置情報 • Bluetooth • NFC • 音声・動画再生 • ファイルI/O • OS別3rd Party SDK利用 …
  • 14. 14 © 2020 NTT DATA Corporation 【参考】実際のソースコードから見る共通化効果の実態 OS別による機能差分度合いで共通化効果が決まる • A案件はOS差分はほぼなしでFlutterによる共通化に全振り • B案件はビジネス要件上OS別SDKを利用しておりOS別実装の割合が多い Flutter案件のソースコード 割合(LoC) A案件 B案件 Flutter関連ソースコード 79.4% (4677) 59.1% (55963) Android関連ソースコード 7.8% (459) 19.0% (18075) iOS関連ソースコード 12.8% (751) 21.9% (20714)
  • 15. 15 © 2020 NTT DATA Corporation クロスプラットフォームの恩恵を受けるための隠れたコスト 1. フレームワークのバージョンアップに追従し続ける • Flutterのstableバージョンの更新は約3ヶ月に一回ペース • 最新OS対応、バグ改修は最新版にのみ反映される 2. OS差分をなるべく減らすデザイン・機能であり続ける • クロスプラットフォームの恩恵を得るためには共通化が前提 3. クロスプラットフォームを扱える開発者を抱え続ける • 新規技術のため市場にも人材が不足がち 継続して安定開発し続けるために払うべきコストがある
  • 16. 16 © 2020 NTT DATA Corporation トータルで見ると実態は1.x漕ぎで二度おいしい ワンコードでiOS・Androidが開発できる! 工数半減!!生産性2倍!! 1.x 漕ぎで二度おいしい! ※ 0≦x<1で x はビジネス要件に依存
  • 17. © 2020 NTT DATA Corporation 17 クロスプラットフォームと どう付き合っていくべきか?
  • 18. 18 © 2020 NTT DATA Corporation クロスプラットフォームの恩恵を受け続けるための工夫 1. フレームワークのバージョン追従コストを下げる 2. OS差分実装をなるべく少なくする 3. フレームワークが扱える開発者を戦略的に育成する
  • 19. 19 © 2020 NTT DATA Corporation 1.フレームワークのバージョン追従コストを下げる • 自動テストの仕組みをCIパイプラインとして構築する • フレームワークが持つ単体テスト・UIテストの仕組みをフル活用する • 実機テスト・改修サイクルを短縮するためにCDパイプラインを構築する • アプリ資材作成、資材配布を自動化する • フレームワークが提供するAPIを中心に利用して野良プラグインは極力使わない • メンテナンスされない野良プラグインはバージョンアップの足枷になる
  • 20. 20 © 2020 NTT DATA Corporation 2. OS差分実装をなるべく少なくする • iOSとAndroidでなるべくデザインや機能を統一する • Material Designに寄せてCupertino(iOS-Style)はなるべく使わない • OS別の固有の実装を生む機能追加をなるべく控える
  • 21. 21 © 2020 NTT DATA Corporation 3.クロスプラットフォーム開発者を戦略的に育成する • クロスプラットフォーム経験者は希少人材のため育成が前提 • 技術転換の素養のある開発者を公式チュートリアルやOJTで育成する • iOSエンジニア・Androidエンジニア • React.js・Vue.js ・Angular等の経験があるWebフロントエンドエンジニア • フルスタック傾向のあるバックエンドエンジニア • 新規技術の学習意欲の高いジュニアエンジニア • デジタル技術部の社員・協働者内に40名以上のFlutter技術者を育成済み
  • 22. © 2020 NTT DATA Corporation 22 まとめ
  • 23. 23 © 2020 NTT DATA Corporation クロスプラットフォームとどう付き合うべきか? • クロスプラットフォームを採用する前に • ビジネス要件や開発体制などを考慮して個別実装よりも価値が見込めるか • OSによる機能・デザイン差分が少なく共通化効果が見込めるか • クロスプラットフォームとしばらく心中する覚悟を持てるか • クロスプラットフォームを採用したら • フレームワークのバージョンアップに追従し続ける • OS差分をなるべく生まないようにデザイン・機能追加する • フレームワークが扱える開発者を戦略的に育成する
  • 24. 24 © 2020 NTT DATA Corporation まとめ • クロスプラットフォームは銀の弾丸ではない • 特定の条件下においてアジリティ高く開発する手段の一つ • 継続的に恩恵を受け続けるには見えないコストを払う必要がある • OS別に作るよりも生産性が高くなるかはビジネス要件次第 • 自身の置かれた状況から多角的に判断して最適な技術選択をすべき
  • 25. © 2020 NTT DATA Corporation
  • 26. 26 © 2020 NTT DATA Corporation 【おまけ】万が一のときOS別実装にスムーズに戻せるか? • いざという時にクロスプラットフォームを捨てる選択肢を考えておく • メインデベロッパーのメガプレイヤーがメンテナンスを放棄した • ビジネス上致命的な阻害要因となる実装不具合が解消できない • クロスプラットフォームが扱える開発者が継続的に維持できなくなった • クロスプラットフォーム↔OS別実装の段階的移行も技術的に可能になりつつある • 既存アプリにクロスプラットフォームを追加して実装を共通化する事例が出つつある ※1. https://docs.google.com/presentation/d/1fWd2hsDXhIidYIpmkKLClOTpcyHrvmuagn2JN9ZW0lo ※2. https://fortee.jp/iosdc-japan-2020/proposal/ffc2099c-a65c-414b-90f0-677b90260201 ※1 ※2