C++ In Action
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Home > Computing and Information Technology > Computer programming / software engineering > Programming and scripting languages: general > C++ In Action: Industrial-Strength Programming Techniques
C++ In Action: Industrial-Strength Programming Techniques

C++ In Action: Industrial-Strength Programming Techniques


     0     
5
4
3
2
1



Out of Stock


Notify me when this book is in stock
X
About the Book

C++ in Action introduces state-of-the-art C++ programming and problem-solving techniques for developing efficient, powerful, scalable software systems. Renowned software architect Bartosz Milewski starts from two key premises. First, programs aren't written for computers: they're written for other programmers who will have to integrate and maintain them. Second, software development languages aren't ends in themselves: they're tools to solve problems. Starting from these principles, Milewski presents a comprehensive guide to C++ software engineering for maximum performance, reliability, and maintainability. He shows how to use resource management and exception management together to build more reliable code. Next, he introduces new techniques that simplify Windows development despite the complexity of the Windows API and libraries. The book also includes detailed coverage of large-scale software and scalability, encompassing development strategies and tactics as well as management, planning, and project dynamics. An accompanying CD-ROM and a companion web site contain an extensive source code library.

Table of Contents:
(NOTE: Most chapters include a Summary and Conclusion, and Exercises.) Preface. Why This Book? Why You? Why Me? Acknowledgment. Introduction. Language. Techniques. Windows. Scaling Up. How to Use This Book. Version Control System. Compiler. Code Samples. Typeface Conventions. I. LANGUAGE. 1. Objects and Scopes. Global Scope. Local Scope. Embedded objects. Inheritance. Member Functions and Interfaces. Member Function Scope. Types. Abstract Data Types. 2. Arrays and References. References. Operators. Arithmetic. Logic. Bitwise Logic. Stack-Based Calculator. External Specification. Design. Stubbed Implementation. Implementation. Calculator: Implementation. Input: Implementation. 3. Pointers. Evils of Pointers. Pointers versus References. Pointers versus Arrays. Assembly Digression. Pointers and Dynamic Memory Allocation. Dynamic Data Structures. Dynamic Stack. Linked List. String Table. String Buffer. Table Lookup. Hash Table. Test Program. 4. Polymorphism. The Meaning of is-a. Implementation Digression. The Overhead. Parse Tree. C Digression. 5. A Small Software Project. Starting a Software Project. Design Specification. Stubbed Implementation. Expanding Stubs. Final Implementation. Not! Scanner. Symbol Table. Store. Function Table. Nodes. Parser. Main. Initialization of Aggregates. Procedural Programming. Operator Overloading. Passing by Value. Value Semantics. II. TECHNIQUES. 6. The Cleanup. Decoupling the Output. Fighting Defensive Programming. A Case of Paranoid Programming. Fringes. Improving Communication between Classes. Correcting Design Flaws. 7. Hiding Implementation Details. Using Embedded Classes. Combining Classes. Combining Things Using Namespaces. Hiding Constants in Enumerations. Hiding Constants in Local Variables. 8. Sharing. Isolating Global Program Parameters. Pushing the Envelope. Templates. 9. Removing Limitations. Dynamic Array. Dynamic MultiNode. Dynamic StringBuffer. Dynamic SymbolTable. Dynamic Store. Standard Vector. 10. Resource Management. Exceptions. Stack Unwinding. Resources. Ownership of Resources. Access to Resources. Smart Pointers. Ownership Transfer: First Attempt. Ownership Transfer: Second Attempt. Safe Containers. Iterators. Error Propagation. Conversion to Resource Management. Conclusion. 11. Using the Standard Template Library. Reference Counting and Copy-On-Write. End of Restrictions. Getting Rid of C-String. Exploring Streams. 12. Persistence. The Calculator Object. Command Parser. Serialization and Deserialization. In-Memory Serialization and Deserialization. Multiple Inheritance. 13. Overloading Operator new. Class-Specific new. Caching. Bulk Allocation. Array new. Global new. Macros. Tracing Memory Leaks. Debug Output. Placement new. Conclusion. III. WINDOWS. 14. Libraries. Of Macros and Wizards. 15. Programming Paradigm. Hello Windows! Encapsulation. 16. Controlling Windows through C11. Model-View-Controller. Controller. Client Code. Exception Specification. Cleanup. 17. Painting. Application Icon. Window Painting and the View Object. The Canvas. The WM_PAINT Message. The Model. Capturing the Mouse. Adding Colors and Frills. 18. A Windows Application. Porting the Calculator to Windows. User Interface. Child Windows. Windows Controls. Static Text. Edit Control. Window Subclassing. Plugging in the Calculator. List Box Control. Model-View Feedback Loop. Commands and Menus. Dynamic Menus. Dialog Boxes. IV. SCALING UP. 19. About Software. Complexity. The Fractal Nature of Software. The Living Project. The Living Programmer. 20. Design Strategies. Top-Down Object-Oriented Design. User Interface. Requirement Specification. Architectural Specification. 21. Team Work. Productivity. Team Strategies. 22. Implementation Strategies. Global Decisions. Top-Down Object-Oriented Implementation. Program Modifications. Inheriting Legacy Code. Multi-Platform Development. 23. Porting. Creating an Abstraction Layer. Porting the Calculator. Eliminating Simple Windows Dependencies. Nontrivial Windows Dependencies. The Advantages of Porting. Bibliography. Appendix A: Exercise Solutions. Appendix B: Transactions. Transient Transactions. Persistent Transactions. The Three-File Scheme. The Mapping-File Scheme. Index. 0201699486T05212002

About the Author :
Bartosz Milewski is the president of Reliable Software, a company that creates high-quality productivity tools for programmers. His work has been widely published in major journals over the past several years. During his eight years at Microsoft, he was the development lead of the Content Index component of Windows 2000. He has taught C++ programming at the University of Wroclaw in Poland and holds a Ph.D. in theoretical physics from the University of Wroclaw. 0201699486AB05072001


Best Sellers


Product Details
  • ISBN-13: 9780201699487
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Addison Wesley
  • Height: 235 mm
  • No of Pages: 512
  • Sub Title: Industrial-Strength Programming Techniques
  • Width: 187 mm
  • ISBN-10: 0201699486
  • Publisher Date: 14 Jun 2001
  • Binding: SA
  • Language: English
  • Spine Width: 22 mm
  • Weight: 780 gr


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
C++ In Action: Industrial-Strength Programming Techniques
Pearson Education (US) -
C++ In Action: Industrial-Strength Programming Techniques
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

C++ In Action: Industrial-Strength Programming Techniques

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    Fresh on the Shelf


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!