研討會資訊
介紹
iPlayground是一個從 2018 年開始專為蘋果軟體開發者設計的研討會,主題涵蓋 iOS、iPadOS、macOS、watchOS、visionOS等蘋果生態系App應用開發、程式語言Swift和Objective-C、以及 UI/UX 設計的經驗分享。
前一次的iPlayground是2020年了,整整四年前,中間歷經疫情的關係停辦許久,疫情生活/工作模式的改變也讓許多線 下活動紛紛改為線上舉辦,少了實體面對面交流的機會。
今年受到廣大開發者的熱情呼喚以及主辦單位的重燃熱血,再次讓iPlayground復活,使國內Apple開發者社群能夠重新有舞台可以與舊雨新知交流分享各自的專業知識與經驗。
(Photo by iPlayground 2024主辦單位)
議程介紹
Why SwiftUI? Why TCA?
講者為台灣iOS開發者社群知名Podcast節目及開發者週報wealk self 主持人,任職公司團隊有著三年100%使用SwiftUI+TCA的開發經驗
指令式程式設計 vs 宣告式程式設計
UIKit與SwiftUI,是指令式程式設計與宣告式程式設計兩種不同設計範型的差異
要學習SwiftUI,必須要改變觀點,越不受過往UIKit開發的經驗影響,學習新框架的過程會越順利
同時,未來在學習其他現代化的宣告式框架,如Flutter、Jetpack Compose等,觀念上也比較容易銜接
畫面呈現結果是由狀態所定義,程式邏輯便能專注在管理各種狀態之間的轉換
SwiftUI Preview額外附加價值
為了在開發過程能夠確認各種狀態的Preview效果,必須先把所有狀態的假設都先準備好,而這準備過程就是在重新檢視設計
Apple便使用SwiftUI Preview來幫助Developer與Designer共同協作設計Apple Watch App,加速溝通及開發速度
為了讓程式碼能夠能容易使用Preview,會強迫開發過程將模組切分的更結構化,狀態管理更分明,也因此自然變得更容易測試
程式碼可讀性更高,也讓Code Review更容易
TCA架構與SwiftUI的搭配
The Composable Architecture架構能夠幫助SwiftUI的狀態更易於集中管理,最大的好處便是複雜的專案規模也能夠容易撰寫測試
Composable的特性易於將大型複雜功能拆分為可組合的小元件,能夠幫助團隊分工
該框架有著優秀的外部依賴管理Swift Dependency,即便不使用TCA架構,也能夠獨立使用此框架
小型元件結構化也有利於使用AI輔助工具做出suggestion
數碼遊牧及遠端工作的利與弊
講者為香港人,從2019開始數位遊牧的遠端工作生活,旅程遍佈東南亞、日本、台灣等地
規律工作時間
遠端工作超時工作是常態,很容易在起床睡前都還在工作,為此需要為自己制定時間表,追蹤每天的工作時間,養成規律的工作作息時間
固定辦公桌
咖啡店等開放場所比較難有固定座位,長期下來每天都要重新配置工作設備(螢幕、鍵盤、滑鼠、各式外接設備等)蠻浪費時間,建議還是要找有固定辦公桌的工作場所,如租用個人專用共享空間
居家辦公
通勤是上班族的惡夢,假設每天上下班花費1.5小時,每週5天約7.5小時,每月約33.75小時,等於一年花費約400小時在通勤上
居家辦公能更省下這些通勤時間的浪費,做更多的創造
與家人或伴侶的溝通
如最近颱風假小孩放假你卻要上班,在家中也常有不同類型的干擾,因此需要與家人或伴侶溝通建立規則,如設定不可打擾的時間及工作區域等
並多花時間與家人對話,互相支持