Animated Program Design: Intermediate Program Design Using Video Game Development
暫譯: 動畫程式設計:中階程式設計與遊戲開發
Morazán, Marco T.
- 出版商: Springer
- 出版日期: 2023-09-25
- 售價: $2,400
- 貴賓價: 9.5 折 $2,280
- 語言: 英文
- 頁數: 514
- 裝訂: Quality Paper - also called trade paper
- ISBN: 3031043197
- ISBN-13: 9783031043192
-
相關分類:
程式語言、遊戲設計 Game-design
海外代購書籍(需單獨結帳)
商品描述
This textbook presents a systematic methodology for program development by using design recipes, i.e. a series of steps, each with a specific outcome, that takes a problem solver from a problem statement to a working and tested programmed solution. It introduces the reader to generative recursion, heuristic searching, accumulative recursion, tail recursion, iteration, mutation, loops, program correctness, and vectors. It uses video game development to make the content fun while at the same time teaching problem-solving techniques.
The book is divided into four parts. Part I presents introductory material on basic problem solving and program design. It starts by reviewing the basic steps of a design recipe using structural recursion on a list. It then proceeds to review code refactoring-a common technique used to refine programs when a better or more elegant way is found to solve a problem-and introduces the reader to randomness. Next, Part II explores a new type of recursion called generative recursion. It navigates the reader through examples involving fractal image generation, efficient sorting, and efficient searching techniques such as binary, depth-first, and breadth-first search. Part III then explores a new type of recursion called accumulative (or accumulator) recursion. Examples used include finding a path in a graph, improving insertion sorting, and list-folding operations. Finally, Part IV explores mutation. To aid the reader in properly sequencing mutations it presents Hoare Logic and program correctness. In addition, it introduces vectors, vector processing, in-place operations, and circular data. Throughout the whole book complexity analysis and empirical experimentation is used to evaluate solutions.
This textbook targets undergraduates at all levels as well as graduate students wishing to learn about program design. It details advanced types of recursion, a disciplined approach to the use of mutation, and illustrates the design process by developing a video game exploiting iterative refinement.商品描述(中文翻譯)
這本教科書提供了一種系統化的程式開發方法論,透過設計食譜,即一系列步驟,每個步驟都有特定的結果,將問題解決者從問題陳述引導到一個可運行且經過測試的程式解決方案。它向讀者介紹了生成遞歸、啟發式搜尋、累積遞歸、尾遞歸、迭代、變異、迴圈、程式正確性和向量。書中使用視頻遊戲開發來使內容有趣,同時教授問題解決技術。
本書分為四個部分。第一部分介紹了基本問題解決和程式設計的入門材料。它首先回顧了使用結構遞歸在列表上進行設計食譜的基本步驟。接著,回顧了程式重構——這是一種常用技術,用於在找到更好或更優雅的解決方案時精煉程式,並向讀者介紹隨機性。接下來,第二部分探討了一種新的遞歸類型,稱為生成遞歸。它通過涉及分形圖像生成、高效排序和高效搜尋技術(如二元搜尋、深度優先搜尋和廣度優先搜尋)的範例引導讀者。第三部分則探討了一種新的遞歸類型,稱為累積(或累加器)遞歸。使用的範例包括在圖中尋找路徑、改進插入排序和列表折疊操作。最後,第四部分探討變異。為了幫助讀者正確地排列變異,它介紹了霍爾邏輯和程式正確性。此外,它還介紹了向量、向量處理、原地操作和循環數據。在整本書中,使用複雜性分析和實證實驗來評估解決方案。
這本教科書的目標讀者是所有年級的本科生以及希望學習程式設計的研究生。它詳細介紹了高級遞歸類型、對變異的有序使用方法,並通過開發一個利用迭代精煉的視頻遊戲來說明設計過程。
作者簡介
Marco T. Morazán joined Seton Hall University in 1999 where he teaches at all levels of the Computer Science curriculum including his signature courses on Problem Solving and Programming. He is a strong proponent of program by design in which types guide program development and the author of multiple peer-reviewed articles on computer science education and the implementation of programming languages. Animated Program Design is the result of over ten years learning from his students how to teach them type-based programming and along with his previous Springer book Animated Problem Solving presents a year-long introduction to programming and Computer Science curriculum for first-year university students.
作者簡介(中文翻譯)
馬可·T·莫拉贊(Marco T. Morazán)於1999年加入塞頓霍爾大學(Seton Hall University),教授計算機科學課程的各個層級,包括他標誌性的問題解決與程式設計課程。他是設計導向程式設計的堅定支持者,該方法中類型指導程式開發,並且是多篇經過同行評審的計算機科學教育及程式語言實施的文章的作者。動畫程式設計是他從學生身上學習如何教授基於類型的程式設計的十多年成果,並與他之前的施普林格(Springer)書籍動畫問題解決一起,為大一新生提供了一年的程式設計與計算機科學課程介紹。