Cantitate/Preț
Produs

Software Architecture with C++

Autor Adrian Ostrowski, Piotr Gaczkowski
en Limba Engleză Paperback – 23 apr 2021

Această lucrare se adresează dezvoltatorilor experimentați care stăpânesc deja bazele limbajului și doresc să evolueze spre rolul de arhitect software sau să construiască aplicații de nivel enterprise. Descoperim aici o abordare tehnică riguroasă, care presupune o cunoaștere prealabilă solidă a C++, dar care ghidează cititorul prin complexitatea designului de sisteme moderne folosind standardul C++20.

Notăm cu interes modul în care Adrian Ostrowski și Piotr Gaczkowski reușesc să echilibreze principiile teoretice de design cu realitățile infrastructurii IT actuale. Cartea nu se limitează la tipare de proiectare clasice, ci explorează în profunzime stiluri arhitecturale contemporane, precum microserviciile și arhitecturile cloud-native. Un punct forte al volumului este secțiunea dedicată calităților sistemului, unde sunt analizate pragmatic testabilitatea, securitatea și performanța, elemente critice în sistemele distribuite de mare anvergură. Găsim în această carte și detalii specifice despre integrarea continuă și livrarea continuă (CI/CD), demonstrând că arhitectura software nu mai poate fi separată de fluxul de operare și livrare (DevOps).

Abordarea diferă de cea din Practical C++ Design prin focusul extins pe infrastructură și sisteme distribuite — în timp ce titlul lui Adam B. Singer se concentrează pe un studiu de caz pentru designul intern al unei aplicații, Software Architecture with C++ extinde perspectiva către ecosisteme cloud și containere. De asemenea, spre deosebire de Software Architecture with C# 10 and .NET 6, care se sprijină pe un cadru de lucru gestionat, lucrarea de față explorează cum pot fi utilizate facilitățile de nivel jos ale C++ pentru a obține performanțe maxime fără a sacrifica mentenabilitatea codului.

Citește tot Restrânge

Preț: 51435 lei

Preț vechi: 55907 lei
-8%

Puncte Express: 772

Carte tipărită la comandă

Livrare economică 19 mai-02 iunie


Specificații

ISBN-13: 9781838554590
ISBN-10: 1838554599
Pagini: 540
Dimensiuni: 277 x 234 x 190 mm
Greutate: 0.92 kg
Editura: Packt Publishing

De ce să citești această carte

Această carte este esențială pentru programatorii seniori care vor să înțeleagă cum se transformă codul eficient într-un sistem robust și scalabil. Cititorul câștigă o viziune de ansamblu asupra arhitecturii moderne, învățând să aplice C++20 în scenarii de microservicii și cloud. Este un instrument practic pentru cei care urmăresc să livreze produse de înaltă calitate, aliniate la cerințele de business și standardele actuale de securitate și performanță.


Descriere

Table of Contents:

  1. Importance of Software Architecture and Principles of Great Design
  2. Architectural Styles
  3. Functional and Nonfunctional Requirements
  4. Architectural and System Design Patterns
  5. Leveraging C++ Language Features
  6. Design Patterns and C++
  7. Building and Packaging
  8. Testability
  9. Continuous Integration and Continuous Deployment
  10. Security
  11. Performance
  12. Service Oriented Architecture
  13. Microservices
  14. Containers
  15. Cloud Native Design
  16. Appendix



Publisher Marketing:

Apply business requirements to IT infrastructure and deliver a high-quality product by understanding architectures such as microservices, DevOps, and cloud-native using modern C++ standards and features

 

Key Features:

  • Design scalable large-scale applications with the C++ programming language
  • Architect software solutions in a cloud-based environment with continuous integration and continuous delivery (CI/CD)
  • Achieve architectural goals by leveraging design patterns, language features, and useful tools

 

Book Description:

Software architecture refers to the high-level design of complex applications. It is evolving just like the languages we use. Modern C++ allows developers to write high-performance apps in a high-level language without sacrificing readability and maintainability. If you're working with modern C++, this practical guide will help you put your knowledge to work and design distributed, large-scale apps. You'll start by getting up to speed with architectural concepts, including established patterns and rising trends. The book will then explain what software architecture is and help you explore its components. Next, you'll discover the design concepts involved in application architecture and the patterns in software development, before going on to learn how to build, package, integrate, and deploy your components. In the concluding chapters, you'll explore different architectural qualities, such as maintainability, reusability, testability, performance, scalability, and security. Finally, you will get an overview of distributed systems, such as service-oriented architecture, microservices, and cloud-native, and understand how to apply them in application development.

 

By the end of this book, you'll be able to build distributed services using modern C++ and associated tools to deliver solutions as per your clients' requirements.

 

What You Will Learn:

  • Understand how to apply the principles of software architecture
  • Apply design patterns and best practices to meet your architectural goals
  • Write elegant, safe, and performant code using the latest C++ features
  • Build applications that are easy to maintain and deploy
  • Explore the different architectural approaches and learn to apply them as per your requirement
  • Simplify development and operations using application containers
  • Discover various techniques to solve common problems in software design and development

 

Who this book is for:

This software architecture C++ programming book is for experienced C++ developers who are looking to become software architects or are interested in developing enterprise-grade applications.


 

 

 

Contributor Bio:Ostrowski, Adrian
Adrian Ostrowski is a modern C++ enthusiast interested in the development of both the C++ language itself and the high-quality code written in it. A lifelong learner with over a decade of experience in the IT industry and more than 8 years of experience with C++ specifically, he's always eager to share his knowledge. His past projects range from parallel computing, through fiber networking, to working on a commodity exchange's trading system. Currently, he's one of the architects of Intel and Habana's integration with machine learning frameworks. In his spare time, Adrian used to promote music bands together with Piotr and has learned how to fly a glider. Currently, he likes riding his bicycle, going to music events, and browsing memes.

Contributor Bio:Gaczkowski, Piotr
Piotr Gaczkowski has more than 10 years of experience in programming and practicing DevOps and uses his skills to improve people's lives. He likes building simple solutions to human problems, organizing cultural events, and teaching fellow professionals. Piotr is keen on automating boring activities and using his experience to share knowledge by conducting courses and writing articles about personal growth and remote work. He has worked in the IT industry both in full-time positions and as a freelancer, but his true passion is music. When not making his skills useful at work, you can find him building communities.