or
Sign in to turn on 1-Click ordering.
 
 
Express Checkout with PayPhrase
What's this? | Create PayPhrase
Sorry!
More Buying Choices
44 used & new from $0.39

Have one to sell? Sell yours here
 
   
C++ Programming Style
 
 
Tell the Publisher!
I’d like to read this book on Kindle

Don’t have a Kindle? Get your Kindle here.
 
  

C++ Programming Style (Paperback)

~ (Author)
3.9 out of 5 stars  See all reviews (7 customer reviews)

List Price: $44.99
Price: $32.85 & this item ships for FREE with Super Saver Shipping. Details
You Save: $12.14 (27%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.

Only 1 left in stock--order soon (more on the way).

Want it delivered Wednesday, November 11? Choose One-Day Shipping at checkout. Details
18 new from $19.99 26 used from $0.39

Frequently Bought Together

C++ Programming Style + C++ Strategies and Tactics + Advanced C++ Programming Styles and Idioms
Price For All Three: $114.69

Show availability and shipping details

  • This item: C++ Programming Style by Tom Cargill

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • C++ Strategies and Tactics by Robert B. Murray

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Advanced C++ Programming Styles and Idioms by James O. Coplien

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details


Customers Who Bought This Item Also Bought

Advanced C++ Programming Styles and Idioms

Advanced C++ Programming Styles and Idioms

by James O. Coplien
4.3 out of 5 stars (20)  $48.34
Designing and Coding Reusable C++

Designing and Coding Reusable C++

by Martin D. Carroll
3.5 out of 5 stars (4)  $41.99
The Annotated C++ Reference Manual

The Annotated C++ Reference Manual

by Margaret A. Ellis
4.3 out of 5 stars (15)  $37.87
The Design and Evolution of C++

The Design and Evolution of C++

by Bjarne Stroustrup
4.6 out of 5 stars (20)  $40.64
Ruminations on C++: A Decade of Programming Insight and Experience

Ruminations on C++: A Decade of Programming Insight and Experience

by Andrew Koenig
4.4 out of 5 stars (14)  $20.90
Explore similar items

Editorial Reviews

Product Description

Today's languages have new capabilities, creating new questions on how the components should fit together. Using a learn-by-example approach, Cargill presents code from published sources--each example representing a common error made by C++ programmers--and shows readers how to critically examine and rewrite it.


From the Inside Flap

Almost two decades after the publication of Kernighan and Plauger's classic, The Elements of Programming Style, its compact set of rules remains the best general guidance on good programming. Today, however, our programs are larger and our programming languages have changed. We now care as much about how the components of a program fit together as we do about the algorithms and data structures used in each component. DeRemer and Kron coined the terms programming-in-the-large and programming-in-the-small to make a distinction between the large-scale and small-scale aspects of programs. By programming-in-the-small, they meant dealing with components of a program that are "one to a few pages long" - the size of a typical C++ class. By programming-in-the-large, they meant the structuring of in-the-small components into a program - in C++ terms, dealing with relationships between classes. Kernighan and Plauger concentrated their work on the issues of programming-in-the-small. Their advice about programming-in-the-large is sound, but minimal.

Modularize. Use subroutines.

This book addresses programming style, with more emphasis on programming-in-the-large, and is restricted to the domain of C++ programs. It is written for the programmer who has learned the mechanics of C++, but is experiencing difficulty in applying the language features - particularly the object-oriented features - to programming problems. Though the discussion is limited to C++, many of the observations about programming are true of other languages. I leave the treatment of language-independent style in-the-large to more ambitious authors.

I have adopted Kernighan and Plauger's method of distilling rules of programming style from the critical reading and rewriting of programs. All the programs used here are taken from textbooks, magazine articles and tutorials on C++ programming. None was created artificially for this work. Some programs are presented exactly as originally published, while others have been altered cosmetically. The alterations range from the correction of in-the-small bugs, which would only distract, to structure-preserving transformations of programs for which copyright was not obtained.

The spirit in which to approach the material is that of an "egoless" code review. We all learn by reading and reviewing each other's programs. The material is not a criticism of individual programmers - it seeks only to differentiate between good and bad programs. No doubt the programs that are presented here as "better" versions have their own shortcomings. The reader is encouraged to examine these programs critically, looking for further improvements in programming style.

0201563657P04062001


Product Details

  • Paperback: 248 pages
  • Publisher: Addison-Wesley Professional (July 10, 1992)
  • Language: English
  • ISBN-10: 0201563657
  • ISBN-13: 978-0201563658
  • Product Dimensions: 9.2 x 7.4 x 0.6 inches
  • Shipping Weight: 1 pounds (View shipping rates and policies)
  • Average Customer Review: 3.9 out of 5 stars  See all reviews (7 customer reviews)
  • Amazon.com Sales Rank: #214,730 in Books (See Bestsellers in Books)

More About the Author

Tom Cargill
Discover books, learn about writers, read author blogs, and more.

Visit Amazon's Tom Cargill Page

Look Inside This Book


What Do Customers Ultimately Buy After Viewing This Item?


Suggested Tags from Similar Products

 (What's this?)
Be the first one to add a relevant tag (keyword that's strongly related to this product).
 
(27)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

 

Customer Reviews

7 Reviews
5 star:
 (2)
4 star:
 (3)
3 star:
 (1)
2 star:
 (1)
1 star:    (0)
 
 
 
 
 
Average Customer Review
3.9 out of 5 stars (7 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
10 of 10 people found the following review helpful:
4.0 out of 5 stars A Wonderful Surprise, August 15, 1999
By A Customer
I've understood the syntax of C++ and the basic ideas of OO for some time now, but I have not used these tools professionally because OO design is so hard, and I have little experience. I have often wished I had a book that would help me evaluate an OO design, and determine what its weaknesses were. This is that book.

I especially like the format; the author presents an OO class and then step by step tears it down and shows you what's broken about it. For each problem and its corresponding solution, the author presents a rule of thumb that can help you avoid similar design mistakes in the future. Some of the material is specific to C++, but a lot of it is applicable to any OO language.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
12 of 13 people found the following review helpful:
4.0 out of 5 stars Cargill's classic book on quality C++, September 22, 2002
By Rob Wehrli (Knoxville, TN) - See all my reviews
(REAL NAME)   
It is unfair to judge this book from the perspective of the "average" C++ programmer. Tom goes at least three steps further to treat programmers/readers as intelligent beings of the same species who already have the fundamental programming language "mechanics" skills. The reviewer who spewed forth about "coding style" really doesn't "get it." The whole issue of "where you put your braces" and naming conventions isn't what Tom or Tom's book is about. He already assumes that if you're programming C++ you have some idea of when you're going to press enter on the keyboard. (To make whitespace, in case you were wondering...)

The inferior thinking that confounds the world of programming is that C++ is an easy language to master. Very few programmers have much hope of aspiring to learn even 80% of the language and use it effectively. Thinking otherwise is like saying that everyone who wants to run a foot race can be Jessie Owens. Tom starts by treating readers as programming peers. That alone is an incredible benefit anytime programming is being done. Prima donas and those guys who always seem too busy to provide their "public interface" are the ones to avoid in learning anything of use regarding C++.

I pick up Tom's book every couple of months and browse it. His noted "brevity" is like a good RPG that gives subtle hints that incite thinking for yourself without following what many other books do by drawing a roadmap to one solution that worked for this one situation but may never again apply to anything useful. In my opinion, Tom's "lessons" are appropriately concise.

If you haven't read Tom's book, buy it, read it...if you're serious about your C++ skills. There is a *good* reason why Scott Meyers recommends Tom's book. It is something of a unique and interesting perspective on C++, which is really all that any of us can hope to give back to the language. The book is an interesting, insightful perspective that has pragmatic commentary that will help you be a better C++ programmer. At the last (ever?) C++ World conference in December of 1999, a discussion of which books to read evolved out of some other spew. Cargill's book came up as necessary reading, as it always seems to, for the simple fact that it comes from a respected industry professional with an uncany ability to boil out the meat of the topic without overcooking the stew. C++ is, at least, also an art form. Tom's ability with the art of C++ is inspiring. Scott Meyers is another artist. So is Angelika Langer and Herb Sutter, and Andy Koenig, Stan Lippman, Doug Lea and Erich Gamma and Jim Copelien and numerous others. But, for each of them, there are 10,000 very so-so programmers out there spewing forth complete nonsense. Help de-nonsense your world with Tom's book. One person indicated that it is somewhat stale. It is really like fine wine. It just gets better with age.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
5 of 5 people found the following review helpful:
3.0 out of 5 stars Informative but..., July 28, 2002
By Avneesh Bhatnagar (Ithaca, NY United States) - See all my reviews
I bought this book after reading through Effective C++ and More Effective C++ by Scott Meyers following the suggested reading by the author. I think that I should have read this book before purchasing the Effective C++ books. Basically it touches some fundamental issues, but due to the fact that it is slightly old, some topics such as templates are not covered very well. Meyers also gives a thorough overview of smart pointers, member function templates etc. My recommendation is that if you really want to start improving your C++ skills, forget about this book, read Scott Meyers' books and pick up Design Patterns by Erich Gamma and others.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

4.0 out of 5 stars dated, but still successful on its own terms
C++ Programming Style still gets regularly mentioned as an important guide to intermediate C++. However, from the perspective of 2007, it's looking long in the tooth... Read more
Published on February 22, 2007 by Thing with a hook

5.0 out of 5 stars Refreshing!
I have read tons of C++ programming books. A lot of them lack of originality. This is where Tom Cargill book shines. Read more
Published on November 29, 2006 by Olivier Langlois

2.0 out of 5 stars Introduction to C++ class design
This book does not cover programming style in the traditional usage of the term. There is no discussion of general programming practice, naming conventions, documentation,... Read more
Published on February 15, 2001 by Daniel Mall

5.0 out of 5 stars valuable source for lower level architectural decisions
This isn't just a book for C++ programmers, it deals with architectural decisions in object-oriented programs whose example base uses C++ programs. Read more
Published on February 1, 1998

Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 

Search Customer Discussions
Search all Amazon discussions
   




Product Information from the Amapedia Community

Beta (What's this?)


Look for Similar Items by Category


Look for Similar Items by Subject

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.


Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.