SlideShare a Scribd company logo
Object-Based Programming PObject-Based Programming P
art II (art II ( 以物件為基礎的程式設計以物件為基礎的程式設計 ))
Lecturer: Liao Ping-Lun (Lecturer: Liao Ping-Lun ( 廖柄㷍廖柄㷍 ))
EMail:EMail: pinglunliao@gmail.compinglunliao@gmail.com
AgendaAgenda
Control Flow StatementsControl Flow Statements
Last Week Homework "Stack" SolutionLast Week Homework "Stack" Solution
Function pointer (Function pointer ( 函式指標函式指標 ))
Static Class Members (Static Class Members ( 靜態類別成員靜態類別成員 ))
Constructor & Destructor (Constructor & Destructor ( 建構子與解構子建構子與解構子 ))
Class Templates (Class Templates ( 類別樣板類別樣板 ))
Control Flow StatementsControl Flow Statements
Cin / coutCin / cout
If / elseIf / else
SwitchSwitch
For loopFor loop
WhileWhile
Do whileDo while
Continue/breakContinue/break
簡單的互動簡單的互動 (cin/cout)(cin/cout)
專案名稱:專案名稱: SeeIn_SeeOutSeeIn_SeeOut
電腦:「我要跟你互動!」電腦:「我要跟你互動!」
我:誰理你阿!我:誰理你阿!
PracticePractice
請使用者輸入一字元並在畫面輸出此字元的請使用者輸入一字元並在畫面輸出此字元的
ASCII CodeASCII Code 。。
判斷奇數或是偶數判斷奇數或是偶數
專案名稱:專案名稱: If_ElseIf_Else
PracticePractice
判斷學生成績是否有及格。判斷學生成績是否有及格。
你喜愛的水果是什麼?你喜愛的水果是什麼?
專案名稱:專案名稱: SwitchSwitch
PracticePractice
成績評等成績評等
100100 神等神等
80~9980~99 優等優等
60~7960~79 甲等甲等
0~590~59 乙等乙等
看星星去看星星去
專案名稱:專案名稱: StarsStars
PracticePractice
印菱形印菱形
菱形大小隨意菱形大小隨意
無窮迴圈無窮迴圈
專案名稱:專案名稱: NeverStopNeverStop
PracticePractice
印菱形(請用印菱形(請用 while loopwhile loop ))
菱形大小隨意菱形大小隨意
至少一次喔至少一次喔
專案名稱:專案名稱: DoWhileDemoDoWhileDemo
PracticePractice
印菱形(請用印菱形(請用 do whiledo while ))
菱形大小隨意菱形大小隨意
線性搜尋線性搜尋
專案名稱:專案名稱: LinearSearchLinearSearch
HWHW :求質數:求質數
速度越快越好。速度越快越好。
Last Week HW SolutionLast Week HW Solution
Function PointerFunction Pointer
函式名稱是表示什麼?函式名稱是表示什麼?
ExampleExample
f(x) = xf(x) = x22
f(x) = xf(x) = x33
……....
∑f (x)
PracticePractice
f(x) = (x + 1)f(x) = (x + 1)33
看動畫去看動畫去
主程式的執行流程主程式的執行流程
物件的記憶體配置物件的記憶體配置
Instance variableInstance variable
Local variableLocal variable
Instance functionInstance function
Function OverloadingFunction Overloading
ConstructorConstructor
this Pointerthis Pointer
Reference vs ValueReference vs Value
ReferenceReference 只是別名,不複製一份資料只是別名,不複製一份資料
ValueValue 會複製一份資料。會複製一份資料。
*this*this 是一個是一個 referencereference
Function (Function ( 函式函式 ))
函式宣告函式宣告
int sum(double, double);int sum(double, double);
函式定義函式定義
int sum(double a, double b)int sum(double a, double b)
{{
return a + b;return a + b;
}}
Recursive Function (Recursive Function ( 遞迴函式遞迴函式 ))
Fibonacci numbersFibonacci numbers
0, 1, 1, 2, 3, 5, 8, etc.0, 1, 1, 2, 3, 5, 8, etc.
PracticePractice
int sum(int n);int sum(int n);
ClassClass 類別類別
用用 C++C++ 的關鍵字的關鍵字 (keyword) class(keyword) class ,注意,注意
都是小寫。都是小寫。
定義出來的類別就是使用者定義的資料型態定義出來的類別就是使用者定義的資料型態
(User-defined Data Type)(User-defined Data Type) 。。
aObject.MemberNameaObject.MemberName
superMan.Run();superMan.Run(); //// 存取存取 member functionmember function
superMan->Run();superMan->Run();
superMan.age;superMan.age; //// 存取存取 member variablemember variable
superMan->age;superMan->age;
ClassClass 類別類別
在在 CC 裡是用裡是用 structstruct 來定義來定義 User-definedUser-defined
Data TypeData Type ,如,如
struct Personstruct Person
{{
int age;int age;
float height;float height;
float weight;float weight;
}}
但是…但是…
classclass 類別類別 VSVS 結構結構 structstruct
In C++In C++
除了預設的存取修飾詞除了預設的存取修飾詞 (access specifiers)(access specifiers) 不不
一樣外一樣外 (struct(struct 是是 publicpublic 、、 classclass 是是 private)private)
,其他都是一樣的。,其他都是一樣的。
In CIn C
沒有沒有 classclass 這鬼玩意兒。這鬼玩意兒。 (( 火星文編號一火星文編號一 ))
structstruct 會跟你說,我看不懂函式。會跟你說,我看不懂函式。 (( 火星文編號火星文編號
二二 ))
Project TemplateStackProject TemplateStack
為什麼要在為什麼要在 Header File (Header File ( 表頭檔表頭檔 )) 定義?定義?
因為因為 VCVC 笨阿笨阿 XDXD 。。
那那 VC 2005VC 2005 呢?是有比較聰明了呢?是有比較聰明了,但還是得,但還是得
寫在寫在 Header FileHeader File
Dynamic Memory AllocationDynamic Memory Allocation
In C++In C++
用用 newnew 和和 deletedelete 就行啦。就行啦。
int *pInt = new int[3];int *pInt = new int[3];
delete[] pInt;delete[] pInt;
In CIn C
void *malloc(size_t size);void *malloc(size_t size);
void *calloc(size_t nmemb, size_t size);void *calloc(size_t nmemb, size_t size);
void free(void *ptr);void free(void *ptr);
還有其他的怪函式名稱。還有其他的怪函式名稱。
Dynamic Memory AllocationDynamic Memory Allocation
DynamicMem.cppDynamicMem.cpp
不用時請記的用不用時請記的用 deletedelete 去釋放記憶體。去釋放記憶體。
ReviewReview
BoundaryAlignment.cppBoundaryAlignment.cpp
記憶體配置圖記憶體配置圖
靜態空間靜態空間 : Person superMan;: Person superMan;
動態空間動態空間 : Person *momo = new Person;: Person *momo = new Person;
Dynamic Memory AllocationDynamic Memory Allocation
記憶體配置圖記憶體配置圖
靜態空間靜態空間 : Person superMan;: Person superMan;
動態空間動態空間 : Person *momo = new Person;: Person *momo = new Person;
ageage heightheight weightweight namename ……
ageage heightheight weightweight namename ……
momomomo
Boundary alignmentBoundary alignment
提示:提示: 44 的倍數、的倍數、 88 的倍數、成員變數順的倍數、成員變數順
序有關序有關
指標指標 (Pointer)(Pointer) 的大小為的大小為 4 Bytes4 Bytes 。。
11 11 11 11 44 44 44
11 11 11 44 44 44 44 44
11 88 11 11 44 88 88 88 44 44
Constructor (Constructor ( 建構子建構子 ))
Default ConstructorDefault Constructor 不用參數不用參數
Person p;Person p;
Normal ConstructorNormal Constructor 有參數有參數
Person p("Mark");Person p("Mark");
Copy ConstructorCopy Constructor
由已存在的物件建立新的物件。由已存在的物件建立新的物件。
什麼時候要自己改寫。什麼時候要自己改寫。
Initializer ListInitializer List
Default Constructor (Default Constructor ( 預設建構子預設建構子 ))
Implicit default constructorImplicit default constructor
Person() {} // Compiler createPerson() {} // Compiler create
Explicit default constructorExplicit default constructor
Person() { age = 0; } // User-definedPerson() { age = 0; } // User-defined
With present valueWith present value
Person(int newValue = 0) { age = newValue; }Person(int newValue = 0) { age = newValue; }
Ambiguity (only one constructor exist)Ambiguity (only one constructor exist)
Person() { age = 0; }Person() { age = 0; }
Person(int newValue = 0) { age = newValue; }Person(int newValue = 0) { age = newValue; }
Default ConstructorDefault Constructor 練習練習
修改修改 MyStackMyStack 的建構子,讓的建構子,讓 MyStackMyStack 類類
別只有一個建構子。別只有一個建構子。
加上加上 Initializer ListInitializer List 。。
Copy Constructor (Copy Constructor ( 複製建構子複製建構子 ))
class_name(const class_name&);class_name(const class_name&);
Person ycl;Person ycl;
Person me(ycl); // explicitPerson me(ycl); // explicit
Person him = ycl; // implicitPerson him = ycl; // implicit
實際上實際上 Person him = Person(ycl);Person him = Person(ycl);
Person he = Person(ycl); // explicitPerson he = Person(ycl); // explicit
Person *mark = new Person(ycl); // explicitPerson *mark = new Person(ycl); // explicit
PersonPerson 這個類別不需要自己寫複製建構子這個類別不需要自己寫複製建構子
因為沒有動態配置記憶體。因為沒有動態配置記憶體。
Copy ConstructorCopy Constructor 練習練習
How to write a copy constructor ?How to write a copy constructor ?
Destructor.cppDestructor.cpp
實作實作 MyStackMyStack 類別的複製建構子。類別的複製建構子。
Destructor (Destructor ( 解構子解構子 ))
~class_name();~class_name();
~Person();~Person();
釋放記憶體釋放記憶體
delete variableName;delete variableName;
delete [] arrayName;delete [] arrayName;
若程式沒有定義解構子,編譯器會提供若程式沒有定義解構子,編譯器會提供 DefDef
ault Destructorault Destructor 。。
靜態物件:系統自動執行。靜態物件:系統自動執行。
動態物件:程式執行。動態物件:程式執行。
Destructor.cppDestructor.cpp
Project Complex ClassProject Complex Class
Default ConstructorDefault Constructor
With default valueWith default value
Copy ConstructorCopy Constructor
Operator overloadingOperator overloading
operator+operator+
operator-operator-
operator*operator*
operator<<operator<<
operator>>operator>>
示範示範
operator+operator+
ReferencesReferences
物件導向程式設計物件導向程式設計 http://vr.me.ncku.edu.twhttp://vr.me.ncku.edu.tw
/courses/index-oop.htm/courses/index-oop.htm
良葛格學習筆記良葛格學習筆記 http://caterpillar.onlyfun.nehttp://caterpillar.onlyfun.ne
t/Gossip/index.htmlt/Gossip/index.html
CC 程式簡介程式簡介 http://140.127.40.1/~jwu/c/cpghttp://140.127.40.1/~jwu/c/cpg
.htm.htm
深度學習深度學習 C++C++
http://www.math.ncu.edu.tw/~ziyou/c++/http://www.math.ncu.edu.tw/~ziyou/c++/
ReferencesReferences
Sagit'sSagit's 電腦與生活科技電腦與生活科技 http://www.tcgs.tc.http://www.tcgs.tc.
edu.tw/~sagit/edu.tw/~sagit/
e-Learninge-Learning 網路教學課程網站網路教學課程網站 http://vr.me.http://vr.me.
ncku.edu.tw/courses/ncku.edu.tw/courses/
美麗美麗 CC 世界世界 http://dhcp.tcgs.tc.edu.tw/c/inhttp://dhcp.tcgs.tc.edu.tw/c/in
dex.htmdex.htm
計算機程式設計計算機程式設計 http://www.csie.ntu.edu.twhttp://www.csie.ntu.edu.tw
/~cprog2002/CourseInfo/courseinfo.html/~cprog2002/CourseInfo/courseinfo.html
物件導向程式設計物件導向程式設計 http://www.csie.ntu.edu.http://www.csie.ntu.edu.
tw/~oop/OOP2001/index.htmltw/~oop/OOP2001/index.html
ReferencesReferences
Sagit'sSagit's 電腦與生活科技電腦與生活科技 http://www.tcgs.tc.http://www.tcgs.tc.
edu.tw/~sagit/edu.tw/~sagit/
e-Learninge-Learning 網路教學課程網站網路教學課程網站 http://vr.me.http://vr.me.
ncku.edu.tw/courses/ncku.edu.tw/courses/
美麗美麗 CC 世界世界 http://dhcp.tcgs.tc.edu.tw/c/inhttp://dhcp.tcgs.tc.edu.tw/c/in
dex.htmdex.htm
計算機程式設計計算機程式設計 http://www.csie.ntu.edu.twhttp://www.csie.ntu.edu.tw
/~cprog2002/CourseInfo/courseinfo.html/~cprog2002/CourseInfo/courseinfo.html
物件導向程式設計物件導向程式設計 http://www.csie.ntu.edu.http://www.csie.ntu.edu.
tw/~oop/OOP2001/index.htmltw/~oop/OOP2001/index.html

