| 
        Vyučující
     | 
    
        
            
                - 
                    Kratochvíl Jiří, RNDr. Ph.D.
                
 
            
         
     | 
    | 
        Obsah předmětu
     | 
    
        Obsah přednášek:  1. Základní pojmy a seznámení s vývojovým prostředím (IDE) 2. Struktura programu, datové typy a proměnné 3. Výrazy, operátory, příkazy 4. Třídy, objekty, dědičnost 5. Callbacky, rozhraní 6. Soubory, vstupy a výstupy 7. Práce s databází 8. Vícevláknové programování 9. Návrh uživatelského rozhraní (UX, GUI) 10. Implementace uživatelského rozhraní 11. Softwarová architektura 12. Knihovny a verzovací systémy 13. Ladění programů a testování  Obsah cvičení/semináře: Praktické příklady na procvičení látky probírané na přednáškách. Zápočet bude udělen za účast na cvičení a odevzdání semestrální práce. 
         
         
     | 
    | 
        Studijní aktivity a metody výuky
     | 
    
        
        Monologická (výklad, přednáška, instruktáž), Praktická výuka
        
            
                    
                
                    
                    - Příprava na zkoušku
                        - 56 hodin za semestr
                    
 
                
                    
                    - Účast na výuce
                        - 84 hodin za semestr
                    
 
                
                    
                    - Semestrální práce
                        - 56 hodin za semestr
                    
 
                
             
        
        
     | 
    
    
        
        
            | 
                Výstupy z učení
             | 
        
        
            
                
                Cílem kurzu je studenty seznámit názorným se základy programování a naučit je vyvíjet jednoduché desktopové multiplatformní aplikace. Základním programovacím jazykem v tomto kurzu je objektově orientovaný programovací jazyk s jednoduchou syntaxí JAVA. Díky čemuž je posluchač schopen jednoduše a rychle pochopit širší souvislosti bez předchozích znalostí. Po zvládnutí základů programování se student naučí definovat funkční požadavky na aplikaci, na základě kterých je navrhováno uživatelské rozhraní (user interface - UI) s důrazem na optimalizaci uživatelské přívětivosti (user experience - UX). Dále se student naučí navrhnout jednoduchou objektově orientovanou softwarovou architekturu, na základě které bude schopen naimplementovat vlastní aplikaci za použití vývojových prostředí (integrated development environment - IDE) a externích knihoven, díky němuž bude vývoj funkční aplikace co nejvíce usnadněn.
                 
                Student se naučí navrhnout a naprogramovat desktopovou aplikaci včetně uživatelského rozhraní.
                 
                
             | 
        
        
            | 
                Předpoklady
             | 
        
        
            
                
                
                Základní znalost některého z programovacích jazyků, schopnost algoritmizace problémů.
                
                
                    
                        
                    
                    
                
                
  
             | 
        
        
            | 
                Hodnoticí metody a kritéria
             | 
        
        
            
                
                    
                        Seminární práce, Průběžné hodnocení
                        
                        
                         
                        
                    
                    
                
                 Účast na cvičení 80 %, odevzdání semestrální práce. Složení zkoušky sestávající se z praktické části a z části teoretické.
                 
             | 
        
    
    | 
        Doporučená literatura
     | 
    
        
            
                
                - 
                    A. B. Downey: Think Java: How to Think Like a Computer Scientist, O'Reilly Media, 2016. 
                
 
            
                
                - 
                    B. A. Burd: Beginning Programming with Java For Dummies, 4th Edition, Wiley, 2014. 
                
 
            
                
                - 
                    D. J. Eck: Introduction to Programming Using JAVA, 7th edition, 2014 (e-book). 
                
 
            
                
                - 
                    R. Pecinovský: Java 7: učebnice objektové architektury pro začátečníky, Grada, 2012. 
                
 
            
         
         
         
     |