[DAY01] 七天理解SOLID原則-概念篇


想像一下,你的老闆or客戶,在專案開發中 / 開發後,一直再變更需求?
想像一下你有沒有專案完成後,過了一段時間回來修改,會發現很難維護的冏況?
想像一下團隊合作開發,會跟團隊在寫CODE上有很多觀念上的落差?

我想,有幾年開發經驗的CODER,應該都有相同的感覺?

那...有沒有一些共同觀念,可以降低開發團隊中CODER的觀念落差?

有,很多方法,但我們先來一個基本原則概念吧 = SOLID

學好SOLID原則觀念,上面的事情一定會有改善(想:至少一點點吧),
這些原則觀念,也是讓團隊間養成良好習慣的一種方式(想:一定比沒有概念好)。
透過七天的文章分享,幫助我再重新整理一下這些概念,也想真正的分享實務上的使用。

老師有說 : 要學縮寫前要先看看所有的單字,我們先來看一下SOLID指的是什麼

  • S = Single responsibility principle (SRP) = 單一職責原則
  • O = Open-Close principle (OCP) = 開放封閉原則
  • L = Liskov substitution principle (LSP) = 里氏替換原則
  • I = Interface segregation principle (ISP) = 接口隔離原則
  • P = Dependency inversion principle (DIP) = 依賴反轉原則

嗯,上面單字我想都看得懂,但接在一起討論時,可能需要更多的說明與實例。

接下來的六天,我會將文章分為以下順序介紹

  1. SRP 單一職責原則的介紹與實例
  2. OCP 開放封閉原則的介紹與實例
  3. LSP 里氏替換原則的介紹與實例
  4. ISP 接口隔離原則的介紹與實例
  5. DIP 依賴反轉原則的介紹與實例
  6. 學完SOLID之後呢?

SOLID=讓CODE比較好維護?
我的解釋是:
SOLID是一種概念+策略,應用在"物件導向"相關語言的開發上 EX:C# / JAVA..
也就是讓需求改變在開發工作上,提供了一些共用的策略。
近10年的開發經驗告訴我,團隊間的觀念越接近,能力越相等,團隊間就更有力量與共識。
讓我們先從SOLID開始吧!

#SOLID #設計原則 #物件導向







你可能感興趣的文章

變成rule的形狀(1) - Stylelint

變成rule的形狀(1) - Stylelint

component test 問題集2(Vue2 + TS + Jest+ vue-test-utils)

component test 問題集2(Vue2 + TS + Jest+ vue-test-utils)

Level of evidence for causality - how to find causal relationship

Level of evidence for causality - how to find causal relationship






留言討論