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 recursioncalled 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."synopsis" may belong to another edition of this title.
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.
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 recursioncalled 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.
"About this title" may belong to another edition of this title.
Seller: Ria Christie Collections, Uxbridge, United Kingdom
Condition: New. In. Seller Inventory # ria9783031043192_new
Quantity: Over 20 available
Seller: Rarewaves.com USA, London, LONDO, United Kingdom
Paperback. Condition: New. 2022 ed. Seller Inventory # LU-9783031043192
Quantity: Over 20 available
Seller: Brook Bookstore On Demand, Napoli, NA, Italy
Condition: new. Questo č un articolo print on demand. Seller Inventory # BBWZPGLEVP
Quantity: Over 20 available
Seller: BuchWeltWeit Ludwig Meier e.K., Bergisch Gladbach, Germany
Taschenbuch. Condition: Neu. This item is printed on demand - it takes 3-4 days longer - Neuware -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. 536 pp. Englisch. Seller Inventory # 9783031043192
Quantity: 2 available
Seller: Books Puddle, New York, NY, U.S.A.
Condition: New. pp. 536. Seller Inventory # 26398549480
Seller: Majestic Books, Hounslow, United Kingdom
Condition: New. Print on Demand pp. 536. Seller Inventory # 397860407
Quantity: 4 available
Seller: Biblios, Frankfurt am main, HESSE, Germany
Condition: New. PRINT ON DEMAND pp. 536. Seller Inventory # 18398549474
Quantity: 4 available
Seller: Revaluation Books, Exeter, United Kingdom
Paperback. Condition: Brand New. 533 pages. 9.26x6.10x1.08 inches. In Stock. Seller Inventory # x-3031043197
Quantity: 2 available
Seller: moluna, Greven, Germany
Condition: New. Dieser Artikel ist ein Print on Demand Artikel und wird nach Ihrer Bestellung fuer Sie gedruckt. 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 in. Seller Inventory # 1082981276
Quantity: Over 20 available
Seller: Rarewaves.com UK, London, United Kingdom
Paperback. Condition: New. 2022 ed. Seller Inventory # LU-9783031043192
Quantity: Over 20 available