iT邦幫忙

oop相關文章
共有 101 則文章
鐵人賽 自我挑戰組 DAY 17

技術 Day17 CH8組合物件(下)

組合 Bicycle Bicycle有一個Parts,而Parts則有一個Part物件集合。 Parts是一個扮演Parts角色的類別,它實作spares...

鐵人賽 自我挑戰組 DAY 2

技術 Day2 CH1物件導向的設計?(上)

「程序性」和「物件導向」? The word is procedural. The word is also object-oriented. 書上的這兩句...

技術 Python 與設計模式學習心路歷程 - 類別 & 繼承

一、簡介 想必在寫程式的過程中,大家或多或少都有聽過所謂物件導向 (Object Oriented Programming) 的觀念,也就是所謂的 OOP,甚至...

技術 軟體設計原則 YAGNI (You aren't gonna need it!)

YAGNI (You aren't gonna need it!),是敏捷開發的核心設計原則之一。此原則指出,程式開發者應該在面臨確鑿的需求時,才實作相應的功能...

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

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

技術 PHP 物件導向學習筆記-class、object

class 是 obejct 的模板,object 是 class 實體化 定義類別 class 最前面加上 class class 裡面的變數叫做屬性(Pr...

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

技術 Day 27 : 多型

介紹 前言 昨天的最後提到了Java其實可以讓子類別繼承多個「介面」父類別的成員。 如果反過來,讓一個父類別被多個子類別繼承呢 ? 這個就稱為「多型」(Pol...

鐵人賽 Software Development DAY 29

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

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

技術 PHP 物件導向學習筆記-甚麼是 OOP

OOP Object-Oriented Programming,物件導向程式可以建立一個包含 data 、funciton 的物件 OOP 的特色: 更快更容...

鐵人賽 Software Development DAY 28

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

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

鐵人賽 Software Development DAY 22

技術 Day 22 C++ 繼承Inheritance 刷題練習、如何顯示現在時間與Crypto雜談

前言:暨之前聊到繼承,今天來實作一下Hackerank上的兩個題目Inheritance Introduction和Inheritance然後之後開始準備進入C...

鐵人賽 Software Development DAY 27

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

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

鐵人賽 Software Development DAY 26

技術 Day 26 C++ 物件導向7 Polymorphism

前言:哎~關於polymorphism是什麼我花好幾天翻了課本不懂、估狗過也不懂、查Youtube也沒怎麼聽懂。 今天就來試著用白話文把他形容出來。 如同之前說...

鐵人賽 Software Development DAY 20

技術 Day 20 C++ 物件導向6 - 繼承 Inheritance

當我們要做出兩個很類似的class時,可以讓第二個class承繼一些原本class的參數與設定,不用再重複打一次,一樣是省時間省眼睛的懶人福音。 為了簡單稱呼,...

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

技術 Day 11 OO 能吃嗎? 繼承與調香技法 inheritance

You are me and moreThe good dinosaur 繼承範例 覆寫 新增一些東西 多重繼承 不好的繼承 用食譜學繼承 物件導...

鐵人賽 Software Development DAY 15

技術 Day 15 - C++ 物件導向4 - Method與Function

之前三篇物件導向類別Class、物件Object、建構子Constructor歡迎接續觀看 前言: function作用是裝方式、作法(return a+...

鐵人賽 Software Development DAY 13

技術 Day 13 - C++ 物件導向2 - 物件object

關於class類別是什麼和為何要用他請搭直通車Day07Class類別目標:要把我房間的書做個統計,總共有150本。(第一版本土法煉鋼法的code請點上面直通...

鐵人賽 Software Development DAY 1

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

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

鐵人賽 Software Development DAY 30

技術 Observer 觀察者模式

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

鐵人賽 Software Development DAY 29

技術 Command 命令模式

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

鐵人賽 Software Development DAY 28

技術 Chain of Responsibility 責任鏈模式

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

鐵人賽 Software Development DAY 27

技術 Facade 外觀模式

在 Structural patterns 當中,最後要來談的是外觀模式。 外觀模式提供我們一個簡單方便的操作介面,其背後幫我們實現了複雜的操作。這樣的模式其實...

鐵人賽 Software Development DAY 26

技術 Proxy 代理模式

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

鐵人賽 Software Development DAY 25

技術 Decorator 裝飾器模式

今天要介紹的裝飾器模式,跟之前提到過的轉接器模式有點類似(但其實結果完全不一樣)。 轉接器模式的功能在於將讓現有的物件可以透過轉接器,能夠實現自己沒有的介面或功...

鐵人賽 Software Development DAY 24

技術 Composite 合成模式

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

鐵人賽 Software Development DAY 23

技術 Bridge 橋接器模式

今天的橋接器模式,和昨天的轉接器模式一樣,都是非常常見的模式,可能我們不自覺當中都會使用到。話不多說,我們就先來看例子吧! 這裡有一個 Shape 類別,定義了...

鐵人賽 Software Development DAY 22

技術 Adaptor 轉接器模式

今天開始要介紹 Structural patterns。先前的 Creational patterns 著重在如何根據不同的問題建立一個新的物件,而 Struc...

鐵人賽 Software Development DAY 21

技術 Prototype 原型模式

今天來介紹 Creational Patterns 當中的最後一個模式。 假設這裡有一個 Engineer 類別,他除了有個 name 屬性之外,還擁有 too...

鐵人賽 Software Development DAY 20

技術 Builder 建造者模式

如果今天我們想要開一間飲料店,飲料的組合包含了茶、糖,還有牛奶,於是我們可以建立一個 createTea 方法,並依據傳入的參數,來決定最後的產品 class...

鐵人賽 Software Development DAY 19

技術 Abstract Factory 抽象工廠模式

延續上一篇文章的例子,我們除了想要訓練出 baseball player 之外,也希望他能夠同時擁有一些裝備,像是合適的棒球衣以及棒球鞋。 所以這裡我們在 Ba...