More Related Content

What's hot

由一个简单的程序谈起――之三(精华)
由一个简单的程序谈起――之三(精华)由一个简单的程序谈起――之三(精华)
由一个简单的程序谈起――之三(精华)yiditushe
 
Java面试宝典
Java面试宝典Java面试宝典
Java面试宝典
ma tao
 
Javascript oop-o52tiger
Javascript oop-o52tigerJavascript oop-o52tiger
Javascript oop-o52tiger
o52tiger
 
107个常用javascript语句 oss 计算技术 - ossez info of tech
107个常用javascript语句   oss 计算技术 - ossez info of tech107个常用javascript语句   oss 计算技术 - ossez info of tech
107个常用javascript语句 oss 计算技术 - ossez info of tech
YUCHENG HU
 
從 Singleton 談 constructor
從 Singleton 談 constructor從 Singleton 談 constructor
從 Singleton 談 constructor
Luba Tang
 
Java程序员面试之葵花宝典
Java程序员面试之葵花宝典Java程序员面试之葵花宝典
Java程序员面试之葵花宝典yiditushe
 
Js的国(转载)
Js的国(转载)Js的国(转载)
Js的国(转载)Leo Hui
 
Java华为面试题
Java华为面试题Java华为面试题
Java华为面试题yiditushe
 
