| 
        Vyučující
     | 
    
        
            
                - 
                    Beltrán Prieto Juan Carlos, Ing. Ph.D.
                
 
            
                - 
                    Beltran Prieto Luis Antonio, MSc.
                
 
            
                - 
                    Král Erik, Ing. Ph.D.
                
 
            
         
     | 
    | 
        Obsah předmětu
     | 
    
        - Opakování základní OOP terminologie, UML diagramy tříd a sekvenční diagramy. - Úvod do aplikačních frameworků.  - Řízení přístupu ke zdrojům, práce se soubory, práce se sítí. - Návrhový vzor Dependency injection, princip Inversion of Control (IoC), IoC kontejnery a jejich praktické aplikace. - Serializace a deserializace objektů (binární, XML, JSON). - Nástroje pro práci s relačními databázemi. - Objektově relační mapování (ORM) a související nástroje. - Úvod do vícevrstvé architektury. Pojmy Tiers a Layers. Data Acces Layer, Bussines Logic Layer.  - Imperativní popis uživatelského rozhraní. - Deklarativní popis uživatelského rozhraní. - Aplikační frameworky pro uživatelské rozhraní podporující architektonické vzory uživatelského rozhraní MVC, MVP a MVVM. - Tvorba aplikačního rozhraní s využitím MVVM. - Využití MVVM pro tvorbu multiplatformních aplikací.  - Případová studie. 
         
         
     | 
    | 
        Studijní aktivity a metody výuky
     | 
    
        
        Přednášení, Cvičení na počítači
        
            
                    
                
                    
                    - Domácí příprava na výuku
                        - 20 hodin za semestr
                    
 
                
                    
                    - Příprava na zápočet
                        - 20 hodin za semestr
                    
 
                
                    
                    - Účast na výuce
                        - 42 hodin za semestr
                    
 
                
                    
                    - Semestrální práce
                        - 26 hodin za semestr
                    
 
                
             
        
        
     | 
    
        
        | Výsledky učení | 
|---|
| Odborné znalosti | 
|---|
| Describes the Model-view-viewmodel design pattern for creating a user interface. | 
| Describes the Model-view-viewmodel design pattern for creating a user interface. | 
| Defines the concepts of object serialization and deserialization. | 
| Defines the concepts of object serialization and deserialization. | 
| Explains how to access a relational database in code. | 
| Explains how to access a relational database in code. | 
| Explains the concept of object-relational mapping (ORM). | 
| Explains the concept of object-relational mapping (ORM). | 
| Justifies the benefits of separating the code for creating the user interface from the actual application logic. | 
| Justifies the benefits of separating the code for creating the user interface from the actual application logic. | 
| Popíše návrhový vzor Model-view-viewmodel pro tvorbu uživatelského rozhraní. | 
| Popíše návrhový vzor Model-view-viewmodel pro tvorbu uživatelského rozhraní. | 
| Definuje pojmy serializace a deserializace objektů. | 
| Definuje pojmy serializace a deserializace objektů. | 
| Objasní způsob přístupu k relační databázi v kódu. | 
| Objasní způsob přístupu k relační databázi v kódu. | 
| Vysvětlí pojem objektově relační mapování (ORM). | 
| Vysvětlí pojem objektově relační mapování (ORM). | 
| Zdůvodní výhody oddělení kódu pro tvorbu uživatelského rozhraní od vlastní logiky aplikace.  | 
| Zdůvodní výhody oddělení kódu pro tvorbu uživatelského rozhraní od vlastní logiky aplikace.  | 
| Odborné dovednosti | 
|---|
| Applies the model-view-viewmodel design pattern to user interface design. | 
| Applies the model-view-viewmodel design pattern to user interface design. | 
| Defines the user interface independently of the application logic. | 
| Defines the user interface independently of the application logic. | 
| Serializes and deserializes objects. | 
| Serializes and deserializes objects. | 
| Accesses relational database in code. | 
| Accesses relational database in code. | 
| Uses an object-relational mapping (ORM) library. | 
| Uses an object-relational mapping (ORM) library. | 
| Využije návrhový vzor Model-view-viewmodel pro návrh uživatelského rozhraní. | 
| Využije návrhový vzor Model-view-viewmodel pro návrh uživatelského rozhraní. | 
| Definuje uživatelské rozhraní nezávisle od logiky aplikace. | 
| Definuje uživatelské rozhraní nezávisle od logiky aplikace. | 
| Serializuje a deserializuje objekty. | 
| Serializuje a deserializuje objekty. | 
| Přistupuje v kódu k realační databází. | 
| Přistupuje v kódu k realační databází. | 
| Použije knihovnu pro objektově relační mapování (ORM). | 
| Použije knihovnu pro objektově relační mapování (ORM). | 
| Vyučovací metody | 
|---|
| Odborné znalosti | 
|---|
| Přednášení | 
| Cvičení na počítači | 
| Cvičení na počítači | 
| Přednášení | 
| Hodnotící metody | 
|---|
| Písemná zkouška | 
| Písemná zkouška | 
    
    
    | 
        Doporučená literatura
     | 
    
        
            
                
                - 
                    BLOCH, J. Effective Java. Prentice Hall PTR, 2008. 
                
 
            
                
                - 
                    CWALINA, K. a B. ABRAMS. Framework design guidelines: conventions, idioms, and patterns for reusable .NET libraries. NJ: Addison-Wesley, 2009. ISBN 0321545613.
                
 
            
                
                - 
                    ESPOSITO, D. a A. SALTARELLO. Microsoft.NET: architecting applications for the enterprise. Upper Saddle River: Addison-Wesley, 2008. ISBN 0-321-35668-3.
                
 
            
                
                - 
                    FOWLER, M. Patterns of enterprise application architecture. Boston: Addison-Wesley, 2003. ISBN 978-0-321-12742-6.
                
 
            
         
         
         
     |