Ta lekcja jest w bazie eduweb

Zaloguj się kontem z dostępem albo wykup dostęp do bazy, żeby obejrzeć wideo.

Lekcja 36/ 61Singleton

0:00 / 0:00
Full-stack i ProgramowanieJak budować stabilne i niezawodne oprogramowanie

Podstawy Architektury Oprogramowania: Singleton

5 godz. 8 min wideo61 lekcji11 modułów

Czego się nauczysz

  • Definicja architektury oprogramowania i zakres obowiązków architekta
  • Zapoznanie z najczęściej występującymi antywzorcami architektonicznymi i dlaczego należy ich unikać
  • Zarys czystej architektury i architektury komponentów
  • Zasady SOLID
  • Zapoznanie z wszystkimi najpopularniejszymi wzorcami projektowymi z praktycznymi przykładami

Podstawy Architektury Oprogramowania - Jak budować stabilne i niezawodne oprogramowanie

Witaj w kursie "Podstawy Architektury Oprogramowania"! Ten kurs jest intensywnym przewodnikiem po kluczowych zagadnieniach architektonicznych, które są fundamentem skutecznych i efektywnych systemów.

Dowiesz się o antywzorcach architektonicznych, których należy unikać, aby tworzyć stabilne i łatwe do utrzymania aplikacje. Poznasz zasady SOLID, stanowiące kluczowy zbiór zasad projektowania oprogramowania, a także dowiesz się, jak stosować wzorce projektowe, aby rozwiązywać powszechne problemy w projektach.

Odkryesj także znaczenie czystej architektury i architektury komponentów, które pozwalają tworzyć systemy o modularnej budowie, łatwe w utrzymaniu i rozwijaniu.

Gotowy na pogłębienie swojej wiedzy na temat architektury oprogramowania? To zacznijmy!

Definicja architektury oprogramowania

Zaczniemy od podstaw. W pierwszej kolejności przyjrzymy się czym jest architektura oprogramowania i jaki ma cel. Rola architekta także jest kluczowa, poświęcimy czas na jej zrozumienie i zdefiniowanie odpowiedzialności. Architekci posługują się konkretnymi narzędziami. Omówimy je z naciskiem na ADR.

Antywzorce Architektoniczne

Z reguły dobre praktyki i wzorce są odpowiedzią na antywzorce stwarzające problemy w codziennej pracy nad systemami i aplikacjami. Omówimy najczęstsze antywzorce architektoniczne. Poznasz także wskazówki, jak ich unikać i jak sobie radzić, kiedy musimy pracować z kodem przesiąkniętym antywzorcami.

Czysta Architektura i Architektura Komponentów

Czysta Architektura i Architektura Komponentów, to dwa absolutnie podstawowe podejścia architektoniczne w budowaniu oprogramowania. Poznasz ich założenia i zrozumiesz koncepty. Zauważysz też, że często stosujesz (może nawet nieświadomie) elementy z tych dwu podejść. Ten kurs pomoże Ci je usystematyzować.

Zasady SOLID

Zasady SOLID są absolutną podstawą dla każdego programisty. Pięć reguł, których stosowanie sprawia, że systemy są łatwe w utrzymaniu i testowaniu. Poświęć więcej czasu na zapoznanie się z tą częścią kursu. Przygotowałem dla Ciebie praktyczne przykłady z produkcyjnych projektów, które pomogą Ci zrozumieć i przeanalizować, jak wielką korzyść przynosi stosowanie zasad SOLID w codziennej pracy.

Wzorce Projektowe

Wzorce projektowe. Podobno na każdej rozmowie rekrutacyjnej pada pytanie o wzorce projektowe. Nie mogło ich zabraknąć w tym kursie. Biegłość w stosowaniu wzorców projektowych to absolutnie fundamentalna umiejętność każdego szanującego się architekta oprogramowania. Poznasz wszystkie najważniejsze wzorce a ich zastosowanie zobaczysz na praktycznych przykładach.

Dla kogo jest ten kurs?

Ten kurs jest dedykowany wszystkim, którzy są zainteresowani pogłębianiem swojej wiedzy na temat architektury oprogramowania. Bez względu na to, czy jesteś doświadczonym programistą, osobą z dziedziny biznesu, aspirującym architektem czy też doświadczonym architektem oprogramowania, ten kurs jest dla Ciebie.

Kurs Podstawy Architektury Oprogramowania

11 rozdziałów61 lekcji5h 8min

Wprowadzenie do Architektury Oprogramowania

1h 10min
  • Wstęp do Kursu4min(zablokowana)
  • Wprowadzenie do Architektury Oprogramowania1min(zablokowana)
  • Co to jest architektura oprogramowania7min(zablokowana)
  • Kłamstwa, którym ulegają programiści6min(zablokowana)
  • Rola Software Architekta14min(zablokowana)
  • Style i wzorce architektoniczne12min(zablokowana)
  • Jak wybrać dobrą architekturę dla swojego systemu19min(zablokowana)
  • ADR6min(zablokowana)

