Programming Books — Reviews and Recommendations for C, C++, Java, Algorithms and More

Flat isometric bookshelf illustration showing row of programming books with blue spines bookmark ribbon and five-star rating icon for book reviews and recommendations

Books remain one of the most effective ways to build deep programming knowledge. While online tutorials give you syntax and quick answers, books give you the complete picture — the reasoning behind design decisions, the historical context that explains why languages and systems work the way they do, and the structured depth that transforms a competent programmer into an expert. Knowing which books are actually worth reading in a field with thousands of options is half the challenge.

MYCPLUS has been reviewing and recommending programming books since 2004, building one of the web’s most comprehensive programming book libraries with over 125 reviews and recommendations. This section covers books across every major programming topic — C and C++ programming, Java development, algorithms and data structures, software engineering practices, computer science theory, networking, security, game development and technology trends — all reviewed with a developer-first perspective that focuses on practical value rather than publisher marketing.

You will find honest assessments of classic must-read titles alongside modern releases, recommendations organised by skill level and topic, and enough detail about each book to judge whether it matches your current learning goals. Whether you are a beginner choosing your first programming book or an experienced developer looking for your next deep read — start here.

Looking for the right tools to go alongside your reading? Our Developer Tools section covers the compilers, IDEs and libraries that bring the concepts in these books to life in practice. Browse all resources in our Developer Resources hub.

What You’ll Learn

  • C and C++ programming books — the essential reading list for C and C++ programmers from beginner introductions through to advanced systems programming, modern C++ features and game development with C++
  • Java and language-specific books — recommended reading for Java developers, C# programmers and developers learning Python, JavaScript and PHP with honest assessments of which books deliver the most practical value
  • Algorithms and data structures books — the classic and modern texts on algorithms, data structures, problem solving and computational thinking that every serious programmer should read at least once
  • Software engineering and best practices books — recommended reading on software design, clean code, refactoring, system design, architecture patterns and the professional development books that shape how great developers think
  • Computer science and theory books — foundational computer science texts covering compilers, operating systems, computer architecture, networking and the theoretical foundations that make programmers genuinely understand their tools
  • Security, networking and technology books — recommended reading across cybersecurity, network programming, cloud computing and the broader technology topics that complete a well-rounded programmer’s bookshelf

Trusted by developers and computer science students since 2004 — with over 125 programming book reviews covering every major topic from C and C++ to algorithms, software engineering and computer science, MYCPLUS gives developers the honest, experienced recommendations they need to invest their reading time wisely.

Beginning C++ Programming

Beginning C++ Programming

C++ has come a long way and is now adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications, including desktop applications, servers, and performance-critical applications, not to forget its importance in game programming. Despite its strengths in these areas, beginners usually tend to shy away from learning the language because of its steep learning curve.

Effective Modern C++

Effective Modern C++

Effective Modern C++ follows the proven guideline-based, example-driven format of Scott Meyers’ earlier books, but covers entirely new material. This book describes how to write effective software using C++11 and C++14—i.e. using modern C++.

Microsoft Visual C# Step by Step

Microsoft Visual C# Step by Step

Microsoft Visual C# 2013 Step by Step teaches the fundamentals of Microsoft Visual C# 2013. This is a step by step guide to anyone having previous experience in programming but new to C# Programming.

Jumping into C++

Want to learn to code? Want to learn C++? Struggling to follow your lecturer or books and tutorials written for experts? You’re not alone. As a professional C++ developer and former Harvard teaching fellow, I know what you need to know to be a great C++ programmer, and I know how to teach it, one step at a time. I know where people struggle, and why, and how to make it clear.

Algorithms in C

Algorithms in C

These algorithms are represented in terms of compact implementations in C so that readers can both understand their fundamental properties and implement them in real applications. The method of the analysis of algorithms is quite carefully designed. When appropriate, analytic results are described to explain why certain algorithms are preferred. In some cases, the practical algorithms’ relationship being discussed to purely theoretical results is also described.

Effective C++

Effective C++: 55 Specific Ways to Improve Your Programs and Designs

The book opens with some hints for porting code from C to C++ and then moves on to the proper use of the new and delete operators in C++ for more robust memory management. The text then proceeds to class design, including the proper use of constructors, destructors, and overloaded operator functions for assignment within classes. (These guidelines ensure that you will create custom C++ classes that are fully functional data types, which can be copied and assigned just like built-in C++ classes.)

Beginning Visual C++ 2012

Ivor Horton’s Beginning Visual C++ 2012

This is one of the all-time bestselling books on the C++ language by Ivor Horton. The book teaches you both the standard C++ language and C++/CLI as well as Visual C++ 2012. Thoroughly updated for the 2012 release of Visual C++ and C++ 11 standard, this book shows you how to build real-world applications using Visual C++ and guides you through the ins and outs of C++ development. With this book by your side, you are well on your way to becoming a successful C++ programmer.

Scroll to Top