2018 @Swift 大會見聞

PJHubs_xx發表於2018-09-17

IMG_2134.JPG

期待了兩個多月的 2018 @Swift 大會 終於來了!!Andyy Hope 、 喵神、戴銘哥、巧哥、蝦神、蓮叔等等眾多大佬都做了分享。其中讓我非常意外的是喵神,之前只是在喵神的各種社交網路上了解到他,但是沒想到喵神的聲音居然這麼萌~戴銘哥普遍被大家認為是被程式碼耽誤的畫家哈哈哈哈,蝦神下午的閃電演講瞬間打通了我對 Swift 做服務端的顧及(突然很想用在畢設中哈哈),蓮叔的演講居然是我唯一一場堅持沒聽完的 ? ,因為我對機器學習還沒步入學習,到最後一部分感覺要癲狂了哈哈。

第一天

IMG_2135.JPG

Andyy Hope

首先開場的是 Andyy Hope 的《 iOS Architecture improvements with Swift 》,主要是在講他的新做的一個框架 NEMO,Andyy 分享 MVCMVVMVIPER 三個框架的優缺點,最後引出了 NEMO ,整場聽下來我唯一覺得不錯的地方就是耦合切得很開,但是對於 NEMO 框架中最為亮點的地方—— JSON 控制 UI 渲染這點我還是抱有觀望的態度,之前也有其它框架通過 JSON 去控制 UI 元件的搭建或者渲染,這種做法的缺點我個人認為是需要寫很多基礎元件,一旦有新的需求新的設計,需要重寫的部分會比較多,但是,這同時也是這型別框架的優勢,如果產品的設計需要重用的地方較多、邏輯比較清晰,寫好基礎元件後可以完全依託服務端控制客戶端的顯示邏輯,但是需要再做一些額外容錯處理。我個人是比較喜歡 NEMO 的解耦方式,但是這種通過 JSON 控制 UI 渲染的方式還需要各位大佬們再踩踩坑哈哈。

IMG_2141.JPG

喵神

第二場是喵神的從《從 Swift 到機器學習》 ,不得不說喵神真是喵神啊!哈哈哈,全場笑點不斷,而且喵神完全可以當 @Swift 大會的吉祥物了。主要是利用了新推出的 CreateML 框架做了一個手勢識別,整場聽下來,理解了 CreateML 應用的場景在“傳統方向”非常方便,準確率非常高,識別個花花草草、貓貓狗狗小動物啥的完全不在話下,就連喵神只用現場錄製的兩個 10s 視訊都能有 85% 左右的準確率,但是在後邊的分析中推斷得出可能這 85% 的準確率只是識別出當前畫面中有沒有手而已,並不是這個識別這個手勢有沒有。

IMG_2143.JPG

戴銘哥

第三場是戴銘哥的《怎麼用 Swift 寫直譯器以及實用場景》,其實說實話,現場的大部分同學都被戴銘哥十分酷炫吊炸天的 keynote 炫翻了,群裡瘋狂刷“被程式碼耽誤的藝術家”哈哈。編譯原理剛上完,當時我也是用 Swift 寫了一個 C 的直譯器,只完成到詞法/語法分析這兩個過程,如果你感興趣的話可以看詞法分析器語法分析器github 地址。戴銘哥的思路跟老師教的大同小異,大家都在說“如果當初我的編譯原理也是這麼教的就好了” ? 。會後也有人問了戴銘哥,“這都 8102 年了,為啥還要搞編譯器”,哈哈下午就被蓮叔打臉了(後文講)。

巧哥

下午的第一場是唐巧,巧哥的《猿輔導從 OC 到 Swift 的遷移之路》,一直在思考和記錄巧哥說的東西,還沒消化完就結束了。巧哥從他們公司的三個專案“猿題庫”、“猿題庫老師端”和“小猿搜題”分別講述了三種遷移之路,第一個是 OC 和 Swift 混編,用巧哥的話來說到最後就是個悲傷的故事,剛開始團隊成員立了個 flag —— “以後只寫 Swift ”,然後現在又退回去只寫 OC 哈哈哈哈;第二個是純粹的 Swift 工程,這回想著重新起一個全新的 Swift 工程總可以爽了吧,然而總體的感受是有點怪異的難受,涉及到了一個 C++ 的直播庫以及一些其它的問題,這些眾眾問題聚合起來就導致產生了一種怪怪的、有點難受的感覺,但覺得不是寫不下去,現在也一直在寫 Swift ;第三個是巧哥所在的團隊,我沒想到的是,他們居然採用了 OC 持續開發,然後還是起一個全新的 Swift 工程,等到未來的某一個時機 Swift 工程差不多了,然後直接遷移過去,但是我們都知道嘛,問題就是永遠跟不上,因為只要 OC 工程還在開發,那就很大概率趕不上(天朝這麼頻繁的需求?),最後採用了抽離 OC 公共業務元件,引入 Swift 工程中,有時間再回去改造。

這種做法是可以,但是真讓我想不到的是居然巧哥他們可以允許一件這麼大的事情做兩次哈哈,不過這也是個思路,如果實在沒時機的話,可以把老 OC 工程的業務元件解耦出來形成元件,掛載在 Swift 工程中。

劉冠杉

第二場是劉冠杉的《做一個有趣的多人 AR 遊戲》。說實話我對杉哥是完全不瞭解,這個 topic 對新手比較友好,我們實話實說啊,這個 topic 我覺得衫哥可以做得更加深入一些。

蝦神

第三場是蝦神的閃電演講。十五分鐘就結束了,給我們過了一遍 Swfit 服務端的東西。前段時間差點沒忍住用 Vapor 寫現在的一個專案服務端,最後還是改為了用 Django ,但是經過蝦神的這一番介紹,Vapor 經過了利用 SwiftNIO 的重寫後效能大大提升,下次找個機會 all in 。

小魚

第四場是小魚的《Strings Seven Ways》,前面鋪墊了價值非常高的字串編碼,非常非常棒!感覺小魚對語言研究得比較多的人哈哈,日語、韓語張口就“忽悠”大家 ? 。畢竟 String 算是 Swift 中質量最高的幾個類之一了,各種強大的特性也就不在話下。

蓮叔

第五場是蓮叔的《Swift For Tensorflow》,剛開始還好,到後邊因為 keynote 看的實在是太吃力,不但程式碼又多又小,給的一些公式也沒來得及笑話,最後開始返回去刷 Andyy 上午的 pdf 。

第二天

Andyy

第二天是 workshop ,總共有三場,第一場是 Andyy 的 NEMO 框架的實際講解,今天仔細的看了給的 demo ,感覺優勢慢慢的體現出來了,提問環節大家對其都非常感興趣,有同學也提出了我之前的疑惑,NEMO 是否能夠較好的依賴服務端,Andyy 給的答覆是沒問題,這位同學又接著問,如果需要插入一些本地邏輯,比如 NEMO 怎麼處理?Andyy 給的答覆是“把使用者 ID 傳過去,讓服務端去做,然後返回確定邏輯重新渲染”。

《iOS應用安全與逆向》作者

第二場是關於逆向的,《iOS應用安全與逆向》的作者,剛開始我還能跟得上,到後邊跳介面,各種命令,沒接觸過實在跟不上 ? ,不過也讓我重新認識到了原來 iOS 還可以這麼玩。之前一直覺得安全、逆向需要積累很多東西才能開始(實際上確實是這樣),但現場這麼一來一回,其實可以從現在就開始,做這個事情作者說主要靠的是興趣,而且其中效益很大(咳咳)。

Hero 和 CollectionKit 作者

第三場是 HeroCollectionKit 的作者,Hero 是我之前在寫 Bonfire 時依賴很重的一個轉場動畫庫,用起來非常方便。兩個小時!!!兩個小時中作者不但帶我們一起寫了幾個 demo ,還分析了 CollectionKit 的一些實現流程,能說兩個小時實在是太強了。


以上就是本次 2018 @Swift 大會的主要內容,給我的幫助很大,認識了很多同學,也看到了大家對 Swift 生態的關注和積極,嗯,iOS 開發還有人要哈哈。最最最重要的是,我沒想到喵神這麼盡職!!!大會兩天全程陪同,雖然喵神也是講師兼職翻譯,這兩天我也在偷偷的觀察喵神(小迷弟哈哈),不敢跟喵神交流,發現其實喵神對國內的 iOS 生態非常在意,非常關注國內的 iOS 情況,同時也非常不理解在國外已經火得一塌糊塗的 swift 為什麼在國內還是 OC 大行其道哈哈哈。

在 workshop 的最後,我以為幾乎沒有機會能夠和喵神說上話,更別說合影了。沒想到最後一波抽獎,每個講師都只發一個紅包,有緣人自取,沒想到喵神的紅包居然被我搶到了!!!(合影去原文看)

原文連結:http://pjhubs.com/2018/09/16/2018-Swift大會/

優秀的人遵守規則,頂尖的人創造規則

相關文章