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.

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ů

Objektově orientované programování (OOP)

Databáze (SQL)

Tvorba www

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 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

              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

              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