Xcode开发员入门导引(简体中文版)
Xcode开发员入门导引(简体中文版)Xcode开发员入门导引(简体中文版)
Xcode开发员入门导引(简体中文版)babyyellow li
 
Xcode开发员入门导引
Xcode开发员入门导引Xcode开发员入门导引
Xcode开发员入门导引Sophia Lindsey
 
Ecmascript
EcmascriptEcmascript
Ecmascript
jay li
 
深入剖析Concurrent hashmap中的同步机制(下)
深入剖析Concurrent hashmap中的同步机制(下)深入剖析Concurrent hashmap中的同步机制(下)
深入剖析Concurrent hashmap中的同步机制(下)wang hongjiang
 
炎炎夏日學 Android 課程 - Part1: Kotlin 語法介紹
炎炎夏日學 Android 課程 -  Part1: Kotlin 語法介紹炎炎夏日學 Android 課程 -  Part1: Kotlin 語法介紹
炎炎夏日學 Android 課程 - Part1: Kotlin 語法介紹
Johnny Sung
 
Script with engine
Script with engineScript with engine
Script with engineWebrebuild
 
Java Script 引擎技术
Java Script 引擎技术Java Script 引擎技术
Java Script 引擎技术
bigqiang zou
 
Jquery指南
Jquery指南Jquery指南
Jquery指南yiditushe
 
