iOS App 程式開發 好好利用 Swift Protocols 簡單增進程式碼的可測試性 測試程式碼可以確保它運作起來符合需求,而且在添加新功能時也不會發生問題。然而,很多開發者都因為程式碼在層級、類別、及外部框架的依賴性之間過於耦合,而不願意花時間來測試程式碼。此文會利用 Swift Protocols 向大家證明,建立框架的抽象層或解耦類別並不困難。 AppCoda 編輯團隊 Apr 3, 2019 9 分鐘閱讀時間
iOS App 程式開發 iOS App 介面設計教學:如何制作表格和集合視圖的組合介面 本篇為在校大學生黃潤華先生的客座投稿,他主要使用 Swift 進行開發,有時使用 C 或者 C++ 挑戰一些算法題目。 在 iPhone 和 iPad 的很多 app 裏面,我們都會看到許多用表格視圖和集合視圖制作起來的介面,大部分應該是表格視圖和集合視圖的組合介面。比如我們在 app AppCoda 編輯團隊 Mar 27, 2019 17 分鐘閱讀時間
iOS App 程式開發 Massive View Controller 重構: Swift Extension 整理術 Swift Extension 是用來延伸既有型別的東西。透過 Extension,當我們想為某個型別加功能的時候,就可以不用把新的功能寫在該型別的主體裡面。此文教大家善加運用 Extension,從而大幅簡化 Massive View Controller。 Hsu Li-Heng Mar 20, 2019 12 分鐘閱讀時間
iOS App 程式開發 深入解析 Promises 輕鬆控制 Parallel Programming (平行程式設計) 本篇原文(標題: Parallel programming with Swift: Promises )刊登於作者 Medium,由 Jan Olbrich 所著,並授權翻譯及轉載。 並行 (concurrency) 的概念與我們日常開發工作越來越息息相關。在上兩篇文章中(Swift 平行程式設計: AppCoda 編輯團隊 Mar 13, 2019 15 分鐘閱讀時間
iOS App 程式開發 利用 Protocol Extension 減少重覆的 Code 大大增強 Code 的維護性 對任何程式開發來說,減少重覆的 code,把權責明確分開,讓 code 維護性變好,是非常重要的課題。同樣功能的 code,如果分散在程式的各個角落,不但改功能時很有可能會漏改或改錯,而且要找到某個功能確切的擺放位置也會非常困難;這些都會讓開發成本變得非常高,也會讓開發所需要的時間變得難以估計。 如果我們能把每個小元件的功能定義清楚,就有機會把重覆的部份拉出來,另外找個統一的地方擺放,在需要這些功能的時候,再簡單地連結過去, Huang ShihTing Mar 6, 2019 26 分鐘閱讀時間
iOS App 程式開發 Massive View Controller 重構:Coordinator 模式與 Flow Controller 在上一篇文章中,我們用了依賴注入的技巧,來將 View Controller 與 Model Manager 之間的耦合解開。然而,View Controller 的依賴並不只是這樣而已,View Controller 與 View Controller 之間的依賴更為常見。 比如說, Hsu Li-Heng Feb 27, 2019 9 分鐘閱讀時間
iOS App 程式開發 Function Naming 指南:適當為函式命名 讓程式碼更簡潔清晰 本篇原文(標題: Function Naming in Swift)刊登於作者 Medium,由 Pablo Villar 所著,並授權翻譯及轉載。 在本篇教程中,我們將探討一個在編寫函式時經常遇到的問題:我該如何命名這個函式呢? 雖然這個問題看起來很簡單,但作為軟體開發人員,適當地命名函式對我們職涯非常重要。下文我們將會看到, AppCoda 編輯團隊 Feb 22, 2019 7 分鐘閱讀時間
iOS App 程式開發 Line Chatbot: 使用 ngrok 開發 LINE 應聲蟲聊天機器人 Line 在 2017 年開始推出聊天機器人 (Chatbot),經過兩年半的發展,這個功能可謂遍地開花。在這篇文章中,佳新將會一步一步教大家以 ngrok 開發具有人工智慧的應聲蟲聊天機器人,讓你看看使用 ngrok 開發和測試有多方便。 陳 佳新 Feb 18, 2019 15 分鐘閱讀時間
iOS App 程式開發 設計多執行緒 (Multi-Threaded) App 處理連續的資料流量更有效率! 本篇原文(標題:Designing Multi-Threaded Applications Using Swift)刊登於作者 Medium,由 Jimmy M Andersson 所著,並授權翻譯及轉載。 身為一名在汽車產業裡的 iOS 開發者,我花了不少時間處理即時資料。現今許多 AppCoda 編輯團隊 Feb 13, 2019 7 分鐘閱讀時間
iOS App 程式開發 Massive View Controller 重構:透過依賴注入 (Dependency Injection) 減輕職責 View Controller 可以說是 iOS 開發裡的核心物件。這不只是因為它佔據了 MVC (Model-View-Controller) 中的中心位置 Controller,還因為 UIKit 團隊有意推動場景導向的設計。UIKit 本身是以當時的 AppKit 為基礎,針對行動系統所重新設計出來的一個框架。在原本的 AppKit Hsu Li-Heng Feb 8, 2019 11 分鐘閱讀時間
iOS App 程式開發 實作無限分頁滾動視圖 (Scroll View) 為使用者帶來更完美的體驗和設計 在這次的範例之中,我們將會製作一個無限分頁滾動視圖 (Infinite Paging Scroll View)。 AppCoda 編輯團隊 Feb 1, 2019 14 分鐘閱讀時間
iOS App 程式開發 善用 Xcode Instruments 來最佳化程式碼 大大提高 App 效能! 要偵測 App 的效能問題、並決定如何改善效能時, Xcode Instruments 的 Time Profiler 模版就是我們的最佳起點。此文會教你使用 Time Profiler 來分析範例專案程式碼的效能,從而找出程式碼中的瓶頸,並優化程式碼。 Andrew Jaffee Jan 28, 2019 20 分鐘閱讀時間