Picture 1 of 1
Picture 1 of 1
C++ Coding Standards: 101 Rules, Guidelines, and Best Practices by John Fuller
US $9.19
ApproximatelyRM 38.18
Condition:
Good
A book that has been read but is in good condition. Very minimal damage to the cover including scuff marks, but no holes or tears. The dust jacket for hard covers may not be included. Binding has minimal wear. The majority of pages are undamaged with minimal creasing or tearing, minimal pencil underlining of text, no highlighting of text, no writing in margins. No missing pages.
Postage:
Free Standard Shipping.
Located in: Sparks, Nevada, United States
Delivery:
Estimated between Sat, 28 Sep and Wed, 2 Oct to 43230
Returns:
30 days return. Buyer pays for return shipping.
Coverage:
Read item description or contact seller for details. See all detailsSee all details on coverage
(Not eligible for eBay purchase protection programmes)
Shop with confidence
Seller assumes all responsibility for this listing.
eBay item number:285036316038
Item specifics
- Condition
- Book Title
- C++ Coding Standards: 101 Rules, Guidelines, and Best Practices
- Publication Date
- 2004-11-01
- Pages
- 240
- ISBN
- 0321113586
- Subject Area
- Computers
- Publication Name
- C++ Coding Standards : 101 Rules, Guidelines, and Best Practices
- Publisher
- Addison Wesley Professional
- Item Length
- 9.1 in
- Subject
- Programming Languages / C++
- Publication Year
- 2004
- Series
- C++ In-Depth Ser.
- Type
- Textbook
- Format
- Trade Paperback
- Language
- English
- Item Height
- 0.6 in
- Item Weight
- 14.4 Oz
- Item Width
- 7.2 in
- Number of Pages
- 240 Pages
About this product
Product Identifiers
Publisher
Addison Wesley Professional
ISBN-10
0321113586
ISBN-13
9780321113580
eBay Product ID (ePID)
30876188
Product Key Features
Number of Pages
240 Pages
Publication Name
C++ Coding Standards : 101 Rules, Guidelines, and Best Practices
Language
English
Subject
Programming Languages / C++
Publication Year
2004
Type
Textbook
Subject Area
Computers
Series
C++ In-Depth Ser.
Format
Trade Paperback
Dimensions
Item Height
0.6 in
Item Weight
14.4 Oz
Item Length
9.1 in
Item Width
7.2 in
Additional Product Features
Intended Audience
Scholarly & Professional
LCCN
2004-022605
Dewey Edition
22
Dewey Decimal
005.13/3
Table Of Content
Preface. 1. Organizational and Policy Issues. Don''t sweat the small stuff. (Or: Know what not to standardize.). Compile cleanly at high warning levels. Use an automated build system. Use a version control system. Invest in code reviews. 2. Design Style. Give one entity one cohesive responsibility. Correctness, simplicity, and clarity come first. Know when and how to code for scalability. Don''t optimize prematurely. Don''t pessimize prematurely. Minimize global and shared data. Hide information. Know when and how to code for concurrency. Ensure resources are owned by objects. Use explicit RAII and smart pointers. 3. Coding Style. Prefer compile- and link-time errors to run-time errors. Use const proactively. Avoid macros. Avoid magic numbers. Declare variables as locally as possible. Always initialize variables. Avoid long functions. Avoid deep nesting. Avoid initialization dependencies across compilation units. Minimize definitional dependencies. Avoid cyclic dependencies. Make header files self-sufficient. Always write internal #include guards. Never write external #include guards. 4. Functions and Operators. Take parameters appropriately by value, (smart) pointer, or reference. Preserve natural semantics for overloaded operators. Prefer the canonical forms of arithmetic and assignment operators. Prefer the canonical form of ++ and --. Prefer calling the prefix forms. Consider overloading to avoid implicit type conversions. Avoid overloading &&, , or , (comma). Don''t write code that depends on the order of evaluation of functionarguments. 5. Class Design and Inheritance. Be clear what kind of class you''re writing. Prefer minimal classes to monolithic classes. Prefer composition to inheritance. Avoid inheriting from classes that were not designed to be base classes. Prefer providing abstract interfaces. Public inheritance is substitutability. Inherit, not to reuse, but to be reused. Practice safe overriding. Consider making virtual functions nonpublic, and public functions nonvirtual. Avoid providing implicit conversions. Make data members private, except in behaviorless aggregates (C-stylestructs). Don''t give away your internals. Pimpl judiciously. Prefer writing nonmember nonfriend functions. Always provide new and delete together. If you provide any class-specific new, provide all of the standard forms (plain, in-place, and nothrow). 6. Construction, Destruction, and Copying. Define and initialize member variables in the same order. Prefer initialization to assignment in constructors. Avoid calling virtual functions in constructors and destructors. Make base class destructors public and virtual, or protected and nonvirtual. Destructors, deallocation, and swap never fail. Copy and destroy consistently. Explicitly enable or disable copying. Avoid slicing. Consider Clone instead of copying in base classes. Prefer the canonical form of assignment. Whenever it makes sense, provide a no-fail swap (and provide it correctly). 7. Namespaces and Modules. Keep a type and its nonmember function interface in the same namespace. Keep types and functions in separate namespaces unless they''re specifically intended to work together. Don''t write namespace usings in a header file or before an #include. Avoid allocating and deallocating memory in different modules. Don''t define entities with linkage in a header file. Don''t allow exceptions to propagate across module boundaries. Use sufficiently portable types in a module''s interface. 8. Templates and Genericity. &n
Synopsis
Every software development team should have and follow a coding standard. It's even better when what the coding standard requires is actually consistent, reasonable, and correct. Coding standards have many advantages: *They improve code quality. This happens automatically when following a good, simple set of guidelines. *They improve development speed, because the programmer doesn't need to always make decisions starting from first principles. *They enhance teamwork by eliminating needless debates on inconsequential issues and by making it easy for teammates to read and maintain each other's code. The coding standards introduced by this book are a collection of guidelines for writing high-quality C++ code. ***They are the distilled conclusions of a rich collective experience of the C++ community. Until now, this body of knowledge has been available only as folklore or spread in bits and pieces throughout books., 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., Every software development team should have and follow a coding standard.It's even better when what the coding standard requires is actually consistent, reasonable, and correct.Coding standards have many advantages: *They improve code quality. This happens automatically when following agood, simple set of guidelines.*They improve development speed, because the programmer doesn't need toalways make decisions starting from first principles.*They enhance teamwork by eliminating needless debates on inconsequentialissues and by making it easy for teammates to read and maintain each other'scode.The coding standards introduced by this book are a collection of guidelines forwriting high-quality C++ code.***They are the distilled conclusions of a rich collective experience of the C++community. Until now, this body of knowledge has been available only asfolklore or spread in bits and pieces throughout books.
LC Classification Number
QA76.73.C153S85 2004
Item description from the seller
Seller feedback (473,966)
This item (1)
All items (473,966)
s***o (66)- Feedback left by buyer.
Past 6 months
Verified purchase
Thanks!
d***i (533)- Feedback left by buyer.
Past month
Verified purchase
Thanks!
r***n (394)- Feedback left by buyer.
Past month
Verified purchase
Arrived today in good condition. Thank You.!!
1***2 (138)- Feedback left by buyer.
Past month
Verified purchase
Fast shipping. Packaging providing safe transport.
Thanks βπΏπ
More to explore :
- Phonics Practice Readers,
- Theory and Practice of Counseling and Psychotherapy,
- Dana Fuller Ross Fiction Fiction & Books,
- Dana Fuller Ross Fiction Historical Fiction & Books,
- Revision/Practice Study Paperbacks Prep,
- Revision/Practice Workbook Study Paperbacks Prep,
- Revision/Practice Study Workbooks Prep Illustrated,
- Revision/Practice Study Hardcovers Prep Illustrated,
- Dana Fuller Ross Action Fiction Fiction & Nonfiction Books,
- Medical Coding Books