Facebook - konwersja
  • promocja

Złożone zagadnienia architektury oprogramowania. Jak analizować kompromisy i podejmować trudne decyzje - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
3 stycznia 2023
Format ebooka:
EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(3w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.

Złożone zagadnienia architektury oprogramowania. Jak analizować kompromisy i podejmować trudne decyzje - ebook

W epoce infrastruktur chmurowych, mikrousług czy wysublimowanych wzorców projektowych architekt oprogramowania musi sobie radzić z trudnym zadaniem, jakim jest wybór odpowiednich rozwiązań. Będą one potem szczegółowo testowane podczas pracy w środowisku produkcyjnym, a także przy późniejszym dostosowywaniu i rozbudowywaniu oprogramowania. Tymczasem w wypadku architektury złożonych systemów nie ma łatwych kompromisów. Konieczne jest bardzo wnikliwe i krytyczne przemyślenie każdej decyzji projektowej, i to na możliwie najwcześniejszym etapie pracy.

Ta książka powinna zostać przestudiowana przez każdego architekta nowoczesnych systemów rozproszonych. Jej celem jest pokazanie sposobów rozwiązywania trudnych problemów związanych z projektowaniem takiego oprogramowania. W krytyczny i wszechstronny sposób omówiono w niej najważniejsze problemy utrudniające podejmowanie dobrych decyzji projektowych. Zaprezentowano najskuteczniejsze strategie doboru optymalnej architektury. Na jasnych przykładach pokazano, w jaki sposób należy przystąpić do analizy założeń projektowych ... począwszy od określenia "ziarnistości" usług, przepływów informacji i orkiestracji, poprzez eliminację sprzężenia kontraktów i określenie nadzoru nad transakcjami rozproszonymi, a skończywszy na metodach optymalizowania właściwości operacyjnych, takich jak skalowalność, elastyczność i wydajność.
Najciekawsze zagadnienia:

  • analiza kompromisów i dokumentowanie decyzji
  • podejmowanie decyzji dotyczących "ziarnistości" usług
  • złożoność procesu przekształcania aplikacji monolitycznych
  • eliminacja sprzężeń kontraktów wiążących usługi
  • obsługa danych w architekturze o dużym stopniu rozproszenia
  • wzorce zarządzania przepływami informacji i transakcjami

Architekt musi być prorokiem...

Frank Lloyd Wright

Spis treści

Przedmowa

Rozdział 1. Co się dzieje przy braku "najlepszych praktyk"?

  • Skąd określenie "trudne kwestie"?
  • Ponadczasowa rada dotycząca architektury oprogramowania
  • Ważność danych w architekturze
  • Rekord decyzji dotyczących architektury
  • Funkcje dopasowania architektury
    • Zastosowanie funkcji dopasowania
  • Architektura a projekt: utrzymywanie definicji w prostej postaci
  • Wprowadzenie do sagi zespołu operatorów systemu
    • Przepływ informacji bez zgłoszeń
    • Przepływ informacji ze zgłoszeniami
    • Zły scenariusz
    • Komponenty architektury aplikacji zespołu operatorów systemu
    • Model danych aplikacji zespołu operatorów systemu

Część I. Rozdzielanie wszystkiego

Rozdział 2. Rozpoznawanie sprzężenia w architekturze oprogramowania

  • Kwant (kwanty) architektury
    • Możliwość niezależnego wdrażania
    • Wysoki stopień spójności funkcjonalnej
    • Wysoki poziom sprzężenia statycznego
    • Dynamiczne sprzężenie kwantu
  • Saga zespołu operatorów systemu: zrozumienie kwantów

Rozdział 3. Modułowość architektury

  • Czynniki modułowości
    • Możliwość utrzymania
    • Możliwość testowania
    • Możliwość wdrażania
    • Skalowalność
    • Dostępność i odporność na błędy
  • Saga zespołu operatorów systemu: zapewnianie uzasadnienia biznesowego

Rozdział 4. Dekompozycja architektury

  • Czy baza kodu umożliwia dekompozycję?
    • Sprzężenie dośrodkowe i odśrodkowe
    • Abstrakcyjność i niestabilność
    • Odległość od ciągu głównego
  • Dekompozycja komponentowa
  • Rozdzielanie taktyczne
    • Kompromisy
  • Saga zespołu operatorów systemu: wybór metody dekompozycji

Rozdział 5. Wzorce dekompozycji komponentowej

  • Wzorzec Identyfikowanie komponentów i określanie ich wielkości
    • Opis wzorca
    • Funkcje dopasowania służące do zarządzania
    • Saga zespołu operatorów systemu: określanie wielkości komponentów
  • Wzorzec Gromadzenie wspólnych komponentów domeny
    • Opis wzorca
    • Funkcje dopasowania służące do zarządzania
    • Saga zespołu operatorów systemu: gromadzenie wspólnych komponentów
  • Wzorzec Wyrównywanie komponentów
    • Opis wzorca
    • Funkcje dopasowania służące do zarządzania
    • Saga zespołu operatorów systemu: wyrównywanie komponentów
  • Wzorzec Określanie zależności komponentów
    • Opis wzorca
    • Funkcje dopasowania służące do zarządzania
    • Saga zespołu operatorów systemu: określanie zależności komponentów
  • Wzorzec Tworzenie domen komponentów
    • Opis wzorca
    • Funkcje dopasowania służące do zarządzania
    • Saga zespołu operatorów systemu: tworzenie domen komponentów
  • Wzorzec Tworzenie usług domenowych
    • Opis wzorca
    • Funkcje dopasowania służące do zarządzania
    • Saga zespołu operatorów systemu: tworzenie usług domenowych
  • Podsumowanie

Rozdział 6. Rozdzielanie danych operacyjnych

  • Czynniki przemawiające za dekompozycją danych
    • Elementy dezintegracji danych
    • Elementy integracji danych
    • Saga zespołu operatorów systemu: uzasadnianie dekompozycji bazy danych
  • Dekompozycja danych monolitycznych
    • Krok 1: analizowanie bazy danych i tworzenie domen danych
    • Krok 2: przypisanie tabel do domen danych
    • Krok 3: rozdzielenie połączeń z bazą danych między domenami danych
    • Krok 4: przeniesienie schematów na osobne serwery baz danych
    • Krok 5: przełączenie na niezależne serwery baz danych
  • Wybieranie typu bazy danych
    • Relacyjne bazy danych
    • Bazy danych z parami klucz-wartość
    • Bazy danych dokumentów
    • Kolumnowe bazy danych
    • Grafowe bazy danych
    • Bazy danych NewSQL
    • Bazy danych przeznaczone dla usług w chmurze
    • Bazy danych szeregów czasowych
  • Saga zespołu operatorów systemu: różnorodne bazy danych

Rozdział 7. Ziarnistość usług

  • Elementy dezintegracji ziarnistości
    • Zasięg i przeznaczenie usługi
    • Ulotność kodu
    • Skalowalność i przepustowość
    • Odporność na błędy
    • Bezpieczeństwo
    • Rozszerzalność
  • Elementy integracji ziarnistości
    • Transakcje bazy danych
    • Przepływ informacji i choreografia
    • Kod współużytkowany
    • Relacje między danymi
  • Określanie właściwej równowagi
  • Saga zespołu operatorów systemu: ziarnistość usługi przydzielania zgłoszenia
  • Saga zespołu operatorów systemu: ziarnistość usługi rejestrowania klienta

Część II. Ponowne łączenie wszystkiego ze sobą

Rozdział 8. Wzorce ponownego wykorzystania

  • Replikowanie kodu
    • Kiedy używać?
  • Biblioteka współużytkowana
    • Zarządzanie zależnościami i kontrola zmian
    • Strategie numeracji wersji
    • Kiedy używać?
  • Usługa współużytkowana
    • Ryzyko zmian
    • Wydajność
    • Skalowalność
    • Odporność na błędy
    • Kiedy używać?
  • "Przyczepy" i siatka usług
    • Kiedy używać?
  • Saga zespołu operatorów systemu: wspólna logika infrastruktury
  • Ponowne wykorzystanie kodu: kiedy zapewnia to dodatkową wartość?
    • Ponowne wykorzystanie za pośrednictwem platform
  • Saga zespołu operatorów systemu: wspólna funkcjonalność domeny

Rozdział 9. Własność danych i transakcje rozproszone

  • Przypisywanie prawa własności danych
  • Scenariusz pojedynczej własności
  • Scenariusz ogólnej własności
  • Scenariusz współwłasności
    • Technika podziału tabeli
    • Technika domeny danych
    • Technika delegowania
  • Technika konsolidowania usług
  • Podsumowanie kwestii własności danych
  • Transakcje rozproszone
  • Wzorce ostatecznej spójności
    • Wzorzec synchronizacji w tle
    • Wzorzec oparty na żądaniach z orkiestracją
    • Wzorzec oparty na zdarzeniach
  • Saga zespołu operatorów systemu: własność danych przy przetwarzaniu zgłoszeń

Rozdział 10. Dostęp do danych rozproszonych

  • Wzorzec komunikacji między usługami
  • Wzorzec replikacji schematu kolumnowego
  • Wzorzec buforu replikowanego
  • Wzorzec domeny danych
  • Saga zespołu operatorów systemu: dostęp do danych na potrzeby przydzielania zgłoszeń

Rozdział 11. Zarządzanie rozproszonymi przepływami informacji

  • Wariant komunikacji z orkiestracją
  • Wariant komunikacji z choreografią
    • Zarządzanie stanem przepływu informacji
  • Kompromisy przy porównaniu orkiestracji z choreografią
    • Właściciel stanu i sprzężenie
  • Saga zespołu operatorów systemu: zarządzanie przepływami informacji

Rozdział 12. Sagi transakcyjne

  • Wzorce sag transakcyjnych
    • Wzorzec Saga Heroizmu
    • Wzorzec Saga Głuchego Telefonu
    • Wzorzec Saga Baśni
    • Wzorzec Saga Podróży w Czasie
    • Wzorzec Saga Fantastyki
    • Wzorzec Saga Grozy
    • Wzorzec Saga Równoległości
    • Wzorzec Saga Antologii
  • Zarządzanie stanem i spójność ostateczna
    • Maszyny stanów sagi
  • Techniki zarządzania sagami
  • Saga zespołu operatorów systemu: transakcje atomowe i aktualizacje kompensujące

Rozdział 13. Kontrakty

  • Porównanie kontraktów ścisłych i luźnych
    • Kompromisy towarzyszące ścisłym i luźnym kontraktom
    • Kontrakty w mikrousługach
  • Sprzężenie struktur danych
    • Przesadne sprzężenie w wyniku użycia sprzężenia struktur danych
    • Przepustowość
    • Użycie sprzężenia struktur danych do zarządzania przepływem informacji
  • Saga zespołu operatorów systemu: zarządzanie kontraktami obsługi zgłoszeń

Rozdział 14. Zarządzanie danymi analitycznymi

  • Dotychczasowe rozwiązania
    • Hurtownia danych
    • Jezioro danych
  • Siatka danych
    • Definicja siatki danych
    • Kwant produktu danych
    • Siatka danych, sprzężenie i kwant architektury
    • Kiedy korzystać z siatki danych?
  • Saga zespołu operatorów systemu: siatka danych

Rozdział 15. Tworzenie własnej analizy kompromisów

  • Określanie powiązanych ze sobą wymiarów
    • Sprzężenie
    • Analizowanie punktów sprzężenia
    • Ocena kompromisów
  • Techniki kompromisów
    • Porównanie analizy jakościowej i ilościowej
    • Listy zasady MECE
    • Pułapka wyjścia poza kontekst
    • Modelowanie odpowiednich przypadków domenowych
    • Preferowanie konkluzji nad dowód z nadmiarem informacji
    • Unikanie panaceum i żarliwego zapału
  • Saga zespołu operatorów systemu: epilog

Dodatek A. Odwołania do terminów i pojęć

Dodatek B. Odwołania do rekordów decyzji dotyczących architektury

Dodatek C. Zestawienie kompromisów

Skorowidz

Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-283-9528-2
Rozmiar pliku: 24 MB

BESTSELLERY

Kategorie: