iT邦幫忙

solid相關文章
共有 34 則文章
鐵人賽 Software Development DAY 9

技術 09. 物件導向設計原則—SOLID

在前文物件導向的特性中,提到物件導向設計本身具有封裝、繼承、多型、抽象這些特性。 知道物件導向的特性,就可以寫出具備閱讀性、維謢性、擴充性的程式碼?答案是肯定的...

鐵人賽 Software Development DAY 2

技術 別急!進入 Design Patterns 的行前說明

開始看 Design Patterns/Architectural Patterns 之前,我們先來建立一些基本知識。 SOLID 原則 物件導向的世界中,有所...

鐵人賽 IT人生鐵人 DAY 18

技術 中鳥階段-學習物件導向的精神。

今天要談的是物件導向的幾個基本性質以及衍生出來的特性。 筆者相信,即便是寫了一年以上的程式,不懂物件導向的人也還是很多,光從學校的教科書來看,似乎也不是那麼容易...

鐵人賽 Mobile Development DAY 18
Android 十全大補 系列 第 18

技術 [Android 十全大補] SOLID Principle

大家應該有發現我們一天一天往進階的內容邁進,很快我們就要開始談高大上的架構問題了。但是在開始討論如何建構一個好的 Android app 架構之前,想先跟大家分...

技術 淺談物件導向 SOLID 原則對工程師的好處與如何影響能力

前言 為了感謝部落格一直以來都有人在閱讀,讓我一直有經營下去的動力。所以想寫一個系列 學習 SOLID 原則 2 年後的心得文章。這心得文章包含自己使用 SOL...

鐵人賽 Software Development DAY 14

技術 物件導向設計原則中的五個原則縮寫叫SOLID

昨天有提到物件模型可以幫助我們分解需求、設計系統、實作系統。於1980年代在大型系統設計中有很多研究提出很多設計原則,Robert C. Martin整理了很多...

鐵人賽 Modern Web DAY 2

技術 Day02安安你好,請問你有聽過SOLID嗎?

前一天我們有提到SOLID,我們今天就來談談為啥我們需要了解SOLID? 他能幫助我們甚麼?SOLID是一種設計原則,主要是透過觀念讓團隊降機Code Revi...

技術 再談 SOLID 原則,Why SOLID?

Why SOLID? 在前一篇文章中介紹 SOLID 對一個工程師的影響,這裡再稍微補充一下為什麼軟體開發會需要 SOLID 原則? 軟體複雜的本質 專案經常會...

鐵人賽 Software Development DAY 12

技術 開放封閉原則 Open-Closed Principle

在上一篇文章當中,我們提到「單一功能原則」,指每一個類別只會因為一種原因被修改。那麼,如果真的遇到需求變動、需要修改的時候,我們該如何「修改」呢? SOLID...

鐵人賽 Software Development DAY 22
玩轉C# 進階學習之旅 系列 第 22

技術 玩轉C#之【SOLID】

介紹 何謂原則(Principle) A principle is a concept or value that is a guide for behavi...

鐵人賽 Software Development DAY 11

技術 單一功能原則 Single Responsibility Principle

關於物件導向程式設計的五個設計原則,大家可能會依據不同的順序來解釋,不過我想「單一功能原則」一定會被擺在首位。 這個原則由 "Uncle Bob&qu...

鐵人賽 Software Development DAY 15

技術 介面隔離原則 Interface Segregation Principles

最後,我們來到了 SOLID 當中的介面隔離原則。這裡我們先舉先前提到過的 BaseballPlayer and TennisPlayer 的例子。 由於兩個類...

鐵人賽 Software Development DAY 13

技術 依賴反轉原則 Dependency Inversion Principle

在上一篇文章當中我們談到開放封閉原則,這裡我們要來談談依賴反轉原則 Dependency inversion principle。先不談定義,先來看範例。 延續...

鐵人賽 Modern Web DAY 18

技術 Day18-SOLID原則-里氏替換原則(Liskov Substitution Principle)

什麼是里氏替換原則 子型別必須遵從父型別的行為進行設計 解釋只有一句話這麼簡單。 子型別要完全實作父型別的方法 子型別要能完全替代父型別,且不能出現錯誤或...

鐵人賽 Software Development DAY 14

技術 里氏替換原則 Liskov Substitution Principle

今天來談談 SOLID 當中的里氏替換原則,同樣的先來看一下例子。 延續先前的例子,公司持續拓展,滿足更多不同使用者的需求。現在公司決定,讓使用者可以在建立實例...

鐵人賽 Software Development DAY 16

