那曲檬骨新材料有限公司

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>通訊/手機編程>

Swift架構(gòu)師是否是最適合iOS的

大小:0.3 MB 人氣: 2017-09-25 需要積分:1

  用 Swift 架構(gòu) iOS 應(yīng)用的正確姿勢!2017-06-28 12:44程序設(shè)計/iOS  The Right Way to Architect iOS App with Swift

  關(guān)于 iOS 架構(gòu)的文章感覺已經(jīng)泛濫了,前一陣正好 Android 官方推了一套 App Architecture,于是就在想,對于 iOS 來說,怎樣的架構(gòu)才是最適合的。帶著這個問題,我開始了探索。

  Why Architecture Matters

  這是第一個也是最重要的問題,為什么會出現(xiàn)各種 Architecture Pattern?真的那么重要么?

  我們來想一下,無論是做一個 App 還是搭一套后臺系統(tǒng),如果是一次性的,今天用完明天就可以扔掉,那么怎么快怎么來,代碼重復(fù)、代碼邏輯、代碼格式統(tǒng)統(tǒng)不重要。

  這種場景比較適合黑客馬拉松,而真實情況往往是我們的代碼需要上線,要對用戶負責,而一套好的架構(gòu)會讓這些事情變得更加容易。

  好的架構(gòu)簡潔且整潔

  

  說到架構(gòu),往往會想到建筑,軟件架構(gòu)跟建筑不同的點是軟件架構(gòu)會隨著時間的推移進行演進,而實體建筑則沒這個特性。拋開時間維度,這二者還是有一定的相似性的。

  好的架構(gòu)容易催生好的代碼,就像住在干凈整潔的房子里,會下意識地讓其中的家具、電器、擺飾等也井井有條。

  好的架構(gòu)讓代碼更加容易維護

  不容易維護的代碼往往有這么幾個特點:

  抽象程度低

  職責不明確

  喜歡走捷徑

  好的架構(gòu)能對 2 和 3 有一定的作用,對于第 1 點還是要看程序員的能力和經(jīng)驗。

  抽象程度低

  這樣的代碼往往是命令式編程產(chǎn)生的,也就是像 CPU 那樣的思考方式,把產(chǎn)品經(jīng)理的需求直觀地翻譯成代碼,而不對其中的共性、本質(zhì)進行抽離和抽象,時間一長就容易看不懂其中的邏輯,需求一變就要改核心代碼。

  比如下面這段代碼,不知道具體要完成什么任務(wù)。

  Swift架構(gòu)師是否是最適合iOS的

  職責不明確

  這也是產(chǎn)生「一大坨代碼」的原因之一,就像 MVC 模式里,沒有說明用戶的操作應(yīng)該在哪里處理,業(yè)務(wù)邏輯放在什么地方,這樣就容易走捷徑,怎么方便怎么來,而越是方便到后來就越容易出問題。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?
      百家乐官网庄家抽水的秘密| kk娱乐城开户| 誉博百家乐官网327589| 亲朋棋牌刷金币| 百家乐比赛技巧| 大发888娱乐城网站| 百家乐官网投注之对冲投注| 大发888-大发娱乐城下载| 金臂百家乐注册送彩金| 百家乐官网实战玩法| 大发888娱乐城真人视讯服务| 百家乐单跳双跳| 百家乐官网l23| 五华县| bet365娱乐城官网| 威尼斯人娱乐城 196| 百家乐解密软件| 做生意风水门面要求| 百家乐官网的方法和公式| 威尼斯人娱乐城首选金杯娱乐城| 投真钱百家乐必输吗| 百家乐官网最好投| 澳门百家乐官网的赢钱不倒翁 | 百家乐信息| 免费百家乐官网预测| 百家乐官网龙虎台布作弊技巧| 真人百家乐网站接口| 百家乐室系统软件| 网上赌百家乐官网有假| 百家乐官网博彩的玩法技巧和规则 | 阳信县| 台北市| 网络博彩网| 大发888亚洲城娱乐城| 大发888娱乐能借钱| 百家乐最低压多少| 做生意属虎的朝向| 百家乐官网可以破解吗| 大中华百家乐官网的玩法技巧和规则| 博狗百家乐官网现场| 明升 |