課程目標:教導學生如何實際應用「設計模式」於軟體(遊戲)的實作上。
著重:
■ 物件導向程式設計與實作之實務分享
■ 講解23種設計模式的設計理念與實際應用規則
■ 以完整的遊戲實作專案套用所有的設計模式
■ 使用 Unity3D與C#為專案實作工具(可選擇其它工具)
■ 理論說明與實作併進
內涵:
隨著時間的發展,物件導向程式設計已成為主流的軟體開發方法,同時軟體系統也愈來愈複雜及多元化,小至智慧型手機上的 App 應用程式,大至涵蓋全球的社群網站,幾乎融入了每一個人的生活範圍之中。
而多樣性的軟體功能應用,使得程式設計師在使用物件導向程式語言時也增加了許多挑戰,像是如何將軟體功能做切分、減少功能之間的重複、有效地連結不同功能......,都不斷考驗著程式設計師的系統分析及實作能力。
所以,透過引入「模式」的概念,讓軟體設計也能像建築設計一樣,可以透過經驗累計的方式,將一些經常用來解決特定情況的「類別設計」、「物件組裝」加以整理並定義成為一個「設計模式」。而這些「軟體的設計模式」,讓開發者在往後遇到相同的情況時,可以從中找出對應的解決方法直接使用,不必再去思考如何分析及設計。這麼一來,除了能夠減少不必要的時間花費之外,也能加強軟體系統的「穩定性」及「可維護性」。Course objective: Teach students how to actually apply the "design mode" in software (game) implementation.
Focus:
■ Object-oriented program design and practice sharing
■ Explain the design concepts and practical application rules of 23 design modes
■ Apply all design modes with a complete game implementation project
■ Use Unity3D and C# as project implementation tools (other tools are available)
■ Theoretical explanation and implementation
Connotation:
With the development of time, object-oriented programming has become the mainstream software development method, and the software system is becoming more complex and diversified, from App applications on smart phones to community websites covering the world, it is almost integrated into everyone's life.
The application of various software functions has also added many challenges when programming designers use objects to guide programming language, such as how to divide software functions, reduce duplication between functions, and effectively connect different functions..., constantly examining the program designer's system analysis and implementation capabilities.
Therefore, by introducing the concept of "mode", the software design can also be organized and defined as a "design mode" like architecture design through the method of cumulative analysis. These "software design modes" allow developers to find the corresponding solutions and use them directly when they encounter the same situation in the future, without having to think about how to analyze and design. In addition to reducing unnecessary time expenditure, this can also enhance the "stability" and "maintainability" of the software system.
設計模式與遊戲開發的完美結合 ISBN:9789864340835
物件導向設計模式-可再利用物件導向軟體之要素 ISBN: 9789572054116
The perfect combination of design mode and game development ISBN: 9789864340835
Object-oriented design mode - Elements of reusable object-oriented software ISBN: 9789572054116
評分項目 Grading Method | 配分比例 Grading percentage | 說明 Description |
---|---|---|
課堂實作課堂實作 Classroom practice |
35 | 於課堂講解後,實際上機實作相關設計模式並評分 |
期末專題期末專題 Final topics |
65 | 展示完整的遊戲專案(或其它專題),可使用Unity3D與C#為專案實作工具,也可選擇其它工具 |