

Buy anything from 5,000+ international stores. One checkout price. No surprise fees. Join 2M+ shoppers on Desertcart.
Desertcart purchases this item on your behalf and handles shipping, customs, and support to KUWAIT.
An Introduction to Programming by the Inventor of C++ Preparation for Programming in the Real World The book assumes that you aim eventually to write non-trivial programs, whether for work in software development or in some other technical field. Focus on Fundamental Concepts and Techniques The book explains fundamental concepts and techniques in greater depth than traditional introductions. This approach will give you a solid foundation for writing useful, correct, maintainable, and efficient code. Programming with Today’s C++ The book is an introduction to programming in general, including object-oriented programming and generic programming. It is also a solid introduction to the C++ programming language, one of the most widely used languages for real-world software. The book presents modern C++ programming techniques from the start, introducing the C++ standard library to simplify programming tasks. For Beginners–And Anyone Who Wants to Learn Something New The book is primarily designed for people who have never programmed before, and it has been tested with more than 1,000 first-year university students. However, practitioners and advanced students will gain new insight and guidance by seeing how a recognized master approaches the elements of his art. Provides a Broad View The first half of the book covers a wide range of essential concepts, design and programming techniques, language features, and libraries. Those will enable you to write programs involving input, output, computation, and simple graphics. The second half explores more specialized topics, such as text processing and testing, and provides abundant reference material. Source code and support supplements are available from the author’s website. Review: Only One worth reading - This book does what it is supposed to do, teach you how to programme with no prior programming knowledge. It starts with the basics and then moves onto at a reasonable steady pace to more complex topics by Chapter 20. As well as focusing on C++ it also teaches you how to write well organised, maintainable code. As I have now finished the book I feel that the emphasis on good style coding was important, it makes my own programmes far easier to understand and write. A niggle another reviewer mentioned "std_lib_facilities.h" this header file seems to be a good addition, it includes the C++ Standard Library and adds a range checked vector, by chapter 10 (and having looked at appendix B) I could quite easily do without it and write my own includes. I feel that this book was well work reading,and would recommend it to others. Review: Well Written By The Master - This book is brilliant. It has everything. It is well written, structured and the tasks are challenging enough to make you want to complete the entire book. The example code given is clear and is perfect in showing the points that the writer wishes to emphasis.






























