[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 #設計原則 #物件導向
七天理解SOLID原則
開發工作中,客戶或老闆永遠都會有擴充與功能變更的需求,那是否有所謂的基本原則是團隊可以遵守並思考的呢? 這個系列為七天理解SOLID原則,相信大家理解後,可以讓團隊間的合作更有默契,開發工作的維護也會更為輕鬆。






Related Posts

打包你的Python程式~PyInstaller基礎篇

打包你的Python程式~PyInstaller基礎篇

python筆記

python筆記

【單元測試的藝術】Chap 1: 單元測試基礎

【單元測試的藝術】Chap 1: 單元測試基礎

Day03 運籌帷幄

Day03 運籌帷幄

30-Day LeetCoding Challenge 2020 April Week 1 || Leetcode 解題

30-Day LeetCoding Challenge 2020 April Week 1 || Leetcode 解題

函式 Function

函式 Function



Comments