180518 ntut js and node
180518 ntut js and node180518 ntut js and node
180518 ntut js and node
Peter Yi
 
Java面试32题
Java面试32题Java面试32题
Java面试32题yiditushe
 

What's hot (19)

由一个简单的程序谈起――之三(精华)
由一个简单的程序谈起――之三(精华)由一个简单的程序谈起――之三(精华)
由一个简单的程序谈起――之三(精华)
 
Java面试宝典
Java面试宝典Java面试宝典
Java面试宝典
 
Javascript oop-o52tiger
Javascript oop-o52tigerJavascript oop-o52tiger
Javascript oop-o52tiger
 
107个常用javascript语句 oss 计算技术 - ossez info of tech
107个常用javascript语句   oss 计算技术 - ossez info of tech107个常用javascript语句   oss 计算技术 - ossez info of tech
107个常用javascript语句 oss 计算技术 - ossez info of tech
 
從 Singleton 談 constructor
從 Singleton 談 constructor從 Singleton 談 constructor
從 Singleton 談 constructor
 
Java程序员面试之葵花宝典
Java程序员面试之葵花宝典Java程序员面试之葵花宝典
Java程序员面试之葵花宝典
 
Js的国(转载)
Js的国(转载)Js的国(转载)
Js的国(转载)
 