| Best Sellers Rank | 2,043,578 in Books ( See Top 100 in Books ) 667 in Computers for Young Adults 5,332 in Software Design & Development 5,375 in Computing & Internet for Professionals |
| Customer Reviews | 4.4 out of 5 stars 145 Reviews |
J**E
Only One worth reading
This book does what it is supposed to do, teach you how to programme with no prior programming knowledge. It starts with the basics and then moves onto at a reasonable steady pace to more complex topics by Chapter 20. As well as focusing on C++ it also teaches you how to write well organised, maintainable code. As I have now finished the book I feel that the emphasis on good style coding was important, it makes my own programmes far easier to understand and write. A niggle another reviewer mentioned "std_lib_facilities.h" this header file seems to be a good addition, it includes the C++ Standard Library and adds a range checked vector, by chapter 10 (and having looked at appendix B) I could quite easily do without it and write my own includes. I feel that this book was well work reading,and would recommend it to others.
M**N
Well Written By The Master
This book is brilliant. It has everything. It is well written, structured and the tasks are challenging enough to make you want to complete the entire book. The example code given is clear and is perfect in showing the points that the writer wishes to emphasis.
K**Y
Great book to learn from
Great structure and explains things very well, reference material and examples included on the website too. Don't be put off by the page count as this is easy to follow what ever level
A**H
The Greatest ever C++ Book for Beginners.
If you have no Previous programming experience then this is the book for you. Its written by the man who created the C++ language and he has deliberately focussed this book for those people who are new to programming. The style of writing is like no other i have come across, Unlike most books of this subject its actually a pleasure to read and fun to follow.
M**S
Lovely book
If you love programming then this book is for you. It's great for people who are just getting started with c++ like my self. Very accessible and easy to understand with beautiful examples and so many practice questions to keep you busy. Great book!
J**N
Principles and Practice using C++
I'm not a programmer, I needed C++ for part of a project and wanted an 'off-line' book I could thumb through. This is a great book, for me. I like the style and level of detail.
D**E
I might have been a bit more advanced than this, but then I can use this to say its a great beginners book
So easy to understand bjarns methods of teaching, I will hold on to this in case I forget everything, he makes linked lists seem like a very easy subject.
J**T
Not ideal for everyone
We chose this book as the basis for an introductory course in programming (for students of mathematics -- 2nd year university). Our choice was influenced by the positive comments we had found on the internet. Now the course is over, and I regret to report that the book has proved to be a poor choice *for our purposes*: very basic programming with the simplest use of structs/classes -- we had to exclude inheritance, (operator) overloading, templates,... Part of our problem was that the book was too "wordy": this may well be an asset for native english readers, but definitely prompted complaints from our (italian) students [no italian translation exists so far]. I can see why Stroustrup might want beginners to use std_lib_facilities, a "magic" header file which includes lots of "useful stuff". But in our experience it is a crutch which quickly became more of a hindrance than a help. We are also unable to concur with the book's recommendation to use MS VisualStudio -- the students used the free version. Our exercises are small enough that there is no benefit in splitting the programs into several files. Next year we shall use a different text, avoid std_lib_facilities, and change to a different IDE. In summary: our experience was negative; of course, not everyone has the analytical, mathematical approach of our students; and not everyone wants to learn just the very basics of programming.
V**R
I was delivered a 180rs book
I received a someother book named Course on computer concepts. Its cost is 180rs. I paid them around 5k. Its a worst feel when u someother book and u have paid 5k for it. I am so disappointed. It was sold by USB publisher. Think twice to buy from this publisher.
A**X
Lettura obbligata per chi è agli inizi
Se si programma in C++ da meno di 2-3 anni questa è una lettura che oserei definire obbligata in quanto è un concentrato di consigli utili e best practices che in genere richiedono parecchio tempo e tanta esperienza per essere assimilate. Quando si inizia a programmare, indipendentemente dal linguaggio utilizzato, ci si pone sempre domande del tipo: "E' questo il modo migliore per farlo?", "Cosa comporta questo tipo di scelta?". Questo testo del prof. Stroustrup risponde a queste e ad altre domande. E' un testo unico nel suo genere ed è uno di quei testi che fa differenza tra un hobbista e un professionista. Ottimo come secondo testo, potrebbe essere utilizzato anche come primo approccio al linguaggio C++ ma richiederebbe uno sforzo maggiore per assimilare i concetti di base che, in alcuni casi, vengono dati per scontati. Il mio consiglio è di partire con un testo dedicato alle basi e poi passare a questo. L'inglese utilizzato è abbastanza semplice e scorrevole. La voluminosità a prima vista intimorisce ma non deve ingannare. Escudendo il codice, gli esercizi e le note a fine capitolo saranno meno di 300-400 pagine. Un paio di piccole pecche: 1- Ogni tanto il prof. Stroustrup si lascia prendere dall'entusiasmo e sforna qualche esempio non proprio semplice da afferrare ad una prima lettura ma niente che comprometta la completa comprensione del testo. Si può benissimo rileggere con calma o passare avanti per poi ritornarci in un secondo momento. Del resto, come ripete lo stesso Stroustrup più volte nel suo libro, si impara anche e sopratutto leggendo il codice altrui. Quindi, per quanto complesso possa essere un esempio di codice, leggerlo e comprenderlo non può che far bene. Detto questo tengo a precisare che la stragande maggiornaza degli esempi di codice proposti è abbastanza banale e facile da capire anche ad una rapida occhiata. 2- Esercizi che definire sbilanciati sarebbe un eufemismo. Si passa da "crea una funzione che somma gli elementi di due vettori" a "implementa un allocatore". Il prof. Stroustrup a volte non conosce mezze misure XD
I**E
Un des meilleurs livres sur la programmation
Un livre tout à fait remarquable (écrit par le créateur et l'un des principaux mainteneurs du langage !), qui vous prendra par la main et vous amènera à une connaissance tout à fait élaborée de la programmation en C++. Ce livre peut être utilisé par ceux qui veulent apprendre seuls et il peut réellement être utilisé ainsi, à condition de prendre la peine de faire systématiquement tous les exercices proposés. Ces exercices constituent l'une des grandes forces de ce livre : il ne s'agit pas seulement d'un livre à lire, mais d'un livre "à faire". Les exercices sont suffisamment nombreux pour être faits tous et pas assez pour décourager par leur quantité. Ils sont remarquablement adaptés au contenu de chaque chapitre. Vous pourrez trouver sur l'excellent site du livre (qui contient notamment aussi des "errata" fort utiles) un certain nombre (régulièrement croissant) d'exercices corrigés. A noter : il n'est pas du tout nécessaire (ni même peut-être souhaitable !) de connaitre le C pour lire et pratiquer ce livre...
C**I
Not what I was expecting
For some reasons, I had expected a book on reflections on Stroustrup's philosophy of C++ programming aimed at experienced practitioners. I was quite surprised by the heft of the book, but much more so by the content. It's a book for non-programmers or beginners to teach them how to program with C++ as the vehicle and it's structured for use as a textbook for a first year college course. Physically, the book is massive, weighing in at over 1200 pages. It is printed on good quality semi-glossy paper and the extensive use of color will remind some of the Deitel & Deitel series, at least superficially. The prospective student will probably benefit from a comparison of this book to the existing leading tutorial books. The leaders, by popularity or quality, are (in no specific order): Lippman, Lajoie, & Moo's C++ Primer (4th Edition) , Eckel's Thinking in C++: Introduction to Standard C++, Volume One (2nd Edition) (Vol 1) and Thinking in C++, Volume 2: Practical Programming , Dietel & Deitel's C++ How to Program (6th Edition) , Koenig & Moo's Accelerated C++: Practical Programming by Example (C++ In-Depth Series) , Lippman's Essential C++ (C++ In-Depth Series) , and Prata's C++ Primer Plus (5th Edition) . These all share the common purpose of teaching the C++ language, so an effort is made to cover the features and concepts, with examples that were constructed to illustrate them. This is NOT Stroustrup's approach. Stroustrup isn't trying to teach the C++ language. He's teaching how to program. C++ is the tool he uses to do so. This isn't a subtle difference. It's the difference between teaching you about a wrench and making up fake car parts to fix with the wrench and teaching you auto repair and giving you a wrench to do so. You still learn the tool as you go along, but it's a side effect. The overall direction of the book is to teach students how to program solutions to real problems in a way that one would in the real world. Things that other books consider "extraneous to illustrating the principle" aren't swept under the carpet. Inputs are validated. Code is tested. Errors are detected. Exceptions are thrown and caught. They're not incidental details, they're part of the solution, and that's how Stroustrup presents them. Yet, these "details" don't detract from the readability or understandability of the code. In fact, they preempt the stream of "but what about..." questions that students will inevitable have when presented incomplete toy code. Chapters 6 and 7 are gems. They develop an expression evaluator, walking the student through a tokenizer, parser, and interpreter without bogging the student down with deep theory that will be learned in later courses and is unnecessary to get started (though many will be inspired to go read up on it). Besides showing some interesting and useful techniques, understanding an expression evaluator goes a long way toward understanding programming languages in general. The discussion on containers and iterators explains how one would go about designing them, not just using them. Once the development of a vector-like container is described, the other standard containers are presented for the student to use. No time is wasted trying to teach data structures, for which other classes and books already exist. The same applies to sorts and other basic algorithms. The standard ones are presented for immediate use by the student. There are chapters on basic I/O, GUI and graphics (using FLTK), data formatting, and numerical programming (this is my least favorite). There is also some cursory coverage of upcoming C++ features as they are found in boost, such as regular expressions. Because this book deliberately targets beginners, you won't find advanced topics like template metaprogramming. There are entire books (three of them!) dedicated to that. Finally, there is some brief discussion of the history of C++, on its own and in the context of the evolution of programming languages in general. I would have enjoyed more of this. If I were to teach a course, this book would be my first choice. A disciplined self-learner would also be well served by this book. However, it does not try to target those who already know how to program and wish to migrate to C++, though they would doubtless find this book interesting and well written. For them, I would recommend "Accelerated C++" or "Essential C++" to bring them up to speed quickly or ""C++ Primer" to study the language more in depth. For those coming from a language that is conceptually different from C++, the two "Thinking in C++" volumes do a good job of aiding in the paradigm shift. I am deliberately omitting non-tutorial books like the "Effective C++" and "Exceptional C++" series, though they are certainly essential. Everyone -- beginner and migrating expert -- should avoid C++ How to Program (6th Edition). Notwithstanding the pretty presentation, this book teaches abysmal programming practices, such as blatant and amateurish violations of the Liskov Substitutability Principle. Naturally, every C++ programmer should own The C++ Programming Language: Special Edition (3rd Edition) and C++ in a Nutshell is a marvelous one-stop reference. As a side note, there is a long running debate over which language is most suitable for teaching an introduction to programming. C++ is usually one of the first to be eliminated. This book puts C++ back in the running and and shows that it's more about the teacher than it is about the language.
S**O
Who better to learn from than the guy that invented C++?
Not gonna drag on with a long comment. Just gonna say this book is true to its description. Bjorne assumes you know nothing about programming or C++ and takes you from the ground up, even into things like writing components of a compiler which is a pretty advanced topic in programming. I'd recommend this book not only to people who are new but people who already have a background, even in some advanced aspects of programming in C++. I myself have been working with C++ for a little over a year, I've delved into some fairly advanced tasks like writing a cross platform game engine from the bottom up and yet find so much new and valuable information in this book.
Trustpilot
1 week ago
2 weeks ago