Přeskočit na hlavní obsah
Přeskočit hlavičku

Programování

V rámci kurzů programování nabízíme 3 základní moduly a jejich kombinace:

  • Objektově orientované programování
  • Databáze (SQL)
  • Tvorba www

Video bylo vytvořeno s využitím AI avatara a synteticky zpracovaného hlasu. Nejedná se o autentický obrazový ani zvukový záznam vystupující osoby. Obsah videa připravilo a schválilo Centrum celoživotního vzdělávání VŠB-TUO.

CENÍK

Název kurzu/modul Objektově orientované programování (OOP) Databáze (SQL) Tvorba www
Programování webových aplikací s využitím AI – komplet (C#, HTML, JS, React, PHP, databáze) 
Programování webových aplikací s využitím AI  II – bez databází (C#, HTML, JS, React, PHP)   

Programování webových aplikací v C# s využitím AI – bez www (C#, databáze)  

 

Programování webových aplikací v C# s využitím AI II – bez www a databází (C#) 

   
Programování webových aplikací s využitím AI – www (HTML, JS, React, PHP) )*    
Programování webových aplikací s využitím AI  II – www + databáze   
Kurz jazyka SQL*    

* Tyto kurzy nejsou samostatně nabízeny jako rekvalifikační.

Podrobný obsah jednotlivých modulů

Databáze (SQL)
Předmět Počet vyučovacích hodin
Základy databází pod Oraclem 48
Programování Oracle PL/SQL 8
Tvorba www
Předmět Počet vyučovacích hodin
HTML5 + CSS3 a základy webdesignu 40
Bootstrap - framework pro tvorbu responzivních www stránek 24
JavaScript (skriptovací jazyk) + React (framework pod Javascriptem) 24
Tvorba webových stránek - PHP + MySQL 32

Celkový počet hodin v ceníku je navýšen o cvičení a zkoušky.

Objektově orientované programování v jazyce C#

Třídy a objekty

  • Třídy a objekty, konstruktory, atributy, vlastnosti a metody
  • Přístupové modifikátory (public, private, protected, internal)
  • Statické členy tříd
  • Využití AI při troubleshootingu

Dědičnost a polymorfismus, přepisování a překrývání metod

Rozhraní (Interfaces)

Zpracování výjimek

  • Princip práce s výjimkami (exceptions)
  • Konstrukce try, catch, finally, throw
  • Vytváření a používání vlastních výjimek

Práce se soubory v C#

  • Otevírání, čtení a zápis textových souborů, ošetření chyb při práci se soubory
  • Uzavření streamů a správná správa prostředků (using)

        C# pro pokročilé

        • Genericita a generické kolekce – hierarchie rozhraní, coding against interfaces
        • Využití AI při kódování
        • WPF – základní ovládací prvky, události, základy databindingu
        • Delegáty a LINQ, Func a Action, základní LINQ metody
        • Asynchronní programování, datový typ Task<T>, asynchronní práce se síťovými požadavky a soubory,
        • Konzumace API, Práce s JSON

              ASP.NET 

                ASP.NET Web API

                • Struktura Web API projektu
                • Konfigurace v launchSettings.json
                • Dependency Injection
                • CRUD operace nad MSSQL databází s ASP.NET – tvorba jednoduchého WebAPI
                • Vazby mezi tabulkami – 1:1, 1:N, M:N
                • Swagger

                ASP.NET Core MVC

                • Vytvoření aplikace, struktura projektu
                • Views
                • Import dat pomocí XML
                • Jednoduchá filtrace pomocí query parametrů
                • Využití AI při kódování a deploymentu aplikace
                • Validace dat, validační atributy
                • NET Core Identity: uživatelé, politiky hesel a jejich aplikace, přihlašování, cookies
                • Role, přihlašování závislé na roli (Role-based Authentication), autorizace

                  Git

                  • Instalace Gitu
                  • GitHub, vytvoření tokenu
                  • Provázání lokální a remote repository, příkazy commit a push, klonování repozitáře
                  • Branching, merge a konflikty (automatické a s ručním řešením konfliktu)

                  Selenium a Reqnroll - testovací techniky

                  • Dělení testů podle různých kritérií, manuální a automatizované testování
                  • Unit testy, inicializační a úklidové metody (framework MSTest)
                  • Selenium WebDriver - testování formulářů na webu
                  • Syntaxe jazyka Gherkin a framework Reqnroll
                  • Psaní testovacích scénářů s podporou AI

                    Docker

                    • Úvod do Dockeru
                    • Tvorba a správa image

                    MS Azure 

                    • Resource group
                    • AppService
                    • SQL Server a SQL Database
                    • Migrace databáze do Azure
                    • Deployment ASP.NET Core aplikace na Azure
                    • Budget, nastavení upozornění na jeho překročení
                    • Deployment Spring aplikace na Azure 
                    • Využití AI při práci s CLI

                      DATABÁZE

                      Základy databází pod Oraclem    

                      • Instalace a nastavení Oracle
                      • Vytvoření uživatele a práce s ním
                      • Připojení k databázi
                      • Datové typy
                      • Klíče a omezení (Constraints)
                        • Primary key
                        • Foreign key – relace mezi tabulkami
                        • Unique key, NOT NULL, CHECK
                      • Typy tabulek
                      • Automatické číslování – sekvence / identity
                      • Data Definition Language (DDL)
                        • Vytváření a mazání tabulek
                        • Vyčištění tabulky od dat
                        • Změna definice / struktury tabulky
                      • Data Manipulation Language (DML)
                        • Vložení a mazání dat
                        • Úprava dat
                      • Transakce
                      • Dotazy
                        • Podmínky a práce s NULL
                        • Filtrování
                        • Řazení
                        • Poddotazy a operátory IN, EXISTS
                        • Common Table Expression
                        • JOIN – spojování dat z více tabulek
                        • Agregační funkce
                        • Množinové operátory
                        • Regulární výrazy
                        • Tabulka DUAL
                      • Views
                      • Indexy
                      • Návrh databázového schématu

                      Programování Oracle PL/SQL       

                      PL/SQL

                      • PL/SQL bloky
                      • Procedury a funkce
                      • Podmínky a smyčky
                      • Packages
                      • Cursor
                      • Trigger
                      • Exception

                      Využití AI při práci s databázemi

                      • Generování a ladění SQL dotazů
                      • Vysvětlování chybových hlášek
                      • Generování testovacích dat
                      • Refaktoring PL/SQL kódu
                      • Pomoc s návrhem schématu

                      WWW

                      HTML5 + CSS3 a základy webdesignu             

                      Základy

                      • Struktura dokumentu: Head (hlavička) a Body (tělo dokumentu), HTML elementy v hlavičce

                      Typy a modifikace HTML elementů

                      • Blokové a řádkové elementy
                      • Modifikace HTML elementů
                      • Práce s textem v HTML
                      • Seznamy – odrážkové, číslované, seznamy definic
                      • Tabulky a odkazy – relativní, absolutní a kotvy
                      • Formuláře
                      • Obrázky – vkládání a typy
                      • Úvod do CSS – základy zápisu a umístění CSS, typy selektorů, priorita pravidel a dědičnost
                      • Barvy a jednotky v CSS
                      • Box model
                      • Stylování textu
                      • Display a viditelnost elementů
                      • CSS specifika vybraných elementů – Stylování tabulek a seznamů
                      • CSS layout
                      • CSS proměnné a funkce
                      • Webhosting a deployment – FTP přístup, hosting klasických www stránek

                      Bootstrap 

                      • Implementace Bootstrapu
                      • Přizpůsobení Bootstrapu
                      • Layout Bootstrapu - Breakpoints, Containers, Grid, Columns, Utilities
                      • Typografie Bootstrapu - Utilities, Background, Colors, Position, Sizing, Spacing
                      • Formuláře a komponenty Bootstrapu - Accordion, Buttons, Card, Carousel, Modal,

                      JavaScript (skriptovací jazyk) + React (framework pod Javascriptem)    

                      Úvod a základní koncepty

                      • Příprava souborů a integrace JavaScriptu do HTML projektu
                      • Primitivní typy, stringy a jejich metody (včetně template literals)
                      • Proměnné a jmenné konvence

                      Rozhodovací struktury, podmínky, logické operátory

                      Datové struktury

                      • Pole, referenční typy a test rovnosti u polí
                      • Konstanty a pole, vícerozměrná pole
                      • Objekty v JavaScriptu

                      Smyčky (loops)

                      • Smyčka WHILE, FOR-OF, vnořené smyčky, iterace nad objekty

                      Funkce

                      • Anonymní funkce (Function Expression)
                      • Funkce vyšších řádů (Higher Order Functions)
                      • Metody a klíčové slovo this
                      • Arrow functions a jejich zjednodušování

                      Pokročilé koncepty

                      • Callbacks a metody pole
                      • asynchronní operace, setTimeout a setInterval
                      • Arrow funkce

                      Moderní JavaScript (ES6+)

                      • Default params, spread, rest
                      • Destructuring (dekonstruktor)
                      • Dynamické psaní kódu

                      React                                                                                                         

                      • Založení projektu pomocí šablony
                      • Strukturování projektu
                      • JSX — syntax a základní pravidla
                      • Komponenty
                      • Základní Hooky
                      • vysvětlení pojmu
                      • useState, useEffect, useRef
                      • useMemo, useCallback
                      • Podmíněné renderování a renderování seznamů
                      • Předávání dat pomocí Props
                      • Události
                      • Práce s poli a objekty
                      • Volání API a práce s daty
                      • Sdílení stavu — Context API
                      • Formuláře
                      • Použití Reactu s jinými technologiemi
                      • Využití AI při práci s Reactem
                      • Generování komponent a boilerplate kódu
                      • Ladění chyb a vysvětlování chybových hlášek
                      • Návrh struktury projektu a komponent
                      • Refaktoring a optimalizace existujícího kódu
                      • Vysvětlování cizího kódu (legacy, open source)
                      • Pomoc s výběrem knihoven a přístupů
                      • Deployment React aplikace

                      Tvorba webových stránek – PHP + MySQL    

                      Základy PHP

                      • Komentáře
                      • Proměnné, pole (včetně asociativních polí) a řetězce
                      • Operátory
                      • Cyklus s podmínkou na začátku a na konci
                      • Přerušení cyklu
                      • Větvení programu: IF, switch … case

                      Funkce a zpracování dat

                      • Funkce (podprogramy)
                      • Zpracování dat z formulářů
                      • Formulářové prvky
                      • Ošetření dat z WWW formulářů a bezpečnost

                      Uchování stavu

                      • Uchování hodnoty proměnné pro jiný PHP skript
                      • Cookies a Sessions

                      Objektově orientované programování v PHP

                      • Deklarace třídy a vytvoření instance
                      • Metody a atributy
                      • Konstruktor a destruktor
                      • Prostory jmen (namespaces)
                      • Dědičnost a rozhraní
                      • Statické metody a atributy, konstanta
                      • Výjimky a speciální metody

                      MySQL

                      • Způsoby administrace MySQL: grafické aplikace (GUI), WWW rozhraní, konzolová aplikace
                      • Základní příkazy MySQL

                      PHP & MySQL

                      • PDO (PHP Data Object)
                      • Plnění databáze a čtení vybraných dat
                      • Přístupová práva v MySQL: uživatelé a práva
                      • MVC architektura
                      • API v PHP – CRUD operace v PHP nad mySQL