iT邦幫忙

combine相關文章
共有 32 則文章
鐵人賽 自我挑戰組 DAY 1

技術 30 天了解 Swift 的 Combine: [01] What is Combine?

What is Combine? 2019 年 7 月,apple 在 wwdc 介紹了全新的 SwiftUI,一個以宣告式編程結合響應式編程的所見即所得 UI...

鐵人賽 自我挑戰組 DAY 4

技術 30 天了解 Swift 的 Combine: [04] Combine初探, Publisher與 Subscriber

Combine 提供了宣告形式的 Swift API,主要處理隨時間處理值變化(各種異步行程產出的事件)。發布者(publisher) 產出可隨時間變化的值,訂...

鐵人賽 自我挑戰組 DAY 6

技術 30 天了解 Swift 的 Combine: [06] More Publisher, Just, Future, Promise

Publisher 有許多方式可以建立, 有單獨的, 復合的, 組合的, 媒介的, 不同的 Publisher 分別有不同的型別.其中以 Just 與 Futu...

鐵人賽 自我挑戰組 DAY 2

技術 30 天了解 Swift 的 Combine: [02] 介紹響應式編程

首先, 讓我們認識響應式編程! 顧名思義, 響應式編程的目的是一種編程的方法, 其中心想法不同於物件導向編程是面對物件為主, 響應式編程是以面對資料變化為主....

鐵人賽 自我挑戰組 DAY 5

技術 30 天了解 Swift 的 Combine: [05] Publisher與 Subscriber 的 Lifecycle + 彈珠圖

Combine 之中, Publisher 是資料來源, Subscriber 是控制資料流的操作員, Subscriber 可以限制接收的資料信息量, 透過...

鐵人賽 自我挑戰組 DAY 8

技術 30 天了解 Swift 的 Combine: [08] Publisher 延展類:Subject

Subject 是一種特殊的 Publisher, protocol Subject 是 protocol Publisher 的繼承類: protocol S...

鐵人賽 自我挑戰組 DAY 30
30 天了解 Swift 的 Combine 系列 第 30

技術 懶人包閱讀順序: 30 天了解 Swift 的 Combine

30 天的密集學習之後, Combine 的難度其實並沒有想象的高, 在未來 SwiftUI 的普及之下, 相信響應式編程會是一個對新手的一座難以跨越的高山,...

鐵人賽 自我挑戰組 DAY 3

技術 30 天了解 Swift 的 Combine: [03] 其實你早就在用響應式的概念

上一篇提到響應式的概念, 為了更能理解響應式編程, 這篇將使用 Swift 基本語法來介紹. 面向資料 在 Swift 中, 可以使用 computed var...

鐵人賽 自我挑戰組 DAY 7

技術 30 天了解 Swift 的 Combine: [07] 被封裝的 Subscriber

如果你沒有要自製 Subscriber 的需求, 其實 Combine 已經完整的封裝了, 不需要額外理解特殊的處理. 以下翻譯自 Combine docume...

鐵人賽 自我挑戰組 DAY 9

技術 30 天了解 Swift 的 Combine: [09] Operator 目錄 + 第一部分:轉換類型

基本觀念的最後一個部分,Operator,就像是物件導向的不同部分有不同的變形一樣,Operator 在 Combine 中扮演了舉足輕重的角色,沒有了他,Co...

鐵人賽 自我挑戰組 DAY 28
30 天了解 Swift 的 Combine 系列 第 28

技術 30 天了解 Swift 的 Combine: [28] GitHub 專案分享: SwiftUI-Combine

在 GitHub 有許多開源的專案是值得我們學習的, 尤其是當接觸新事物的時候, SwiftUI-Combine 是一個使用 SwiftUI 及 Combine...

鐵人賽 自我挑戰組 DAY 29
30 天了解 Swift 的 Combine 系列 第 29

技術 30 天了解 Swift 的 Combine: [29] GitHub 專案分享: CombineRxSwiftPerformance

CombineRxSwiftPerformance 是一個在 GitHub 知名的專案, 在 wwdc 2019 剛發表 Combine 的時候, 這個 rep...

鐵人賽 自我挑戰組 DAY 20
30 天了解 Swift 的 Combine 系列 第 20

技術 30 天了解 Swift 的 Combine: [20] Combine 好文分享: Custom publisher in UIControl

SwiftLee 是一位樂於分享的 iOS 開發者, 在 Combine 釋出沒多久, 就發佈了介紹 Combine 的系列文章, 更在 mobiconf 上主...

鐵人賽 自我挑戰組 DAY 16
30 天了解 Swift 的 Combine 系列 第 16

技術 30 天了解 Swift 的 Combine: [16] Operator 之後,開始 assign

連續的介紹 Operator 之後,會發現很多範例都有 sink, 如果沒有調用這個, Publisher 將不會執行. 今天要特別講 sink 與 assig...

鐵人賽 自我挑戰組 DAY 19
30 天了解 Swift 的 Combine 系列 第 19

技術 30 天了解 Swift 的 Combine: [19] 使用 @Published 改寫 Day 18

