マナティ

購入形態

PDF
3,509円
数量:

カートに追加されました。カートを見る

カートに入れる
紙の本を買う

Flutter モバイルアプリ開発バイブル

マイナビ出版

最先端モバイルアプリケーションフレームワークを徹底解説

Googleが開発しているモバイルアプリケーションSDK、Flutterの実践解説書です。
iOS・Androidなどクロスプラットフォームで動作するモバイルアプリの開発者を対象にして、全体感を踏まえた基礎的な部分から実践的な概念や実装に至るまで、丁寧に説明していきます。

「Chapter1 Flutterとは」ではFlutterの概要を解説します。
「Chapter2 開発環境の構築」では、Flutter本体のインストールに加えてiOSシミュレーターやAndroidエミュレータでの開発環境の構築を紹介します。Flutter自体はクロスプラットフォームですが、ビルドシステムや端末上での動作などは既存システムを使用するため、各プラットフォームの開発環境も整える必要があります。
「Chapter3 ウィジェット」では、Flutterの重要な構成要素であるウィジェットを解説します。全体的なレイアウトやデザイン、画像、テキスト、アニメーションなどのUI だけでなく、アプリ自体がウィジェットを用いて構築されています。この章ではウィジェットの扱いを中心に、UIの構築に必要な基本的な機能を解説します。
「Chapter4 状態管理」では、アプリケーション開発に欠かせない要素の1つである状態管理に関して、その必要性やメリットを解説します。また、Flutterによるアプリ開発で実際に使われている状態管理の手法を紹介します。
「Chapter5 ライブラリの実装」では、開発効率を向上させるために有用な、Dartでのライブラリの作成方法を解説します。また、各プラットフォーム固有の機能を実現するネイティブコード実装によるライブラリ作成も説明します。
「Chapter6 サンプルアプリの実装」では、小規模なサンプルアプリケーション開発における実装をサンプルコードとともに説明していきます。要件定義からドメインレイヤ、バックエンド、プレゼンテーションレイヤまで、順を追って解説します。スマートフォン向けアプリケーション開発で必要となる要素を学びましょう。
「Chapter7 開発の継続」では、フローの自動化に必要となるテストやデバッグツールの活用、デプロイメントやデリバリーを解説します。高品質なアプリケーションの継続的なデリバリーはもとより、より短いサイクルでの開発が求められる昨今では、手動運用による業務フローだけでは効率的な開発は困難です。業務フローの自動化によって、継続的に発生する運用コストの削減と持続性が高い開発フローを整えることが学んでください。
巻末のAPPENDIXでは、Dart 言語の仕様、Flutter Webなどを解説しています。

モバイルアプリ開発に課題を感じている開発者の方が、課題解決方法の1つとしてFlutterを活用できる手助けができれば幸いです。
書籍中で解説しているサンプルコードをダウンロード可能です。

発売日:2019-10-31

ページ数:320ページ

目次

Chapter1 Flutterとは
1-1 Flutter開発
   1-1-1 クロスプラットフォームの概念
   1-1-2 Hot Reloadによる開発速度向上
   1-1-3 洗練された独自UI
   1-1-4 ネイティブ開発と遜色ない高いパフォーマンス
   1-1-5 マルチプラットフォーム対応
   1-1-6 Flutterの利用企業
1-2 既存のクロスプラットフォーム開発
   1-2-1 Xamarin
   1-2-2 Unity
   1-2-3 React Native
   1-2-4 Flutter

Chapter2 開発環境の構築
2-1 インストール
   2-1-1 Flutterの導入
   2-1-2 Android Studio(インストールと機能説明)
2-2 各デバイス向けの開発環境
   2-2-1 Androidアプリケーションの開発環境
   2-2-2 iOSアプリケーションの開発環境
2-3 Flutterアプリケーションの作成
   2-3-1 新規アプリケーションの作成
   2-3-2 サンプルプロジェクトの構成
   2-3-3 Androidエミュレータ/iOSシミュレーターでの起動
   2-3-4 Android端末での起動
   2-3-5 iOS端末での起動
   2-3-6 Hot Reload

Chapter3 ウィジェット
3-1 ウィジェットの基本
   3-1-1 ウィジェットの基礎知識
   3-1-2 StatelessWidget
   3-1-3 StatefulWidget
3-2 レイアウトの構築
   3-2-1 レイアウト構築の基本
   3-2-2 レイアウト構築の基本的なウィジェット
3-3 画面遷移とウィジェットの状態管理
   3-3-1 画面遷移
   3-3-2 ユーザー操作に伴うウィジェットの状態管理
