Wzorce projektowe

1
Ebook

Ajax. Wzorce projektowe

Michael Mahemoff

Praktyczne rozwiązania dla projektantów aplikacji sieciowych Projektowanie aplikacji z wykorzystaniem technologii Ajax Dynamiczne interfejsy użytkownika Usługi sieciowe Technologia Ajax, będąca połączeniem języków XML i JavaScript, ostatnio zyskuje coraz większe uznanie wśród twórców witryn WWW i aplikacji sieciowych. Pozwala na ograniczenie do minimum komunikacji pomiędzy przeglądarką i serwerem, dzięki czemu aplikacje internetowe zachowują się niemal identycznie jak powszechnie wykorzystywane narzędzia biurkowe. Użytkownicy programów zaprojektowanych z wykorzystaniem Ajaksa nie muszą czekać na przeładowanie strony -- odbywa się to w tle i nie wpływa na szybkość działania. W dobie rosnącej popularności narzędzi internetowych Ajax wydaje się być idealnym rozwiązaniem. Czytając książkę "Ajax. Wzorce projektowe" opanujesz najlepsze praktyki tworzenia aplikacji sieciowych z wykorzystaniem tej technologii. Poznasz podstawowe wzorce projektowe oraz zasady ich stosowania w typowych aplikacjach. Nauczysz się korzystać z usług sieciowych, przesyłu strumieniowego i modelu DOM. Przeczytasz o optymalizacji kodu oraz powtórnym wykorzystywaniu jego fragmentów. Znajdziesz tu także wzorce dotyczące funkcjonalności i użyteczności witryn WWW oraz efektów graficznych. Ostatnią grupę wzorców opisanych w książce stanowią techniki diagnozowania tworzonych aplikacji. Geneza Ajaksa Podstawy projektowania w Ajaksie Zdalne wywoływanie poleceń Usługi sieciowe Transformacje XSLT Refaktoryzacja kodu Optymalizowanie wydajności aplikacji Efekty graficzne Użyteczne formularze Testowanie aplikacji Wykorzystaj w swoich projektach sprawdzone rozwiązania. Pobierz dodatkowy spis wzorców.

2
Ebook

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!

3
Ebook

Architektura ewolucyjna. Projektowanie oprogramowania i wsparcie zmian. Wydanie II

Neal Ford, Rebecca Parsons, Patrick Kua, Pramod Sadalage

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

4
Ebook

C++ i Qt. Wprowadzenie do wzorców projektowych. Wydanie II

Alan Ezust, Paul Ezust

Najlepsze wzorce dla C++ i Qt! Język C++ przez długie lata był liderem wśród języków programowania i wciąż jest rozwijany. Qt to zestaw bibliotek pozwalający na tworzenie atrakcyjnego interfejsu użytkownika, działającego w różnych systemach operacyjnych — Windows, Mac OS X oraz Linux. Projekt jest intensywnie rozwijany od 1992 roku, a najnowsza wersja daje nawet możliwość tworzenia aplikacji internetowych czy mobilnych. Wykorzystanie możliwości C++ oraz potencjału Qt może dać niezwykłe efekty! W trakcie lektury nauczysz się podstaw języka C++ i zgłębisz tajniki bibliotek Qt. Zdobędziesz interesujące informacje na temat wykorzystania kontenerów, metaobiektów, metawłaściwości i mechanizmu refleksji. Dowiesz się, jak wykorzystać wzorzec MVC (ang. Model-View-Controller) oraz w jaki sposób opanować problemy związane z programowaniem współbieżnym. Ponadto nauczysz się panować nad wskaźnikami i unikać typowych problemów związanych z dostępem do pamięci. Książka ta jest doskonałą pozycją dla wszystkich programistów C++, którzy chcą wzbogacić swój warsztat o bibliotekę Qt. Dzięki tej książce: - poznasz podstawy C++ oraz Qt - opanujesz programowanie współbieżne - zrozumiesz wzorzec MVC - zbudujesz interesującą aplikację przy użyciu C++ i Qt Wykorzystaj moc duetu: C++ i Qt!

5
Ebook

Certyfikowany inżynier wymagań. Opracowanie na podstawie planu nauczania IREB® CPRE®. Przykładowe pytania egzaminacyjne z odpowiedziami

Karolina Zmitrowicz

Budowanie produktów, które wnoszą realną wartość biznesową, wymaga dobrych podstaw. Takimi podstawami są wymagania. Inżynieria wymagań od lat stanowi podstawę projektów - niezależnie od panujących mód i trendów. Inżynieria wymagań to proces definiowania, dokumentowania i utrzymywania wymagań w projektowaniu inżynierskim. Bez inżynierii wymagań nie byłoby systemów - nie tylko informatycznych, ale także usługowych, z których korzystamy na co dzień. Windy, nowoczesne pralki czy telewizory, smartfony i aplikacje na nie, infrastruktura lądowa i powietrzna - wszystko to systemy budowane na podstawie wymagań. Bez inżynierii wymagań te systemy by nie powstały. Lub powstałyby... ale o nieakceptowalnym poziomie jakości. ze wstępu Książka obejmuje tematykę inżynierii wymagań według programu certyfikacji IREB® CPRE® Foundation Level na poziomie podstawowym. Omawia zagadnienia wyszczególnione w planie nauczania IREB® CPRE® z naciskiem na aspekt praktyczny, a także przygotowuje do egzaminu certyfikacyjnego. Co ważne, zagadnienia teoretyczne zostały zobrazowane przykładami w stopniu określonym przez poziom poznawczy (K1, K2, K3). Zdobądź certyfikat i stań się kimś, kogo nie ruszy żaden projekt: Opanuj zasady inżynierii wymagań Poznaj artefakty i praktyki dokumentowania Dowiedz się, jakie są praktyki w zakresie opracowywania wymagań Wdróż się w proces i strukturę pracy Zorientuj się, jak w praktyce wygląda zarządzanie wymaganiami Ułatw sobie zadania dzięki narzędziom wspierającym Podejdź do egzaminu próbnego (wewnątrz znajdziesz pytania egzaminacyjne, klucz odpowiedzi i ich uzasadnienia)   Zobacz zapis z webinaru prowadzonego przez Karolinę Zmitrowicz oraz Rossa Apostola na temat: „Sztuczna inteligencja w produkcji oprogramowania” ⤵️

