iT邦幫忙

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

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

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

鐵人賽 自我挑戰組 DAY 19

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

單例模式 範例 Website registration 網站註冊 假設今天我們要架設一個網站的註冊系統,我們就會希望系統只有一個合法的註冊中心,所有使用者只能...

鐵人賽 自我挑戰組 DAY 17

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

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

鐵人賽 自我挑戰組 DAY 15

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

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

鐵人賽 自我挑戰組 DAY 30

技術 Day30 Ruby物件導向實踐-Enumerable

Ruby 中的 Enumerable 是一個模組,提供了一組用於處理集合物件(例如陣列、雜湊表、範圍等)的方法。這些方法可以對集合進行迭代、篩選、轉換等操作。...

鐵人賽 自我挑戰組 DAY 14

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

工廠模式 範例: Pizza Store 上篇我們已經完成工廠跟Pizza的抽象類別,現在來看看子類別要如何實現Pizza(),在這之前要先完成食材的類別(這邊...

鐵人賽 Modern Web DAY 14

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

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

鐵人賽 自我挑戰組 DAY 29

技術 Day29 Ruby物件導向實踐-Ruby Object Model

Ruby Object Model 是 Ruby 程式語言中用來描述物件、類別和模組之間關係的模型。 Ruby 的物件模型是其核心概念之一,它有助於理解 Rub...

鐵人賽 Modern Web DAY 14

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

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

鐵人賽 自我挑戰組 DAY 13

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

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

鐵人賽 自我挑戰組 DAY 28

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

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

鐵人賽 SideProject30 DAY 13

技術 DAY13 物件導向程式設計

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

鐵人賽 Software Development DAY 14

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

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

鐵人賽 Software Development DAY 13

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

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

鐵人賽 自我挑戰組 DAY 27

技術 Day27 Ruby物件導向與實踐-*與**

昨天分享了基本的運算符,今天來分享進階的* 運算符(Splat Operator)和** 運算符(Double Splat Operator),筆者也是今天要撰...

鐵人賽 自我挑戰組 DAY 26

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

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

鐵人賽 自我挑戰組 DAY 25

技術 Day25 Ruby物件導向實踐-block, proc, lambda

今天的主題很老掉牙,你打關鍵字google會有一堆文章出現,至於為什麼還要寫呢,因為我開心你管我,因為在實作時超常碰到,必須要搞清楚才行,也趁此機會再摸得更熟。...

鐵人賽 自我挑戰組 DAY 24

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

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

鐵人賽 自我挑戰組 DAY 23

技術 Day23 Ruby物件導向實踐-方法

先來複習一下,昨天,我們提到了類別(class)與實體(instance),Ruby藉由實例化類別形成物件,並透過方法(method)來表現行為或與其他物件互動...

鐵人賽 自我挑戰組 DAY 22

技術 Day22 Ruby物件導向實踐-類別與實體

昨天,我們正式讀完 《Practical Object-Oriented Design in Ruby: An Agile Primer》,想必大家一定還是也些...

鐵人賽 自我挑戰組 DAY 21

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

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

鐵人賽 自我挑戰組 DAY 20

技術 Day20 CH9 設計節省成本的測試(下)

今天,要來說明鴨子類型的測試,選擇好測試案例後,我們就可以根據前面兩天的步驟來測試輸入及輸出訊息。 測試鴨子類型 測試角色 以第5章的程式碼為範例,程式碼包含了...

鐵人賽 自我挑戰組 DAY 19

技術 Day19 CH9 設計節省成本的測試(中)

本章的測試都是使用MiniTest來撰寫,目前MiniTest可以在安裝了 Ruby 1.9及以上版本的任何地方執行。 至於筆者在工作上則是使用RSpec搭配C...

鐵人賽 自我挑戰組 DAY 18

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

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

鐵人賽 自我挑戰組 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) 注意:__ 兩個下底線...

鐵人賽 Software Development DAY 29

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

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