reklama - zainteresowany?

Architektura oprogramowania bez tajemnic. Wykorzystaj j - Helion

Architektura oprogramowania bez tajemnic. Wykorzystaj j
Autor: Adrian Ostrowski, Piotr Gaczkowski
Tytuł oryginału: Software Architecture with C++: Design modern systems using effective architecture concepts, design patterns, and techniques with C++20
Tłumaczenie: Krzysztof B
ISBN: 978-83-283-8666-2
stron: 503, Format: 168x237, okładka: mi
Księgarnia: Helion

Książka będzie dostępna od kwietnia 2022

Tagi: C++ - Programowanie

C++ nale

Spis treści

Architektura oprogramowania bez tajemnic. Wykorzystaj język C++ do tworzenia wydajnych aplikacji i systemów -- spis treści

Wstęp

Część I. Koncepcje i składniki architektury oprogramowania

  • Rozdział 1. Znaczenie architektury oprogramowania i zasady dobrego projektowania
    • Wymagania techniczne
    • Zrozumienie pojęcia "architektura oprogramowania"
    • Uświadomienie sobie znaczenia właściwej architektury
    • Badanie podstaw dobrej architektury
    • Opracowywanie architektury według zasad podejścia zwinnego
    • Filozofia języka C++
    • Stosowanie zasad SOLID i DRY
    • Sprzężenie i spójność
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 2. Style architektoniczne
    • Wymagania techniczne
    • Wybór pomiędzy podejściem stanowym i bezstanowym
    • Zapoznanie się z monolitami - dlaczego należy ich unikać i jakie są wyjątki
    • Zrozumienie działania usług i mikrousług
    • Badanie architektury opartej na zdarzeniach
    • Zrozumienie działania architektury warstwowej
    • Zapoznanie się z architekturą opartą na modułach
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 3. Wymagania funkcjonalne i niefunkcjonalne
    • Wymagania techniczne
    • Zapoznanie się z typami wymagań
    • Rozpoznawanie wymagań istotnych dla architektury
    • Zbieranie wymagań z różnych źródeł
    • Dokumentowanie wymagań
    • Dokumentowanie architektury
    • Wybór właściwych perspektyw do udokumentowania
    • Generowanie dokumentacji
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe

Część II. Projektowanie i wytwarzanie oprogramowania w języku C++

  • Rozdział 4. Projektowanie architektur i systemów
    • Wymagania techniczne
    • Zrozumienie specyfiki systemów rozproszonych
    • Zapewnienie systemowi dostępności i odporności na uszkodzenia
    • Integrowanie systemu
    • Osiąganie wydajności w dużej skali
    • Wdrażanie systemu
    • Zarządzanie interfejsami API
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 5. Wykorzystywanie cech języka C++
    • Wymagania techniczne
    • Projektowanie doskonałych interfejsów API
    • Pisanie deklaratywnego kodu
    • Przenoszenie obliczeń na czas kompilacji
    • Wykorzystanie potęgi bezpiecznych typów
    • Pisanie modularnego kodu C++
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 6. Wzorce projektowe a język C++
    • Wymagania techniczne
    • Pisanie idiomatycznego kodu C++
    • Ciekawie rekurencyjny wzorzec szablonu
    • Tworzenie obiektów
    • Śledzenie stanu i odwiedzanie obiektów w języku C++
    • Efektywne postępowanie z pamięcią
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 7. Budowanie i pakowanie
    • Wymagania techniczne
    • Wykorzystanie kompilatorów do granic ich możliwości
    • Zapewnianie abstrakcji procesu budowania
    • Korzystanie z modułów zewnętrznych
    • Wielokrotne korzystanie z kodu o dobrej jakości
    • Pakowanie przy użyciu narzędzia Conan
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe

Część III. Architektoniczne atrybuty jakościowe

  • Rozdział 8. Pisanie testowalnego kodu
    • Wymagania techniczne
    • Po co testować kod?
    • Wprowadzenie do frameworków testowych
    • Zapoznanie się z atrapami i imitacjami
    • Projektowanie klas sterowane testami
    • Automatyzowanie testów na potrzeby ciągłej integracji/ciągłego wdrażania
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 9. Ciągła integracja i ciągłe wdrażanie
    • Wymagania techniczne
    • Zapoznanie się z ciągłą integracją
    • Recenzowanie zmian w kodzie
    • Badanie automatyzacji sterowanej testami
    • Zarządzanie wdrażaniem jako kodem
    • Budowanie kodu wdrożeniowego
    • Budowanie potoku CD
    • Korzystanie z niezmiennej infrastruktury
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 10. Bezpieczeństwo kodu i wdrażania
    • Wymagania techniczne
    • Sprawdzanie zabezpieczeń kodu
    • Sprawdzanie, czy zależności są bezpieczne
    • Utwardzanie kodu
    • Utwardzanie środowiska
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 11. Wydajność
    • Wymagania techniczne
    • Mierzenie wydajności
    • Pomaganie kompilatorowi w generowaniu wydajnego kodu
    • Zrównoleglanie obliczeń
    • Używanie koprocedur
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe

Część IV. Zasady projektowania natywnego dla chmury

  • Rozdział 12. Architektura zorientowana na usługi
    • Wymagania techniczne
    • Zapoznanie się z architekturą zorientowaną na usługi
    • Wdrażanie zasad wymiany komunikatów
    • Korzystanie z usług sieciowych
    • Wykorzystywanie usług zarządzanych i dostawców chmury
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 13. Projektowanie mikrousług
    • Wymagania techniczne
    • Wniknięcie w temat mikrousług
    • Budowanie mikrousług
    • Obserwowanie mikrousług
    • Łączenie mikrousług
    • Skalowanie mikrousług
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 14. Kontenery
    • Wymagania techniczne
    • Reaktywacja kontenerów
    • Budowanie kontenerów
    • Testowanie kontenerów i integrowanie ich ze sobą
    • Zapoznanie się z orkiestracją kontenerów
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe
  • Rozdział 15. Projektowanie rozwiązań natywnych dla chmury
    • Wymagania techniczne
    • Zapoznanie się z rozwiązaniami natywnymi dla chmury
    • Orkiestracja obciążeń natywnych dla chmury przy użyciu platformy Kubernetes
    • Obserwowalność w systemach rozproszonych
    • Łączenie usług za pomocą siatki usług
    • Podejście GitOps
    • Podsumowanie
    • Pytania
    • Materiały dodatkowe

Dodatek A

Dodatek B. Odpowiedzi

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.