6
Ebook

DDD. Kompendium wiedzy

DDD w pigułce Modelowanie oprogramowania jest kojarzone z pojęciem programowania dziedzinowego, w skrócie zwanego DDD. Jest to dość nowatorskie podejście do tworzenia architektury oprogramowania, a jego największą zaletą jest wysoka pewność uzyskiwania bardzo dobrych rezultatów. Programiści często błyskawicznie dostrzegają zalety DDD i korzyści płynące ze stosowania odpowiednich narzędzi, stąd technika ta cieszy się coraz większym uznaniem. Dopiero jednak pełne zrozumienie zasad stosowania wzorców projektowych DDD przez wszystkich zaangażowanych w projekt pozwala na osiągnięcie imponujących wyników przy projektowaniu skomplikowanych systemów oprogramowania. Ten zwięzły i czytelnie napisany podręcznik jest przeznaczony dla programistów, ekspertów dziedzinowych, menedżerów, analityków biznesowych, architektów informacji i testerów. Koncentruje się na praktycznej wiedzy niezbędnej do uzyskania pożądanych rezultatów. Wyjaśniono, jak segregować modele dziedzin za pomocą wzorca kontekstu ograniczonego, jak rozwinąć język wszechobecny, a także w jaki sposób zintegrować wiele kontekstów ograniczonych poprzez wykorzystanie relacji zespołowych i mechanizmów technicznych. Co najważniejsze, dowiesz się, jak podejście DDD działa w rzeczywistości i co zrobić, aby jak najszybciej cieszyć się jego zaletami. W książce przedstawiono następujące zagadnienia: wprowadzenie do DDD i zalety tego podejścia do projektowania projektowanie strategiczne DDD integrowanie istniejących systemów w ramach tworzenia nowych aplikacji modelowanie taktyczne - agregaty i zdarzenia dziedziny narzędzia do zarządzania projektami i przyśpieszania prac Narzędzia DDD - ciesz się udanym wdrożeniem!

7
Ebook

DevOps dla bystrzaków

Emily Freeman

Postaw na przewagę konkurencyjną, jaką zapewnia DevOps Wprowadź technologie w duchu DevOps, w tym chmurę i kontenery Przestaw swoją organizację na metodykę DevOps Przedmowa Nicole Forsgren, współzałożycielka i CEO w DevOps Research and Assessment (DORA) Dołącz do DevOpsowej rewolucji! Dzięki DevOps możesz przyspieszyć cykl życia związany z dostarczaniem oprogramowania, jeśli tylko poznasz procesy, narzędzia i sposób myślenia będący podstawą kultury DevOps. Ta książka pomaga inżynierom oprogramowania i kierownikom do spraw technicznych w przekształcaniu organizacji w celu przyjęcia podejścia DevOps. Dowiedz się, jak tworzyć bardziej iteracyjny i zorientowany na klienta styl rozwoju i dostarczania, by w efekcie poprawić współpracę, wyeliminować wąskie gardła i zwiększyć produktywność zespołu. W książce: identyfikowanie wąskich gardeł w organizacji tworzenie własnych ram postępowania w duchu DevOps angażowanie zespołu w ten proces dostosowywanie kultury organizacyjnej wyciąganie nauki z porażek przygotowanie się do zarządzania incydentami automatyzowanie procesów manualnych

8
Ebook

Expression Blend Przewodnik

Artur Żarski

Przewodnik ten ma na celu zapoznanie Czytelnika z produktem o nazwie Expression Blend. Czym tak naprawdę jest Blend? Jest to profesjonalne narzędzie do projektowania interaktywnych interfejsów użytkownika – w szczególności różnego rodzaju animacji 2D oraz 3D. Pozwala na łączenie różnego rodzaju elementów w jednym projekcie. Mogą to być obrazy wideo, grafika wektorowa, wysokiej jakości elementy tekstowe, animacje oraz różnego rodzaju inne grafiki. Dzięki temu można tworzyć bardzo zaawansowane obiekty, zawierające najrozmaitsze podstawowe elementy i budując w ten sposób rozbudowany interfejs użytkownika.

9
Ebook

Infrastruktura jako kod. Dynamiczne systemy w epoce chmury

Kief Morris