Java华为面试题
Java华为面试题Java华为面试题
Java华为面试题
 
Xcode开发员入门导引(简体中文版)
Xcode开发员入门导引(简体中文版)Xcode开发员入门导引(简体中文版)
Xcode开发员入门导引(简体中文版)
 
Xcode开发员入门导引
Xcode开发员入门导引Xcode开发员入门导引
Xcode开发员入门导引
 
Ecmascript
EcmascriptEcmascript
Ecmascript
 
深入剖析Concurrent hashmap中的同步机制(下)
深入剖析Concurrent hashmap中的同步机制(下)深入剖析Concurrent hashmap中的同步机制(下)
深入剖析Concurrent hashmap中的同步机制(下)
 
炎炎夏日學 Android 課程 - Part1: Kotlin 語法介紹
炎炎夏日學 Android 課程 -  Part1: Kotlin 語法介紹炎炎夏日學 Android 課程 -  Part1: Kotlin 語法介紹
炎炎夏日學 Android 課程 - Part1: Kotlin 語法介紹
 
Script with engine
Script with engineScript with engine
Script with engine
 
Java Script 引擎技术
Java Script 引擎技术Java Script 引擎技术
Java Script 引擎技术
 
Jquery指南
Jquery指南Jquery指南
Jquery指南
 
getPDF.aspx
getPDF.aspxgetPDF.aspx
getPDF.aspx
 
180518 ntut js and node
180518 ntut js and node180518 ntut js and node
180518 ntut js and node
 
Java面试32题
Java面试32题Java面试32题
Java面试32题
 

Viewers also liked

New microsoft word document (2)
New microsoft word document (2)New microsoft word document (2)
New microsoft word document (2)
ayooy1992
 
Turchia nuovo parquet
Turchia nuovo parquetTurchia nuovo parquet
維基百科的基本語法與改錯技巧(Wiki協作聚 ii)
維基百科的基本語法與改錯技巧(Wiki協作聚  ii)維基百科的基本語法與改錯技巧(Wiki協作聚  ii)
維基百科的基本語法與改錯技巧(Wiki協作聚 ii)安可 Wiki
 
Webdesign, UX et UCD #7
Webdesign, UX et UCD #7Webdesign, UX et UCD #7
Webdesign, UX et UCD #7
Relax In The Air
 
20141016-「推動工作與生活平衡之現況與展望」報告
20141016-「推動工作與生活平衡之現況與展望」報告20141016-「推動工作與生活平衡之現況與展望」報告
20141016-「推動工作與生活平衡之現況與展望」報告
R.O.C.Executive Yuan
 
Introduce To Object Based Media
Introduce To Object Based MediaIntroduce To Object Based Media
Introduce To Object Based Media
Cheng-Wei Chen
 
Webdesign, UX et UCD #3
Webdesign, UX et UCD #3Webdesign, UX et UCD #3
Webdesign, UX et UCD #3
Relax In The Air
 
陶淵明的介紹
陶淵明的介紹陶淵明的介紹
陶淵明的介紹qwe968573
 
詩人-陶淵明的介紹
詩人-陶淵明的介紹詩人-陶淵明的介紹
詩人-陶淵明的介紹jh894b32
 
Web Technology for non techies
Web Technology for non techiesWeb Technology for non techies
Web Technology for non techies
Aj Maurya
 
how-to-write-an-autobiography2
how-to-write-an-autobiography2how-to-write-an-autobiography2
how-to-write-an-autobiography2
Meredith Tseng
 
2011.10.22 摩茲連續聚十月光輝
2011.10.22 摩茲連續聚十月光輝2011.10.22 摩茲連續聚十月光輝
2011.10.22 摩茲連續聚十月光輝安可 Wiki
 
studying plan2
studying plan2studying plan2
studying plan2
Meredith Tseng
 
102學年度數位系升學講座 國興
102學年度數位系升學講座 國興102學年度數位系升學講座 國興
102學年度數位系升學講座 國興
國興 張
 
WWW, WEB BROWSER AND SEARCH ENGINE
WWW, WEB BROWSER AND SEARCH ENGINEWWW, WEB BROWSER AND SEARCH ENGINE
WWW, WEB BROWSER AND SEARCH ENGINE
ruledbyrobotics2080
 
多元入學方案及學習檔案完整版
多元入學方案及學習檔案完整版多元入學方案及學習檔案完整版
多元入學方案及學習檔案完整版5045033
 

