How to Think Like a Programmer is a bright, accessible, fun read describing the mindset and mental methods of programmers. Anticipating the problems that students have through the character of Brian the Bewildered Wildebeest, the slower pace required for this approach is made interesting and engaging by hand-drawn sketches, frequent (paper-based) activities and the everyday tasks (e.g. coffee making) used as a basis of worked examples. How to Think Like a Programmer provides a fun and accessible way to learn the mental models needed to approach computational programmable problems.This edition is printed in black and white.
PART I THE REAL WORLD DOMAIN: PROBLEM SOLVING AND SYSTEMATIZING THE SOLUTION1. Introduction: Starting to Think Like a Programmer 2. A Strategy for Solving Problems 3. Description Languages & Representations 4. Problems of Choices and Repeated Actions5. Calculating and Keeping Track of Things 6. Extending our Vocabulary: Data & Control Abstractions 7. Object Orientation: Taking a Different View 8. Looking Forward to Program Design PART II THE COMPUTER DOMAIN: DATA, DATA STRUCTURES, AND PROGRAM DESIGN SOLUTIONS9. Data Types For Computer Programs10. Sub-Programming and Baking Cakes: Procedures and Functions11. Streams and Files, Input and Output12. Static Data Structures13. Dynamic Data Structures14. Object-Orientation Revisited15. Getting it to Run in Processing: Putting your Programs into a Real Programming Language16. Testing, Debugging, and Documentation