在 第 18 篇時, 我們使用 Extension 的方式, 將 UITextField 拓展加入 textPublisher, 但畢竟是拓展, 需要額外加入方...

鐵人賽 自我挑戰組 DAY 10
30 天了解 Swift 的 Combine 系列 第 10

技術 30 天了解 Swift 的 Combine: [10] Operator 2: 一般篩選類型

1.filter 只將通過條件的上游持續發布 就像是if then,沒有 else 而已! Declaration func filter(_ isInclud...

鐵人賽 自我挑戰組 DAY 15
30 天了解 Swift 的 Combine 系列 第 15

技術 30 天了解 Swift 的 Combine: [15] Operator 10. 時間控制類型

與 Timer 密切使用的 Operator. 10-1. debounce: 限制連續發佈的間隔, 唯有間隔超過制定時間才會轉發元素. var set = S...

鐵人賽 自我挑戰組 DAY 12
30 天了解 Swift 的 Combine 系列 第 12

技術 30 天了解 Swift 的 Combine: [12] Operator 6. 上流整合類型

上流整合類型由於沒辦法直接用 Sequence.Publisher 的方式測試, 這部分的 Demo code 將於日後更新. 6-1. zip: 等待不同的上...

鐵人賽 自我挑戰組 DAY 13
30 天了解 Swift 的 Combine 系列 第 13

技術 30 天了解 Swift 的 Combine: [13] Operator 7. 型別銜接類型 + 8. Debug 類型

Operator 7. 型別銜接類型 7-1. eraseToAnyPublisher: 不是運作類型的 Operator, 是型別類型的(可能是唯一一個) 用...

鐵人賽 自我挑戰組 DAY 17
30 天了解 Swift 的 Combine 系列 第 17

技術 30 天了解 Swift 的 Combine: [17] 進入 UIKit 之前, 介紹 @Published

在 Swift 5.1 之前, 每當我們看到 @_SOME_ 時, 都會去 Swift.org 查找 grammar_attribute-name, 像是 @I...

鐵人賽 自我挑戰組 DAY 22
30 天了解 Swift 的 Combine 系列 第 22

技術 30 天了解 Swift 的 Combine: [22] WWDC demo 解讀

1. session 722 Introducing Combine link 在系列文章開始時,我們提到 Combine 的 3 個主角: Publish...

鐵人賽 自我挑戰組 DAY 26
30 天了解 Swift 的 Combine 系列 第 26

技術 30 天了解 Swift 的 Combine: [26] GitHub repo 介紹: CombineDataSource

CombineDataSource 是一個在 GitHub 現有的第三方函式庫, 將 TableView 的DataSources 很有趣的與 Combine...

鐵人賽 自我挑戰組 DAY 23
30 天了解 Swift 的 Combine 系列 第 23

技術 30 天了解 Swift 的 Combine: [23] Combine Log in 實作

Demo project: link 在學習了 22 天了之後, 是時候實作了, 這次我們要做使用者登入的機制, 功能如下: 賬號與密碼必須同時超過 3 碼,...

鐵人賽 自我挑戰組 DAY 21
30 天了解 Swift 的 Combine 系列 第 21

技術 30 天了解 Swift 的 Combine: [21] Combine 的錯誤處理

Combine 中的 Error handling 可方便處理 throws 的錯誤拋出。 開始之前,先建立 Error 與 Function enum Dem...

鐵人賽 自我挑戰組 DAY 11
30 天了解 Swift 的 Combine 系列 第 11

技術 30 天了解 Swift 的 Combine: [11] Operator 3.整併類型 + 4.符合篩選類型 + 5.序列篩選類型

Operator 3. 整併類型 3-1. reduce: 將上游在結束前的每個元素連續處理 func reduce<T>(_ initialRe...

鐵人賽 自我挑戰組 DAY 14
30 天了解 Swift 的 Combine 系列 第 14

技術 30 天了解 Swift 的 Combine: [14] Operator 9.失敗處理類型, Operator 10. 格式解析類型

今天這部分很適合用 URLSession.datataskPublisher 介紹 Operator 9. 失敗處理類型 9-1. assertNoFail...

鐵人賽 自我挑戰組 DAY 25
30 天了解 Swift 的 Combine 系列 第 25

技術 30 天了解 Swift 的 Combine: [25] 好文分享 從零打造基本版 Combine

之前在 iPlayground 2019 有個分享, 是講如何在 Swift 5.0 之前沒有 Combine 的環境下建立 ReactiveX 的架構. 講者...

鐵人賽 自我挑戰組 DAY 24
30 天了解 Swift 的 Combine 系列 第 24

技術 30 天了解 Swift 的 Combine: [24] 分享 SPM 與 CombineHelper

Combine 目前的情形需要一些 Helper function 來處理過多重複的Operator,為此, 我們可以使用 Xcode 11 最新的功能 Swi...

技術 Combine-Dropping values 的用法

Dropping values 主要用途是將特定的值丟掉,丟掉的條件有以下三種用法。 dropFirst dropFirst 裡面可以帶一個 interger的...