Skip to content

Latest commit

 

History

History
125 lines (82 loc) · 6.5 KB

File metadata and controls

125 lines (82 loc) · 6.5 KB

Combine を学習するにあたり、

  • 参考になるサイト
  • 動画
  • 書籍の情報

などを記載しています。

もしおすすめの情報などございましたら教えていただけると嬉しいです。

サイト

Apple の公式ドキュメントです。
クラスやメソッドのリファレンスもそうですが、複数の使い方に関する記事も参考になります。
Apple 公式ドキュメント

コミュニティが運営している Combine のグループです。
Slack で質問ができたり Github に便利なライブラリが用意されています。
Combine Community

Combine の情報が体系的にまとめられています。(下記で紹介する本と同じ内容です。)
Using Combine

Combine だけではなく様々な Swift や Apple フレームワークに関する情報が記載されています。下記は「Combine」が付いた記事へのリンクです。
SwiftBySundell

Combine でまとめられている訳ではありませんが、Combine の内容も豊富に含まれています。
記事は 1 ポイントに絞られているため短くて読みやすく
Youtube でライブコーディングをしながらの解説も大変わかりやすいです。
Hacking with Swift

元 Kickstarter の iOS エンジニア 2 人が運営するサイトです。(一部有料)
Swift を使って関数型プログラミングの概念の解説やライブラリの作成などエピソードを通して行なっています。
Combine に関しては The Composable Architecture というライブラリの作成の中で
多くの要素が解説されています。
Pointfree

記事

raywenderlich の Combine の紹介記事です。
記事を読みながらサンプルを構築していくので実装を通して学ぶことができます。
Combine: Getting Started

raywenderlich の MVVM + Combine の紹介記事です。
MVVM with Combine Tutorial for iOS

Operator の動きの解説と実際に使用した場合の例などが記載されています。
Problem Solving with Combine Swift

これを活用した例が CombineCocoa というライブラリにたくさんあります。
UIControl を Publisher にする

Custom Publisher の作成方法を通して、Combine の仕組みがわかります。
Building custom Combine publishers in Swift

複数のAPIの結果をまとめて処理する場合のCombineの活用方法が丁寧に解説されています。
他にも@Publishedと異なりViewを自動で再描画しないPropertyWrapper(Input)の導入など、役に立つ要素がたくさん学べます。
Connecting and merging Combine publishers in Swift

Video

WWDC

Introducing Combine and Advances in Foundation

Combine in Practice

Advances in Networking

Others

Combine の基本を紹介しています。個人的にはこの紹介が非常にわかりやすいです。
Getting Started with Combine

Combine + SwiftUI の基本的な理解や実際にアプリを作成する過程を見ながら学習します(ちょっと長いです)
Getting Started with Combine and SwiftUI in iOS

UIKit + Combine の紹介をしています。
ライブコーディングをしているので、英語がわからなくてもコードを追っていけます。
iOS 13 Swift Tutorial: Combine Framework - A Practical Introduction with UIKit

これまでの Delagete パターンなどと比べて
何がどう変わったのかをわかりやすく解説しています。
SwiftUI & Combine

ライブラリ

Pointfree で作成された Combine をベースに作成されたライブラリです。
かなりカスタマイズされていますがコードを見ると
Combine のコンセプトや仕組み、活用方法など大変参考になります。
The Composable Architecture

RxSwift とを UIKit でも使いやすくしています。
RxCombine

Combine を UIKit でも使いやすくしています。
CombineCocoa

macOS 10.15、iOS 13 よりも前のバージョンでも Combine を利用可能にするライブラリ
OpenCombine

Custom の Operator や Publisher、テスト用のライブラリ、RxSwift との互換ライブラリなど
Entwine

Version 5から Combine を使った実装が追加されました。
Realm + Combine

Combine: Asynchronous Programming with Swift

Using Combine

Practical Combine

Tips

非同期処理を Serial に実行する方法

Apple のdataTaskPublisherの実装です。Custom Publisher を作成する時に何が必要なのかがわかります。
Custom Publisher の作成方法

Custom Publisher をどう作成するのかについての意見が述べられています。
Custom Publisher の作成方法に関する議論