3-4 アセット管理とアニメーション
   3-4-1 アセットの管理
   3-4-2 アニメーションの基本
   3-4-3 アニメーションの描画
3-5 ウィジェットの応用
   3-5-1 パフォーマンスの課題
   3-5-2 パフォーマンス対策

Chapter4 状態管理
4-1 状態管理の基本
   4-1-1 状態管理の必要性
   4-1-2 Model View Controllerアーキテクチャ
   4-1-3 Flutterにおけるアーキテクチャ
4-2 Scoped Model
   4-2-1 Scoped Modelの全体像
   4-2-2 Scoped Modelでの実装
4-3 Redux
   4-3-1 Reduxの全体像
   4-3-2 Reduxでの実装
4-4 BLoC
   4-4-1 BLoCの全体像
   4-4-2 BLoCでの実装

Chapter5 ライブラリの実装
5-1 パッケージ
   5-1-1 パッケージの最小構成
   5-1-2 パッケージの種類
5-2 パッケージの実装
   5-2-1 Dartパッケージ
   5-2-2 Platform Channel
   5-2-3 Pluginパッケージ
   5-2-4 Pluginパッケージの実装
   5-2-5 Flutter Pluginの利用
5-3 パッケージの公開
   5-3-1 APIドキュメントの作成
   5-3-2 パッケージの公開

Chapter6 サンプルアプリの実装
6-1 要件定義
   6-1-1 サンプルアプリの概要
   6-1-2 画面設計
   6-1-3 技術選定
6-2 ドメインレイヤの実装
   6-2-1 ドメインオブジェクトの実装
   6-2-2 リスト表示機能の定義
   6-2-3 イベントの実装
   6-2-4 通信部分の定義
   6-2-5 状態管理の実装
6-3 通信部分の実装
   6-3-1 EventListRepositoryの実装
6-4 プレゼンテーションレイヤの実装
   6-4-1 画面の構築とイベントの通知
   6-4-2 BlocProviderの利用
6-5 ユーザー認証の実装
   6-5-1 ドメインレイヤの実装
   6-5-2 バックエンドの実装
   6-5-3 プレゼンテーションレイヤの実装
6-6 ログインの実装
   6-6-1 ログインにおけるドメインレイヤの実装
   6-6-2 ログインにおけるバックエンド実装
   6-6-3 ログインにおけるプレゼンテーションレイヤ実装

Chapter7 開発の継続
7-1 テストと最適化
   7-1-1 デバッグツールDevTools
   7-1-2 DevToolsのデバッグ機能
   7-1-3 Flutterにおけるビルドの種類
   7-1-4 テスト
   7-1-5 継続的インテグレーション
7-2 デプロイメント
   7-2-1 iOS版のリリース
   7-2-2 Android版のリリース
   7-2-3 CIとCD

APPENDIX
   Flutter 1.9
   Dart言語
   既存プロジェクトへのFlutterの追加

著者プロフィール

  • 南里 勇気(著者)

    株式会社FiNC Technologies所属、アプリエンジニア(Android・iOS)。
    クロスプラットフォーム開発に興味を持ち、FlutterやFirebaseに関連する勉強会の主催に加え、DroidKaigiやAndroid Bazaar and Conferenceなど各種カンファレンス登壇実績も多数。Bluetooth LEや機械学習、AR・VRなどの組み込み開発の実務経験もある。

  • 太田 佳敬(著者)

    サーバーサイドエンジニア。健康系アプリ開発会社からAIベンチャーへと転職、アプリエンジニアとしてiOS・Android向けの開発を担当することで、クロスプラットフォーム開発に興味を持つ。現在はアプリはもちろん、バックエンドに加えてVue.jsやk8sなどあらゆる領域を担当し、Webへの展開を見据えたクロスプラットフォーム開発の1回答としてFlutterに注力している。

  • 矢田 裕基(著者)

    株式会社FiNC Technologies所属、アプリエンジニア(Android)。
    スマートフォンアプリ、アート作品やデジタルサイネージ、パズルなどを制作に携わり、現在のポジションとなる。ユーザーインターフェイスに関心があり、Material Design実装が容易なFlutterに興味を持つ。過去の実績として、『物理演算を用いた作曲インターフェス』が独立行政法人情報処理推進機構(IPA)の2009年度上期未踏ユースに採択されている。

  • 片桐 寛貴(著者)

    株式会社FiNC Technologies所属、サーバーサイドエンジニア。
    フロントエンドからバックエンドまでサーバーサイドを中心にWeb関連全般を担当。バックエンドではPHPやRails、フロントはVue.jsやReact などを得意としている。最近はSRE(サイト信頼性エンジニアリング)や機械学習に興味を持つ。