Large-Scale C++ (Volume 1)

  • ناشرAddison Wesley
  • سال انتشار2020
  • ویرایش1
  • زبانEnglish
  • تعداد صفحات1023
  • شابک9780201717068

شناسه محصول: SKY-CPP-CODE-A3494 دسته: , ,
برند: Addison Wesley

محدوده قیمت: 2,357,000 تومان تا 5,951,000 تومان

12 نفر در حال مشاهده این محصول هستند!

تحویل اکسپرس

حمل رایگان سفارشات بالای 1 میلیون تومان

پرداخت امن

امکان پرداخت انلاین یا پرداخت حضروی درب منزل

ضمانت اصالت کالا

امکان پرداخت انلاین یا پرداخت حضروی درب منزل

7 روز گارانتی بازگشت وجه

امکان پرداخت انلاین یا پرداخت حضروی درب منزل

Writing reliable and maintainable C++ software is hard. Designing such software at scale adds a new set of challenges. Creating large-scale systems requires a practical understanding of logical design – beyond the theoretical concepts addressed in most popular texts. To be successful on an enterprise scale, developers must also address physical design, a dimension of software engineering that may be unfamiliar even to expert developers. Drawing on over 30 years of hands-on experience building massive, mission-critical enterprise systems, John Lakos shows how to create and grow Software Capital. This groundbreaking volume lays the foundation for projects of all sizes and demonstrates the processes, methods, techniques, and tools needed for successful real-world, large-scale development.

Up to date and with a solid engineering focus, Large-Scale C++, Volume I: Process and Architecture, demonstrates fundamental design concepts with concrete examples. Professional developers of all experience levels will gain insights that transform their approach to design and development by understanding how to

  • Raise productivity by leveraging differences between infrastructure and application development
  • Achieve exponential productivity gains through feedback and hierarchical reuse
  • Embrace the component’s role as the fundamental unit of both logical and physical design
  • Analyze how fundamental properties of compiling and linking affect component design
  • Discover effective partitioning of logical content in appropriately sized physical aggregates
  • Internalize the important differences among sufficient, complete, minimal, and primitive software
  • Deliver solutions that simultaneously optimize encapsulation, stability, and performance
  • Exploit the nine established levelization techniques to avoid cyclic physical dependencies
  • Use lateral designs judiciously to avoid the “heaviness” of conventional layered architectures
  • Employ appropriate architectural insulation techniques for eliminating compile-time coupling
  • Master the multidimensional process of designing large systems using component-based methods

This is the first of John Lakos’s three authoritative volumes on developing large-scale systems using C++. This book, written for fellow software practitioners, uses familiar C++ constructs to solve real-world problems while identifying (and motivating) modern C++ alternatives. Together with the forthcoming Volume II: Design and Implementation and Volume III: Verification and Testing, Large-Scale C++ offers comprehensive guidance for all aspects of large-scale C++ software development. If you are an architect or project leader, this book will empower you to solve critically important problems right now – and serve as your go-to reference for years to come.

Table of Contents

Chapter 0: Motivation

0.1 The Goal: Faster, Better, Cheaper! 

0.2 Application vs. Library Software 

0.3 Collaborative vs. Reusable Software 

0.4 Hierarchically Reusable Software 

0.5 Malleable vs. Stable Software 

0.6 The Key Role of Physical Design 

0.7 Physically Uniform Software: The Component 

0.8 Quantifying Hierarchical Reuse: An Analogy 0.9 Software Capital 

0.10 Growing the Investment 

0.11 The Need for Vigilance 

0.12 Summary 

Chapter 1: Compilers, Linkers, and Components

1.1 Knowledge Is Power: The Devil Is in the Details 

1.2 Compiling and Linking C + 

1.3 Declarations, Definitions, and Linkage 1.4 Header Files 

1.5 Include Directives and Include Guards 1.6 From .h /.cpp Pairs to Components 1.7 Notation and Terminology 

1.8 The Depends-On Relation 

1.9 Implied Dependency 

1.10 Level Numbers 

1.11 Extracting Actual Dependencies 1.12 Summary 

1.12 Summary

Chapter 2: Packaging and Design Rules

2.1 The Big Picture 

2.2 Physical Aggregation 

2.3 Logical/Physical Coherence 

2.4 Logical and Physical Name Cohesion 2.5 Component Source-Code Organization 2.6 Component Design Rules 

2.7 Component-Private Classes and Subordinate Components 

2.8 The Package 

2.9 The Package Group 

2.10 Naming Packages and Package Groups 2.11 Subpackages 

2.12 Legacy, Open-Source, and Third-Party Software 

2.13 Applications 

2.14 The Hierarchical Testability Requirement 2.15 From Development to Deployment 2.16 Metadata 

2.17 Summary 

Chapter 3: Physical Design and Factoring

3.1 Thinking Physically 

3.2 Avoiding Poor Physical Modularity 

3.3 Grouping Things Physically That Belong Together Logically 

3.4 Avoiding Cyclic Link-Time Dependencies 

3.5 Levelization Techniques 

3.6 Avoiding Excessive Link-Time Dependencies 

3.7 Lateral vs. Layered Architectures 

3.8 Avoiding Inappropriate Link-Time Dependencies 

3.9 Ensuring Physical Interoperability 

3.10 Avoiding Unnecessary Compile-Time Dependencies 

3.11 Architectural Insulation Techniques 

3.12 Designing with Components 

3.13 Summary

Conclusion

Appendix: Quick Reference

About the author

John Lakos is a senior architect and mentor for software development at Bloomberg LP, where he created the BDE team (c. 2001), which maintains Bloomberg’s open-source foundation libraries for C++ development worldwide.

ناشرAddison Wesley
ویرایش1
زبانEnglish
سال انتشار2020
شابک9780201717068
تعداد صفحات1023
قطعB5
کیفیتاورجینال انتشارات
نوع چاپرنگی, سیاه و سفید
نوع جلدجلد سخت, شومیز, طلقی

نقد و بررسی‌ها

هنوز بررسی‌ای ثبت نشده است.

اولین کسی باشید که دیدگاهی می نویسد “Large-Scale C++ (Volume 1)”

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

محدوده قیمت: 2,357,000 تومان تا 5,951,000 تومان

محصولات مشابه