原本只想發個沸點,可是寫着寫着發現字數太多了... ⇎_⇎程序員
總感受是,碌碌無爲。編程
年中的時候,送走了合做一年多的老搭檔,一個月後迎來了一位新搭檔,嗯,三個月後又送走了她。後端
年初開發沸點的時候,遇到性能瓶頸,開發週期也很是緊張,作了個冒險的決定,硬着頭皮用了一個週末自學 Texture 的整個框架及 Flexbox
佈局,又用了三天的時間把基於 UIKit
寫好的沸點信息流以及部分詳情頁所有重構了,期間遇到不少問題,不少挑戰,如高頻率的閃爍、與工程現存的緩存兼容等,但好在都一一解決了,雖然過程很痛苦,如今看來收益仍是遠遠大於成本的。緩存
小冊本地化上線前,被蘋果連續審覈拒絕 6 次,上訴到審覈委員會,最後蘋果美國聖何塞總部的一個妹子打電話過來溝通,懟了她整整一個上午,次日提交了第 7 次,經過了。服務器
上小冊就要作內購,作內購就要上 IAP
,上了坑爹的 IAP
就要應付隨時隨地可能發生的丟單、掉單問題,這種由移動端驅動服務器進行的驗證支付模式,真的反人類,爲此設計了一整套用以應付 用戶扣款成功後馬上發生斷網、扣款憑證上傳服務器驗證的過程當中忽然發生斷網等異常而致使的丟單問題的自動激活驗證的重啓處理,即便這樣也不能完全避免丟單問題,可見之坑。框架
十一回來花了三週的時間開始重構,重頭作了掘金 iOS 端的組件化。工具
衆所周知掘金的 iOS 端閃退問題至關頻繁,下半年藉由組件化的契機進行了大範圍的重構,改善最顯著的仍是內存問題,從7月下旬開始,崩潰率逐步由 2.42%
的水平下降到如今的 0.16%
,文章閱讀頁仍是存在不少問題,亟待改善,想一想去年接手項目時的崩潰率能達到接近 6%
的水平,用戶真的是很善待咱們了。oop
在推動掘金 iOS 端 Swift
化的道路上,嘗試了不少方案,也放棄了不少方案,這不是一條好走的路,或者說最開始上混編就是個錯誤的決定。去年在上海的 Google Developer Days
上和阿里的朋友聊了許久,他們硬生生從 純 Swift
環境撤回了純 Objective-C
環境,緣由不少,其中的包袱也不少,在今年的 SwiftGG
大會上也聽到了唐巧講述的猿題庫 Swift
遷移之路,和咱們面臨的困境很是像,我思考了許久,至少到目前,我對 Objective-C
遷移到 Swift
的見解是:組件化
Swift
的許多特性來應對兼容問題,安裝包的體積也是一個問題Objective-C
的代碼「翻譯」 成 Swift
,更好的作法是,將它們的代碼進行隔離管理,新業務用 Swift
繼續寫,老業務等着迭代來替換,除非你能接受重頭來過的代價。還作了些微不足道的事,好比說上了個 iPad 版本之類的。佈局
這一段應該算是過去的這一年當中最沒有成就感的部分,總結下來就是在 iOS 的框架裏作個 API 搬運工,並無太多值得高興或者說興奮的事情發生,社區應用從技術層面上講,就是這個樣子。
不少 iOS 開發經常會由於一句 「iOS開發沒人要了」 而不爽,甚至惱羞成怒,懟曰:沒人要是由於你不行,高級專家需求可大着呢。
首先是一名程序員,其次纔是一名會 iOS 開發的程序員。
許多 iOS 開發者都在談論着底層底層,我最近常常會想一件事,就算把 iOS 啃穿了也只是把蘋果的 SDK 啃了一遍而已。誠然像 Runtime
、Swift
等這些都是徹底開源的,但一碰到像 RunLoop
、 Core Animation
內部實現這樣的核心技術點,仍是有一層厚厚的閉源壁壘,花大把精力在一家平臺的 SDK 上,值得嗎?
看到有些朋友轉行去了 AI 領域,作着挑戰與壓力並存的工做,以爲本身彷佛是在浪費人生。
產生上述想法的緣由總結下來就算兩個字 ----- 焦慮
因爲上面的焦慮感,致使這一年混混僵僵的作了不少事,但彷佛每一件都沒什麼實際價值或者說是意義不大。
嘗試了幾門新語言,Ruby
、Python
和 Go
, 也就是照葫蘆畫瓢的水平
從去年的 GDD 大會以後,試了下 Flutter
,感受通常,今年又試了幾回,沒有太多的感觸,相反各個羣裏對 Flutter
的討論卻是熱火朝天。
年初面向公司內部的作了一次技術分享 《面向協議編程(Protocol Oriented Programming)之旅》
嘗試給掘金的 iOS 客戶端上一套 Crash 自動防禦,最後發現 Hook 系統類的風險過大且不可控,不 Hook 系統類能作的防禦又頗有限,企圖一勞永逸的想法破滅,最後不了了之。
參加了 9月份在北京舉辦的 SwiftGG
大會,見了喵神王巍、唐巧、戴銘等一衆大佬。
寫了幾個 Mac 工具,本身在用,沒有開源。
本身的博客從新搭了,可是沒有更新內容,都存在電腦裏了,不知道爲何,對寫文章忽然沒了什麼興趣。
iOS 逆向作了些皮毛研究。
研究了一陣子美軍軍用訓練模擬器的民用版,著名硬核軍事模擬遊戲 ARMA3
的 C++
模組
《編程珠璣》英文版,還沒讀完。
公司後端上容器化的時候,學習 Kubernetes
,考慮對掘金的 iOS 代碼也作成容器部署到 CI 平臺上,後來發現沒有太合適的 Objective-C
或者 Swift
的相關鏡像,要麼放棄,要麼本身寫一個。
年末投稿了一篇《iOS 知識小集》,南大 給發了微博。
形成年底這種空虛感的最主要緣由,是本身的心裏並無一個明確的目標,一直在思考想要作什麼,想要什麼,但究竟怎麼規劃,不知道。
這幾天讀了一些書,也聽了一些書,有些感觸。
腳踏實地作好本身,iOS 都作不到極致,談什麼更遠的目標呢。
其實睡眠質量的影響也很大,推薦一本書《睡眠革命》,親身實踐,睡眠質量顯著提高。
今年吸收去年的教訓,年初就訂好一個清單,逐步實現,一步一個腳印。
今年沒怎麼運動,一共騎行了 396.17 千米,平路最高時速 46.93 km/h 創造了我的最好成績 ,主要仍是在北京,沒有去什麼遠的地方,環臺灣的計劃又擱置了一年。
給妹子買了輛 Wilier GTR,找了個週末帶着騎了一百多千米,如今不再跟我騎車了。
踢了十幾場球,期間傷了三個月,漲了 15 斤,從 邊鋒 踢到 邊後衛。
6月底在小區門口遇到了一條小流浪狗,尾巴被人折斷了,很可憐就收養了,如今半歲大,很粘人。
11 月底和妹子一塊兒去了趟日本,棒球青春的聖地 甲子園,圓夢。去了趟京都,隨手拍了一些照片。
把 EVA
又在 B 站上重新補番了一遍,仍是對這種無處不在的細節震撼。
給父母和本身買了商業醫療保險,程序員的健康問題更像是個隱疾,權當理財了。
Steam帳單
本地多人合做類
本地沙盒模擬類
模擬駕駛類
體育類
競技網遊
有些囉嗦了,大概就是這些吧。