超越沙盒限制:不透過 Mac App Store 都可以簽署並發佈 macOS App !
因為 OS X Mojave(特別是 Catalina)問世、以及 Apple 對 App 公證 (Notarization) 的要求,讓我們這些資深的 macOS 開發者開始擔心,Apple 會否禁止開發者自行發佈 App 的流程。你們可能都曾經試過在網站上直接下載 macOS 軟件,也就是說不需要從 Mac App Store 來下載。但是你有仔細想過這件事嗎? [...]
善用 Xcode Instruments 來最佳化程式碼 大大提高 App 效能!
世界上還有些頑固的人,拒絕使用如物件導向程式設計 (Object-Oriented Programming)(特別是繼承 (Inheritance) 與多型 (Polymorphism))、協定 (Protocol) 和協定導向程式設計 (Protocol-Oriented Programming)(特別是組合 (Composition))、泛型 (Generics) 與閉包 (Closures) 等技術。在意識層級上,這些頑固的人拒絕這些技術的原因,是因為他們認為這些技術會造成「巨大」的效能消耗。在潛意識中,這些頑固的人並不了解這些技術。所以,我們應該相信 [...]
善用 Xcode Target 來管理專案 為你節省大量時間!
在本次的教學中,我將展示如何利用 Xcode Target 控制建構 iOS App(以及 macOS、watchOS 和 tvOS)過程中的複雜性。如果開發者知道並非所有事情都要靠程式碼(如 Swift)來完成的話,就可以節省大量時間。像 Xcode 這樣的整合式開發環境 (IDEs) 提供了許多強大的工具,其中一個就是 [...]
Best Practice:助你在 Swift 中更效地使用類別
在本篇教學中,我將會介紹一些最佳實踐 (best practice),助你在 Swift 中安全而有效率地使用類別(參考型別)和參考語意 (reference semantics)。雖然協定導向程式設計 (POP) 及數值語義現在十分流行,但是追隨新技術的同時,不代表你需要拋棄所有關於類別的設計方法。你也可以在類別中加入一些簡單的結構,像是複製建構器 [...]
Swift Design Pattern 系列教程 #3:外觀模式 (Facade) 與轉接器模式 (Adapter)
本教程是設計模式 (Design Patterns) 系列的第三部分,從本系列的第一篇文章開始,我們研究了「創建」類別的工廠方法模式 (Factory Method) 與單例模式 (Singleton) 兩個範例,第二篇文章則討論了「行為」類別的觀察者模式 (Observer) 與備忘錄模式 (Memento) 兩個範例。 [...]
Swift Design Pattern 系列教程 #2:觀察者模式 (Observer) 與備忘錄模式 (Memento)
本教程是上週設計模式 (Design Patterns) 系列教程的第二部分。人稱「四人幫」(Gang of Four, GoF)的 Erich Gamma、Richard Helm、 Ralph Johnson 及 John Vlissides 所著的 “Design Patterns: Elements of Reusable Object-Oriented Software”,開創、收集、並解釋了目前常見的 23 種經典軟體開發設計模式。今天,我們將集中討論「行為 [...]
Swift Design Pattern 系列教程 #1:工廠方法模式 (Factory Method) 與單例模式 (Singleton)
人稱「四人幫」(Gang of Four, GoF)的 Erich Gamma、Richard Helm、 Ralph Johnson 及 John Vlissides 所著的 “Design Patterns: Elements of Reusable Object-Oriented Software”,開創、收集、並解釋了目前常見的 23 種經典軟體開發設計模式 (design pattern)。本教學將會重點介紹其中兩個四人幫稱為「創建」的模式:工廠方法模式 [...]
iOS 12 新通知功能:添加互動性 在通知中實作複雜功能
如果你看了 Apple 的 “What’s New in iOS 12” 網站的話,會看到 ” Interactive Controls in Notifications ” 這個段落,寫著: 通知內容應用擴展 (Notification content app extensions) 現在支援自定義視圖中的使用者互動性,如果 App 通知的內容需要驅使使用者互動,可請添加按鈕和開關等控件。 [...]
MVVM VS MVC:透過 MVVM 設計模式重構 MVC 應用程式 減低應用程式的複雜性
在 iOS 開發人員維護軟體工程時,設計模式是一項非常重要的工具。我將在下文介紹一些設計模式、和最佳的實踐方式,希望可幫助開發人員創建可靠並可維護的應用程式,換句話說,設計模式可以幫助你管理軟體的複雜性。 在本教程中,我將會介紹 “Model-View-ViewModel” [...]
開發者指南:如何利用 Core Bluetooth 製作一個監控心率 App
作為 iOS 開發人員,我們非常清楚人類喜歡可連接的應用程式。人類喜歡透過無線設備與其他人相互聯繫,我們期望可以與設備溝通,我們亦開始喜歡、並期望這些無線設備 (通常是「可穿戴設備」) 可以收集和分析關於自己的數據。很多設備已經成為生活中不可缺少的一部分,我們以一個常用短語來形容它們 [...]