Antywzorce architektoniczne

23min
  • Antywzorce architektoniczne - intro1min(zablokowana)
  • Identyfikacja błędów architektonicznych6min(zablokowana)
  • Najpopularniejsze antywzorce architektoniczne7min(zablokowana)
  • Refaktoryzacja a architektura9min(zablokowana)

Zasady SOLID

45min
  • Wprowadzenie do zasad SOLID5min(zablokowana)
  • SRP - Single Responsibility Principle7min(zablokowana)
  • OCP - Open Closed Principle9min(zablokowana)
  • LSP - Liskov Substitution Principle8min(zablokowana)
  • ISP - Interface Segregation Principle8min(zablokowana)
  • DIP - Dependency Inversion Principle7min(zablokowana)

Czysta architektura

20min
  • Czysta architektura - intro2min(zablokowana)
  • Ogólny zarys czystej architektury4min(zablokowana)
  • Warstwy i komponenty w czystej architekturze7min(zablokowana)
  • Sterowanie zależnościami i przepływem danych4min(zablokowana)
  • Praktyczna implementacja czystej architektury4min(zablokowana)

Architektura komponentów

24min
  • Architektura komponentów - intro1min(zablokowana)
  • Wprowadzenie do architektury komponentów3min(zablokowana)
  • Zalety i wyzwania związane z architekturą komponentów6min(zablokowana)
  • Projektowanie komponentów4min(zablokowana)
  • Kompozycja i komunikacja między komponentami10min(zablokowana)

Praca z bibliotekami

19min
  • Praca z bibliotekami - intro1min(zablokowana)
  • Wybór odpowiedniej biblioteki6min(zablokowana)
  • Wpływ bibliotek na architekturę systemu4min(zablokowana)
  • Jak pracować z bibliotekami8min(zablokowana)

Wzorce projektowe

5min
  • Wzorce projektowe - intro2min(zablokowana)
  • Skąd się wzięły wzorce projektowe3min(zablokowana)

Wzorce wytwórcze - Creational patterns

23min
  • Wzorce wytwórcze3min(zablokowana)
  • Singleton4min(zablokowana)
  • Factory Method4min(zablokowana)
  • Abstract Factory4min(zablokowana)
  • Builder5min(zablokowana)
  • Prototype3min(zablokowana)

Wzorce strukturalne - Structural patterns

28min
  • Wzorce strukturalne2min(zablokowana)
  • Adapter3min(zablokowana)
  • Bridge5min(zablokowana)
  • Composite2min(zablokowana)
  • Decorator4min(zablokowana)
  • Facade4min(zablokowana)
  • Flyweight4min(zablokowana)
  • Proxy3min(zablokowana)

Wzorce behawioralne - Behavioral patterns

47min
  • Wzorce behawioralne2min(zablokowana)
  • Chain of Responsibility6min(zablokowana)
  • Command Interpreter5min(zablokowana)
  • Iterator4min(zablokowana)
  • Mediator5min(zablokowana)
  • Memento5min(zablokowana)
  • Observer3min(zablokowana)
  • State4min(zablokowana)
  • Strategy3min(zablokowana)
  • Template Method4min(zablokowana)
  • Visitor4min(zablokowana)

Podsumowanie kursu

5min
  • Podsumowanie2min(zablokowana)
  • Co dalej2min(zablokowana)

Ten kurs jest w bazie eduweb

Dostęp do wszystkich kursów z bazy eduweb za 199 zł/mies.

Wykup dostęp do bazy

Autor kursu

Średnia ocen autora: 4,2

Bio

Czołem! Tu Rafał! Uproszczę temat i powiem Ci, że jestem programistą. Chociaż sam bym się bardziej określił jako twórcę. Przeszedłem dość zawiłe ścieżki kariery i zasmakowałem wielu środowisk i metodologii pracy: od korporacji, przez startupy, firmy produktowe, prowadzenie własnego software house'u, prowadzenie szkoleń i tworzenie kontentu. Obecnie jestem zaangażowany w kilka projektów, nie tylko z zakresu IT. Większość moich zadań polega na wytwarzaniu. Wytwarzam kod, piszę teksty, przygotowuję wystąpienia na konferencje, materiały edukacyjne, ebooki. Nie było by to możliwe, gdyby nie armia aplikacji i narzędzi, które składają się na mój system organizacji wiedzy. W pewnym momencie moją obsesją stało się skuteczne notowanie, a więc takie prowadzenie notatek, aby były szybko dostępne i pozwalały w kilka chwil wytworzyć treści dające wartość. Zbudowanie takiego systemu zajęło mi masę czasu. Dziś ten system przekazuję też Tobie, aby wynieść Cię na kolejny poziom produktywności i kreatywności.

W sieci znajdziesz mnie na moim blogu: https://grubykodzi.pl. Na Instagramie jako @rafalpiekara.