技術 回顧 SOLID 設計原則

在前面的五篇文章當中,我們提到了 SOLID 設計原則,分別為 單一功能原則 Single Responsibility Principle 開放封閉原則 O...

鐵人賽 Modern Web DAY 17

技術 DAY17 SOLID原則-開閉原則(Open–closed Principle)

什麼是開閉原則 軟體實體應該對擴展開放,對修改關閉 開閉原則的解釋就是這麼簡單。 以現實中遇到實現開閉原則的例子為例: Chrome 和 VS Code都是...

鐵人賽 Software Development DAY 10

技術 中場回顧

過去一週我們提到了物件導向程式設計的重要概念,像是類別、抽象類別、介面,以及四大特徵:抽象、封裝、繼承、多型。 這裡讓我嘗試用一段話來整理這些內容之間的關係:...

鐵人賽 Modern Web DAY 19

技術 DAY19-SOLID原則-介面隔離原則(Interface Segregation Principle)

什麼是介面隔離原則 一個類別不應該被強迫實作一個它不需要的方法 意思就是說,一個類別不應該去實作它不需要去執行的方法。感覺有點廢話,又把引言說了一次,直接來...

鐵人賽 Software Development DAY 19
Kotlin on the way 系列 第 19

技術 Day 19 Solid 能吃嗎 ? 依賴反轉 dependency inversion

Dependency inversion principle 如同我們之前提到的,依賴於抽象而非實體,這是我們應該盡力去遵守的規範,依賴於抽象的系統,相對於依賴...

鐵人賽 Software Development DAY 18
Kotlin on the way 系列 第 18

技術 Day 18 Solid 能吃嗎? Interface segregation principle

使用介面來隔離依賴是非常有用的,一種常見的設計模式 proxy pattern 就是以此概念設計的,那使用介面來隔離到底帶給我們什麼好處呢? 在物件導向的設計中...

鐵人賽 Software Development DAY 15
Kotlin on the way 系列 第 15

技術 Day 15 Solid 能吃嗎? 單一職責的誤區 Single Responsibility principle

I'm only here tonight because of you. You are the reason I am. You are all my r...

鐵人賽 Software Development DAY 16
Kotlin on the way 系列 第 16

技術 Day 16 Solid 能吃嗎?開放封閉 OCP

模組應該要對擴展開放,對修改封閉,這是什麼意思? 看看上面的架構圖,在開放封閉原則之中,了解層級間的依賴非常重要,圖中的同心圓,應該由外層依賴內層,而不是內層依...

鐵人賽 Software Development DAY 3

技術 Airflow DAG 是啥? - Day3

Airflow DAG 是啥? DAG 定義 Airflow 的核心之一,一定是 DAG (Directed Acyclic Graph,有向無環圖)。如果說其...

鐵人賽 自我挑戰組 DAY 3

技術 Day3 CH1物件導向的設計?(下)

昨天,我們對於物件導向設計有初步了解後,今天,我們接續來看看物件設計導向的原則。 物件導向設計原則 說到物件導向設計原則,就不得不提 SOLID 以及 DRY...

鐵人賽 Software Development DAY 17
Kotlin on the way 系列 第 17

技術 Day 17 Solid 能吃嗎? 李氏替換 Liskov and inheritage

物件導向的四大原則是繼承、多型、封裝、抽象,而李氏替換對繼承應有的行為做了嚴謹的規範 在我們開始討論李氏替換原則之前,複習一下在 kotlin 裡面的繼承吧,在...

鐵人賽 Software Development DAY 9

技術 【Day-9】介面隔離原則(ISP)

文章同步於blog 介紹 今天要介紹的是介面隔離原則(ISP, Interface Segregation Principle) ISP的原則就是,不該強迫使用...

鐵人賽 Software Development DAY 8

技術 【Day-8】SOLID - 里式替換原則(LSP)

文章同步於blog 介紹 這次介紹的是里式替換原則(LSP, Liskov Substitution Principle)里式替換原則的核心思想是:如果類別B是...

鐵人賽 自我挑戰組 DAY 10

技術 Day10 - 透過圖文理解 S.O.L.I.D 原則

原文連結:The S.O.L.I.D Principles in Pictures本文所刊登的圖片,皆屬原作者 Ugonna Thelma 所有。 這篇比...

鐵人賽 Software Development DAY 6

技術 【Day-6】SOLID - 單一職責原則(SRP)

前言 接下來要介紹SOLID的原則,會一一介紹今天先從SRP開始 介紹 單一職責原則(SRP, Single Responsibility Principle)...