Sześć lat temu pojęcie infrastruktury jako kodu było czymś nowym. Dzisiaj, gdy nawet banki i inne konserwatywne organizacje planują przejść na korzystanie z chmury, zespoły programistów w firmach na całym świecie próbują budować duże bazy kodu infrastruktury. W swojej praktycznej książce Kief Morris z ThoughtWorks wyjaśnia, jak efektywnie zarządzać infrastrukturą w epoce chmury, używając zasad, praktyk i wzorców zainicjowanych przez zespoły DevOps. Nowe, uaktualnione wydanie, przeznaczone dla administratorów systemów, inżynierów infrastruktury, programistów, kierowników zespołów i architektów, pokazuje, jak wykorzystywać technologie chmury i automatyzacji do łatwego, bezpiecznego, szybkiego i odpowiedzialnego wprowadzania zmian. Czytając tę książkę dowiesz się, jak definiować wszystko jako kod i jak używać projektów oprogramowania i praktyk inżynieryjnych do tworzenia systemów składających się z małych, luźno sprzężonych elementów. Książka obejmuje następujące zagadnienia: •  Podstawy: wykorzystywanie infrastruktury jako kodu do ciągłego wprowadzania zmian i podnoszenia jakości operacyjnej za pomocą narzędzi i technologii przeznaczonych do budowy platform opartych na chmurze •  Stosy infrastruktury: sposoby definiowania, udostępniania, testowania i ciągłego dostarczania zmian zasobów infrastruktury •  Serwery i inne platformy: używanie wzorców do projektowania udostępniania oraz konfiguracji serwerów i klastrów •  Duże systemy i zespoły: przepływy, zarządzanie i wzorce architektoniczne używane do tworzenia elementów infrastruktury i zarządzania nimi   „Praktyki infrastruktury jako kodu przeszły ewolucję od zarządzania serwerami do zarządzania całymi stosami, ale ich nowe możliwości zostały osiągnięte kosztem złożoności. Książka wykracza poza same polecenia. Prezentuje wzorce projektowe kryjące się za dobrymi praktykami oraz metody automatyzacji na wyższym poziomie”. —Patrick Debois założyciel DevOpsDays Kief Morris jest globalnym dyrektorem ds. inżynierii chmurowej w ThoughtWorks. Pomaga organizacjom i zespołom szukać lepszych sposobów wykorzystywania technologii infrastruktury i chmury do szybszego i bardziej niezawodnego uzyskiwania większych korzyści. Od ponad 20 lat zajmuje się projektowaniem, tworzeniem i uruchamianiem zautomatyzowanej infrastruktury serwerów IT. Zaczynał od skryptów powłoki i Perla, a następnie, w miarę pojawiania się nowych technologii, przeszedł między innymi na CFengine, Puppet, Chef i Terraform.

10
Ebook

Kubernetes. Wzorce projektowe. Komponenty wielokrotnego użycia do projektowania natywnych aplikacji chmurowych

Bilgin Ibryam, Roland Huß

Kubernetes jest platformą do orkiestracji kontenerów. Projekt ten należy dziś do najpopularniejszych i najbogatszych narzędzi w swojej klasie, stanowi także podstawę dla wielu innych platform, znanych jako systemy typu PaaS. Dzięki nim Kubernetes zyskał możliwość tworzenia aplikacji, jednak tego rodzaju narzędzia wymagają od programistów i architektów zastosowania odpowiednich wzorców projektowych. Opisują one schematy rozwiązywania problemów na różnych poziomach dokładności, a tym samym umożliwiają efektywne projektowanie i implementację nowoczesnych, elastycznych natywnych aplikacji chmurowych w Kubernetesie. To książka przeznaczona dla programistów, którzy chcą rozwijać chmurowe aplikacje dla Kubernetesa. Opisano w niej wiele przydatnych wzorców, przedstawiono ich możliwości i wytyczne do stosowania. Poszczególne zagadnienia zostały zilustrowane praktycznymi przykładami. Wśród wzorców znalazły się te, które ułatwiają tworzenie aplikacji chmurowych, oraz umożliwiające zarządzanie interakcjami między kontenerami i platformami. Opisano tu różne metody konfiguracji aplikacji w Kubernetesie oraz zasady organizowania kontenerów w ramach kapsuły. Wprowadzono również szereg bardziej zaawansowanych tematów, takich jak techniki rozszerzania platformy czy tworzenie obrazów kontenerów. Poszczególne wzorce nadają się do wielokrotnego użytku i są szczególnie przydatne w przypadku natywnych środowisk chmurowych. W książce opisano następujące kategorie wzorców: wzorce podstawowe wzorce zachowań wzorce strukturalne wzorce konfiguracji wzorce zaawansowane Kubernetes: rzeczywiste rozwiązanie istotnych problemów!

11
Ebook

Mikrousługi. Budowa i działanie. Przewodnik po budowaniu architektury mikrousług

Ronnie Mitra, Irakli Nadareishvili

