Wydawca: 16
Architektura a design w XXI wieku. Wybrane zagadnienia z interdyscyplinarnej praktyki projektowej
Radosław Achramowicz, Anna Lorens
Intencją autorów jest ukazanie, na których polach dochodzi do integrowania architektury i wzornictwa, oraz sposobu, w jaki – już w procesie projektowania – obszary te przenikają się ze sobą. Wyodrębniono także i opisano punkty styku tych dziedzin w aspekcie produkcji i zastosowania najnowszych technologii oraz niebagatelne znaczenie innowacji i prac badawczo-rozwojowych w tym procesie. Punkt wyjścia do rozważań stanowi wyobrażenie sobie wyidealizowanej formuły dla zawodu architekta – nie jako specjalisty w wąskiej dziedzinie, lecz jako twórcy umiejącego syntetyzować różne zjawiska, a przez to inkorporować do swej praktyki różne obszary wiedzy, a co się z tym wiąże – kompetencje. Idąca za tym interdyscyplinarność warsztatu i postrzegania świata, w kontekście przemian na rynku pracy i ewolucji w edukacji, wydaje się być kluczowa dla wzbogacenia warsztatu projektowego. Warsztatu, który łączy w sobie praktykę architektoniczną i wzorniczą, a także otwiera się na inne zagadnienia – społeczne, technologiczne, innowacyjne.
Architektura API. Projektowanie, używanie i rozwijanie systemów opartych na API
James Gough, Daniel Bryant, Matthew Auburn
Trendy w tworzeniu oprogramowania zmierzają w kierunku architektury zorientowanej na usługi. Coraz więcej organizacji decyduje się na rozwiązania chmurowe lub oparte na mikrousługach. Te wzorce architekturalne wymagają API: umiejętności ich budowania i stosowania podczas integracji z systemami zewnętrznymi. Nie są to proste zagadnienia - zaprojektowanie i utworzenie platformy API jest prawdziwym wyzwaniem. W tej pozycji znajdziesz dokładne omówienie tematów związanych z nadawaniem struktury i ewoluowaniem API. Sam Newman, autor książki Budowanie mikrousług. Projektowanie drobnoziarnistych systemów Ten przewodnik, który docenią programiści i architekci, zawiera wyczerpujące omówienie zagadnień projektowania, funkcjonowania i modyfikowania architektury API. Od strony praktycznej przedstawia strategie budowania i testowania API REST umożliwiającego połączenie oferowanej funkcjonalności na poziomie mikrousług. Opisuje stosowanie bram API i infrastruktury typu service mesh. Autorzy dokładnie przyglądają się kwestiom zapewnienia bezpieczeństwa systemów opartych na API, w tym uwierzytelnianiu, autoryzacji i szyfrowaniu. Sporo miejsca poświęcają również ewolucji istniejących systemów w kierunku API i różnych docelowych platform. Najważniejsze zagadnienia: podstawy API i wzorce architekturalne platformy API wdrażanie i konfiguracja komponentów platformy API używanie bram API i infrastruktury typu service mesh bezpieczeństwo API i najczęstsze luki w zabezpieczeniach przekształcanie istniejących systemów w kierunku architektury bazującej na API Doskonale napisana, zawiera wiele podpowiedzi, przykładów i praktycznych wskazówek. Stefania Chaplin, GitLab & DevStefOps
Architektura aplikacji w Pythonie. TDD, DDD i rozwój mikrousług reaktywnych
Harry Percival, Bob Gregory
Architektura aplikacji w Pythonie. TDD, DDD i rozwój mikrousług reaktywnych Python zyskuje coraz większą popularność i jest wykorzystywany do tworzenia bardzo różnych aplikacji, jednak projektowanie dużych, niezawodnych systemów w tym języku bywa wyzwaniem. Rozwijanie złożonych systemów o wysokiej jakości wymaga zastosowania odpowiedniej architektury. Trudno w Pythonie stosować takie wysokopoziomowe wzorce projektowe jak architektura sześciokątna, architektura oparta na zdarzeniach czy wzorce zalecane dla projektowania dziedzinowego (DDD). Sytuacji nie poprawia również to, że klasyczna literatura dotycząca metod zarządzania złożonością aplikacji zawiera przykłady kodu napisanego w Javie lub C#. Programiści Pythona często więc uznają takie książki za mało przydatne w swojej pracy. Ten praktyczny przewodnik przybliży projektantom pracującym w Pythonie sprawdzone wzorce architektury, które ułatwiają zapanowanie nad złożonością aplikacji i pozwalają najlepiej wykorzystać zestawy testów. Prezentację poszczególnych wzorców architektury oparto na przykładowej, stopniowo rozbudowywanej aplikacji. Podejście to pozwoliło na pokazanie zalet metodyki TDD. Z kolei w rozdziałach poświęconych modelowaniu dziedzinowemu zwrócono uwagę na unikanie jakichkolwiek zależności zewnętrznych przy równoczesnym zapewnieniu integralności danych. Wśród ciekawszych koncepcji warto wskazać wykorzystywanie zdarzeń w roli wzorca integracji usług w architekturze mikrousługowej. Niejako przy okazji zaprezentowano praktyczne strony stosowania kilku frameworków i technologii Pythona, między innymi Flask, SQLAlchemy, pytest, Docker i Redis. W tej książce między innymi: modelowanie dziedzinowe i stosowanie wzorców DDD jednostki, obiekty wartości i agregaty w architekturze domenowej tworzenie modeli bez zbędnych zależności zdarzenia, polecenia i szyna wiadomości wzorce architektury zdarzeniowej i mikrousług reaktywnych Architektura nowoczesnych aplikacji w Pythonie: rozwiązania dla poważnych systemów!
Architektura danych. Kurs video. Zarządzanie, przechowywanie i przetwarzanie danych
Piotr Chudzik
Obierz kurs na poznanie struktury różnych rodzajów baz danych Zdolność do gromadzenia, przetwarzania i korzystania z posiadanych danych stanowi podstawę gospodarki bazującej na informacji. W ciągu ostatnich lat dane zdobyły status nowego bezcennego kruszcu kto ma do nich dostęp i potrafi ich efektywnie używać, ten zyskuje ogromną przewagę konkurencyjną. Nic w tym dziwnego, że specjaliści, którzy potrafią projektować, budować i utrzymywać infrastrukturę danych (tacy jak data engineer), zyskują na znaczeniu i są poszukiwani na rynku. Bez ich szczególnych umiejętności niemożliwe byłoby zarządzanie firmą w nowoczesnym duchu. Technologie służące do zarządzania danymi stale się rozwijają. Ten kurs ma za zadanie zarówno przybliżyć uczestnikom podstawową wiedzę dotyczącą wyjściowych struktur, takich jak bazy danych SQL i NoSQL, jak i przekazać informacje na temat ogólnego zarysu bardziej nowoczesnych struktur, takich jak data lake czy data lakehouse. Nie są one pojedynczymi rozwiązaniami, ale raczej zbiorami technologii i rozwiązań. Chcąc być na bieżąco z tematem, trzeba zrozumieć, jak w praktyce wyglądają komponenty odpowiedzialne za przetwarzanie, przechowywanie i dbanie o jakość naszych danych. Ze względu na ogrom technologii i rozwiązań, które stosuje się w nowoczesnych bazach danych, dobrze jest rozumieć również ogólny koncept całego ekosystemu. Szkolenie Architektura danych. Kurs video. Zarządzanie, przechowywanie i przetwarzanie danych kończy się na poziomie podstawowymśrednio zaawansowanym. Jako jego uczestnik opanujesz wiedzę na temat nowoczesnych struktury danych, poznasz różnicę między przechowywaniem danych w formatach binarnych / open table a klasycznymi bazami danych SQL / NoSQL. Dowiesz się, jakie są podstawowe elementy i sposoby przetwarzania danych, a także jak się konstruuje nowoczesne architektury baz danych. Poznaj naszego eksperta
Katarzyna Janicka-Świerguła
Handel jako jedna z najstarszych dziedzin gospodarki był niemalże od początku nierozerwalnie związany z promocją. Pierwotnie przyjmowała ona bardzo prymitywne formy i stosowana była dość nieświadomie. Uwagę klientów starano się przyciągnąć wystawionymi na straganach produktami, szyldami czy też głoszonymi hasłami. Z upływem setek lat, przemianami społeczno-gospodarczymi i pojawianiem się gospodarki wolnorynkowej działalność „marketingowa” ulegała coraz większym transformacjom i udoskonaleniom, by w połowie XIX wieku dać solidne ramy wizualnej promocji. (z Wprowadzenia)
Architektura ewolucyjna. Projektowanie oprogramowania i wsparcie zmian
Neal Ford, Rebecca Parsons, Patrick Kua
Przez długi czas uważano, że architektura oprogramowania powinna powstać przed rozpoczęciem pisania kodu i pozostać niezmieniona aż do zakończenia projektu. Pojawienie się zwinnych metod tworzenia oprogramowania spowodowało, że taką koncepcję zaczęto podawać w wątpliwość. Niektórzy nawet kwestionowali potrzebę tworzenia architektury, gdyż utrudniała reakcję na zmiany wymagań. Istnieje jednak inne podejście do architektury, zgodnie z którym jest ona ściśle powiązana z fazą programowania i dynamicznie odpowiada na zmiany pojawiające się podczas tworzenia kodu. W ten sposób architektura ewolucyjna, pomimo nieprzewidywalności zmian, zapewnia rozwój projektu we właściwym kierunku. Dzięki tej książce architekci oprogramowania zapoznają się z nowym podejściem do powiązań architektury z czasem. Przekonają się też, że tworzenie architektury ewolucyjnej sprowadza się do trzech głównych zagadnień: funkcji dopasowania, zmian przyrostowych i prawidłowego sprzęgania. W tej książce uwzględniono analizę każdego z tych aspektów, ukazano też mechanizm budowania architektury wspierającej ciągłe zmiany. Szczegółowo wyjaśniono zasady wprowadzania pętli informacji zwrotnej pozwalających całemu zespołowi na spójne rozwijanie systemu w zgodzie z zasadą ciągłego dostarczania. Pokazano metody monitorowania stanu architektury. Sporo uwagi poświęcono problemom danych długowiecznych - jest to często pomijane zagadnienie. W tej książce: Funkcje dopasowania w architekturze Zmiany przyrostowe wprowadzane za pomocą projektowania i operacji Sprzężenie architektury i wprowadzanie zmian bez utraty stabilności systemu Dane ewolucyjne oraz zmiany wymogów i architektury w miarę upływu czasu Budowanie architektur ewolucyjnych Praktyczne wdrażanie architektury ewolucyjnej w korporacji Architektura korporacyjna: wysoka sztuka projektowania!
Architektura ewolucyjna. Projektowanie oprogramowania i wsparcie zmian. Wydanie II
Neal Ford, Rebecca Parsons, Patrick Kua, Pramod...
Jeszcze kilka lat temu koncepcja ewoluowania architektury była uznawana za zbyt odważną. Uważano, że architektura powinna pozostawać elementem niezmiennym w czasie. Jednak rzeczywistość udowadnia, że systemy muszą ewoluować, aby spełniać wymogi użytkowników i odzwierciedlać zmiany w dynamicznym środowisku tworzenia oprogramowania. Innymi słowy, konieczne się staje budowanie architektur ewolucyjnych. Dzięki tej książce dowiesz się, w jaki sposób uczynić architekturę oprogramowania wystarczająco plastyczną, aby mogła odzwierciedlać zachodzące zmiany biznesowe i technologiczne. W nowym wydaniu rozbudowano pojęcia zmiany kierowanej i przyrostowej, a także przedstawiono najnowsze techniki dotyczące funkcji dopasowania, automatycznego zarządzania architekturą i danych ewolucyjnych. Zaprezentowano praktyki inżynieryjne umożliwiające ewoluowanie systemów oprogramowania, jak również podejścia strukturalne, w tym zasady projektowe, które ułatwiają zarządzanie tą ewolucją. Opisano ponadto, w jaki sposób zasady i praktyki architektury ewolucyjnej wiążą się z różnymi elementami procesu tworzenia oprogramowania. Naucz się postrzegać architekturę systemową jako plastyczny wyzwalacz. Sam Newman, architekt, autor książki Budowanie mikrousług Najciekawsze zagadnienia: mechanika architektury ewolucyjnej zarządzanie projektami oprogramowania i ich ewolucją style architektoniczne i zasady projektowania sprzęganie i wieloużywalność łączenie praktyk inżynieryjnych z kwestiami strukturalnymi Poznaj techniki umożliwiające tworzenie architektur oprogramowania na tyle zwinnych, aby dotrzymywały kroku ciągłym zmianom. Mark Richards, developertoarchitect.com
Piotr Kilanowski
Intencję przyświecającą powstaniu niniejszej publikacji stanowiła próba zgromadzenia, uporządkowania i syntetycznego omówienia budownictwa publicznego powstającego w obrębie Królestwa Polskiego w latach od około 1909 do 1914. Granicami czasowymi objęto okres pomiędzy rokiem 1909, pełniącym rolę umownego początku rozwoju architektury wczesnomodernistycznej na wspomnianych ziemiach, oraz momentem wybuchu pierwszej wojny światowej w ostatnich dniach lipca 1914 roku, uwzględniając jednak również pojedyncze obiekty zrealizowane już podczas trwania konfliktu, których oblicze architektoniczne uległo zarysowaniu we wcześniejszym okresie. W opracowaniu ujęto obiekty o trwałym charakterze, wzniesione lub projektowane z zastosowaniem solidnych materiałów budowlanych, takich jak np.: cegła, kamień, żelazo i beton, pomijając budowle drewniane. Zagadnienie starano się przybliżyć z uwzględnieniem aspektów takich, jak m.in.: okoliczności powstania, inicjatorzy i twórcy, rozwiązania architektoniczne, budowlane i techniczne, a także późniejsze dzieje. Szczególną uwagę poświęcono kwestiom powiązania poszczególnych realizacji z zachodzącym wówczas nie tylko w obrębie ziem polskich ogółem zjawisk składających się na wczesną fazę rozwoju architektury nowoczesnej, powszechnie określaną mianem wczesnego modernizmu. Nie wszystkie dzieła architektury i budownictwa przed rokiem 1914 powstawały pod wpływem nowego kierunku, jednakże zdecydowana większość ważniejszych realizacji w sposób widoczny antycypowała jego cechy. Wspomniany wątek starano się rozwinąć i doprecyzować, dążąc do określenia zarówno przewodniego oblicza stylowego poszczególnych projektów i realizacji, jak również sposobu interpretacji ich architektury, z wyróżnieniem konwencji zachowawczej (historyzującej), zmodernizowanej (wczesnomodernistycznej), łączącej cechy wyżej wspomnianych lub braku widocznego ukierunkowania.