缺乏可供學習的專案
SwiftUI 已經推出將近 6 年,為何許多 iOS 開發者還不熟悉 SwiftUI 呢?
一個最基本的原因就是「用不到」。
工作會接觸到的專案往往需要支援較早的 iOS 版本,所以無法使用 SwiftUI。照理來說,這個現象應該會逐年下降,因為工作的專案會淘汰支援舊版本,那就可以開始使用 SwiftUI 了。
但是實際上,導入一項新技術需要大量的研究與試錯,如果開發團隊過去並沒有在 SwiftUI 上進行研究與投資,一旦可以使用時,也不知道從何開始。
所以,並不是沒有外在條件限制以後,就自然而然可以接觸新的技術。想要學習 SwiftUI 的話,早就可以在個人專案上進行了。
我在軟體開發工作上一直都是在公司的專案與個人專案交互參照與學習。雖然我會嚴格地區分公司與個人的設備、程式碼、工作時間,但是經驗與知識是存放在同一個大腦的。
我常常在 side project 進行研究、嘗試新功能或開發方式,等到有把握之後再帶到公司的專案。在公司專案採用的較大規模或深入的架構設計,則可以帶到 side project,免去一些彎路。這種相輔相成的知識與經驗累積,可以讓我在公司專案做技術決策時更有把握,甚至可以教同事們。
總而言之,我想說的是,如果因為在等待公司的專案採用某項新技術才去學,那可能永遠也學不到。開發者最好要有自己的 side project、有自己想做的題目與應用。不論這些題目是否賺錢或是能夠上架 App Store。只要有動力去維護它們,就有機會在開發過程中學習新的技術。