1. IOS域課程
一.程式權責拆分:程式架構
這週觀看了“iPlayground 2019 | 漫談 iOS 架構:MVC / MVVM / VIPER 與 Redux”,瞭解從MVC到VIPER一路不斷拆分更細的權責。拆的這麼細的用意是當情境所要開發的單一程式功能龐大且多樣時(比如:蝦皮,Facebook,Line等等),為了更好維護以及除錯,所選擇的架構,所以不是說選哪個架構就好棒棒,一定用這架構,而是需要知道自己所需到什麼程度的拆分。而每個架構的縮寫名稱只不過是業界在溝通上為了能更加順利以及快速了解程式碼大致架構。
二.CommunicationPattern
程式之間權責既然拆分開來了,也就衍生出程式之間如何溝通。這週學到三種溝通方式:Closure、(Protocol&Delegate)、Notifications Center。另一個待研究的KVO。
有趣的是,這週在技術支援討論時間中,發現Apple的架構走向(SwiftUI)逐漸在減少像是Protocol&Delegate等程式間的溝通,取代的是將程式每樣功能拆分得更細,像是小積木一樣,函式本身就透過積木的拼裝,直接完成一個功能,而不再像是依照功能的分類拆分在不同地方,然後透過溝通來傳遞資料。
這也沒有所謂變得好或壞,個人想法上,可能這種拆分方式是較適合目前Apple生態系中運作?畢竟分久必合,合久必分。說不定現在逐漸合併的趨勢下,哪天又會因為程式臃腫而又有其他拆分方式。工程師也必須不斷關注趨勢去變化。
三.資料圖表化:Charts
沒人喜歡看著一大堆的數據,所以轉為圖表表達是必然的,此第三方插件已經將整個製作圖表過程相當簡化且步驟明瞭,在寫程式的過程會發現,其實難點在於資料的整理,要怎麼儲存解析後的資料,要怎麼排列表達圖表才是最需要花費功夫的地方。
2.App產品分析
這週挑選了的APP是:Wine-Searcher
這是一個可以透過APP搜尋全球範圍內特定葡萄酒,威士忌,烈酒或啤酒的價格跟評論
一樣只先簡略依照產品分析要點說明,詳細報告內容紀錄在HackMD
-
目標客群:沒有酒類專業知識但還是會小酌的人
-
解決或滿足了什麼樣的需求:解決搜尋評價與比價的不便性
-
解決的方式:用相機拍下酒標立即透過資料庫比對搜尋,app立即顯示平均售價與評論
-
能改進的地方:搜尋準確度十分高,只能說是全英文介面加上如果要更精確的過濾條件需要額外付費較讓人退卻之外,基本功能已非常完美