Przewodnik po budowaniu architektury mikrousług Architektury mikrousług oferują większą prędkość wprowadzania zmian, lepszą skalowalność oraz czystsze, łatwiejsze do rozwijania projekty systemów. Jednak implementowanie architektury mikrousług nie jest łatwe. Jak dokonywać niezliczonych wyborów, przeszkolić zespół pod kątem tych wszystkich szczegółów technicznych i poprowadzić organizację w stronę udanego wdrożenia, aby zmaksymalizować szanse powodzenia? Autorzy tej książki, Ronnie Mitra i Irakli Nadareishvili proponują wskazówki krok po kroku dla budowania efektywnej architektury mikrousług. Architekci i inżynierowie mogą pójść drogą implementacji opartej na technikach i rozwiązaniach, które już wykazały swoją skuteczność w systemach mikrousług. Zbudujemy model operacyjny, projekt mikrousług, podstawy infrastruktury oraz dwie działające mikrousługi, po czym połączymy te elementy w jedną implementację. Dla każdego, kto staje przed wyzwaniem budowania mikrousług albo ich architektury, ten przewodnik jest nieocenionym źródłem. •  Poznaj efektywny i oczywisty sposób projektowania systemu mikrousług •  Definiuj zespoły, ich zadania i wskazówki dla współdziałania •  Dowiedz się, jak podzielić wielką aplikację na zbiór mikrousług •  Zbadaj sposoby izolowania i osadzania danych w odpowiednich mikrousługach •  Zbuduj prosty, ale skuteczny potok CI/CD na potrzeby zmian infrastruktury •  Twórz kod dla przykładowych mikrousług •  Wdrażaj działające zastosowania mikrousług w Amazon Web Services „Książka przedstawia jasne i proste wskazówki, jak przekształcić zasady i praktyki mikrousług w rzeczywisty, działający kod. Polecam ją każdemu, kto chce szybko uzyskać działające rozwiązanie.” —Mike Amundsen Doradca i autor Ronnie Mitra jest autorem, strategiem i konsultantem z przeszło 25-letnim doświadczeniem w pracy z technologiami łączności i sieci WWW. Jest współ­autorem książek Microservice Architecture oraz Continuous API Management, wydanych przez O’Reilly. Irakli Nadareishvili jest wiceprezesem do spraw innowacji w firmie Capital One, kierując zespołami odpowiedzialnymi za budowanie platformy bankowości opartymi na mikrousługach. Poprzednio był współzałożycielem i CTO startupu z branży ochrony zdrowia ReferWell i zajmował stanowiska kierownicze w firmach CA Technologies oraz NPR. Można śledzić go na Twitterze: @inadarei.

12
Ebook

Modelowanie w Fusion 360. Praktyczne przykłady

Tomasz Makowski, Marcelina Jałowiec, Amelia Święcicka

Pracuj z najlepszą platformą do projektowania i rozwoju produktów Autodesk Fusion 360 jest kompleksowym oprogramowaniem chmurowym, dzięki któremu stworzysz nawet bardzo rozbudowane zunifikowane projekty w 3D. W razie potrzeby wykonasz w nim również symulacje, przygotujesz dokumentację projektu i opracujesz jego dane. Fusion 360 łączy funkcje 3D CAD, CAM, CAE i PCB. Pozwala między innymi realizować zadania z zakresu wzornictwa przemysłowego, projektowania mechanicznego i symulacji obliczeniowych. Autodesk Fusion 360 pozwala przeprowadzić w wygodny i efektywny sposób zarówno modelowanie swobodne, jak i bryłowe czy parametryczne. Jak zacząć to robić? Najlepiej krok po kroku, wspomagając się tym poradnikiem. Rozpoczniesz od zapoznania się z interfejsem oprogramowania i poznasz jego najważniejsze funkcje. Dalej będziesz modelować coraz bardziej skomplikowane obiekty. Wreszcie zajmiesz się złożeniami i wiązaniami ― zobaczysz, jakich narzędzi się do tego używa, i przećwiczysz proces ich tworzenia. Wykonaj po kolei ćwiczenia zaproponowane w książce, by osiągnąć samodzielność w rozwiązywaniu praktycznych zadań i zdobyć konieczną wiedzę teoretyczną. Wprowadzisz w życie nawyki, które uczynią korzystanie z Autodesk Fusion 360 produktywnym i satysfakcjonującym, a tym samym diametralnie poprawią wydajność Twojej pracy.

13
Ebook

Nowoczesna inżynieria oprogramowania. Stosowanie skutecznych technik szybszego rozwoju oprogramowania wyższej jakości

David Farley

Inżynieria oprogramowania polega na stosowaniu empirycznego podejścia do szukania wydajnych i ekonomicznie uzasadnionych rozwiązań podczas tworzenia oprogramowania. Dziedzina ta ma na celu organizowanie optymalnego procesu tworzenia aplikacji ? od koncepcji, poprzez kodowanie, wdrażanie, utrzymywanie, po wycofywanie. Uzyskanie biegłości w tym obszarze nie jest łatwe: rozwój oprogramowania wymaga zrozumienia filozofii inżynierii i stosowania określonych zasad. Tę książkę docenią programiści, menedżerowie, inżynierowie i liderzy techniczni. Znajdziesz w niej cenne informacje o filozofii inżynierii oprogramowania, jak również o postępach w sposobie myślenia na jej temat. Na tej bazie oparto zestaw zasad ułatwiających skuteczne radzenie sobie z dwoma podstawowymi procesami inżynierii oprogramowania: uczenia się i eksploracji oraz radzenia sobie ze złożonością. W ten sposób dowiesz się, jak usprawnić wszystkie aspekty swojej pracy, a także jak stosować sprawdzone podejścia prowadzące do sukcesu z uwzględnieniem uwarunkowań ekonomicznych. Dzięki tej przełomowej publikacji nauczysz się technik rozwiązywania problemów z wykorzystaniem zarówno obecnych, jak i przyszłych technologii. W efekcie będziesz szybciej tworzyć lepsze oprogramowanie, i to w bardziej przyjemny i satysfakcjonujący sposób. Poznaj i stosuj zasady nowoczesnej inżynierii oprogramowania: określaj jasne cele i sensownie wybieraj narzędzia organizuj pracę i systemy tak, aby móc oceniać ciągłe postępy zachowuj kontrolę nawet po zwiększeniu złożoności systemu utrzymuj dyscyplinę z zachowaniem właściwej elastyczności ucz się z historii i doświadczenia naucz się oceniać nowe idee rozwoju oprogramowania Przekonaj się, jak dzisiaj najlepsi praktycy projektują oprogramowanie!

