iT邦幫忙

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

技術 Adaptor 轉接器模式

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

鐵人賽 Software Development DAY 19

技術 Abstract Factory 抽象工廠模式

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

鐵人賽 Software Development DAY 10

技術 中場回顧

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

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

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

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

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

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

鐵人賽 SideProject30 DAY 13

技術 DAY13 物件導向程式設計

物件導向程式設計(Object-oriented programming,OOP) MQL5相較於MQL4最大的更新便是增加了物件導向,而OOP(Object-...

鐵人賽 Software Development DAY 20

技術 Builder 建造者模式

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

鐵人賽 Software Development DAY 25

技術 Decorator 裝飾器模式

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

鐵人賽 Python DAY 12
Python 錦囊密技 系列 第 12

技術 【Python錦囊㊙️技12】OOP 實作(2) -- 遊戲開發

遊戲開發是學習OOP最好的方式 上一篇討論OOP入門技巧,本篇則以遊戲為例使用OOP開發程式,讀者也許會覺得突兀,本系列文章不是在討論【開發中大型系統的必備技巧...

鐵人賽 Python DAY 10
Python 錦囊密技 系列 第 10

技術 【Python錦囊㊙️技10】OOA、OOD and OOP

前言 雖然,物件導向程式設計(Object-oriented programming, OOP)已是老生常談,網路上有太多的資源可參考,不過,因為實在太重要了,...

鐵人賽 Software Development DAY 27

技術 Facade 外觀模式

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

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

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

鐵人賽 Software Development DAY 21

技術 Prototype 原型模式

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

鐵人賽 Python DAY 11
Python 錦囊密技 系列 第 11

技術 【Python錦囊㊙️技11】OOP 實作(1) -- 入門

前言 上一篇討論了OOA/OOD,接著我們就來實作OOP,本篇先討論Python的類別(Class),並說明如何達成繼承(Inheritance)、封裝(Enc...

鐵人賽 自我挑戰組 DAY 2

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

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

鐵人賽 Software Development DAY 23

技術 Bridge 橋接器模式

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

鐵人賽 自我挑戰組 DAY 8

技術 Day 8 善泳者溺,其實不善泳者,溺的更快.....

抱持著重開機的心情,我開始了我的第一堂課。 一開始是學員自我介紹跟課程講解。 稍微帶了一下程式語言,跟設計的概念。 來貼一下,我們的課程規劃。 這是一個chap...

鐵人賽 Python DAY 2
Python 錦囊密技 系列 第 2

技術 【Python錦囊㊙️技2】Python 很簡單,但要寫的好很不簡單

前言 撰寫Python程式很簡單,因為Python的發明人Guido van Rossum希望撰寫Python程式可以像英文寫作一樣自然,不需要作變數型別宣告、...

鐵人賽 Software Development DAY 13

技術 Day 13 - 理解 Ruby - 物件導向程式設計語言

在之前都是分享 JavaScript 相關的內容,接著想分享自己學習 Ruby 與 Ruby on Rails 時,了解到的重要知識,都會再接下來的文章中出現唷...

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

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

鐵人賽 自我挑戰組 DAY 24

技術 Day24 Ruby物件導向實踐-initialize 和attribute accessors

大家對於方法的定義和使用大致理解後,今天想跟大家聊聊ruby內特別的方法,大家有印象我在前兩天的舉例都會在類別內定義一個initialize方法以及attrib...

鐵人賽 Software Development DAY 14

技術 Day 14 - 理解 OOP 物件導向程式設計的基本原則 - SOLID

繼上篇的物件導向程式設計概念,近期在面試上有遇到一個很重要的相關觀念,當時不知道為什麼,現在整理出來分享~ :有聽過 SOLID 嗎?:SOLID 是什麼? S...

鐵人賽 自我挑戰組 DAY 17

技術 [深入淺出設計模式] Ch5 The Singleton Pattern (1) - 【單例模式】

Singleton Pattern 單例模式 在特定情況下,我們會希望某一些類別的物件只有一個,通常會用global variable 讓它是靜態變數。(例如設...

鐵人賽 自我挑戰組 DAY 18

技術 Day18 CH9 設計節省成本的測試(上)

談測試之前,我們必須先知道,撰寫可修改的程式碼實踐依賴於三項不同的技能: 必須瞭解物件導向設計了解如何設計良好的對象和類結構是至關重要的。合理的設計可以最小...

鐵人賽 自我挑戰組 DAY 28

技術 Day28 Ruby物件導向實踐-Error Handling

今天這個主題主要是因為工作上剛好在處理到 http 的 404 error 和 500 error 的 case,想說不如就趁機將研究的內容記錄下來,釐清 ru...

鐵人賽 自我挑戰組 DAY 17

技術 Day17 CH8組合物件(下)

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

鐵人賽 自我挑戰組 DAY 26

技術 Day26 Ruby物件導向實踐- 運算符

Ruby 支援一套豐富的運算符。大多數運算符實際上是方法的呼叫,運算符是所有算符的總稱,其底下又可以細分為算術運算符、比較運算符、邏輯運算符….等,文章只會紀錄...

鐵人賽 自我挑戰組 DAY 13

技術 [深入淺出設計模式] Ch4 The Factory Pattern (3) - 【工廠模式】範例: Pizza Store

Factory Method Pattern 先來看一下工廠模式的特性吧~後面沿用上篇的Pizza Store來詳細說明 跟簡單工廠模式一樣,會將創建物件的方...

鐵人賽 Modern Web DAY 14

技術 js的OOP:ES 6 class & Object.create()

還有兩種方式也可以做出物件prototype: ES6 class Object.create() ES 6 class Syntactic sugar語法...

鐵人賽 自我挑戰組 DAY 21

技術 Day21 CH9 設計節省成本的測試(延伸)

本章的篇幅比較長,但又不想捨棄任何精彩的部分,謝謝大家陪我讀到這,再努力一下!昨天,我們成功測試鴨子類型程式碼;今天,當然不能放過繼承程式碼囉(笑 測試繼承程式...