How to Design Programs: An Introduction to Programming and Computing, 2/e (Paperback)

Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi

買這商品的人也買了...

商品描述

A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming.This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks.This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.

商品描述(中文翻譯)

這是一本完全修訂的新版書籍,提供了互動程式的新設計範例,並支援圖像作為純值、測試、事件驅動程式設計,甚至分散式程式設計。這本程式設計入門將計算機科學置於通識教育的核心位置。與其他入門書籍不同,它專注於程式設計過程,提供程式設計指南,向讀者展示如何分析問題陳述,如何制定簡潔的目標,如何舉例說明,如何制定解決方案的大綱,如何完成程式,以及如何進行測試。由於學習設計程式涉及原則的研究和可轉移技能的獲得,本書不使用現成的工業語言,而是提供一種量身定制的教學語言。出於同樣的原因,它提供了DrRacket,一個針對新手的程式設計環境,支援有趣的、以反饋為導向的學習。隨著讀者掌握書中的內容,這個環境會不斷成長,直到支援全方位的程式設計任務所需的完整語言。這本第二版已經完全修訂。雖然本書繼續教授系統化的程式設計方法,但第二版引入了不同的設計範例,用於具有圖形界面和批次程式的互動程式。它還豐富了對函數的設計範例,提供了許多新的提示。最後,教學語言及其集成開發環境現在支援圖像作為純值、測試、事件驅動程式設計,甚至分散式程式設計。