Learning Object-Oriented Programming, Design and TDD with Pharo
✒️ By Stéphane Ducasse With Damien Pollet
This book is a practical guide to learning object-oriented programming (OOP), design principles, and test-driven development (TDD) using Pharo. It covers essential OOP concepts, Pharo syntax, and hands-on exercises. Perfect for students, educators, or anyone new to OOP or Smalltalk-based environments.
Book Description
“Learning Object-Oriented Programming, Design and TDD with Pharo” by Stéphane Ducasse with Damien Pollet is your friendly companion into the world of modern programming. If you’ve ever wondered how to build robust software or wanted to understand the magic behind object-oriented design, this book is for you. It’s packed with real-world examples and clear explanations that make even tricky concepts feel approachable.
Whether you’re a student dipping your toes into coding or an educator looking for fresh teaching resources, you’ll find this guide refreshingly practical. The authors blend theory with hands-on exercisesso you won’t just read about objects and classes; you’ll actually create them in Pharo! The book also dives into test-driven development (TDD), showing you how to write code that’s not only functional but reliable too.
Pharo is a modern Smalltalk-inspired environment that’s perfect for exploring OOP concepts without getting bogged down in boilerplate code. This book takes advantage of Pharo’s simplicity to help you focus on learning the core ideas behind object-oriented programming and solid software design.
What You Will Learn
- The basics of object-oriented programming: objects, classes, messages, methods
- Pharo syntax essentialsno prior experience needed!
- How to structure your code using proven design principles
- Writing effective tests using TDD techniques
- Practical exercises like building counters, wallets, converters, and even embedded DSLs
- How to debug and improve your code iteratively
- Best practices for clean code and robust software
The book is organized into clear chapters covering everything from Pharo syntax in a nutshell to advanced topics like crafting embedded domain-specific languages (DSLs). Not sure what an isogram or a palindrome is? You’ll solve those challenges too! Each chapter ends with hands-on tasks so you can cement your understanding by doingnot just reading.
If you want to deepen your skills after finishing this book, check out Building Skills in Object-Oriented Design, which offers more advanced exercises and real-world scenarios. For those interested in patterns and reusable solutions, A Functional Pattern System for Object-Oriented Design provides an excellent next step.
This guide is especially helpful for beginners eager to learn OOP fundamentals or teachers seeking structured material for their students. If you appreciate learning by doingand enjoy a dash of humor along the wayyou’ll feel right at home here.

Leave a Reply
You must be logged in to post a comment.