We've ranked the best c++ books using expert recommendations, sales data, and millions of reader ratings. At Shortform, we know books. Our book guides are the best in the world. Learn why.
Cover unavailable
1
Code Complete
Steve McConnell
4.7
Widely considered one of the best practical guides to programming, Steve McConnell's original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices--and hundreds of new code samples--illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your experience level, development environment, or project size, this book will inform and stimulate your thinking--and help you build the highest quality code. Discover the timeless techniques and strategies that help you:
Design for minimum complexity and maximum creativity Reap the benefits of collaborative development Apply defensive programming techniques to reduce and flush out errors Exploit opportunities to refactor--or evolve--code, and do it safely Use construction practices that are right-weight for your project Debug problems quickly and effectively Resolve critical construction issues early and correctly Build quality into the beginning, middle, and end of your project
…
Recommended by Jeff Atwood, Ana Bell, and Santiago Basulto.
Ana Bell
Code Complete is for people working in industry, writing software for companies. It has little checklists at key points in the book; if you are in industry, you can make sure that your code is readable and debugged by going through these checklists and making sure you’re touching upon all aspects. [source]
Santiago Basulto
If my career path is hackers turned business people, I’d say: Start with the basics and fundamentals: SICP: Structure and Interpretation of Computer Programs Code Complete 2 [source]
Cover unavailable
2
In the Garden of Beasts: Love, Terror, and an American Family in Hitler's Berlin
Erik Larson
4.7
Erik Larson, New York Times bestselling author of Devil in the White City, delivers a remarkable story set during Hitler’s rise to power.
The time is 1933, the place, Berlin, when William E. Dodd becomes America’s first ambassador to Hitler’s Nazi Germany in a year that proved to be a turning point in history. A mild-mannered professor from Chicago, Dodd brings along his wife, son, and flamboyant daughter, Martha. At first Martha is entranced by the parties and pomp, and the handsome young men of the Third Reich with their infectious enthusiasm for restoring Germany to a position of world prominence. Enamored of the “New Germany,” she has one affair after another, including with the suprisingly honorable first chief of the Gestapo, Rudolf Diels. But as evidence of Jewish persecution mounts, confirmed by chilling first-person testimony, her father telegraphs his concerns to a largely indifferent State Department back home. Dodd watches with alarm as Jews are attacked, the press is censored, and drafts of frightening new laws begin to circulate. As that first year unfolds and the shadows deepen, the Dodds experience days full of excitement, intrigue, romance—and ultimately, horror, when a climactic spasm of violence and murder reveals Hitler’s true character and ruthless ambition. Suffused with the tense atmosphere of the period, and with unforgettable portraits of the bizarre Göring and the expectedly charming--yet wholly sinister--Goebbels, In the Garden of Beasts lends a stunning, eyewitness perspective on events as they unfold in real time, revealing an era of surprising nuance and complexity. The result is a dazzling, addictively readable work that speaks volumes about why the world did not recognize the grave threat posed by Hitler until Berlin, and Europe, were awash in blood and terror.
…
Recommended by Daniel Hamermesh and Steve Schmidt.
Daniel Hamermesh
At a time of increased danger of totalitarianism in the U.S., reading a history of an insider’s view of its growth in Germany in the 1930s gives a good perspective on our contemporary problems, as well as being fascinating history and biography in its own right. [source]
Steve Schmidt
@egayle333 Ellyn, with respect Hitler was always clear about his intent. A great book to read from a US perspective is In the Garden of Beasts. Trump is much more analogous to Mussolini. [source]
Cover unavailable
3
Effective C++: 55 Specific Ways to Improve Your Programs and Designs
Scott Meyers
4.7
The Barnes & Noble Review Since early in the 90s, working C++ programmers have relied on Scott Meyers s Effective C++ to dramatically improve their skills. But the state-of-the-art has moved forward dramatically since Meyers last updated this book in 1997. (For instance, there s now STL. Design patterns. Even new functionality being added through TR1 and Boost.) So Meyers has done a top-to-bottom rewrite, identifying the 55 most valuable techniques you need now to be exceptionally effective with C++.
Over half of this edition s content is new. Templates broadly impact C++ development, and you ll find them everywhere. There s extensive coverage of multithreaded systems. There s an entirely new chapter on resource management. You ll find substantial new coverage of exceptions. Much is gained, but nothing s lost: You ll find the same depth of practical insight that first made Effective C++ a classic all those years ago. Bill Camarda, from the July 2005 href="Read" rel="nofollow">http://www.barnesandnoble.com/newslet... Only
…
Cover unavailable
4
Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14
Scott Meyers
4.7
Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectively--so that your software is correct, efficient, maintainable, and portable. That's where this practical book comes in. It describes how to write truly great software using C++11 and C++14--i.e. using modern C++.
Topics include:
The pros and cons of braced initialization, noexcept specifications, perfect forwarding, and smart pointer make functions The relationships among std:: move, std:: forward, rvalue references, and universal references Techniques for writing clear, correct, effective lambda expressions How std:: atomic differs from volatile, how each should be used, and how they relate to C++'s concurrency API How best practices in "old" C++ programming (i.e., C++98) require revision for software development in modern C++ Effective Modern C++ follows the proven guideline-based, example-driven format of Scott Meyers' earlier books, but covers entirely new material.
"After I learned the C++ basics, I then learned how to use C++ in production code from Meyer's series of Effective C++ books. Effective Modern C++ is the most important how-to book for advice on key guidelines, styles, and idioms to use modern C++ effectively and well. Don't own it yet? Buy this one. Now".
-- Herb Sutter, Chair of ISO C++ Standards Committee and C++ Software Architect at Microsoft
…
Cover unavailable
5
A Tour of C++
Bjarne Stroustrup
4.6
In A Tour of C++, Second Edition, Bjarne Stroustrup, the creator of C++, describes what constitutes modern C++. This concise, self-contained guide covers most major language features and the major standard-library components--not, of course, in great depth, but to a level that gives programmers a meaningful overview of the language, some key examples, and practical help in getting started. Stroustrup presents the C++ features in the context of the programming styles they support, such as object-oriented and generic programming. His tour is remarkably comprehensive. Coverage begins with the basics, then ranges widely through more advanced topics, including many that are new in C++17, such as move semantics, uniform initialization, lambda expressions, improved containers, random numbers, and concurrency. The tour even covers some extensions being made for C++20, such as concepts and modules, and ends with a discussion of the design and evolution of C++. This guide does not aim to teach you how to program (for that, see Stroustrup's Programming: Principles and Practice Using C++, Second Edition), nor will it be the only resource you'll need for C++ mastery (for that, see Stroustrup's The C++ Programming Language, Fourth Edition, and recommended online sources). If, however, you are a C or C++ programmer wanting greater familiarity with the current C++ language, or a programmer versed in another language wishing to gain an accurate picture of the nature and benefits of modern C++, you can't find a shorter or simpler introduction than this tour provides.
…
Cover unavailable
6
The C++ Programming Language
Bjarne Stroustrup
4.6
The new C++11 standard allows programmers to express ideas more clearly, simply, and directly, and to write faster, more efficient code. Bjarne Stroustrup, the designer and original implementer of C++, has reorganized, extended, and completely rewritten his definitive reference and tutorial for programmers who want to use C++ most effectively. "The C++ Programming Language, Fourth Edition, " delivers meticulous, richly explained, and integrated coverage of the entire language--its facilities, abstraction mechanisms, standard libraries, and key design techniques. Throughout, Stroustrup presents concise, "pure C++11" examples, which have been carefully crafted to clarify both usage and program design. To promote deeper understanding, the author provides extensive cross-references, both within the book and to the ISO standard. New C++11 coverage includes Support for concurrency Regular expressions, resource management pointers, random numbers, and improved containers General and uniform initialization, simplified for-statements, move semantics, and Unicode support Lambdas, general constant expressions, control over class defaults, variadic templates, template aliases, and user-defined literals Compatibility issues Topics addressed in this comprehensive book include Basic facilities: type, object, scope, storage, computation fundamentals, and more Modularity, as supported by namespaces, source files, and exception handling C++ abstraction, including classes, class hierarchies, and templates in support of a synthesis of traditional programming, object-oriented programming, and generic programming Standard Library: containers, algorithms, iterators, utilities, strings, stream I/O, locales, numerics, and more The C++ basic memory model, in depth This fourth edition makes C++11 thoroughly accessible to programmers moving from C++98 or other languages, while introducing insights and techniques that even cutting-edge C++11 programmers will find indispensable. "This book features an enhanced, layflat binding, which allows the book to stay open more easily when placed on a flat surface. This special binding method--noticeable by a small space inside the spine--also increases durability."
…
Cover unavailable
7
More Effective C++: 35 New Ways to Improve Your Programs and Designs, PDF Version
Scott Meyers
4.5
Cover unavailable
8
MAKE: Electronics: Learning Through Discovery
Charles Platt
4.5
"This is teaching at its best!"
--Hans Camenzind, inventor of the 555 timer (the world's most successful integrated circuit), and author of Much Ado About Almost Nothing: Man's Encounter with the Electron (Booklocker.com)
"A fabulous book: well written, well paced, fun, and informative. I also love the sense of humor. It's very good at disarming the fear. And it's gorgeous. I'll be recommending this book highly."
--Tom Igoe, author of Physical Computing and Making Things Talk
Want to learn the fundamentals of electronics in a fun, hands-on way? With Make: Electronics, you'll start working on real projects as soon as you crack open the book. Explore all of the key components and essential principles through a series of fascinating experiments. You'll build the circuits first, then learn the theory behind them!
Build working devices, from simple to complex You'll start with the basics and then move on to more complicated projects. Go from switching circuits to integrated circuits, and from simple alarms to programmable microcontrollers. Step-by-step instructions and more than 500 full-color photographs and illustrations will help you use -- and understand -- electronics concepts and techniques.
Discover by breaking things: experiment with components and learn from failure Set up a tricked-out project space: make a work area at home, equipped with the tools and parts you'll need Learn about key electronic components and their functions within a circuit Create an intrusion alarm, holiday lights, wearable electronic jewelry, audio processors, a reflex tester, and a combination lock Build an autonomous robot cart that can sense its environment and avoid obstacles Get clear, easy-to-understand explanations of what you're doing and why
"Mere Christianity" is first and foremost a rational book — it is in many ways the opposite of a traditional religious tome. Lewis, who was once an atheist, has been on both sides of the table, and he approaches the notion of God with accessible, clear thinking. The book reveals that experiencing God doesn't have to be a mystical exercise; God can be a concrete and logical conclusion. Lewis was a man of formidable intellect, and he brought it all to bear in this phenomenal book on the rationality of faith. [source]
Cover unavailable
10
C++ Primer
Stanley B. Lippman
4.5
Bestselling Programming Tutorial and Reference Completely Rewritten for the New C++11 Standard Fully updated and recast for the newly released C++11 standard, this authoritative and comprehensive introduction to C++ will help you to learn the language fast, and to use it in modern, highly effective ways. Highlighting today's best practices, the authors show how to use both the core language and its standard library to write efficient, readable, and powerful code. C++ Primer, Fifth Edition, introduces the C++ standard library from the outset, drawing on its common functions and facilities to help you write useful programs without first having to master every language detail. The book's many examples have been revised to use the new language features and demonstrate how to make the best use of them. This book is a proven tutorial for those new to C++, an authoritative discussion of core C++ concepts and techniques, and a valuable resource for experienced programmers, especially those eager to see C++11 enhancements illuminated. Start Fast and Achieve More Learn how to use the new C++11 language features and the standard library to build robust programs quickly, and get comfortable with high-level programming Learn through examples that illuminate today's best coding styles and program design techniques Understand the "rationale behind the rules" why C++11 works as it does Use the extensive crossreferences to help you connect related concepts and insights Benefit from up-to-date learning aids and exercises that emphasize key points, help you to avoid pitfalls, promote good practices, and reinforce what you've learned Access the source code for the extended examples from informit.com/title/0321714113C++ Primer, Fifth Edition, features an enhanced, layflat binding, which allows the book to stay open more easily when placed on a flat surface. This special binding method--notable by a small space inside the spine--also increases durability.
…
Cover unavailable
11
First Little Comics: Levels C D (Parent Pack): 20 Funny Books That Are Just the Right Level for New Readers
Liza Charlesworth
4.5
Jumpstart your child’s reading success with comics! Kids will love these laugh-out-loud books with very easy text in speech balloons. They’ll also adore the zany cast of characters: monsters, bears, talking crayons, pirates, dinosaurs, grumpy trolls, and more! This fun set, correlated with guided reading levels C & D, is packed with 20 just-right titles plus a parent guide, mini-workbook, and motivating stickers. A giggle-fueled way to boost essential literacy! Includes • 20 full-color, 8-page books • 4-page parent guide • 24-page mini-workbook • Stickers • Sturdy storage box
…
Cover unavailable
12
Modern C++ Design: Generic Programming and Design Patterns Applied
Andrei Alexandrescu
4.5
In Modern C++ Design, Andrei Alexandrescu opens new vistas for C++ programmers. Displaying extraordinary creativity and programming virtuosity, Alexandrescu offers a cutting-edge approach to design that unites design patterns, generic programming, and C++, enabling programmers to achieve expressive, flexible, and highly reusable code. This book introduces the concept of generic components--reusable design templates that produce boilerplate code for compiler consumption--all within C++. Generic components enable an easier and more seamless transition from design to application code, generate code that better expresses the original design intention, and support the reuse of design structures with minimal recoding. The author describes the specific C++ techniques and features that are used in building generic components and goes on to implement industrial strength generic components for real-world applications. Recurring issues that C++ developers face in their day-to-day activity are discussed in depth and implemented in a generic way. These include: Policy-based design for flexibility Partial template specialization Typelists--powerful type manipulation structures Patterns such as Visitor, Singleton, Command, and Factories Multi-method engines For each generic component, the book presents the fundamental problems and design options, and finally implements a generic solution. In addition, an accompanying Web site, http: //www.awl.com/cseng/titles/0-201-70431-5, makes the code implementations available for the generic components in the book and provides a free, downloadable C++ library, called Loki, created by the author. Loki provides out-of-the-box functionality for virtually any C++ project. Get a value-added service! Try out all the examples from this book at www.codesaw.com. CodeSaw is a free online learning tool that allows you to experiment with live code from your book right in your browser.
…
Cover unavailable
13
Ripple (Breakthrough Book 4)
Michael C. Grumley
4.4
It began in Ethiopia, hundreds of thousands of years ago. When a handful of genetic mutations caused evolution to split from the primates. And mankind was born. Now, eons later, evidence of more splits from the apes are being unearthed. And with them, a disturbing realization. Ours was only one of many. And yet we survived. But it was not by luck or chance. We survived because humans had something the others did not. A unique ingredient that has only now been rediscovered. First in the mountains of South America, where it was promptly destroyed by the Chinese. And now a second source in Africa. The epicenter of mankind's very inception. A place that John Clay and Alison Shaw must find quickly. Because the Russians already know what we are searching for. And the Chinese want back what is rightfully theirs. The mother of all secrets awaits the world, in Africa. One that will not only explain who we are, but will decipher the very code within our own DNA.
…
Cover unavailable
14
The C++ Standard Library: A Tutorial and Reference
Nicolai M. Josuttis
4.4
The Best-Selling C++ ResourceNow Updated for C++11 The C++ standard library provides a set of common classes and interfaces that greatly extend the core C++ language. The library, however, is not self-explanatory. To make full use of its components-and to benefit from their power-you need a resource that does far more than list the classes and their functions. "The C++ Standard Library: A Tutorial and Reference, Second Edition, " describes this library as now incorporated into the new ANSI/ISO C++ language standard (C++11). The book provides comprehensive documentation of each library component, including an introduction to its purpose and design; clearly written explanations of complex concepts; the practical programming details needed for effective use; traps and pitfalls; the exact signature and definition of the most important classes and functions; and numerous examples of working code. The book focuses in particular on the Standard Template Library (STL), examining containers, iterators, function objects, and STL algorithms. The book covers all the new C++11 library components, including ConcurrencyFractional arithmeticClocks and timersTuplesNew STL containersNew STL algorithmsNew smart pointersNew locale facetsRandom numbers and distributionsType traits and utilitiesRegular expressions The book also examines the new C++ programming style and its effect on the standard library, including lambdas, range-based for loops, move semantics, and variadic templates. An accompanying Web site, including source code, can be found at www.cppstdlib.com.
…
Cover unavailable
15
The C.S. Lewis Signature Classics (8-Volume Box Set)
C. S. Lewis
4.4
A gorgeous boxed set that includes all eight paperback volumes of the C. S. Lewis Signature Classics.
Boxed together for the first time, here are the signature spiritual works of one of the most celebrated literary figures of our time. Perfect for gift-giving, The C. S. Lewis Signature Classics (8-Volume Box Set) contains:
Mere Christianity The Screwtape Letters The Great Divorce The Problem of Pain Miracles A Grief Observed Abolition of Man The Four Loves
…
Cover unavailable
16
Refactoring: Improving the Design of Existing Code
Martin Fowler
4.4
Fully Revised and Updated-Includes New Refactorings and Code Examples"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." --M. Fowler (1999) For more than twenty years, experienced programmers worldwide have relied on Martin Fowler's Refactoring to improve the design of existing code and to enhance software maintainability, as well as to make existing code easier to understand. This eagerly awaited new edition has been fully updated to reflect crucial changes in the programming landscape. Refactoring, Second Edition, features an updated catalog of refactorings and includes JavaScript code examples, as well as new functional examples that demonstrate refactoring without classes. Like the original, this edition explains what refactoring is; why you should refactor; how to recognize code that needs refactoring; and how to actually do it successfully, no matter what language you use. Understand the process and general principles of refactoring Quickly apply useful refactorings to make a program easier to comprehend and change Recognize "bad smells" in code that signal opportunities to refactor Explore the refactorings, each with explanations, motivation, mechanics, and simple examples Build solid tests for your refactorings Recognize tradeoffs and obstacles to refactoring Includes free access to the canonical web edition, with even more refactoring resources. (See inside the book for details about how to access the web edition.)
This is next on my list of technical books to read! Refactoring is one of two programming books that I’ve read multiple times (the other is Smalltalk Best Practice Patterns), and I’m due for another reading. What perfect time then to dive into Martin Fowler’s long anticipated 2nd edition, now using JavaScript rather than Java for the code examples. Like the stoic books, I read Refactoring and that Smalltalk book again and again not because I’m going to learn something new, per se, but because I want to be reminded about what I already know. And what better time to reread than just as we’re kicking off a new major project that needs a fresh architectural foundation. Also, these two books just remind every time of how much I love the craft of programming. It’s not just having the programs, it’s not just solving problems, it’s simply using my hands and head to program that in and of itself is sublime. [source]
Cover unavailable
17
Endangered
C. J. Box
4.4
New York Times–bestselling writer C. J. Box returns with a thrilling novel featuring Wyoming game warden Joe Pickett.
Joe Pickett had good reason to dislike Dallas Cates, and now he has even more—Joe’s eighteen-year-old daughter, April, has run off with him. And then comes even worse news: She has been found in a ditch along the highway—alive, but just barely, the victim of blunt force trauma. Cates denies having anything to do with it, but Joe knows in his gut who’s responsible. What he doesn’t know is the kind of danger he’s about to encounter. Cates is bad enough, but Cates’s family is like none Joe has ever met.
…
Cover unavailable
18
Nonfiction Sight Word Readers: Guided Reading Level C (Parent Pack): Teaches 25 key Sight Words to Help Your Child Soar as a Reader!
Liza Charlesworth
4.4
Set the stage for your child to soar with these just-right books that teach the third 25 sight words! This cheery green box includes 25 titles, each focused on a key sight word: will, up, other, about, out, etc. The books’ real-world topics with predicable text are super-engaging to make mastering these must-know words easy and fun. Includes motivating stickers PLUS a mini-activity book. Books correlate with Guided Reading Level C.
Third 25 Sight Words (Fry List): will, up, other, about, out, many, then, them, these, so, some, her, would, make, like, him, into, time. has, look. two, more, write, go, see Includes • 25 full-color, 8-page books • 32-page activity book • sticker sheet • sturdy storage box
…
Cover unavailable
19
Free Fire
C. J. Box
4.4
A Joe Pickett novel from #1"New York Times-"bestselling author C.J. Box. Joe Pickett s been hired to investigate one of the most cold-blooded mass killings in Wyoming history. Attorney Clay McCann admitted to slaughtering four campers in a back-country corner of Yellowstone National Park a free-fire zone with no residents or jurisdiction. In this remote fifty-square-mile stretch a man can literally get away with murder. Now McCann s a free man, and Pickett s about to discover his motive one buried in Yellowstone s rugged terrain, and as dangerous as the man who wants to keep it hidden."
…
Cover unavailable
20
Winterkill (Joe Pickett, #3)
C. J. Box
4.4
It's an hour away from darkness. a bitter winter storm is raging, and Joe Pickett is deep in the forest edging Battle Mountain, shotgun in his left hand. his truck's steering wheel handcuffed to his right -- and Lamar Gardiner's arrow-riddled corpse splayed against the tree in front of him. Lamar's murder and the sudden onslaught of the snowstorm warn: Get off the mountain. But Joe knows this episode is far from over. Somewhere in the dense timber, a killer draws his bowstring -- with Joe as his prey...
…
Cover unavailable
21
Wolf Pack
C. J. Box
4.4
Wyoming game warden Joe Pickett encounters bad behavior on his own turf--only to have the FBI and the DOJ ask him to stand down.
The good news is that Joe Pickett has his job back, after his last adventure in The Disappeared. The bad news is that he's come to learn that a drone is killing wildlife--and the drone belongs to a mysterious and wealthy man whose grandson is dating Joe's own daughter, Lucy.
When Joe tries to lay down the rules for the drone operator, he is asked by the FBI and the DOJ to stand down, which only makes him more suspicious. Joe discovers that the man is in the witness relocation program, as he is in possession of knowledge about dangerous people. Soon, Joe comes across a pack of four killers working on behalf of the Sinaloa cartel to find the man in the WITSEC program--and Joe realizes his actions might expose the man.
Teaming up with a female game warden (based on a real person, one of the few female game wardens at work in Wyoming today) to confront these assassins, Joe finds himself their prey--along with Lucy and her boyfriend.
…
Cover unavailable
22
Programming: Principles and Practice Using C++
Bjarne Stroustrup
4.4
Cover unavailable
23
Force of Nature (Joe Pickett, #12)
C. J. Box
4.4
Updated cover of this Paperback edition.
Joe Pickett’s friend’s past comes back to haunt everyone he cares about in this “violent, bloody, and quite satisfying thriller”* from #1 New York Times bestselling author C. J. Box.
In 1995, Nate Romanowski was in a Special Forces unit abroad when his commander, John Nemecek, did something terrible. Now the high-ranking government official and cold-blooded sociopath is determined to eliminate anyone who knows about it—like Nate, who’s hidden himself away in Wyoming’s Bighorn Mountains. And he knows exactly how Nemecek will do it—by targeting Nate's friends to draw him out. That includes his friend, game warden Joe Pickett, and Pickett’s entire family. The only way to fight back is outside the law. Nate knows he can do it, but he isn't sure about his straight-arrow friend. And all their lives could depend on it.
…
Cover unavailable
24
Sweet Jones: Pimp C's Trill Life Story
Julia Beverly
4.4
Cover unavailable
25
Nonfiction Sight Word Readers: Guided Reading Level D (Parent Pack): Teaches 25 key Sight Words to Help Your Child Soar as a Reader!
Liza Charlesworth
4.4
Set the stage for your child to soar with these just-right books that teach the fourth 25 sight words! This cheery orange box includes 25 titles, each focused on a key sight word: number, no, way, could, people, etc. The books’ real-world topics with predicable text are super-engaging to make mastering these must-know words easy and fun. Includes motivating stickers PLUS a mini-activity book to ensure learning sticks. Books correlate with Guided Reading Level D.
Fourth 25 Sight Words (Fry List): number, no, way, could, people, my, than, first, water, been, called, who, am, its, now, find, long, down, day, did, get, come, made, may, part Includes • 25 full-color, 8-page books • 32-page activity book • sticker sheet • sturdy storage box
…
Cover unavailable
26
Head First Design Patterns
Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth Robson
4.4
You're not alone.
At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you can spend your time on...something else. Something more challenging. Something more complex. Something more fun.
You want to learn about the patterns that matter--why to use them, when to use them, how to use them (and when NOT to use them). But you don't just want to see how patterns look in a book, you want to know how they look "in the wild". In their native environment. In other words, in real world applications. You also want to learn how patterns are used in the Java API, and how to exploit Java's built-in pattern support in your own code.
You want to learn the real OO design principles and why everything your boss told you about inheritance might be wrong (and what to do instead). You want to learn how those principles will help the next time you're up a creek without a design pattern.
Most importantly, you want to learn the "secret language" of Design Patterns so that you can hold your own with your co-worker (and impress cocktail party guests) when he casually mentions his stunningly clever use of Command, Facade, Proxy, and Factory in between sips of a martini. You'll easily counter with your deep understanding of why Singleton isn't as simple as it sounds, how the Factory is so often misunderstood, or on the real relationship between Decorator, Facade and Adapter.
With Head First Design Patterns, you'll avoid the embarrassment of thinking Decorator is something from the "Trading Spaces" show. Best of all, in a way that won't put you to sleep! We think your time is too important (and too short) to spend it struggling with academic texts.
If you've read a Head First book, you know what to expect--a visually rich format designed for the way your brain works. Using the latest research in neurobiology, cognitive science, and learning theory, Head First Design Patterns will load patterns into your brain in a way that sticks. In a way that lets you put them to work immediately. In a way that makes you better at solving software design problems, and better at speaking the language of patterns with others on your team.
…
Cover unavailable
27
Rescue Matters
C.J. English
4.4
AMAZON BESTSELLER-ANIMAL RIGHTS
"I highly recommend this book." -Deb Parker, Best Friends Animal Society
Four Years. Four Thousand Dogs. An incredible true story of rescue and redemption.
When Keith Benning accepted the job as a deputy in a small North Dakota county, he had no idea he was about to face the biggest challenge of his life. Four years and four thousand dogs later, he lost his marriage, a fellow officer and nearly his own life.
By rescuing seventy starving and unwanted animals out of his garage each month, Keith and a small team of volunteers have changed the world for thousands of dogs, and tens of thousands more to come.
Woven with riveting and inspiring real-life rescue stories, Rescue Matters tells a larger tale of tragedy-meets-redemption. A gripping account of how a garage rescue grew into a mighty force that inspired a nation.
C.J. English shares her personal experience inside the emotional and bittersweet world of dog rescue, delivering a heart-wrenching and deeply moving story that has much to teach us about responsibility and compassion.
Rescue Matters is alive with meaning and purpose, proving that that it doesn’t take a law or government to change the world, all it takes is a few people trying to make a difference to start a revolution.
Not just for dog lovers, but for anyone inspired by the compassion of humans and the resilience of the animals who forgive them. 50% of the profits from the sale of this book will go directly back to Keith Benning and his team at Turtle Mountain Animal Rescue.
…
Cover unavailable
28
Cold Wind (Joe Pickett, #11)
C. J. Box
4.4
Joe Pickett investigates a murder that hits close to home in this thriller in the #1 New York Times bestselling series.
When Earl Alden is found dead, dangling from a wind turbine, his wife, Missy, is arrested. Unfortunately for Joe Pickett, Missy is his much-disliked mother-in-law, and he’s not sure what to do—especially since it looks like Missy is guilty as sin.
But then things happen to make Joe wonder: Is Earl's death what it appears to be? Is Missy being set up? He has the county DA and sheriff on one side, his wife on the other, his estranged friend Nate on a lethal mission of his own, and some powerful interests breathing down his neck. Whichever way this goes, it’s not going to be good...
…
Cover unavailable
29
Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library
Scott Meyers
4.3
"This is Effective C++ volume three - it's really that good." - Herb Sutter, independent consultant and secretary of the ISO/ANSI C++ standards committee "There are very few books which all C++ programmers must have. Add Effective STL to that list." - Thomas Becker, Senior Software Engineer, Zephyr Associates, Inc., and columnist, C/C++ Users Journal C++'s Standard Template Library is revolutionary, but learning to use it well has always been a challenge. Until now. In this book, best-selling author Scott Meyers ( Effective C++ , and More Effective C++ ) reveals the critical rules of thumb employed by the experts - the things they almost always do or almost always avoid doing - to get the most out of the library. Other books describe what's in the STL. Effective STL shows you how to use it. Each of the book's 50 guidelines is backed by Meyers' legendary analysis and incisive examples, so you'll learn not only what to do, but also when to do it - and why. Highlights of Effective STL include: Advice on choosing among standard STL containers (like vector and list), nonstandard STL containers (like hash_set and hash_map), and non-STL containers (like bitset). Techniques to maximize the efficiency of the STL and the programs that use it. Insights into the behavior of iterators, function objects, and allocators, including things you should not do. Guidance for the proper use of algorithms and member functions whose names are the same (e.g., find), but whose actions differ in subtle (but important) ways. Discussions of potential portability problems, including straightforward ways to avoid them. Like Meyers' previous books, Effective STL is filled with proven wisdom that comes only from experience. Its clear, concise, penetrating style makes it an essential resource for every STL programmer.
…
Cover unavailable
30
C++ Crash Course: A Fast-Paced Introduction
Josh Lospinoso
4.3
A fast-paced, thorough introduction to modern C++ written for experienced programmers. After reading C++ Crash Course, you'll be proficient in the core language concepts, the C++ Standard Library, and the Boost Libraries.
C++ is one of the most widely used languages for real-world software. In the hands of a knowledgeable programmer, C++ can produce small, efficient, and readable code that any programmer would be proud of.
Designed for intermediate to advanced programmers, C++ Crash Course cuts through the weeds to get you straight to the core of C++17, the most modern revision of the ISO standard. Part 1 covers the core of the C++ language, where you'll learn about everything from types and functions, to the object life cycle and expressions. Part 2 introduces you to the C++ Standard Library and Boost Libraries, where you'll learn about all of the high-quality, fully-featured facilities available to you. You'll cover special utility classes, data structures, and algorithms, and learn how to manipulate file systems and build high-performance programs that communicate over networks.
You'll learn all the major features of modern C++, including: * Fundamental types, reference types, and user-defined types * The object lifecycle including storage duration, memory management, exceptions, call stacks, and the RAII paradigm * Compile-time polymorphism with templates and run-time polymorphism with virtual classes * Advanced expressions, statements, and functions * Smart pointers, data structures, dates and times, numerics, and probability/statistics facilities * Containers, iterators, strings, and algorithms * Streams and files, concurrency, networking, and application development
With well over 500 code samples and nearly 100 exercises, C++ Crash Course is sure to help you build a strong C++ foundation.
…
Cover unavailable
31
The C Programming Language
Brian W. Kernighan, Dennis M. Ritchie
4.3
This book is meant to help the reader learn how to program in C. It is the definitive reference guide, now in a second edition. Although the first edition was written in 1978, it continues to be a worldwide best-seller. This second edition brings the classic original up to date to include the ANSI standard.
From the Preface: We have tried to retain the brevity of the first edition. C is not a big language, and it is not well served by a big book. We have improved the exposition of critical features, such as pointers, that are central to C programming. We have refined the original examples, and have added new examples in several chapters. For instance, the treatment of complicated declarations is augmented by programs that convert declarations into words and vice versa. As before, all examples have been tested directly from the text, which is in machine-readable form.
As we said in the first preface to the first edition, C "wears well as one's experience with it grows." With a decade more experience, we still feel that way. We hope that this book will help you to learn C and use it well.
…
Cover unavailable
32
Guided Science Readers Parent Pack: Level B: 16 Fun Nonfiction Books That Are Just Right for New Readers
Liza Charlesworth
4.3
Set your child on the path to reading success with this exciting collection of little books on favorite science topics: frogs, baby animals, mammals, snow, seasons, and many more. These level B full-color books feature engaging photos paired with simple text and are just right for readers with just a little bit of experience. Includes a 16-page mini-activity book, motivating stickers, and 2-page parent tip sheet. A great way to help children step up to the next reading level with ease. For use with Grades PreK-1.
…
Cover unavailable
33
First Little Readers: Guided Reading Level D (Parent Pack): 25 Irresistible Books That Are Just the Right Level for Beginning Readers
Liza Charlesworth
4.3
Jumpstart reading success with this big collection of 25 motivating storybooks correlated with Guided Reading Level D. The books features simple text, decodable words, strong picture cues, and two to four lines of text per page to support readers with just a little experience under their belts. Children will laugh, learn, and build confidence with these funny books on their favorite topics–from dogs to dinosaurs, princesses to pizza! Includes • 25 full color, 8-page books • 4-page parent guide • Sturdy storage box
…
Cover unavailable
34
Little Leveled Readers: Level C Box Set: Just the Right Level to Help Young Readers Soar!
Scholastic and Scholastic Teaching Resources
4.3
A step-by-step, book-by-book program that guides children through the early stages of reading. Each book, carefully evaluated by a reading specialist to correlate with the Guided Reading Levels, is leveled to address the early stages of a child's reading development. Inside each box set you'll find 75 storybooks (5 copies of 15 titles) on topics children love, which makes them perfect for group learning. Each set also includes a mini-teaching guide. For use with Grades PreK-2.
…
Cover unavailable
35
C++ Coding Standards: 101 Rules, Guidelines, and Best Practices
Herb Sutter, Andrei Alexandrescu
4.3
Consistent, high-quality coding standards improve software quality, reduce time-to-market, promote teamwork, eliminate time wasted on inconsequential matters, and simplify maintenance. Now, two of the world's most respected C++ experts distill the rich collective experience of the global C++ community into a set of coding standards that every developer and development team can understand and use as a basis for their own coding standards.
The authors cover virtually every facet of C++ programming: design and coding style, functions, operators, class design, inheritance, construction/destruction, copying, assignment, namespaces, modules, templates, genericity, exceptions, STL containers and algorithms, and more. Each standard is described concisely, with practical examples. From type definition to error handling, this book presents C++ best practices, including some that have only recently been identified and standardized-techniques you may not know even if you've used C++ for years. Along the way, you'll find answers to questions like
What's worth standardizing--and what isn't? What are the best ways to code for scalability? What are the elements of a rational error handling policy? How (and why) do you avoid unnecessary initialization, cyclic, and definitional dependencies? When (and how) should you use static and dynamic polymorphism together? How do you practice "safe" overriding? When should you provide a no-fail swap? Why and how should you prevent exceptions from propagating across module boundaries? Why shouldn't you write namespace declarations or directives in a header file? Why should you use STL vector and string instead of arrays? How do you choose the right STL search or sort algorithm? What rules should you follow to ensure type-safe code? Whether you're working alone or with others, C++ Coding Standards will help you write cleaner code--and write it faster, with fewer hassles and less frustration.
…
Cover unavailable
36
The Disappeared
C. J. Box
4.3
Wyoming game warden Joe Pickett has two lethal cases to contend with in this electrifying #1 New York Times-bestseller from C. J. Box.
Wyoming's new governor isn't sure what to make of Joe Pickett, but he has a job for him that is extremely delicate. A prominent female British executive never came home from the high-end guest ranch she was visiting, and the British Embassy is pressing hard. Pickett knows that happens sometimes--these ranches are stocked with handsome young cowboys, and "ranch romances" aren't uncommon. But no sign of her months after she vanished? That suggests something else.
At the same time, his friend Nate Romanowski has asked Joe to intervene with the feds on behalf of falconers who can no longer hunt with eagles even though their permits are in order. Who is blocking the falconers and why? The more he investigates both cases, the more someone wants him to go away. Is it because of the missing woman or because he's become Nate's advocate? Or are they somehow connected? The answers, when they come, will be even worse than he'd imagined.
…
Cover unavailable
37
The Weight of Glory
C. S. Lewis
4.3
Selected from sermons delivered by C. S. Lewis during World War II, these nine addresses offer guidance and inspiration in a time of great doubt. These are ardent and lucid sermons that provide a compassionate vision of Christianity.
Addressing some of the most difficult issues we face in our day-to-day lives, C.S. Lewis's ardent and timeless words provide an unparalleled path to greater spiritual understanding. Considered by many to be his most moving address, "The Weight of Glory" extols a compassionate vision of Christianity and includes lucid and compelling discussions on forgiveness and faith.
…
Cover unavailable
38
Design Patterns: Elements of Reusable Object-Oriented Software
Erich; Helm John Gamma
4.3
Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves.
The authors begin by describing what patterns are and how they can help you design object-oriented software. They then go on to systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems. With Design Patterns as your guide, you will learn how these important patterns fit into the software development process, and how you can leverage them to solve your own design problems most efficiently.
Each pattern describes the circumstances in which it is applicable, when it can be applied in view of other design constraints, and the consequences and trade-offs of using the pattern within a larger design. All patterns are compiled from real systems and are based on real-world examples. Each pattern also includes code that demonstrates how it may be implemented in object-oriented programming languages like C++ or Smalltalk.
…
Cover unavailable
39
CLR via C# (4th Edition) (Developer Reference)
Jeffrey Richte
4.3
Dig deep and master the intricacies of the common language runtime, C#, and .NET development. Led by programming expert Jeffrey Richter, a longtime consultant to the Microsoft .NET team - you’ll gain pragmatic insights for building robust, reliable, and responsive apps and components.
Fully updated for .NET Framework 4.5 and Visual Studio 2012 Delivers a thorough grounding in the .NET Framework architecture, runtime environment, and other key topics, including asynchronous programming and the new Windows Runtime Provides extensive code samples in Visual C# 2012 Features authoritative, pragmatic guidance on difficult development concepts such as generics and threading
…
Cover unavailable
40
Blood Trail
C. J. Box
4.3
A Joe Pickett novel from #1"New York Times-"bestselling author C.J. Box. Game wardens have found a man dead at a mountain camp-strung up, gutted, and flayed as if he were the elk he'd been hunting. Is the murder the work of a deranged anti-hunting activist or of a lone psychopath with a personal vendetta? Wyoming game warden Joe Pickett is the man to track the murderer and stop him before someone declares open season on humans."
…
Cover unavailable
41
Nowhere to Run
C. J. Box
4.3
A Joe Pickett novel from #1"New York Times-"bestselling author C.J. Box. It's Joe Pickett's last week as a temporary game warden in the mountain town of Baggs, Wyoming, but his conscience won't let him leave without checking out the strange reports coming from the wilderness: camps looted, tents slashed, elk butchered. What awaits him is like something out of an old campfire tale, except this story is all too real-and all too deadly."
…
Cover unavailable
42
Till We Have Faces
C. S. Lewis
4.3
In this timeless tale of two mortal princesses- one beautiful and one unattractive- C.S. Lewis reworks the classical myth of Cupid and Psyche into an enduring piece of contemporary fiction. This is the story of Orual, Psyche's embittered and ugly older sister, who posessively and harmfully loves Psyche. Much to Orual's frustration, Psyche is loved by Cupid, the god of love himself, setting the troubled Orual on a path of moral development.
Set against the backdrop of Glome, a barbaric, pre-Christian world, the struggles between sacred and profane love are illuminated as Orual learns that we cannot understand the intent of the gods "till we have faces" and sincerity in our souls and selves.
…
Cover unavailable
43
Below Zero
C. J. Box
4.3
A Joe Pickett novel from #1"New York Times-"bestselling author C.J. Box. Six years ago, Joe Pickett's foster daughter, April, was murdered. Now, someone is leaving phone messages claiming to be the dead girl. As his family struggles with the disturbing event, he discovers that the calls have been placed from locations where serious environmental crimes have occurred. And as the phone calls grow closer, so does the danger."
…
Cover unavailable
44
The Robe
Lloyd C. Douglas
4.3
A Roman soldier, Marcellus, wins Christ's robe as a gambling prize. He then sets forth on a quest to find the truth about the Nazarene's robe-a quest that reaches to the very roots and heart of Christianity and is set against the vividly limned background of ancient Rome. Here is a timeless story of adventure, faith, and romance, a tale of spiritual longing and ultimate redemption.
Cover unavailable
45
The Good Shepherd
C. S. Forester
4.3
Soon to be the major motion picture Greyhound, a WWII naval thriller of "high and glittering excitement" (New York Times) from the author of the legendary Hornblower series
The mission of Commander George Krause of the United States Navy is to protect a convoy of thirty-seven merchant ships making their way across the icy North Atlantic from America to England. There, they will deliver desperately needed supplies, but only if they can make it through the wolfpack of German submarines that awaits and outnumbers them in the perilous seas. For forty eight hours, Krause will play a desperate cat and mouse game against the submarines, combating exhaustion, hunger, and thirst to protect fifty million dollars' worth of cargo and the lives of three thousand men. Acclaimed as one of the best novels of the year upon publication in 1955, The Good Shepherd is a riveting classic of WWII and naval warfare from one of the 20th century's masters of sea stories.
…
Cover unavailable
46
A is for Alternator: ABC Book of Auto Parts
Alex Smith
4.3
A is for Alternator: ABC Book of Auto Parts teaches your child the Alphabet and introduces automotive parts in the process.
Cover unavailable
47
More Exceptional C++: 40 New Engineering Puzzles, Programming Problems, and Solutions
Herb Sutter
4.3
This text contains coverage of optimization in both single and multi threaded environments. It emphasizes generic programming and using the C++ Standard Library.
Cover unavailable
48
My First Piano Adventure: Lesson Book C with Play-Along & Listening CD
Nancy Faber and Randall Faber
4.3
(Faber Piano Adventures ). Book C of the Fabers' young beginner method continues the staff-reading adventure with the introduction of skips (3rds). Students first explore skips aurally and kinesthetically across the full range of the keyboard. A delightful variety of songs follow which carefully and comfortably guide the child toward line-line and space-space staff recognition.
Cover unavailable
49
The Silver Chair (Chronicles of Narnia, #4)
C.S. Lewis, Jeremy Northam, et al
4.3
Jill and Eustace must rescue the Prince from the evil Witch.
NARNIA...where owls are wise, where some of the giants like to snack on humans, where a prince is put under an evil spell...and where the adventure begins.
Eustace and Jill escape from the bullies at school through a strange door in the wall, which, for once, is unlocked. It leads to the open moor...or does it? Once again Aslan has a task for the children, and Narnia needs them. Through dangers untold and caverns deep and dark, they pursue the quest that brings them face to face with the evil Witch. She must be defeated if Prince Rillian is to be saved.
…
Cover unavailable
50
The Design and Evolution of C++
Bjarne Stroustrup
4.3
This book focuses on the principles, processes and decisions made during the development of the C++ programming language. As the inventor of the language, Stroustrup presents his insight into the decisions which resulted in the features of C++ - the praised, the controversial and even some of the rejected ones. By writing this book the author presents his object-oriented programming philosophy to the interested programming community. His vehicle is the C++ language but his focus is on real object-oriented programming language development for the working programmer rather than as a abstract approach to the OOP paradigm.
…
Cover unavailable
51
Elements of Programming Interviews: The Insiders' Guide C++
Adnan Aziz, Tsung-Hsien Lee, et al.
4.3
New! Java versions of all C++ programs in the book at http: //bit.ly/epi-programs Get a PDF sampler of EPI from http: //bit.ly/epi-sampler
Have you ever...
Wanted to work at an exciting futuristic company? Struggled with an interview problem that could have been solved in 15 minutes? Wished you could study real-world computing problems?
If so, you need to read Elements of Programming Interviews (EPI).
The core of EPI is a collection of 300 problems with detailed solutions, including over 100 figures and 250 tested programs. The problems are challenging, well-motivated, and accessible. They are representative of the questions asked at interviews at the most exciting companies.
The book begins with a summary of patterns for data structure, algorithms, and problem solving that will help you solve the most challenging interview problems. This is followed by chapters on basic and advanced data structures, algorithm design, concurrency, system design, probability and discrete mathematics. Each chapter starts with a brief review of key concepts and results followed by a deep and wide set of questions.
EPI concludes with a summary of the nontechnical aspects of interviewing, including common mistakes, strategies for a great interview, perspectives from across the table, negotiating the best offer, and much more.
"This book is the best compilation of programming related problems I have seen. It is a great resource for a diverse set of topics when preparing for technical interviews, as a quick refresher in a subject area or when you are just looking for a brain teaser to challenge yourself." Shashank Gupta / Scaligent, formerly Engineering Manager, Amazon.com, Senior Engineering Manager, Yahoo!, Manager of Software Development, Cisco Systems
…
Cover unavailable
52
C++ Concurrency in Action: Practical Multithreading
Anthony Williams
4.3
Summary
C++ Concurrency in Action is a reference and guide to the new C++ 11 Standard for experienced C++ programmers as well as those who have never written multithreaded code. This book will show you how to write robust multithreaded applications in C++ while avoiding many common pitfalls.
About the TechnologyMultiple processors with multiple cores are the norm these days. The C++11 version of the C++ language offers beefed-up support for multithreaded applications, and requires that you master the principles, techniques, and new language features of concurrency to stay ahead of the curve.
About the BookWithout assuming you have a background in the subject, CC++ Concurrency in Action gradually enables you to write robust and elegant multithreaded applications in C++11. You'll explore the threading memory model, the new multithreading support library, and basic thread launching and synchronization facilities. Along the way, you'll learn how to navigate the trickier bits of programming for concurrency.
Written for C++ programmers who are new to concurrency and others who may have written multithreaded code using other languages, APIs, or platforms.
Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.
What's Inside Written for the new C++11 Standard Programming for multiple cores and processors Small examples for learning, big examples for practice ====================
Table of Contents Hello, world of concurrency in C++! Managing threads Sharing data between threads Synchronizing concurrent operations The C++ memory model and operations on atomic types Designing lock-based concurrent data structures Designing lock-free concurrent data structures Designing concurrent code Advanced thread management Testing and debugging multithreaded applications
…
Cover unavailable
53
Professional C++
Marc Gregoire, Nicholas A. Solter, Scott J. Kleper
4.3
Essential reading for experienced developers who are determined to master the latest release of C++
Although C++ is often the language of choice from game programming to major commercial software applications, it is also one of the most difficult to master. With this no-nonsense book, you will learn to conquer the latest release of C++. The author deciphers little-known features of C++, shares detailed code examples that you can then plug into your own code, and reveals the significant changes to C++ that accompany the latest release. You'll discover how to design and build applications that solve real-world problems and then implement the solution using the full capabilities of the language.
Appeals to experienced developers who are looking for a higher level of learning
Drills down the extensive changes to the latest C++ standard, C++11, including enhancements made to run-time performance, standard library, language usability, and core language Zeroes in on explaining the more poorly understood elements of the C++ feature set and addresses common pitfalls to avoid Includes case studies that feature extensive, working code that has been tested on Windows and Linux platforms Intertwines text with useful tips, tricks, and workarounds Packed with best practices for programming, testing, and debugging applications, this book is vital for taking your C++ skills to the next level.
…
Cover unavailable
54
Sams Teach Yourself C++ in One Hour a Day
Siddhartha Rao
4.3
In just one hour a day, you'll have all the skills you need to begin programming in C++. With this complete tutorial, you'll quickly master the basics, and then move on to more advanced features and concepts. Completely updated for the C++14 standard, with a preview of C++17, this book presents the language from a practical point of view, helping you learn how to use C++ to create faster, simpler, and more efficient C++ applications. Master the fundamentals of C++ and object-oriented programming Understand how C++ features help you write compact and efficient code using concepts such as lambda expressions, move constructors, and assignment operators Learn best practices and avoid pitfalls via useful Do's and Don'ts Learn the Standard Template Library, including containers and algorithms used in most real-world C++ applications Test your knowledge and expertise with exercises at the end of every lesson Learn on your own time, at your own pace: No previous programming experience required Write fast and powerful C++ programs, compile the source code, and create executable files Learn object-oriented programming concepts such as encapsulation, abstraction, inheritance, and polymorphism Use the Standard Template Library's algorithms and containers to write feature-rich yet stable C++ applications Learn how automatic type deduction helps simplify C++ code Develop sophisticated programming techniques using lambda expressions, smart pointers, and move constructors Master the features of C++ by learning from programming experts Learn C++ features that allow you to program compact and high-performance C++ applications Preview what's new in C++17 Contents at a Glance Part I: The Basics Lesson 1: Getting Started Lesson 2: The Anatomy of a C++ Program Lesson 3: Using Variables, Declaring Constants Lesson 4: Managing Arrays and Strings Lesson 5: Working with Expressions, Statements, and Operators Lesson 6: Controlling Program Flow Lesson 7: Organizing Code with Functions Lesson 8: Pointers and References Explained Part II: Fundamentals of Object-Oriented C++ Programming Lesson 9: Classes and Objects Lesson 10: Implementing Inheritance Lesson 11: Polymorphism Lesson 12: Operator Types and Operator Overloading Lesson 13: Casting Operators Lesson 14: An Introduction to Macros and Templates Part III: Learning the Standard Template Library (STL) Lesson 15: An Introduction to the Standard Template Library Lesson 16: The STL String Class Lesson 17: STL Dynamic Array Classes Lesson 18: STL list and forward_list Lesson 19: STL Set Classes Lesson 20: STL Map Classes Part IV: More STL Lesson 21: Understanding Function Objects Lesson 22: Lambda Expressions Lesson 23: STL Algorithms Lesson 24: Adaptive Containers: Stack and Queue Lesson 25: Working with Bit Flags Using STL Part V: Advanced C++ Concepts Lesson 26: Understanding Smart Pointers Lesson 27: Using Streams for Input and Output Lesson 28: Exception Handling Lesson 29: Going Forward Part VI: Appendixes Appendix A: Working with Numbers: Binary and Hexadecimal Appendix B: C++ Keywords Appendix C: Operator Precedence Appendix D: ASCII Codes Appendix E: Answers
…
Cover unavailable
55
Anton's OpenGL 4 Tutorials
Anton Gerdela
4.3
Cover unavailable
56
Open Season (Joe Pickett, #1)
C. J. Box
4.2
The debut of a writer hailed by Tony Hillerman as "a great storyteller"-the first book in an engaging and gritty mystery series featuring Wyoming game warden Joe Pickett. "C. J. Box has hit the bull's eye his first time up". Margaret Maron "A fabulous debut-a great crime novel and a great modern-day Western rolled into one. All the elements are here-a tremendous sense of Wyoming's scenic grandeur, vivid characters, and a high-stakes plot that moves like a rifle bullet. C. J. Box is a keeper". Lee Child Few first mysteries have been welcomed as enthusiastically as Open Season, or with better cause. "When a high-powered bullet hits living flesh, it makes a distinctive -pow-WHOP-sound that is unmistakable even at tremendous distance". And so it begins for Joe Pickett, a Wyoming game warden who, with the shot of a rifle, is thrust into a race to save not only an endangered species, but also the life and family he loves. C. J. Box knows the wilderness and he knows how to create a wonderfully authentic, vividly alive sense of place. Most of all, he knows how to create a memorable new hero: a man who is full of failings, but strong and honorable. This is mystery writing at its best-and the beginning of a brilliant new career.
…
Cover unavailable
57
C. S. Lewis' Little Book of Wisdom: Meditations on Faith, Life, Love, and Literature
C.S. Lewis, Andrea Kirk Assaf, et al.
4.2
Novelist, poet, critic, lay theologian, and best-selling author of the 'Narnia' series, C. S. Lewis' works have become timeless classics for adults and children around the world.
Here in one concise volume is the essence of his thought on subjects ranging from love and faith to ethics and morality and myth and literature that will throw open the windows of the soul and provide readers with bite-sized nuggets of wisdom and inspiration from one of the best-loved writers of the 20th century.
This lovely little gift book will provide sustenance, wisdom, and hope for both believers and seekers. And, most importantly, it will provide an entry point for those unfamiliar with Lewis that will make them want to explore his fiction and nonfiction works.
Selections from C.S. Lewis' Little Book of Wisdom: "If God had granted all the silly prayers I've made in my life, where should I be now?"
"Surely arrested development consists not in refusing to lose old things, but in failing to add new things…"
"Do not dare not to dare."
"We are mirrors whose brightness is wholly derived from the sun that shines upon us."
"I didn't go to religion to make me happy. I always knew a bottle of Port would do that. If you want a religion to make you feel really comfortable, I certainly don't recommend Christianity."
…
Cover unavailable
58
Murach's C++ Programming
Joel Murach
4.2
Murach's top authors have finally tackled C++ programming, rethinking the whole approach. So this book takes advantage of the modern techniques to make it easier to learn C++ than ever before. It's organized in a logical way that gets you off to a fast start with a practical subset of today's C++, and then builds out your coding and OOP skills to the professional level. With that foundation in place, it also covers older techniques so you'll be able to maintain the vast amount of legacy code that's out there, as well as work with embedded systems that don't support the newer techniques.
…
Cover unavailable
59
Guided Science Readers: Level D (Parent Pack): 16 Fun Nonfiction Books That Are Just Right for New Readers
Liza Charlesworth
4.2
Set your child on the path to reading success with this exciting collection of little books on favorite science topics: sea turtles, ladybugs, chicks, ice cream, sea turtles, and many more. These level D books feature engaging photos paired with simple text and are just right for readers who can sound out some words. Includes a mini-activity book, motivating stickers, and parent tips. A great way to help children step up to the next reading level with ease. Includes • 16 full-color, 8-page books • 16-page mini-activity book • 2-page parent tip sheet • stickers • Sturdy storage box
…
Cover unavailable
60
Inside the C++ Object Model
Stanley B. Lippman
4.2
Aimed at the beginner/intermediate C++ programmer who wants to understand the semantic implications of the C++ object model and how the model affects their programs, Inside the C++ Object Model explains where overhead costs reside, and what they actually consist of.
Cover unavailable
61
Guided Science Readers: Level C (Parent Pack): 16 Fun Nonfiction Books That Are Just Right for New Readers
Liza Charlesworth
4.2
Set your child on the path to reading success with this exciting collection of little books on favorite science topics: bears, birds, rain forest, seeds, spring, and many more. These level C books feature engaging photos paired with simple text and are just right for readers who can sound out a few words. Includes a mini-activity book, motivating stickers, and parent tips. A great way to help children step up to the next reading level with ease. Includes • 16 full-color, 8-page books • 16-page mini-activity book • 2-page parent tip sheet • stickers • Sturdy storage box
…
Cover unavailable
62
Thinking in C++, Volume One: Introduction to Standard C++
Bruce Eckel
4.2
In the first edition of Thinking in C++, Bruce Eckel synthesized years of C++ teaching and programming experience into a beautifully structured course in making the most of the language. It became an instant classic, winning the 1995 Software Development Jolt Cola Award for best book of the year. Now, Eckel has thoroughly rewritten Thinking in C++ to reflect the final ANSI/ISO C++ standard. Every page has been revisited and rethought, with many new examples and exercises -- all designed to help you understand C++ "down to the bare metal," so you can solve virtually any problem. Eckel starts with a detailed look at objects, showing how C++ programs can be constructed from off-the-shelf object libraries. This edition includes a new, chapter-length overview of the C features that are used in C++ -- plus a new CD-ROM containing an outstanding C seminar that covers all the foundations developers need before they can truly take advantage of C++. Eckel then walks through initialization and cleanup; function overloading and default arguments; constants; inline functions; name control; references and the copy constructor; operator overloading; and more. There are chapters on dynamic object creation; inheritance and composition; polymorphism and virtual functions, and templates. (Bonus coverage of string, templates, and the Standard Template Library, can be found at Eckel's web site.) Every chapter contains many modular, to-the-point examples, plus exercises based on Eckel's extensive experience teaching C++ seminars. Put simply, Eckel has made an outstanding book on C++ even better.
…
Cover unavailable
63
What Do Jesus' Parables Mean?
R.C. Sproul
4.2
The Good Samaritan. The Prodigal Son. The Pearl of Great Price. Jesus was well known for using parables to illustrate a point. These short stories can be simple enough for a child to understand, yet they are also profound and have left many puzzled about their meaning.
In this booklet, Dr. R.C. Sproul walks through eleven of Jesus’ parables and the rich lessons they carry for us today. Dr. Sproul also explains how parables worked to clarify Jesus’ message for some—and to conceal it from others.
The Crucial Questions booklet series by Dr. R.C. Sproul offers succinct answers to important questions often asked by Christians and thoughtful inquirers.
…
Cover unavailable
64
Little Leveled Readers: Level D Box Set: Just the Right Level to Help Young Readers Soar!
Scholastic and Scholastic Teaching Resources
4.2
A step-by-step, book-by-book program that guides children through the early stages of reading. Each book, carefully evaluated by a reading specialist to correlate with the Guided Reading Levels, is leveled to address the early stages of a child's reading development. Inside each box set you'll find 75 storybooks (5 copies of 15 titles) on topics children love, which makes them perfect for group learning. Each set also includes a mini-teaching guide. For use with Grades PreK-2.
…
Cover unavailable
65
My First Piano Adventure, Writing Book C, Skips on the Staff: For the Young Beginner
Nancy Faber and Randall Faber
4.2
(Faber Piano Adventures ). Writing Book C (the companion book for Lesson Book C) provides 64 colorful, fun-filled pages of writing, ear-training, and "CLAP for Sightreading" activities. A focus on reading skips leads students to cross bridges, connect flags, meet a mouse, and skip to deep-sea treasures, to name just a few! Writing Book C engages children in the lives and melodies of classical composers introduced in the Lesson Book C. Take part in Haydn's Fun Facts and Game, make after-dinner music with Mozart, tap Beethoven's rhythms, and help Tchaikovsky tell the story of a doll with a broken arm. The valuable educational activities and vibrant illustrations of My First Piano Adventure are sure to delight the young beginner and teacher.
…
Cover unavailable
66
60 Scholastic Little Leveled Readers Learn to Read Preschool Kindergarten First Grade Children's Book Lot (15 Books Each in Levels A, B, C, and D) by Maria Fleming (2003) Paperback
Maria Fleming
4.2
Cover unavailable
67
Starting Out with C++ from Control Structures to Objects
Tony Gaddis
4.2
Note: You are purchasing a standalone product; MyProgrammingLab does not come packaged with this content. If you would like to purchase both the physical text and MyProgrammingLab search for ISBN-10: 0133796337/ISBN-13: 9780133796339. That package includes ISBN-10: 0133769399/ISBN-13: 9780133769395 and ISBN-10: 0133780619 /ISBN-13: 9780133780611. MyProgrammingLab is not a self-paced technology and should only be purchased when required by an instructor. "This text is intended for either a one-semester accelerated introductory course or a traditional two-semester sequence covering C++ programming. It is also suitable for readers interested in a comprehensive introduction to C++ programming." Tony Gaddis s accessible, step-by-step presentation helps beginning students understand the important details necessary to become skilled programmers at an introductory level. Gaddis motivates the study of both programming skills and the C++ programming language by presenting all the details needed to understand the how and the why but never losing sight of the fact that most beginners struggle with this material. His approach is both gradual and highly accessible, ensuring that students understand the logic behind developing high-quality programs. In "Starting Out with C++: From Control Structures through Objects, " Gaddis covers control structures, functions, arrays, and pointers before objects and classes. As with all Gaddis texts, clear and easy-to-read code listings, concise and practical real-world examples, and an abundance of exercises appear in every chapter. MyProgrammingLab for "Starting Out with C++" is a total learning package. MyProgrammingLab is an online homework, tutorial, and assessment program that truly engages students in learning. It helps students better prepare for class, quizzes, and exams resulting in better performance in the course and provides educators a dynamic set of tools for gauging individual and class progress. Teaching and Learning Experience This program presents a better teaching and learning experience for you and your students. It will help: Personalize Learning with MyProgrammingLab: Through the power of practice and immediate personalized feedback, MyProgrammingLab helps students fully grasp the logic, semantics, and syntax of programming. Enhance Learning with the Gaddis Approach: Gaddis s accessible approach features clear and easy-to-read code listings, concise real-world examples, and exercises in every chapter. Keep Your Course Current: This edition introduces many of the new C++11 language features. Support Instructors and Students: Student and instructor resources are available to expand on the topics presented in the text. "
…
Recommended by Ellen Lupton.
Cover unavailable
68
Getting Started with Arduino: The Open Source Electronics Prototyping Platform
Massimo Banzi
4.2
Arduino is the open source electronics prototyping platform that has taken the Maker Movement by storm. This thorough introduction, updated for the latest Arduino release, helps you start prototyping right away. From obtaining the required components to putting the final touches on your project, all the information you need is here!
Getting started with Arduino is a snap. To use the introductory examples in this guide, all you need is an Arduino Uno or Leonardo, along with a USB cable and an LED. The easy-to-use, free Arduino development environment runs on Mac, Windows, and Linux.
In Getting Started with Arduino, you'll learn about:
Interaction design and physical computing The Arduino board and its software environment Basics of electricity and electronics Prototyping on a solderless breadboard Drawing a schematic diagram Talking to a computer--and the cloud--from Arduino Building a custom plant-watering system
…
Cover unavailable
69
The Bitterroots (Cassie Dewell, #4)
C.J. Box
4.2
A riveting new novel from the New York Times bestselling and Edgar-Award winning author.
Former police officer Cassie Dewell is trying to start over with her own private investigation firm. Guilty about not seeing her son and exhausted by the nights on stakeout, Cassie is nontheless managing...until an old friend calls in a favor: she wants Cassie to help exonarate a man accused of assaulting a young girl from an influential family.
Against her own better judgment, Cassie agrees. But out in the Big Sky Country of Montana, twisted family loyalty runs as deep as the ties to the land, and there's always something more to the story. As Cassie attempts to uncover the truth, she must fight against the ghosts of her own past that threaten to pull her back under.
…
Cover unavailable
70
Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions
Herb Sutter
4.2
Exceptional C++ shows by example how to go about sound software engineering in standard C++. Do you enjoy solving thorny C++ problems and puzzles? Do you relish writing robust and extensible code? Then take a few minutes and challenge yourself with some tough C++ design and programming problems. The puzzles and problems in Exceptional C++ not only entertain, they will help you hone your skills to become the sharpest C++ programmer you can be. Many of these problems are culled from the famous Guru of the Week feature of the Internet newsgroup comp.lang.c++.moderated, expanded and updated to conform to the official ISO/ANSI C++ Standard. Each problem is rated according to difficulty and is designed to illustrate subtle programming mistakes or design considerations. After youve had a chance to attempt a solution yourself, the book then dissects the code, illustrates what went wrong, and shows how the problem can be fixed. Covering a broad range of C++ topics, the problems and solutions address critical issues such as: *Generic programming and how to write reusable templates *Exception safety issues and techniques *Robust class design and inheritance *Compiler firewalls and the Pimpl I
…
Cover unavailable
71
C++: How to Program
(Harvey & Paul) Deitel & Deitel
4.2
With over 250,000 sold, Harvey and Paul Deitel's "C++ How to Program" is the world's best-selling introduction to C++ programming. Now, this classic has been thoroughly updated! The Deitels' groundbreaking How to Program series offers unparalleled breadth and depth of programming concepts and intermediate-level topics for further study. The books in this series feature hundreds of complete, working programs with thousands of lines of code. Deitels' "C++ How to Program" is the most comprehensive, practical introduction to C++ ever published-with hundreds of hands-on exercises, roughly 250 complete programs written and documented for easy learning, and exceptional insight into good programming practices, maximizing performance, avoiding errors, debugging, and testing. The updated Fifth Edition now includes a new early classes pedagogy-classes and objects are introduced in Chapter 3 and used throughout the book as appropriate. The new edition uses string and vector classes to make earlier examples more object-oriented. Large chapters are broken down into smaller, more manageable pieces. A new OOD/UML ATM case study replaces the elevator case study of previous editions, and UML in the OOD/UML case study and elsewhere in the book has been upgraded to UML 2. The Fifth Edition features new mini case studies (e.g., GradeBook and Time classes). An employee hierarchy replaces Point/Circle/Cylinder to introduce inheritance and polymorphism. Additional enhancements include tuned treatment of exception handling, new "Using the Debugger" material and a new "Before You Begin" section to help readers get set up properly. Also included are separate chapters on recursion and searching/sorting. TheFifth Edition retains every key concept and technique ANSI C++ developers need to master: control statements, functions, arrays, pointers and strings, classes and data abstraction, operator overloading, inheritance, virtual functions, polymorphism, I/O, templates, exception handling, file processing, data structures, and more. It also includes a detailed introduction to Standard Template Library (STL) containers, container adapters, algorithms, and iterators. The accompanying CD-ROM includes all the source code from the book. A valuable reference for programmers and anyone interested in learning the C++ programming language and object-oriented development in C++.
…
Cover unavailable
72
API Design for C++
Martin Reddy
4.1
API Design for C++ provides a comprehensive discussion of Application Programming Interface (API) development, from initial design through implementation, testing, documentation, release, versioning, maintenance, and deprecation. It is the only book that teaches the strategies of C++ API development, including interface design, versioning, scripting, and plug-in extensibility. Drawing from the author's experience on large scale, collaborative software projects, the text offers practical techniques of API design that produce robust code for the long term. It presents patterns and practices that provide real value to individual developers as well as organizations.
API Design for C++ explores often overlooked issues, both technical and non-technical, contributing to successful design decisions that product high quality, robust, and long-lived APIs. It focuses on various API styles and patterns that will allow you to produce elegant and durable libraries. A discussion on testing strategies concentrates on automated API testing techniques rather than attempting to include end-user application testing techniques such as GUI testing, system testing, or manual testing. Each concept is illustrated with extensive C++ code examples, and fully functional examples and working source code for experimentation are available online.
This book will be helpful to new programmers who understand the fundamentals of C++ and who want to advance their design skills, as well as to senior engineers and software architects seeking to gain new expertise to complement their existing talents. Three specific groups of readers are targeted: practicing software engineers and architects, technical managers, and students and educators.
…
Cover unavailable
73
C++ GUI Programming with Qt 4
Jasmin Blanchette, Mark Summerfield
4.1
The Only Official, Best-Practice Guide to Qt 4.3 Programming Using Trolltech's Qt you can build industrial-strength C++ applications that run natively on Windows, Linux/Unix, Mac OS X, and embedded Linux without source code changes. Now, two Trolltech insiders have written a start-to-finish guide to getting outstanding results with the latest version of Qt: Qt 4.3.
Packed with realistic examples and in-depth advice, this is the book Trolltech uses to teach Qt to its own new hires. Extensively revised and expanded, it reveals today's best Qt programming patterns for everything from implementing model/view architecture to using Qt 4.3's improved graphics support. You'll find proven solutions for virtually every GUI development task, as well as sophisticated techniques for providing database access, integrating XML, using subclassing, composition, and more. Whether you're new to Qt or upgrading from an older version, this book can help you accomplish everything that Qt 4.3 makes possible.
Completely updated throughout, with significant new coverage of databases, XML, and Qtopia embedded programming Covers all Qt 4.2/4.3 changes, including Windows Vista support, native CSS support for widget styling, and SVG file generation Contains separate 2D and 3D chapters, coverage of Qt 4.3's new graphics view classes, and an introduction to QPainter's OpenGL back-end Includes new chapters on look-and-feel customization and application scripting Illustrates Qt 4's model/view architecture, plugin support, layout management, event processing, container classes, and much more Presents advanced techniques covered in no other book--from creating plugins to interfacing with native APIs Includes a new appendix on Qt Jambi, the new Java version of Qt
…
Cover unavailable
74
Accelerated C++: Practical Programming by Example
Andrew Koenig
4.1
This is a first-rate introductory book that takes a practical approach to solving problems using C++. It covers a much wider scope of C++ programming than other introductory books Ive seen, and in a surprisingly compact format. - Dag Bruck, founding member of the ANSI/ISO C++ committee The authors present a clear, cogent introduction to C++ programming in a way that gets the student writing nontrivial programs immediately. - Stephen Clamage, Sun Microsystems, Inc., and chair of the ANSI C++ committee Anyone reading just this one book and working through the examples and exercises will have the same skills as many professional programmers. - Jeffrey D. Oldham, Stanford University Why is Accelerated C++ so effective? Because it: *Starts with the most useful concepts rather than the most primitive ones: You can begin writing programs immediately. *Describes real problems and solutions, not just language features: You see not only what each feature is, but also how to use it. • Covers the language and standard library together: You can use the library right from the start. The authors proved this approach in their professional-education course at Stanford University, where student
…
Cover unavailable
75
An Introduction to GCC
Brian J. Gough, Richard M. Stallman
4.1
This manual provides a complete tutorial introduction to the GNU C and C++ compilers, gcc and g++. Many books teach the C and C++ languages, this book teaches you how to use the compiler itself. All the common problems and error messages encountered by new users of GCC are carefully explained, with numerous easy-to-follow "Hello World" examples. Topics covered include: compiling C and C++ programs using header files and libraries, warning options, use of the preprocessor, static and dynamic linking, debugging, optimization, platform-specific options, profiling and coverage testing, paths and environment variables, and the C++ standard library and templates. Features a special foreword by Richard M. Stallman, principal developer of GCC and founder of the GNU Project. All the money raised from the sale of this book will support the development of free software and documentation.
…
Cover unavailable
76
C++ Network Programming, Volume I: Mastering Complexity with ACE and Patterns
Douglas Schmidt
4.1
As networks, devices, and systems continue to evolve, software engineers face the unique challenge of creating reliable distributed applications within frequently changing environments. C++ Network Programming, Volume 1, provides practical solutions for developing and optimizing complex distributed systems using the ADAPTIVE Communication Environment (ACE), a revolutionary open-source framework that runs on dozens of hardware platforms and operating systems.
This book guides software professionals through the traps and pitfalls of developing efficient, portable, and flexible networked applications. It explores the inherent design complexities of concurrent networked applications and the tradeoffs that must be considered when working to master them.
C++ Network Programming begins with an overview of the issues and tools involved in writing distributed concurrent applications. The book then provides the essential design dimensions, patterns, and principles needed to develop flexible and efficient concurrent networked applications. The book's expert author team shows you how to enhance design skills while applying C++ and patterns effectively to develop object-oriented networked applications.
Readers will find coverage of:
C++ network programming, including an overview and strategies for addressing common development challenges The ACE Toolkit Connection protocols, message exchange, and message-passing versus shared memory Implementation methods for reusable networked application services Concurrency in object-oriented network programming Design principles and patterns for ACE wrapper facades With this book, C++ developers have at their disposal the most complete toolkit available for developing successful, multiplatform, concurrent networked applications with ease and efficiency.
…
Cover unavailable
77
Agile Project Management with Scrum
Ken Schwaber
4.1
The rules and practices for Scrum—a simple process for managing complex projects—are few, straightforward, and easy to learn. But Scrum’s simplicity itself—its lack of prescription—can be disarming, and new practitioners often find themselves reverting to old project management habits and tools and yielding lesser results. In this illuminating series of case studies, Scrum co-creator and evangelist Ken Schwaber identifies the real-world lessons—the successes and failures—culled from his years of experience coaching companies in agile project management. Through them, you’ll understand how to use Scrum to solve complex problems and drive better results—delivering more valuable software faster. Gain the foundation in Scrum theory—and practice—you need to:
Rein in even the most complex, unwieldy projects Effectively manage unknown or changing product requirements Simplify the chain of command with self-managing development teams Receive clearer specifications—and feedback—from customers Greatly reduce project planning time and required tools Build—and release—products in 30-day cycles so clients get deliverables earlier Avoid missteps by regularly inspecting, reporting on, and fine-tuning projects Support multiple teams working on a large-scale project from many geographic locations Maximize return on investment!
…
Cover unavailable
78
Modern C++ Programming with Test-Driven Development: Code Better, Sleep Better
Jeff Langr
4.1
If you program in C++ you've been neglected. Test-driven development (TDD) is a modern software development practice that can dramatically reduce the number of defects in systems, produce more maintainable code, and give you the confidence to change your software to meet changing needs. But C++ programmers have been ignored by those promoting TDD--until now. In this book, Jeff Langr gives you hands-on lessons in the challenges and rewards of doing TDD in C++.
Modern C++ Programming With Test-Driven Development, the only comprehensive treatment on TDD in C++ provides you with everything you need to know about TDD, and the challenges and benefits of implementing it in your C++ systems. Its many detailed code examples take you step-by-step from TDD basics to advanced concepts. As a veteran C++ programmer, you're already writing high-quality code, and you work hard to maintain code quality. It doesn't have to be that hard.
In this book, you'll learn:
how to use TDD to improve legacy C++ systems
how to identify and deal with troublesome system dependencies
how to do dependency injection, which is particularly tricky in C++
how to use testing tools for C++ that aid TDD
new C++11 features that facilitate TDD
As you grow in TDD mastery, you'll discover how to keep a massive C++ system from becoming a design mess over time, as well as particular C++ trouble spots to avoid. You'll find out how to prevent your tests from being a maintenance burden and how to think in TDD without giving up your hard-won C++ skills. Finally, you'll see how to grow and sustain TDD in your team.
Whether you're a complete unit-testing novice or an experienced tester, this book will lead you to mastery of test-driven development in C++.
What You Need
A C++ compiler running under Windows or Linux, preferably one that supports C++11. Examples presented in the book were built under gcc 4.7.2.
Google Mock 1.6 (downloadable for free; it contains Google Test as well) or an alternate C++ unit testing tool. Most examples in the book are written for Google Mock, but it isn't difficult to translate them to your tool of choice.
A good programmer's editor or IDE.
cmake, preferably. Of course, you can use your own preferred make too. CMakeLists.txt files are provided for each project. Examples provided were built using cmake version 2.8.9.
Various freely-available third-party libraries are used as the basis for examples in the book. These include: - cURL - JsonCpp - Boost (filesystem, date_time/gregorian, algorithm, assign) Several examples use the boost headers/libraries. Only one example uses cURL and JsonCpp.
…
Cover unavailable
79
Understanding and Using C Pointers
Richard M. Reese
4.1
Improve your programming through a solid understanding of C pointers and memory management. With this practical book, you’ll learn how pointers provide the mechanism to dynamically manipulate memory, enhance support for data structures, and enable access to hardware. Author Richard Reese shows you how to use pointers with arrays, strings, structures, and functions, using memory models throughout the book.
Difficult to master, pointers provide C with much flexibility and power—yet few resources are dedicated to this data type. This comprehensive book has the information you need, whether you’re a beginner or an experienced C or C++ programmer or developer.
Get an introduction to pointers, including the declaration of different pointer types Learn about dynamic memory allocation, de-allocation, and alternative memory management techniques Use techniques for passing or returning data to and from functions Understand the fundamental aspects of arrays as they relate to pointers Explore the basics of strings and how pointers are used to support them Examine why pointers can be the source of security problems, such as buffer overflow Learn several pointer techniques, such as the use of opaque pointers, bounded pointers and, the restrict keyword
…
Cover unavailable
80
C++17 STL Cookbook
Jacek Galowic
4.1
Over 90 recipes that leverage the powerful features of the Standard Library in C++17 About This Book - Learn the latest features of C++ and how to write better code by using the Standard Library (STL). Reduce the development time for your applications. - Understand the scope and power of STL features to deal with real-world problems. - Compose your own algorithms without forfeiting the simplicity and elegance of the STL way. Who This Book Is For This book is for intermediate-to-advanced C++ programmers who want to get the most out of the Standard Template Library of the newest version of C++: C++ 17. What You Will Learn - Learn about the new core language features and the problems they were intended to solve - Understand the inner workings and requirements of iterators by implementing them - Explore algorithms, functional programming style, and lambda expressions - Leverage the rich, portable, fast, and well-tested set of well-designed algorithms provided in the STL - Work with strings the STL way instead of handcrafting C-style code - Understand standard support classes for concurrency and synchronization, and how to put them to work - Use the filesystem library addition available with the C++17 STL In Detail C++ has come a long way and is in use in every area of the industry. Fast, efficient, and flexible, it is used to solve many problems. The upcoming version of C++ will see programmers change the way they code. If you want to grasp the practical usefulness of the C++17 STL in order to write smarter, fully portable code, then this book is for you. Beginning with new language features, this book will help you understand the language's mechanics and library features, and offers insight into how they work. Unlike other books, ours takes an implementation-specific, problem-solution approach that will help you quickly overcome hurdles. You will learn the core STL concepts, such as containers, algorithms, utility classes, lambda expressions, iterators, and more, while working on practical real-world recipes. These recipes will help you get the most from the STL and show you how to program in a better way. By the end of the book, you will be up to date with the latest C++17 features and save time and effort while solving tasks elegantly using the STL. Style and approach This recipe-based guide will show you how to make the best use of C++ together with the STL to squeeze more out of the standard language
…
Cover unavailable
81
C++ for Game Programmers (Charles River Media Game Development)
Mike Dickheiser
4.1
Cover unavailable
82
Beginning C++ Through Game Programming
Michael Dawson
4.1
When it comes to game programming, C++ is the name of the game. If you aspire to move from game player to game creator, it all starts with learning the fundamentals of C++ and game-programming basics. With BEGINNING C++ THROUGH GAME PROGRAMMING, FOURTH EDITION, you will find an up-to-date and thorough introduction to everything you need to get started--with no previous programming experience required. In the new fourth edition of this popular guide to learning C++, you will work with a complete program while learning each new concept and a game program at the end of each chapter. A final game project at the end of the book draws together everything you've learned. Written with the beginning programmer in mind, BEGINNING C++ THROUGH GAME PROGRAMMING, FOURTH EDITION is a great way to get started in game programming.
…
Cover unavailable
83
Alfred's Basic Piano Prep Course Lesson Book, Bk C: For the Young Beginner
Willard A. Palmer, Morton Manus, et al.
4.1
Alfred's Basic Prep Course, Levels A through F, was written to answer a demand for a course of piano study designed specifically for students who are five years old and up. This course offers a careful introduction of fundamentals, music that fits comfortably under the young student's normal hand span, plus constant reinforcement, all leading to results beyond those generated by other piano methods. After Lesson Book B, the student may progress to Prep Course, Lesson Book C or choose to go directly into the faster paced Level 1B of Alfred's Basic Piano Library. The complete Prep Course consists of six books (Levels A through F).
…
Cover unavailable
84
C++ Templates: The Complete Guide
David Vandevoorde
4.1
Templates are among the most powerful features of C++, but they remain misunderstood and underutilized, even as the C++ language and development community have advanced. In C++ Templates, Second Edition, three pioneering C++ experts show why, when, and how to use modern templates to build software that's cleaner, faster, more efficient, and easier to maintain. Now extensively updated for the C++11, C++14, and C++17 standards, this new edition presents state-of-the-art techniques for a wider spectrum of applications. The authors provide authoritative explanations of all new language features that either improve templates or interact with them, including variadic templates, generic lambdas, class template argument deduction, compile-time if, forwarding references, and user-defined literals. They also deeply delve into fundamental language concepts (like value categories) and fully cover all standard type traits. The book starts with an insightful tutorial on basic concepts and relevant language features. The remainder of the book serves as a comprehensive reference, focusing first on language details and then on coding techniques, advanced applications, and sophisticated idioms. Throughout, examples clearly illustrate abstract concepts and demonstrate best practices for exploiting all that C++ templates can do.
Understand exactly how templates behave, and avoid common pitfalls Use templates to write more efficient, flexible, and maintainable software Master today's most effective idioms and techniques Reuse source code without compromising performance or safety Benefit from utilities for generic programming in the C++ Standard Library Preview the upcoming concepts feature The companion website, tmplbook.com, contains sample code and additional updates.
…
Cover unavailable
85
C++ FAQs
Marshall P. Cline, Greg Lomow, Mike Girou
4.1
The first edition of the C++ FAQ addressed the why of C++, using the highly effective, concise, and a to-the-point question/answer format. In this Second Edition, the authors build on this theoretical foundation by addressing the how, giving the reader more insight into techniques for writing efficient and elegant code and ways to solve programming challenges. Completely up-to-date with the C++ Standard, the book covers many new classes that have just been added to the ANSI/ISO library, and addresses the relationships between C++ and Java, CORBA and COM, three technologies that have come to the fore since publication of the first edition. In addition, the book highlights specific questions that relate to the changes in the language that have been incorporated into the standard, enabling C++ programmers to gain a quick overview of the newest capabilities.
…
Cover unavailable
86
Think Like a Programmer: An Introduction to Creative Problem Solving
V. Anton Spraul
4.1
Rewire your brain
Examples in this book are written in C++, but will improve your ability to think like a programmer in any language.
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.
…
Cover unavailable
87
C++ in One Hour a Day, Sams Teach Yourself
Siddhartha Rao
4.0
Cover unavailable
88
C++ Primer Plus (6th Edition) (Developer's Library)
Stephen Prata
4.0
Cover unavailable
89
C++ Programming: From Problem Analysis to Program Design
D. S. Malik
4.0
Learn how to program with C++ using today's definitive choice for your first programming language experience -- C++ PROGRAMMING: FROM PROBLEM ANALYSIS TO PROGRAM DESIGN, 8E. D.S. Malik's time-tested, student-centered methodology incorporates a strong focus on problem-solving with full-code examples that vividly demonstrate the hows and whys of applying programming concepts and utilizing C++ to work through a problem. Thoroughly updated end-of-chapter exercises, more than 20 extensive new programming exercises, and numerous new examples drawn from Dr. Malik's experience further strengthen your understanding of problem solving and program design in this new edition. You review the important features of C++ 14 Standard with timely discussions that ensure this edition equips you to succeed in your CS1 course and beyond.
…
Cover unavailable
90
C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond (C++ in Depth Series)
David Abrahams, Aleksey Gurtovoy
4.0
Cover unavailable
91
C++ All-In-One for Dummies
John Paul Mueller
4.0
Get ahead of the C++ curve to stay in the game C++ is the workhorse of programming languages and remains one of the most widely used programming languages today. It's cross-platform, multi-functional, and updates are typically open-source. The language itself is object-oriented, offering you the utmost control over data usage, interface, and resource allocation. If your job involves data, C++ proficiency makes you indispensable.
C++ All-in-One For Dummies, 3rd Edition is your number-one handbook to C++ mastery. Author John Paul Mueller is a recognized authority in the computer industry, and your ultimate guide to C++. Mueller takes you through all things C++, including information relevant to the 2014 update.
Learn how to work with objects and classes Conquer advanced programming and troubleshooting Discover how lambda expressions can make your code more concise and readable See Standard Library features, such as dynamic arrays, in action Online resources include source code from examples in the book as well as a C++ GNU compiler. If you need to learn C++, this is the fastest, most effective way to do it. C++ All-in-One For Dummies, 3rd Edition will get you up and running quickly, so you can get to work producing code faster and better than ever.
…
Cover unavailable
92
Advanced C and C++ Compiling
Milan Stevanovi
4.0
Cover unavailable
93
C++ Pocket Reference
Kyle Loudon
4.0
C++ is a complex language with many subtle facets. This is especially true when it comes to object-oriented and template programming. The C++ Pocket Reference is a memory aid for C++ programmers, enabling them to quickly look up usage and syntax for unfamiliar and infrequently used aspects of the language. The book's small size makes it easy to carry about, ensuring that it will always be at-hand when needed. Programmers will also appreciate the book's brevity; as much information as possible has been crammed into its small pages.
In the C++ Pocket Reference, you will find:
Information on C++ types and type conversions Syntax for C++ statements and preprocessor directives Help declaring and defining classes, and managing inheritance Information on declarations, storage classes, arrays, pointers, strings, and expressions Refreshers on key concepts of C++ such as namespaces and scope More!
C++ Pocket Reference is useful to Java and C programmers making the transition to C++, or who find themselves occasionally programming in C++. The three languages are often confusingly similar. This book enables programmers familiar with C or Java to quickly come up to speed on how a particular construct or concept is implemented in C++.Together with its companion STL Pocket Reference, the C++ Pocket Reference forms one of the most concise, easily-carried, quick-references to the C++ language available.
…
Cover unavailable
94
C++: The Complete Reference
Herbert Schildt
4.0
Publisher's Note: Products purchased from Third Party sellers are not guaranteed by the publisher for quality, authenticity, or access to any online entitlements included with the product.
Best-selling genius Herb Schildt covers everything from keywords, syntax, and libraries, to advanced features such as overloading, inheritance, virtual functions, namespaces, templates, and RTTI--plus, a complete description of the Standard Template Library (STL).
…
Cover unavailable
95
Large-Scale C++ Software Design
John Lakos
4.0
This is the definitive book for all C++ software professionals involved in large development efforts such as databases, operating systems, compilers, and frameworks. It is the first C++ book that actually demonstrates how to design large systems, and one of the few books on object-oriented design specifically geared to practical aspects of the C++ programming language. In this book, Lakos explains the process of decomposing large systems into physical (not inheritance) hierarchies of smaller, more manageable components. Such systems with their acyclic physical dependencies are fundamentally easier and more economical to maintain, test, and reuse than tightly interdependent systems. In addition to explaining the motivation for following good physical as well as logical design practices, Lakos provides you with a catalog of specific techniques designed to eliminate cyclic, compile-time, and link-time (physical) dependencies. He then extends these concepts from large to very large systems. The book concludes with a comprehensive top-down approach to the logical design of individual components. Appendices include a valuable design pattern Protocol Hierarchy designed to avoid fat inte
…
Cover unavailable
96
Ivor Horton's Beginning Visual C++ 2010
Ivor Horton
4.0
The leading author of programming tutorials for beginners introduces you to Visual C++ 2010 Ivor Horton is the preeminent author of introductory programming language tutorials; previous editions of his Beginning Visual C++ have sold nearly 100,000 copies. This book is a comprehensive introduction to both the Standard C++ language and to Visual C++ 2010; no previous programming experience is required.
All aspects of the 2010 release are covered, including changes to the language and the C++ standard..
Microsoft Visual C++ is one of the most popular C++ development environments and compilers, used by hundreds of thousands of developers Ivor Horton's approach to programming tutorials has achieved a huge following; this book gives beginning programmers a comprehensive introduction to both Standard C++ and Visual C++ 2010 Covers all the language changes in Visual C++ 2010, library additions, new MFC features, changes in the Visual Studio development environment, and more Also includes a brief introduction to programming for multicore processors in native C++ and C++/CLR processors Nearly 100,000 copies of this book have been sold in previous editions Beginners seeking a complete education in Visual C++ will find everything they need in Ivor Horton'sBeginning Visual C++2010.
…
Cover unavailable
97
Jumping into C++
Alex Allain
4.0
Cover unavailable
98
TikTok 2020: How to Increase Follower, Like and Become Famous
JASON OWENS
4.0
Cover unavailable
99
The Elements of C++ Style
Trevor Misfeldt
4.0
Cover unavailable
100
Generative Programming: Methods, Tools, and Applications