Warning
This page is located in archive. Go to the latest version of this course pages. Go the latest version of this page.

Přednášky

1. Klíčové koncepty modelování systémů I [Kadleček] 2022 NEW

  • Programovací paradigmata
  • Deklarativní vs imperativní reprezentace
  • Objektový vs funkcionální vs procedurální vs logický přístup
  • Práce s komplexitou
  • Dekompozice
  • Hierarchie
  • Abstrakce používané v softwarovém vývoji(jmenné, datové, funkcionální, objektové)

2. Objektově orientovaný přístup I [Kadleček] 2022 NEW

  • Objekty, třídy a hierarchie tříd
  • Zapouzdření
  • Interface a abstraktní třídy
  • Dědičnost
  • Message passing
  • Class diagramy a příklady systémů modelovaných pomocí OOP
  • Volba správného přístupu
  • Rozdíl mezi asociací, agregací a kompozicí
  • Dědičnost versus kompozice
  • Polymorfismus
  • Overloading versus overriding

*Příloha k 2 a 3 (jen pro zajímavost)*

3. Funkcionální přístup [Kadleček] 2022 NEW

  • Pure funkce
  • Funkce první třídy a funkce vyššího řádu
  • Lambda expressions
  • Closures
  • Curying
  • Representation transparency
  • Lazy evaluation

4. Klíčové koncepty modelování systémů II [Kadleček] 2022 NEW

  • Abstraktní datové typy, mutabilita, imutabilita, idempotentnost
  • Rekurze, datové typy v rekurzi
  • Primitiva, vrstvy, principy kombinace
  • Metalingvistická abstrakce

5. Vytváření objektů [Kadleček] 2022 NEW

  • Factory a Abstract Factory
  • Builder
  • Prototype
  • Singleton
  • Dependency injection
  • Příklady

6. Modelování chování aplikace [Kadleček] 2022 NEW

  • Iterator
  • Chain of responsibility
  • Strategy
  • Visitor
  • Observer
  • Template method
  • State
  • Memento
  • Interpreter
  • Příklady

7. Modelování struktury aplikace [Kadleček] 2022 NEW

  • Adapter
  • Proxy
  • Bridge
  • Composite
  • Facade
  • Decorator
  • Flyweight
  • Příklady

8. Datové struktury a patterny [Kadleček] 2022 NEW

  • Plně persistentní, částečně persistentní datové a retroaktivní datové struktury
  • Retroaktivní datové struktury
  • Lazy Loading, Object pool, Cache

9. Funkcionální přístup II [Kadleček] 2022 NEW

  • Supplier a Consumer
  • Akumulátor
  • Monáda a functor
  • Future/Promisy
  • Řešení chyb a NPE

10. Map, filter, reduce pattern v Java [Kadleček] 2022 NEW

  • Abstrakce Control Flow
  • Map
  • Filter
  • Reduce
  • Collect
  • Paralelizace map reduce v Java a performance pohled

11a. Generické programování [Šebek] 2022 NEW

  • Wildcards
  • Horni, dolní mez
  • Generické typy
  • Parametrizované objekty
  • Generika a subtypy

11b. Specifikace, Návrhy specifikací, Web API, Apiary, Swagger, GraphQL [Šebek] 2022 NEW

  • Proč specifikace
  • Behaviorální ekvivalence
  • Struktura a modelování specifikace
  • Testování specifikací
  • Specifikace pro mutující metody, Null Reference, pre a post conditions
  • Návrh systému výjimek
  • Vyjímky pro chyby a speciální výsledky, zneužívání výjimek
  • Deterministické versus nedeterministické specifikace
  • Deklarativní versus operativní specifikace
  • Těsné versus volné specifikace
  • Návrh dobrých specifikací
  • Webové API, REST, GraphQL
  • Swagger, RestAPI

12. Patterny pro tvorbu Microservices [Kadleček] 2022 NEW

  • Microservisy a microservisní patterny
  • Materialized view
  • Event sourcing
  • CQRS
  • Eventual consistency
  • Saga

13. Domény, modely, eventy [Kadleček] 2022 NEW

  • Domain Driven Design
  • Model Drive Architecture
  • Eventy a Event Driven Architecture

Old 1. STARÉ - NEUČIT NA ZKOUŠKU. Patterny pro tvorbu UI [Kadleček]

  • Základy UI - HTML, DOM, JavaScript, CSS
  • Single Page Application
  • Model View Controller, Model View Presenter, Model View View Model
  • Patterny Future/Promise a monáda
  • Moderní webové frameworky, Angular, React/Redux intro

Old 2. STARÉ - NEUČIT NA ZKOUŠKU. Map, filter, reduce pattern v NoSQL světě [Kadleček]

  • Map reduce framework
  • Sumarizační patterny
  • Filtrační patterny
  • Organizační patterny
  • Join patterny
  • Meta patterny
courses/b6b36omo/prednasky.txt · Last modified: 2023/01/31 17:32 by kadlecd