14
Ebook

Od monolitu do mikrousług. Ewolucyjne wzorce przekształcania systemów monolitycznych

Sam Newman

Mikrousługi są relatywnie świeżą koncepcją w świecie systemów IT, mimo to coraz więcej organizacji decyduje się na wdrażanie opartej na nich architektury. Uznaje się, że zapewnia ona wówczas lepszą skalowalność, łatwość łączenia poszczególnych niezależnych elementów, a przede wszystkim możliwość szybszej reakcji na zmiany i skuteczniejsze wdrażanie nowych funkcjonalności. Zanim jednak organizacja da się skusić tymi obietnicami, powinna gruntownie przeanalizować swoją sytuację i decyzję o ewentualnej migracji systemu oprzeć na racjonalnych przesłankach. Konieczne jest również opracowanie planu takiego przejścia, zwłaszcza jeśli nie można sobie pozwolić na dłuższe przestoje w działalności. To wyczerpujący poradnik dla inżynierów, którzy stoją przed wyzwaniem przekształcenia monolitycznego systemu w architekturę opartą na mikrousługach bez przerywania funkcjonowania firmy. Książka jest przeznaczona dla organizacji, które muszą płynnie zmienić istniejący system, a nie zbudować go od nowa. Zawiera wiele cennych wskazówek odnoszących się do celowości samej migracji oraz przedstawia liczne scenariusze i strategie przekształcania: od etapu planowania aż po dekompozycję aplikacji i baz danych. Znalazł się tu zestaw sprawdzonych wzorców i technik wraz z omówieniem sytuacji, w jakich można je bezpiecznie zastosować. Nie zabrakło ważnych szczegółów związanych z wzorcami refaktoryzacji architektury czy problematyki naruszeń integralności w wyniku podziału baz danych. W tej książce między innymi: podstawowe koncepcje związane z mikrousługami ocena przydatności mikrousług w konkretnych sytuacjach planowanie wdrażania architektury opartej na mikrousługach wzorce migracji, dekompozycja aplikacji i inne zagadnienia techniczne wykrywanie i rozwiązywanie problemów związanych z mikrousługami Dążysz do sukcesu? Obierz kurs na mikrousługi!

15
Ebook

Podręcznik architekta rozwiązań. Poznaj reguły oraz strategie projektu architektury i rozpocznij niezwykłą karierę. Wydanie II

Saurabh Shrivastava, Neelanjali Srivastav

Usługi natywnej chmury pozwalają na uzyskiwanie imponującej wydajności i skalowalności przy niskim koszcie. Świadome tego przedsiębiorstwa poszukują architektów rozwiązań chmurowych, którzy spełniają wysokie wymagania. Taka osoba musi posiadać rozległą znajomość technologii i umiejętność wiązania tej wiedzy z wymaganiami biznesu w sposób zapewniający maksimum korzyści. Dzięki tej książce dowiesz się, jak tworzyć niezawodne, skalowalne i odporne rozwiązania, a także jak projektować systemy następnej generacji przeznaczone dla środowiska chmury. Poznasz efektywne strategie dla produktu i nauczysz się je w pełni implementować w swojej organizacji. Zrozumiesz też, w jaki sposób architekt rozwiązań wpisuje się w środowisko elastycznie działającej firmy. W tym wydaniu pojawiły się również nowe rozdziały, poświęcone takim technologiom jak internet rzeczy, obliczenia kwantowe, inżynieria danych i uczenie maszynowe. Znajdziesz tu uaktualnione informacje dotyczące architektury natywnej chmury i magazynu danych łańcucha bloków. W efekcie lektury nauczysz się tworzyć projekty efektywnych rozwiązań, spełniających zdefiniowane wymagania biznesowe. Najciekawsze zagadnienia: zadania architekta rozwiązań w korporacji implementacja reguł i wzorców projektowych strategie zabezpieczania architektury modernizacja starych aplikacji za pomocą chmury big data, uczenie maszynowe, IoT i obliczenia kwantowe w nowoczesnej architekturze Jeśli chcesz mieć łatwe życie, nie zostawaj architektem. Zaha Hadid, wielokrotnie nagradzana architektka

16
Ebook

Practical Model-Driven Enterprise Architecture. Design a mature enterprise architecture repository using Sparx Systems Enterprise Architect and ArchiMate® 3.1

Mudar Bahri, Joe Williams

Most organizations face challenges in defining and achieving evolved enterprise architecture practices, which can be a very lengthy process even if implemented correctly. Developers, for example, can build better solutions only if they receive the necessary design information from architects, and decision-makers can make appropriate changes within the organization only if they know the implications of doing so.The book starts by addressing the problems faced by enterprise architecture practitioners and provides solutions based on an agile approach to enterprise architecture, using ArchiMate® 3.1 as an industry standard and Sparx EA as the modeling tool. You'll learn with the help of a fictional organization that has three business units, each expecting something different from you as the enterprise architect. You'll build the practice, satisfy the different requirements of each business unit, and share the knowledge with others so they can follow your steps. Toward the end, you'll learn how to put the diagrams and the content that you have developed into documents, presentations, and web pages that can be published and shared with any stakeholder.By the end of this book, you'll be able to build a functional enterprise architecture practice that supports every part of your organization. You'll also have developed the necessary skills to populate your enterprise architecture repository with references and artifacts.