Viewers also liked (20)

1109社會心理學
1109社會心理學1109社會心理學
1109社會心理學
 
New microsoft word document (2)
New microsoft word document (2)New microsoft word document (2)
New microsoft word document (2)
 
Turchia nuovo parquet
Turchia nuovo parquetTurchia nuovo parquet
Turchia nuovo parquet
 
維基百科的基本語法與改錯技巧(Wiki協作聚 ii)
維基百科的基本語法與改錯技巧(Wiki協作聚  ii)維基百科的基本語法與改錯技巧(Wiki協作聚  ii)
維基百科的基本語法與改錯技巧(Wiki協作聚 ii)
 
Webdesign, UX et UCD #7
Webdesign, UX et UCD #7Webdesign, UX et UCD #7
Webdesign, UX et UCD #7
 
20141016-「推動工作與生活平衡之現況與展望」報告
20141016-「推動工作與生活平衡之現況與展望」報告20141016-「推動工作與生活平衡之現況與展望」報告
20141016-「推動工作與生活平衡之現況與展望」報告
 
Turkey-sport-parquet-ENGLISH
Turkey-sport-parquet-ENGLISHTurkey-sport-parquet-ENGLISH
Turkey-sport-parquet-ENGLISH
 
Introduce To Object Based Media
Introduce To Object Based MediaIntroduce To Object Based Media
Introduce To Object Based Media
 
Webdesign, UX et UCD #3
Webdesign, UX et UCD #3Webdesign, UX et UCD #3
Webdesign, UX et UCD #3
 
EN 14904 English CE marking sport parquet
EN 14904 English CE marking sport parquetEN 14904 English CE marking sport parquet
EN 14904 English CE marking sport parquet
 
陶淵明的介紹
陶淵明的介紹陶淵明的介紹
陶淵明的介紹
 
詩人-陶淵明的介紹
詩人-陶淵明的介紹詩人-陶淵明的介紹
詩人-陶淵明的介紹
 
Web Technology for non techies
Web Technology for non techiesWeb Technology for non techies
Web Technology for non techies
 
how-to-write-an-autobiography2
how-to-write-an-autobiography2how-to-write-an-autobiography2
how-to-write-an-autobiography2
 
2011.10.22 摩茲連續聚十月光輝
2011.10.22 摩茲連續聚十月光輝2011.10.22 摩茲連續聚十月光輝
2011.10.22 摩茲連續聚十月光輝
 
studying plan2
studying plan2studying plan2
studying plan2
 
102學年度數位系升學講座 國興
102學年度數位系升學講座 國興102學年度數位系升學講座 國興
102學年度數位系升學講座 國興
 
WWW, WEB BROWSER AND SEARCH ENGINE
WWW, WEB BROWSER AND SEARCH ENGINEWWW, WEB BROWSER AND SEARCH ENGINE
WWW, WEB BROWSER AND SEARCH ENGINE
 
多元入學方案及學習檔案完整版
多元入學方案及學習檔案完整版多元入學方案及學習檔案完整版
多元入學方案及學習檔案完整版
 
studying-plan
studying-planstudying-plan
studying-plan
 

Similar to Object-Based Programming Part II

ajax_onlinemad
ajax_onlinemadajax_onlinemad
ajax_onlinemad
Kitor23
 
用Jquery实现拖拽层
用Jquery实现拖拽层用Jquery实现拖拽层
用Jquery实现拖拽层yiditushe
 
物件導向程式設計課程講義(98 ges hi版)
物件導向程式設計課程講義(98 ges hi版)物件導向程式設計課程講義(98 ges hi版)
物件導向程式設計課程講義(98 ges hi版)Hui-Shih Leng
 
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
Will Huang
 
领域驱动设计实践
领域驱动设计实践领域驱动设计实践
领域驱动设计实践
Jacky Chi
 
系統架構設計 Android
系統架構設計  Android系統架構設計  Android
系統架構設計 Android
健裕 潘
 
Effective java 摘選條目分享 1 - 物件、複合、可變性、leak
Effective java   摘選條目分享 1 - 物件、複合、可變性、leakEffective java   摘選條目分享 1 - 物件、複合、可變性、leak
Effective java 摘選條目分享 1 - 物件、複合、可變性、leak
Kane Shih
 
ES5 introduction
ES5 introductionES5 introduction
ES5 introduction
otakustay
 
电子杂志(试刊)
电子杂志(试刊)电子杂志(试刊)
电子杂志(试刊)ProCharm
 
C++工程实践
C++工程实践C++工程实践
C++工程实践Shuo Chen
 
Introduction to C++ over CLI
Introduction to C++ over CLIIntroduction to C++ over CLI
Introduction to C++ over CLI
建興 王
 
Entity framework 入門第一課
Entity framework 入門第一課Entity framework 入門第一課
Entity framework 入門第一課
Sean Lu
 
JavaScript 技術手冊第 5 章
JavaScript 技術手冊第 5 章JavaScript 技術手冊第 5 章
JavaScript 技術手冊第 5 章
Justin Lin
 
twMVC#27 | C# 7.0 新功能介紹
twMVC#27 | C# 7.0 新功能介紹twMVC#27 | C# 7.0 新功能介紹
twMVC#27 | C# 7.0 新功能介紹
twMVC
 
由一个简单的程序谈起――之二
由一个简单的程序谈起――之二由一个简单的程序谈起――之二
由一个简单的程序谈起――之二yiditushe
 
ASP.NET Core 2.1設計新思維與新發展
ASP.NET  Core 2.1設計新思維與新發展ASP.NET  Core 2.1設計新思維與新發展
ASP.NET Core 2.1設計新思維與新發展
江華 奚
 
Spring 2.x 中文
Spring 2.x 中文Spring 2.x 中文
Spring 2.x 中文Guo Albert
 

Similar to Object-Based Programming Part II (20)

Dev307
Dev307Dev307
Dev307
 
ajax_onlinemad
ajax_onlinemadajax_onlinemad
ajax_onlinemad
 
用Jquery实现拖拽层
用Jquery实现拖拽层用Jquery实现拖拽层
用Jquery实现拖拽层
 
物件導向程式設計課程講義(98 ges hi版)
物件導向程式設計課程講義(98 ges hi版)物件導向程式設計課程講義(98 ges hi版)
物件導向程式設計課程講義(98 ges hi版)
 
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
 
getPDF.aspx
getPDF.aspxgetPDF.aspx
getPDF.aspx
 
领域驱动设计实践
领域驱动设计实践领域驱动设计实践
领域驱动设计实践
 
系統架構設計 Android
系統架構設計  Android系統架構設計  Android
系統架構設計 Android
 
Effective java 摘選條目分享 1 - 物件、複合、可變性、leak
Effective java   摘選條目分享 1 - 物件、複合、可變性、leakEffective java   摘選條目分享 1 - 物件、複合、可變性、leak
Effective java 摘選條目分享 1 - 物件、複合、可變性、leak
 
ES5 introduction
ES5 introductionES5 introduction
ES5 introduction
 
电子杂志(试刊)
电子杂志(试刊)电子杂志(试刊)
电子杂志(试刊)
 
C++工程实践
C++工程实践C++工程实践
C++工程实践
 
Introduction to C++ over CLI
Introduction to C++ over CLIIntroduction to C++ over CLI
Introduction to C++ over CLI
 
Entity framework 入門第一課
Entity framework 入門第一課Entity framework 入門第一課
Entity framework 入門第一課
 
JavaScript 技術手冊第 5 章
JavaScript 技術手冊第 5 章JavaScript 技術手冊第 5 章
JavaScript 技術手冊第 5 章
 
twMVC#27 | C# 7.0 新功能介紹
twMVC#27 | C# 7.0 新功能介紹twMVC#27 | C# 7.0 新功能介紹
twMVC#27 | C# 7.0 新功能介紹
 
Js培训
Js培训Js培训
Js培训
 
由一个简单的程序谈起――之二
由一个简单的程序谈起――之二由一个简单的程序谈起――之二
由一个简单的程序谈起――之二
 
ASP.NET Core 2.1設計新思維與新發展
ASP.NET  Core 2.1設計新思維與新發展ASP.NET  Core 2.1設計新思維與新發展
ASP.NET Core 2.1設計新思維與新發展
 
Spring 2.x 中文
Spring 2.x 中文Spring 2.x 中文
Spring 2.x 中文
 

More from PingLun Liao

深入探討 C 語言
深入探討 C 語言深入探討 C 語言
深入探討 C 語言
PingLun Liao
 
Git 程式碼版本控制軟體介紹
Git 程式碼版本控制軟體介紹Git 程式碼版本控制軟體介紹
Git 程式碼版本控制軟體介紹
PingLun Liao
 
