iPlayground 2019

在今年決定轉職軟體工程師,並加入 AppWorks School 後,馬上碰到了第二屆的 iPlayground。這是由一群工程師自主策劃的活動,這次租借了台大博雅教學館作為活動場館,與會者大概有兩三百人以上,可以說是台灣最具規模的 iOS 研討會。
比較可惜的是因為卡到個人專案的開發,這次參與到的場次比較少,其中比較有印象的是 iOS 架構跟 AR 這兩場。
漫談 iOS 架構:MVC / MVVM / VIPER 與 Redux
相信絕大多數初學者都是從 MVC 入門的,一開始覺得光是個 MVC 就寫得七零八落,什麼 MVVM 或 VIPER 肯定都離我很遙遠。不過講者 Nelson 帶著大家從 MVC 開始拆解,解釋它的本質、缺點,以及如何重構,在這過程中一轉眼就變成了 VIPER 的框架。這時就有種恍然大悟的感覺,原來這些框架的概念根本沒有差多少啊!(雖然之後想嘗試還是什麼都寫不出來就是了😂)
在物件導向的世界中,程式就像是擁有很多成員的團隊、公司;而這些所謂的「架構」,就像是組織成員之間的分工。在初期常常會有職責混亂、分工不均的狀況,當問題發生時,很難釐清問題出在哪裡、應該找誰處理,或是有人扛的工作量特別多(就像 MVC 裡面的 Massive Controller),對組織來說絕對不是個健康的現象。然而在不斷的擴編、改組之下,彼此的權責得以分離,每個人都有各自明確該負責的事,並透過彼此的合作來完成更多更複雜的工作,組織的營運也能更加順利。
AR 互動遊戲開發經驗分享
過去其實一直對遊戲開發蠻有興趣的,也花過一小小陣子摸過 Unity 開發引擎(真的超小一陣子);在 AppWorks School 為期一週的團隊協作專案中,也有實際玩過 iOS 的 ARKit,並做了一個爛爛的服飾試穿功能。
講者 Jacky 展示了國泰人壽的一個 AR 互動小遊戲,直接在演講台的桌面上創造出一個小小社區,並且能操控人物去找 NPC 對話、進行不同的任務,開發上的 code 實際上並不複雜,但整個遊戲卻非常的有趣吸引人。一直覺得 iOS 的 SDK (不只 ARKit)都做得很容易上手,往往不用太多的 code 就能做到很多事情,大幅降低初學者的入門門檻;再加上 Apple 也有持續在推出新版本的 ARKit 來強化既有功能(AR 頭戴裝置也快要問世),未來勢必會是很有發展淺力的領域。
後記
第一次參加這種研討會,真的開了許多眼界。倒也不是真的學到了多少厲害的技術,畢竟光聽沒有實作,這些東西也不會變成你的。
一方面是 iOS 的領域很廣,但很多東西的概念其實都比想像中還要簡單,相信只要肯花時間跟心力去接觸,肯定都有辦法學會的;另一方面是參加研討會真正的目的到底是什麼?
這段話大概是這次研討會最大的收穫了吧。技術的資源基本上透過網路都能找得到,但很多時候「人」只能透過現場面對面的機會來認識、交流,在未來的開發路上也才能有更多的夥伴和你一起前進。一直以來都有點害怕這種社交的動作,但在 AppWorks School 也深切體會到這一點,有時候支持你走下去的反而是你身邊的夥伴們。
謝謝主辦單位,除了贊助我們門票之外,在工作之餘還能辦出這麼厲害的活動,不斷推動著台灣 iOS 的社群,真的辛苦了;也謝謝 Luke 一直帶著我們見世面,帶給我們很多很多的資源和支持。
看來工程師生涯真是條無邊無際的不歸路呢!