17
Ebook

Praktyka czyni mistrza. Wzorce, inspiracje i praktyki rzemieślników programowania

Dave Hoover, Adewale Oshineye

Jeśli chcesz być świetnym programistą, nie możesz poprzestać tylko na opanowaniu narzędzi deweloperskich i kilku języków programowania. Do rozwiązywania złożonych problemów, które często pojawiają się podczas tworzenia aplikacji, nie wystarczy Ci sama wiedza techniczna. Tak jak w innych dziedzinach rzemiosła, także i tu staniesz przed zagadnieniami, które Cię przerosną, choć wcale nie są unikatowe. Właśnie dla takich zagadnień opracowuje się wzorce — w gruncie rzeczy łączące wiele różnych dziedzin, bo oparte na podobnym schemacie. No dobrze, ale w jaki sposób rzemieślnik programowania może się uczyć od, dajmy na to, mistrza tańca? W tej książce temat nauki rzemiosła potraktowano interdyscyplinarnie. Jej podstawą są dziesiątki wywiadów z praktykami oraz literatura na temat uczenia się, psychologii optymalnej wydajności i wszystkiego, co łączy się z osiąganiem mistrzostwa. Pokazano tu, jak uczyli się wybitni chirurdzy, choreografowie, filozofowie oraz architekci aplikacji. Książka stanowi źródło inspiracji: poszczególne wzorce rozwiązywania problemów są osadzane w określonych kontekstach, a sugerowane rozwiązania uzupełniono relacjami danego wzorca do innych wzorców i wzbogacono w odniesienia do literatury i historii mistrzów z różnych dziedzin. Dzięki tej książce dowiesz się: czy jesteś uczniem, czeladnikiem czy może już mistrzem rzemiosła programistycznego czym są wzorce i jakie znaczenie mają dla nauki rzemiosła jak nieustannie się uczyć i dążyć do mistrzostwa jak oceniać swoje umiejętności i zapewniać sobie korzyści związane z realistyczną samooceną jak skutecznie rozwiązywać różne problemy, począwszy od kłopotliwej współpracy z klientem, a skończywszy na pokonaniu własnego wypalenia zawodowego Rzemieślnik — mistrz, czyli najlepszy fachowiec! David H. Hoover — prowadzi dział rozwoju oprogramowania oraz program praktyk zawodowych w firmie Optiva. Programuje od 2000 roku, jednak jego pasją jest rozwijanie idei rzemieślniczego podejścia do pisania aplikacji. W wolnych chwilach uprawia różne sporty wytrzymałościowe. Adewale Oshineye — jest inżynierem w fimie Google. Programuje od wczesnego dzieciństwa. Pracował nad wieloma projektami o różnej skali, dzięki czemu mógł się uczyć od najlepszych praktyków Europy Zachodniej. Jego ulubioną rozrywką jest przemierzanie Londynu z aparatem fotograficznym w ręku.

18
Ebook

Programowanie zorientowane obiektowo. Wzorce projektowe. Wydanie II

Alan Shalloway, James R. Trott

Zmień podejście do programowania - zastosuj wzorce projektowe Skorzystaj z metod modelowania obiektowego w języku UML Poznaj różne typy wzorców projektowych Wykorzystaj wzorce projektowe w swoich programach Wzorce projektowe to modele rozwiązań wielu zagadnień programistycznych, oparte na zasadach programowania obiektowego. Zastosowanie ich w projektach informatycznych zapewnia szybszą i bardziej efektywną pracę zarówno podczas projektowania i tworzenia oprogramowania, jak i na etapie jego wdrożenia. Sprawne korzystanie z wzorców projektowych wiąże się jednak z koniecznością poznania metod modelowania obiektowego, zrozumienia zasad obiektowości i umiejętności podzielenia projektowanego systemu na komponenty. Książka "Programowanie zorientowane obiektowo. Wzorce projektowe. Wydanie drugie" to przewodnik po wzorcach projektowych, przedstawiający je od strony najbardziej istotnej dla programisty - od strony praktycznej. Przykłady w języku Java, diagramy UML i wyczerpujące komentarze - wszystko to sprawia, że po przeczytaniu tej ksiażki staniesz się ekspertem w dziedzinie wzorców projektowych i będziesz wykorzystywać je we wszystkich swoich projektach. Zasady obiektowości Modelowanie obiektowe w języku UML Standardowe rozwiązania obiektowe Wprowadzenie do wzorców projektowych Zasady stosowania wzorców projektowych Katalog wzorców projektowych Projektowanie i programowanie z zastosowaniem wzorców projektowych Korzystając z wzorców projektowych, zwiększysz szybkość i efektywność swojej pracy nad aplikacjami.

19
Ebook

Tablice informatyczne. Wzorce projektowe

Magdalena Gunia