給沒有程式設計經驗的人
給沒有程式設計經驗的人給沒有程式設計經驗的人
給沒有程式設計經驗的人
PingLun Liao
 
陣列與指標
陣列與指標陣列與指標
陣列與指標
PingLun Liao
 
Perl For Bioinformatics
Perl For BioinformaticsPerl For Bioinformatics
Perl For Bioinformatics
PingLun Liao
 
C++ STL 概觀
C++ STL 概觀C++ STL 概觀
C++ STL 概觀
PingLun Liao
 
C++ Function
C++ FunctionC++ Function
C++ Function
PingLun Liao
 
C 檔案輸入與輸出
C 檔案輸入與輸出C 檔案輸入與輸出
C 檔案輸入與輸出
PingLun Liao
 
Win32 視窗程式設計基礎
Win32 視窗程式設計基礎Win32 視窗程式設計基礎
Win32 視窗程式設計基礎
PingLun Liao
 
Matlab 在機率與統計的應用
Matlab 在機率與統計的應用Matlab 在機率與統計的應用
Matlab 在機率與統計的應用
PingLun Liao
 
Android 2D 遊戲設計基礎
Android 2D 遊戲設計基礎Android 2D 遊戲設計基礎
Android 2D 遊戲設計基礎
PingLun Liao
 
Android 介面設計
Android 介面設計Android 介面設計
Android 介面設計
PingLun Liao
 
Java 視窗程式設計
Java 視窗程式設計Java 視窗程式設計
Java 視窗程式設計
PingLun Liao
 
Java 網路程式
Java 網路程式Java 網路程式
Java 網路程式
PingLun Liao
 
Android introduction
Android introductionAndroid introduction
Android introduction
PingLun Liao
 
RESTful
RESTfulRESTful
RESTful
PingLun Liao
 
Web service
Web serviceWeb service
Web service
PingLun Liao
 
How toprogram
How toprogramHow toprogram
How toprogram
PingLun Liao
 
Generic Programming
Generic ProgrammingGeneric Programming
Generic Programming
PingLun Liao
 
Object-Oriented Programming
Object-Oriented ProgrammingObject-Oriented Programming
Object-Oriented Programming
PingLun Liao
 

More from PingLun Liao (20)

深入探討 C 語言
深入探討 C 語言深入探討 C 語言
深入探討 C 語言
 
Git 程式碼版本控制軟體介紹
Git 程式碼版本控制軟體介紹Git 程式碼版本控制軟體介紹
Git 程式碼版本控制軟體介紹
 
給沒有程式設計經驗的人
給沒有程式設計經驗的人給沒有程式設計經驗的人
給沒有程式設計經驗的人
 
陣列與指標
陣列與指標陣列與指標
陣列與指標
 
Perl For Bioinformatics
Perl For BioinformaticsPerl For Bioinformatics
Perl For Bioinformatics
 
C++ STL 概觀
C++ STL 概觀C++ STL 概觀
C++ STL 概觀
 
C++ Function
C++ FunctionC++ Function
C++ Function
 
C 檔案輸入與輸出
C 檔案輸入與輸出C 檔案輸入與輸出
C 檔案輸入與輸出
 
Win32 視窗程式設計基礎
Win32 視窗程式設計基礎Win32 視窗程式設計基礎
Win32 視窗程式設計基礎
 
Matlab 在機率與統計的應用
Matlab 在機率與統計的應用Matlab 在機率與統計的應用
Matlab 在機率與統計的應用
 
Android 2D 遊戲設計基礎
Android 2D 遊戲設計基礎Android 2D 遊戲設計基礎
Android 2D 遊戲設計基礎
 
Android 介面設計
Android 介面設計Android 介面設計
Android 介面設計
 
Java 視窗程式設計
Java 視窗程式設計Java 視窗程式設計
Java 視窗程式設計
 
Java 網路程式
Java 網路程式Java 網路程式
Java 網路程式
 
Android introduction
Android introductionAndroid introduction
Android introduction
 
RESTful
RESTfulRESTful
RESTful
 
Web service
Web serviceWeb service
Web service
 
How toprogram
How toprogramHow toprogram
How toprogram
 
Generic Programming
Generic ProgrammingGeneric Programming
Generic Programming
 
Object-Oriented Programming
Object-Oriented ProgrammingObject-Oriented Programming
Object-Oriented Programming
 

Object-Based Programming Part II