Think Like a Programmer: An Introduction to Creative Problem Solving
The real challenge of programming isn't learning a language's syntax—it's learning to creatively solve problems so you can build something great. In this one-of-a-kind text, author V. Anton Spraul breaks down the ways that programmers solve problems and teaches you what other introductory books often ignore: how to Think Like a Programmer. Each chapter tackles a single programming concept, like classes, pointers, and recursion, and open-ended exercises throughout challenge you to apply your knowledge.
You'll also learn how to:
–Split problems into discrete components to make them easier to solve
–Make the most of code reuse with functions, classes, and libraries
–Pick the perfect data structure for a particular job
–Master more advanced programming tools like recursion and dynamic memory
–Organize your thoughts and develop strategies to tackle particular types of problems
Although the book's examples are written in C++, the creative problem-solving concepts they illustrate go beyond any particular language; in fact, they often reach outside the realm of computer science. As the most skillful programmers know, writing great code is a creative art—and the first step in creating your masterpiece is learning to Think Like a Programmer.
What people are saying - Write a review
LibraryThing ReviewUser Review - ilokhov - LibraryThing
The premise of this book is quite interesting: instead of focusing on a particular programming language, it is devoted to problem solving and the application of it to programming in general. For ... Read full review
This is one of the most valuable books I've ever read, I loved each line in it.
I discovered it by chance while studying at the university, I was looking for someone that explains and simplify recursivity, then I read the chapter about it in this book and it blew me away.
Then even though I'm not a beginner programmer I decided to buy it, reading this book helped me to deepen my knowledge and gave me so much power and perspective to deal with problems that I used to think I can handle them. I recommend this book for any programmer, whether a student or a professional, it is indeed an amazing book.