Wzorce projektowe bez tajemnic! Odkryj najlepsze z używanych obecnie wzorców projektowych Dowiedz się, jaki wzorzec zastosować w konkretnym przypadku Naucz się właściwie wykorzystywać dany wzorzec w praktyce Wzorce projektowe ułatwiają tworzenie dobrego oprogramowania, umożliwiają unikanie typowych błędów i stanowią sprawdzone rozwiązania problemów informatycznych, z którymi ktoś kiedyś miał już do czynienia. Korzysta się z nich w celu zapewnienia wysokiej jakości wynikowego kodu i elastyczności rozwiązania programistycznego oraz skrócenia czasu jego tworzenia. Jeśli nie chcesz wymyślać koła na nowo i nie masz zamiaru podejmować beznadziejnego trudu zrobienia tego lepiej niż tysiące osób przed Tobą, wzorce projektowe są właśnie dla Ciebie! Stosuj je w codziennej pracy, korzystając z praktycznej ściągi, zawierającej najpotrzebniejsze informacje o najbardziej przydatnych wzorcach, dzięki którym Twoje programy będą spełniały branżowe standardy! Wzorce konstrukcyjne, strukturalne i operacyjne Zależności występujące między wzorcami Przeznaczenie i implementacja poszczególnych wzorców Zastosowanie wzorców projektowych w praktyce Tablice informatyczne — cała wiedza pod ręką!

20
Ebook

Wzorce implementacyjne

Kent Beck

Sprawdzone rozwiązania Twoich problemów! Przy nauce programowania warto uczyć się na cudzych błędach. Programiści tworzący aplikację codziennie natykają się na przeróżne problemy oraz zagadnienia do rozwiązania. Rzadko jednak zdarza się, żeby były one wyjątkowe i niespotykane wcześniej. Jeżeli masz problem, możesz być prawie pewien, że ktoś też już go miał - i w dodatku rozwiązał. Właśnie w ten sposób powstały wzorce, które w jasny sposób opisują sposoby rozwiązywania typowych problemów. W tej książce znajdziesz 77 wzorców, które pozwolą Ci uniknąć wielu pułapek oraz rozwiązać najczęściej spotykane problemy. W trakcie lektury dowiesz się, w jaki sposób przechowywać stan oraz gdzie umieścić logikę Twojej aplikacji. Ponadto poznasz najefektywniejsze sposoby sterowania przebiegiem programu oraz wybierzesz rodzaj kolekcji odpowiedni do Twoich potrzeb. Nauczysz się dobierać właściwe nazwy dla zmiennych i metod oraz przekonasz się, że można sprawnie opanować wysyp wyjątków. Książka ta jest obowiązkową lekturą każdego programisty. Dzięki niej Twoje życie stanie się prostsze, a Twoje oprogramowanie bardziej przejrzyste! Dzięki tej książce: poznasz 77 przydatnych wzorców wybierzesz odpowiedni typ kolekcji w zależności od problemu zaprojektujesz przejrzystą hierarchię klas zbudujesz lepszą i bardziej niezawodną aplikację Poznaj najlepsze wzorce, które ulepszą Twoje oprogramowanie!

21
Ebook

Wzorce projektowe dla programistów Javy. Udoskonal swoje umiejętności projektowania oprogramowania

Miroslav Wengner

Właściwe stosowanie wzorców projektowych jest umiejętnością, którą bardzo cenią twórcy oprogramowania. Wzorce pozwalają na szybkie opracowanie złożonych zagadnień i umożliwiają tworzenie kodu nadającego się do wielokrotnego użycia. Taki kod jest przy tym wydajny, łatwy w testowaniu i utrzymaniu. Z pewnością wzorce projektowe są świetnym rozwiązaniem dla inżyniera, który chce doskonalić umiejętności projektowania oprogramowania. Książka stanowi zbiór praktycznych informacji dotyczących najpopularniejszych wzorców projektowych. Lekturę rozpoczniesz od zapoznania się z możliwościami korzystania z wzorców projektowych na platformie Javy. Dowiesz się także, jakich zasad trzeba przestrzegać, aby zapewnić czytelność i łatwość utrzymania kodu Javy. W kolejnych rozdziałach znajdziesz praktyczne wskazówki i przykłady dotyczące stosowania wzorców kreacyjnych, strukturalnych, operacyjnych, a także wzorców współbieżności. Nauczysz się ich używać do praktycznego rozwiązywania problemów często spotykanych podczas projektowania oprogramowania. Końcowy rozdział został poświęcony antywzorcom, a zawarte w nim informacje pomogą Ci w ich identyfikacji i podjęciu najlepszych środków zaradczych. W książce: jakie problemy można rozwiązać za pomocą wzorców projektowych w Javie jakie możliwości ma programowanie współbieżne jak wzorzec projektowy Obserwator buduje relację "jeden-do-wielu" między instancjami jakie problemy pomaga rozwiązać wzorzec Odwiedzający jak kontrolować zasoby przy użyciu wzorca Pula wątków jak zaradzić problemom spowodowanym przez antywzorce Wzorce projektowe: niezbędnik najlepszych programistów Javy!

22
Ebook

Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku

Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides

