CSIE 241563 Spring 2018
Code in class available from https://ssl-gitlab.csie.ntut.edu.tw/yccheng/DP_inclass
Instructor:
Dr. Y C Cheng, Professor of CSIE
Class meetings: Mon 5-6, Wed 2
Office hours: Mon 2-4, Wed 3-4,8
李柏霖 (Morris) posd2018ta@gmail.com
鍾承翰 (Hank)
Office hour: Fri 3-4 @ 宏裕科技大樓13樓1321實驗室
Textbook:
Gamma, Erich, et al. Design patterns: elements of reusable object-oriented software . Pearson Education, 1994.
Reference:
Course Description:
Topics include:
Prerequisites:
Grading policy
Week | Course Material Covered | Reading/Homework/Test |
1 (2/26, 2/28) |
Introduction Note: 2/28 和平紀念日放假 |
當各位同學辦好gitlab帳號並建好repository的時候,請下載老師的檔案(連結)並push到自己的專案內。往後請不要更動原有的檔案架構(可以新增,但不能移動或者刪除原有的檔案) GitLab架設教學 環境設定 Jenkins設定與測試報表教學 作業上傳教學 textbook: Section 1.1 and 1.2 |
2 (3/5, 3/7) |
First example: object oriented file system (I) Review of OOP and unit testing |
Class note on 03/05 |
3 (3/12, 3/14) |
First example: object oriented file system - organization into tree Composite |
Class note on 03/12 and 03/14 HW1 |
4 (3/19, 3/21) |
First design pattern example: object oriented file system - treatiing folders and files uniformly |
Class note on 03/19 and 03/21 HW2 |
5 (3/26, 3/28) |
Link with Proxy |
Class note on 03/26 and 03/28 HW3 |
6 (4/2, 4/4) |
Accessing folder contents with Iterator Note: 4/4 兒童節放假一天 |
Class note on 04/03 |
7 (4/9, 4/11) |
Application of iterator: find by name |
Class note on 04/09 HW4 |
8 (4/16, 4/18) |
Find by name as a Visitor |
Class note on 04/16 and 04/18 |
9 (4/23, 4/25) |
find as a function vs find as a Visitor |
Class note on 04/23 and 04/25 |
10 (4/30, 5/2) |
Midterm 4/30: closed book and notes Open-Closed Principle, Single Responsibility Principle |
Class note on 05/02 HW5 |
11 (5/7, 5/9) |
Open-Closed Principle Constructing a Node hierarchy with Builder |
Class note on 05/07 |
12 (5/14, 5/16) |
Open-Closed Principle | Project proposal |
13 (5/21, 5/23) |
Link: memory management issues Decorator vs. Proxy Organizing the pattern catalog |
Class note on 05/21 and 5/23 |
14 (5/28, 5/30) |
Link: reassignment issues | |
15 (6/4, 6/6) |
Iteration one presentation | |
16 (6/11, 6/13) |
Term project demo & presentation |
Class note on 06/11 and 06/13 |
17 (6/18, 6/20, 6/24) |
Term project demo & presentation Note: 6/18(一)) 端午節放假一天 Note: 6/20(三)) 不用上課(時數補至 6/24(日)) Note: 6/24(日) Demo 時間:10 am - 12pm, 1 pm - 5pm 地點:科技大樓 1223教室 |
請同學將Demo的報告寄送至TA的信箱(posd2018ta@gmail.com)
期末報告組別順序 |
18 (6/25, 6/27) |
Term project demo & presentation
Note: 6/25(三)) 不用上課(時數補至 6/24(日)) Note: 6/27(三)) 不用上課(時數補至 6/24(日)) |
Resource: (Return to top of page)