はじめての方へ
カート
新規登録
ログイン
All
技術書・IT
コンピュータ・IT
ビジネス・経営
ビジネス書
自己啓発書
実用・教養
実用書
教育・学参・語学
社会・時事
文芸・その他
文芸・エッセイ
その他
セール中
予約購入
カテゴリ一覧
著者一覧
メニュー
ログイン
新規登録
カート
探す
書籍一覧
セール中
予約購入
カテゴリ一覧
著者一覧
サポート
はじめての方へ
ホーム
コンピュータ・IT
目的
モバイル開発
CombineとUIKitによるiOSアプリ開発
コンピュータ・IT
目的
›
モバイル開発
フレームワーク
›
Combine
フレームワーク
›
UIKit
CombineとUIKitによるiOSアプリ開発
宇佐見 公輔 (著)
発売日: 2020/12/29
想定ページ数: 48ページ
全文検索: 対応
★★★★★
★★★★★
4.0
1件
本書について
目次(全章)
著者紹介
レビュー (1)
Combine は Swift を使ってリアクティブプログラミングを行うためのフレームワークです。2019 年 6 月の WWDC で登場して、注目を浴びました。
本書では、Combine を iOS App 開発に活用する手法を述べます。特に、UIKit での開発に Combine を組み合わせて使う事例を考えます。
iOS App 開発では、UI 層とモデル層とのあいだでデータをやり取りする手段が意外と難しいところです。UIKit はそのための仕組みを、あまり明示的には提供していませんでした。ここに Combine を導入することで、UI とモデルとを関連づけることが容易になります。これによって、UIKit を使った開発でのアーキテクチャ設計を改善できます。
本書で述べる内容は、それほど難しいものではありません。しかし、Combine の書籍や記事は内容が高度なものが多く、敷居が高い場合が多いです。基本的なことをできるだけ丁寧に説明した本があったら良いのではないか、と考えて本書を執筆しました。
iOS App 開発では、UI フレームワークとして UIKit が使われてきました。一方、2019 年 6 月の WWDC で、新しい UI フレームワークとして SwiftUI が発表されました。現在の iOS App 開発では、UIKit と SwiftUI のどちらか(あるいは両方)を使って開発することになります。
将来的には、UIKit に代わって SwiftUI が主流になることも予想できます。しかし一方で、UIKit は現在も iOS App 開発の現場で多く使われています。本書では UIKit に焦点を当てることにします。
なお、SwiftUI は暗黙的に Combine を活用しています。そのため、将来的に UIKit から SwiftUI に移行するとしても、UIKit と Combine との組み合わせに慣れ親しんでいれば楽に移行できるでしょう。
続きを読む
目次プレビュー
はじめに
第1章 Combine の基礎
第2章 データの変化を伝える
目次をすべて表示
すべて展開
はじめに
全3節
UIKit と SwiftUI
本書の前提知識
iOS の動作対象バージョン
第1章 Combine の基礎
全7節
1.1 Combine とは
1.2 Publisher
1.3 Subscription
1.4 イベント
1.5 Operator
1.6 Combine のコンセプト
1.7 この章のまとめ
第2章 データの変化を伝える
全7節
2.1 モデルクラス
2.2 @Published
2.3 CurrentValueSubject
2.4 PassthroughSubject
2.5 手段の選択
2.6 Operator の活用
2.7 この章のまとめ
第3章 UI を更新する
全5節
3.1 assign
3.2 UI の更新
3.3 ViewModel
3.4 sink が必要な場合
3.5 この章のまとめ
第4章 ユーザの操作に対応する
全7節
4.1 UIKit でのユーザ操作の処理
4.2 Notification
4.3 PassthroughSubject の活用
4.4 CombineCocoa
4.5 CombineCocoa の応用
4.6 debounce
4.7 この章のまとめ
第5章 Combine を活用した設計
全7節
5.1 実際の画面の作成
5.2 実装の方針
5.3 LoginModel
5.4 LoginViewModel
5.5 LoginViewController
5.6 設計について
5.7 この章のまとめ
おわりに
全3節
Apple のリファレンス
WWDC セッションビデオ
書籍
奥付
宇佐見 公輔
iOSアプリ開発エンジニア。技術勉強会での登壇、技術記事や技術同人誌の執筆を精力的に行う。特に、学習の敷居が高いと言われがちな領域について、導入部分を工夫することで敷居を下げて学びやすくした内容に定評がある。また、アプリ開発のプログラミングでは、宣言型プログラミングの手法に関心をもち、リアクティブプログラミングを取り入れている。学生時代は数学専攻。現在も数学系イベントでの登壇なども行う。
この著者の書籍一覧
★★★★★
★★★★★
4.0
Tsukubadepot
2021年1月13日
この書籍を理解する前提として「Combine を始めよう」という書籍の理解が必要なのですが(導入部でも促している)、そちらの書籍を先に読み、理解を含めておくとこの書籍の前半半分は繰り返しとなり、やや冗長間が否めません。
重複部分も多いので、書籍の価格としては上がったとしても2つの書籍を合わせ一つの書籍とし、第一部入門編、第二部応用篇としてもよかったのかもしれません。
その点においては、たとえば第二章まではバッサリと切り捨てて、その分 UIKit との連携例を増やしていただいた方が読み応えはあったかもしれません。
それでも、Combine をはじめとするリアクティブプログラミングの考え方、またそれをいくつかのモデルに分ける場合の考え方については、5章で簡潔、かつわかりやすいモデルを用いて説明がありますので、その部分を参照できただけでもこの書籍としても価値はあると思います。
気をつけたいのは、著者も第5章のまとめで述べている通り、「Combine を使うことと、設計アーキテクチャは別である」という点です。そこを明確に述べられている点も評価できるかと思います。
ただ、そういう意味ではモデル間において Publisher をいかに意識させずに(疎な結合として)関連づけさせるべきかという点まで踏み込んでいただければなおよかったのかなと感じています(もちろん、この点はまさにモデル設計と関連してくるので、切り分けも難しいところですが)。
一緒に読まれている本
試し読み
Combineをはじめよう
500円
(税込)
試し読み
手軽に使うDockerの本 コピって使える用途別コンテナカタログ
1,980円
(税込)
試し読み
iOSアプリ開発「UI実装であると嬉しいレシピブック まかない編」
1,000円
(税込)
試し読み
iOSアプリ開発「UI実装であると嬉しいレシピブック Vol.2」
1,000円
(税込)
この本を紹介する
CombineとUIKitによるiOSアプリ開発
Facebook
X (Twitter)
LINE
他のアプリで共有
URL
コピー
URLをコピーしました
重複部分も多いので、書籍の価格としては上がったとしても2つの書籍を合わせ一つの書籍とし、第一部入門編、第二部応用篇としてもよかったのかもしれません。
その点においては、たとえば第二章まではバッサリと切り捨てて、その分 UIKit との連携例を増やしていただいた方が読み応えはあったかもしれません。
それでも、Combine をはじめとするリアクティブプログラミングの考え方、またそれをいくつかのモデルに分ける場合の考え方については、5章で簡潔、かつわかりやすいモデルを用いて説明がありますので、その部分を参照できただけでもこの書籍としても価値はあると思います。
気をつけたいのは、著者も第5章のまとめで述べている通り、「Combine を使うことと、設計アーキテクチャは別である」という点です。そこを明確に述べられている点も評価できるかと思います。
ただ、そういう意味ではモデル間において Publisher をいかに意識させずに(疎な結合として)関連づけさせるべきかという点まで踏み込んでいただければなおよかったのかなと感じています(もちろん、この点はまさにモデル設計と関連してくるので、切り分けも難しいところですが)。