Naucz się wykorzystywać wzorce projektowe i ułatw sobie pracę! Jak wykorzystać projekty, które już wcześniej okazały się dobre? Jak stworzyć elastyczny projekt obiektowy? Jak sprawnie rozwiązywać typowe problemy projektowe? Projektowanie oprogramowania obiektowego nie jest łatwe, a przy założeniu, że powinno ono nadawać się do wielokrotnego użytku, staje się naprawdę skomplikowane. Aby stworzyć dobry projekt, najlepiej skorzystać ze sprawdzonych i efektywnych rozwiązań, które wcześniej były już stosowane. W tej książce znajdziesz właśnie najlepsze doświadczenia z obszaru programowania obiektowego, zapisane w formie wzorców projektowych gotowych do natychmiastowego użycia! W książce „Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku” opisano, czym są wzorce projektowe, a także w jaki sposób pomagają one projektować oprogramowanie obiektowe. Podręcznik zawiera studia przypadków, pozwalające poznać metody stosowania wzorców w praktyce. Zamieszczono tu również katalog wzorców projektowych, podzielony na trzy kategorie: wzorce konstrukcyjne, strukturalne i operacyjne. Dzięki temu przewodnikowi nauczysz się skutecznie korzystać z wzorców projektowych, ulepszać dokumentację i usprawniać konserwację istniejących systemów. Krótko mówiąc, poznasz najlepsze sposoby sprawnego opracowywania niezawodnego projektu. Wzorce projektowe w architekturze MVC Katalog wzorców projektowych Projektowanie edytora dokumentów Wzorce konstrukcyjne, strukturalne i operacyjne Dziedziczenie klas i interfejsów Określanie implementacji obiektów Obsługa wielu standardów wyglądu i działania Zastosowanie mechanizmów powtórnego wykorzystania rozwiązania Wykorzystaj zestaw konkretnych narzędzi do programowania obiektowego!

23
Ebook

Wzorce projektowe. Leksykon kieszonkowy

Daniel Krasnokucki

Odkryj wzorce projektowe i sposoby ich stosowania! Poznaj najlepsze wzorce projektowe Naucz się je stosować w praktyce Dowiedz się, jak wybrać właściwy wzorzec Gdy stajesz przed nowym problemem programistycznym, nierzadko łamiesz sobie głowę nad właściwym rozwiązaniem. Całymi godzinami starasz się wybrać najlepszą drogę. Zupełnie niepotrzebnie, bo ktoś niemal na pewno zrobił to już wcześniej, przetestował swoje rozwiązanie i wyeliminował ewentualne błędy, a odkryty przez niego sposób stał się obowiązującym wzorcem projektowym, wykorzystywanym z powodzeniem przez rzesze programistów. Jeśli chcesz korzystać ze sprawdzonych wzorców, sięgnij po ten leksykon kieszonkowy. W telegraficznym skrócie prezentuje on najlepsze i najczęściej używane wzorce projektowe, sposoby ich implementacji i przykłady stosowania, a jeśli to Ci nie wystarczy, możesz też zaznajomić się z praktyczną realizacją tych wzorców w językach C++ i C#. Niezależnie od tego, czy temat jest dla Ciebie nowy, czy chcesz tylko uporządkować swoją wiedzę, trafiłeś na odpowiednią książkę! Różne rodzaje wzorców i zależności występujące między nimi Wzorce konstrukcyjne, strukturalne i operacyjne Przeznaczenie i implementacja poszczególnych wzorców Praktyczne zastosowanie wzorców projektowych Przykładowe kody w C++ i C# Nie wyważaj otwartych drzwi — sięgnij po odpowiedni wzorzec!

24
Ebook

Wzorce projektowe. Rusz głową!

Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth Robson

Otwórz swój umysł. Poznaj wszystko, co związane z wzorcami projektowymi, w sposób gwarantujący szybkie i skuteczne opanowanie zasad ich stosowania. Zapomnij o listingach liczących tysiące wierszy, długich i nużących opisach teoretycznych oraz rozbudowanych schematach zależności. Wzorce projektowe to gotowe opisy rozwiązań najczęstszych problemów napotykanych przy tworzeniu oprogramowania. Aby je prawidłowo stosować, należy poznać założenia, na podstawie których zostały stworzone, oraz nauczyć się implementować je we właściwy sposób. Naprzód, głowo! Nikt ci tego nie potrafił wytłumaczyć? Wydaje Ci się, że to problem nie na Twoją głowę? Nie potrzebujesz elektrowstrząsów, żeby pobudzić swój mózg do aktywnego działania. Tylko żadnych gwałtownych gestów! Usiądź wygodnie, otwórz książkę, dopiero teraz się zacznie. Na początek - rusz głową! Precz z nudnymi wykładami i zakuwaniem bez zrozumienia! Nauka to znacznie więcej niż tylko czytanie suchego tekstu. Twój mózg jest niczym głodny rekin, cały czas prący naprzód w poszukiwaniu nowej, apetycznej przekąski. Jak karmimy Twój wygłodniały umysł? Używamy rysunków, bo obraz wart jest 1024 słów. Stosujemy powtórzenia, by zakodować na stałe dane w Twojej chłonnej głowie. Oddziałujemy na emocje, jesteśmy nieprzewidywalni, zaskakujący i zabawni. Stawiamy przed Tobą wyzwania i zadajemy pytania, które angażują Cię w proces studiowania przedstawianych zagadnień. Cały czas pobudzamy Twój umysł do aktywnego działania, zmuszamy go do posłuszeństwa... a za ciężką pracę nagrodzimy go smakowitym ciasteczkiem w postaci wiedzy - wisienka gratis! Rozkmiń to sam! Cele stosowania wzorców projektowych Założenia, na których opierają się wzorce projektowe Najważniejsze i najczęściej wykorzystywane wzorce projektowe Przechowywanie i prezentacja danych Mechanizm RMI Wzorzec MVC Implementacja wzorców projektowych w aplikacjach Przekonaj się, że nowoczesne metody nauczania mogą zmienić również sposób poznawania nowoczesnych technik programistycznych.