iT邦幫忙

oop相關文章
共有 102 則文章
鐵人賽 Modern Web DAY 27

技術 Day27|物件導向 JavaScript (Object-Oriented JavaScript)

在前一篇,我們提到「閉包」能讓函式記住自己的環境,透過作用域封裝資料,避免外部直接修改。 這種 封裝(Encapsulation)的特性,其實也是「物件導向程式...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

技術 A2 腳步踩穩囉:啟動工廠模式下的 Canvas Transition 動畫

動畫的基礎 讓我們將繼續完善 playground 元件,這次的目標是實現滑鼠和觸控事件的座標監聽,來實現對 canvas 的操控,並且,搭配 ease out...

鐵人賽 自我挑戰組 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 是一個模組,提供了一組用於處理集合物件(例如陣列、雜湊表、範圍等)的方法。這些方法可以對集合進行迭代、篩選、轉換等操作。...

鐵人賽 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 14

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

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

鐵人賽 自我挑戰組 DAY 28

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

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

鐵人賽 自我挑戰組 DAY 13

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

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

鐵人賽 Software Development DAY 14

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

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

鐵人賽 SideProject30 DAY 13

技術 DAY13 物件導向程式設計

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

鐵人賽 自我挑戰組 DAY 27

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

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

鐵人賽 Software Development DAY 13

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

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

鐵人賽 自我挑戰組 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...