iOS

淺談回應鏈 (Responder Chain) 讓你認識這個靈活又實用的設計模式!

在 UIKit 當中負責處理使用者動作的東西,叫做回應鏈 (Responder Chain)。回應鏈是由許多部件一起組成的一個複合元件,包括 view、view controller、window、application 等等。這些元件經由單向鏈結串列 (singly linked list) 的架構連接在一起,使得接收動作與處理動作的物件可以不用是同一個。下層的元件接收到使用者動作之後,可以選擇把動作往上層傳,讓上層的物件去攔截動作並處理(「回應」)。這樣的架構使回應鏈的變化彈性極大,隨時可以插入或移除 [...]


iOS

在 Swift 利用 Forward Pipe Operator 達成複雜的自動化流程!

在類 Unix 系統的終端機 shell 裡,有一個功能叫做管線 (pipeline),可以把A程式的輸出口與 B 程式的輸入口串接起來,使 A 與 B 變成連動的程式。 比如說,我們可以把 ls -al(把當前資料夾底下全部的檔案用列表方式列出來)跟 less(具備上下捲動功能的閱讀器)用管線串在一起,就可以用 [...]







iOS

從零打造基本版 Combine 認識 Functional Reactive Programming

這篇文章可搭配投影片版閱讀。 Apple 平台的開發者社群對於 FRP (Functional Reactive Programming ,函數式反應式程式設計) 的接受,相對於網頁開發者來說算是晚的。即使有了 RxSwift、ReactiveSwift 等開源的 FRP 框架流行,FRP 似乎還是被社群視為是一個艱深難學、不適合一般人的概念。不過,這樣的觀感正在改變中。隨著 [...]


iOS

利用 Swift 5.1 新功能實作 Fluent Interface 讓程式碼更易讀流暢!

最近,SwiftUI 正如火如荼地在全世界進行公開測試。如果你也有經意或不經意地接觸到 SwiftUI,那你可能會發現,它在設定 View 性質的語法上,跟我們以前學過的很不一樣。 一般在設定物件的時候,我們通常是這樣寫的: 但是在 SwiftUI 裡,我們卻得這樣寫: 差別很大對不對?先不要管句型的細節,光就排版的美感來說,後者不只比前者簡潔許多,它的縮排也很清楚地告訴讀者:後面三行都是第一行的子句,重點還是在第一行。反之,前者的每一行縮排都一樣,看不出重點,而且每一句還都得重複寫一次 [...]



iOS

製作物件池 (Object Pool) 重複利用物件 讓你大大提升開發效能!

建造物件是一件耗時耗力的事。除了需要配置記憶體給它之外,可能還會牽涉到排版、渲染或載入外部資源等耗費大的動作。WKWebView 與 MKMapView 就是這樣的例子,都需要大量的時間去啟動。如果只有一次兩次的話還好,但如果它們經常出現的話,使用者就要常常等它們載入,很影響體驗。 [...]



iOS

《iOS 10 App程式設計進階攻略:39個必學的開發技巧》正式推出


iOS

Lottie初學者教學指南:如何在iOS App設計一個令人驚豔的動畫


Swift

精通Swift:列舉、閉包、泛型、Protocols和高階函數


iOS

iOS 9 新功能 : 堆疊視圖介紹 (Stack Views)


Swift

Swift 2 初學者指南


iOS

Swift 教學:如何使用iOS Charts API 製作漂亮的圖表


iOS

以Parse與Swift建構一個像Instagram一樣的App


iOS

建立一個像Medium App的下滑選單


iOS

如何用Swift建立視圖控制器畫面之間的動畫過場