iT邦幫忙

oop相關文章
共有 102 則文章
鐵人賽 Software Development DAY 28

技術 Day 28 C++ Polymorphism II - Virtual function 虛擬函數

昨天終於解釋完Polymorphism,今天接著來聊聊為什麼要用virtual function虛擬函數。先來複習一下昨天的code: #include &lt...

鐵人賽 Software Development DAY 8

技術 關於繼承

什麼是繼承 In object-oriented programming, inheritance is the mechanism of basing an...

鐵人賽 自我挑戰組 DAY 26
C# 雞礎觀念 系列 第 26

技術 [Day26]C# 雞礎觀念- 物件導向(oop)~ 多載(Overload)

很多便利商店都有他們的制服,穿著一模一樣的制服,就算離開店面,大家都還是擁有極高的辨識度,C#也擁有共同制服的功能 多載 範例:我們先來看一段程式 using...

鐵人賽 Software Development DAY 12

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

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

鐵人賽 Software Development DAY 4

技術 抽象類別與介面 (1)

在上一篇文章中提到,我們可以將不同類別當中的共同屬性或方法,提取出來放在 parent 類別當中,然後透過繼承的方式,實現這些屬性或方法,同時也可以加入額外的屬...

鐵人賽 Software Development DAY 13

技術 依賴反轉原則 Dependency Inversion Principle

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

鐵人賽 Software Development DAY 15

技術 介面隔離原則 Interface Segregation Principles

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

鐵人賽 Software Development DAY 1

技術 寫在前面

關於我 大家好,我是 TD,目前在南方的小島上擔任菜鳥軟體工程師。大學不是主修 CS 或資訊相關科系,是畢業許多年之後才開始接觸程式開發,而後轉職成為軟體工程...

鐵人賽 Software Development DAY 11

技術 單一功能原則 Single Responsibility Principle

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

鐵人賽 Software Development DAY 1

技術 Day01 目標 - 做一個虛擬貨幣投資的交易分析程式(command line program)

(是的,首先我得承認這個主題名字下得不太直觀,但來不及改了..... )物件導向是一個寫程式的方式,一個建構出複雜程式的方法。我們身為人類發明出電腦,絞盡腦汁寫...

鐵人賽 自我挑戰組 DAY 27
30天Java由淺入深 系列 第 27

技術 Day 27 : Polymorphism

Intro Yesterday's last mentioned that Java actually allows subclasses to inherit...

鐵人賽 Software Development DAY 18

技術 Factory 工廠模式

今天要來聊聊 Creational Patten 當中的工廠模式。 當我們透過類別建立出實例的時候,其實感覺就像是一個工廠生產出了產品。而同一個工廠 (類別),...

鐵人賽 Modern Web DAY 14

技術 【Day14】Javascript物件設計!我所知道的物件導向。

本篇,我們要提到的是程式語言中,非常重要的概念 —— 物件導向。 聽著好像很複雜,其實我們現實生活都充滿了物件導向的概念。淺顯一點地解釋,便是把細小的東西以「物...

鐵人賽 Software Development DAY 24

技術 Composite 合成模式

今天要來介紹一個比較特別、平常可能不太常見的模式。就讓我們直接進入問題吧 問題 假設有間百貨公司週年慶,為了回饋會員,決定發送福袋給大家。在福袋當中,會放入價值...

鐵人賽 自我挑戰組 DAY 15

技術 [深入淺出設計模式] Ch4 The Factory Pattern (5) - 【抽象工廠模式】Abstract Factory Pattern 與工廠方法模式差在哪裡?

抽象工廠模式 Abstract Factory Pattern 跟工廠方法模式一樣,都會把製造方法放在工廠中,跟客戶端分離。 每個工廠會對同一個食材介面...

鐵人賽 Software Development DAY 7

技術 關於封裝

什麼是封裝 In object-oriented programming (OOP), encapsulation refers to the bundlin...

鐵人賽 Software Development DAY 26

技術 Proxy 代理模式

今天要談到代理模式,其實跟昨天的裝飾器模式很類似。代理模式的目的在於,因應某些條件替換物件原本的行為。 同樣用昨天的例子,這裡有 BookPrinter 可以把...

鐵人賽 Software Development DAY 29

技術 Dat 29 C++ 把Crypto bot虛擬貨幣程式放進去 class裡

前言:請參考系列文章前面的Day 23. Crpto bot 功能 與 menu 和24. Crypto bot file I/O 讓我們馬上進入正題,首先做...

鐵人賽 Software Development DAY 16

技術 回顧 SOLID 設計原則

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

鐵人賽 Software Development DAY 17

技術 Singleton 單例模式

首先,先來看看一個簡單、特殊的創造物件的模式。 In software engineering, the singleton pattern is a sof...

鐵人賽 Software Development DAY 14

技術 里氏替換原則 Liskov Substitution Principle

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

鐵人賽 Software Development DAY 27

技術 Day 27 C++ 虛擬貨幣 Crypto bot - 把之前的code變成 function

繼前面兩篇Day25、Day26的初步功能跟menu,接下來要邁向物件導向的分裝大法,讓我們先來把他們一個一個分類開來變成function吧~到時候就可以直接包...

鐵人賽 自我挑戰組 DAY 6

技術 OOP- Class and Object

Day sixOOP- Class 與 objectOOP- Class and object Hello everyone, it’s Ray!大家好,我是R...

鐵人賽 Software Development DAY 30

技術 Observer 觀察者模式

今天要談到的觀察者模式也是很常見的一個模式,常出現在有兩個以上需要互相溝通的物件之間 問題 假設有個物件 A 想要獲得物件 B 的更新資訊,但實際上 A 不知道...

技術 Python 物件導向編程(Object-Oriented Programming, OOP) : Class

在 Python 中,Class(類別) 是一種用來'封裝數據'和'操作數據方法'的結構。Class 提供了創建自定義數據類型的能力,可以用來模擬實際世界的物件...

鐵人賽 Mobile Development DAY 14

技術 [14] 30 天從 Swift 學會 Objective-C:Objective-C 物件的多型

多型包含了型別的共用、函式的共用、概念的共用。 Photo by @mimithian on Unsplash Swift 的多型 我們知道 Swift 的多...

鐵人賽 Software Development DAY 29

技術 Command 命令模式

當一個請求 (request) 進入系統之後,通常我們就會立即的處理它。但如果我們不想這麼直接的去處理這些請求,而是先讓這些需求排隊、依序進入,甚至做一些預先處...

技術 PHP 物件導向學習筆記-Constructor、Destructor、Access modifiers、Inheritance

Constructor 建構子 __construct()function 建立後自動呼叫 初始化物件的屬性(properties) 注意:__ 兩個下底線...

鐵人賽 自我挑戰組 DAY 24

技術 [深入淺出設計模式] Ch7 The Adapter Pattern (1) - 【轉接器模式】範例 SimUDuck 鴨子模擬器

轉接器模式 Adapter Pattern 可以讓物件在不同類別或介面中被使用,它可以把物件在不改變它本身類別的情況下,讓它轉換成另一個類別的樣子。轉接器可以分...

鐵人賽 Software Development DAY 28

技術 Chain of Responsibility 責任鏈模式

今天開始進入到 Behavioral design patterns,這一類的模式著重於物件之間的溝通與責任分配,就讓我們接下去一起看看吧 Chain of R...