Předmět: Programování a algoritmizace

» Seznam fakult » FAI » AUPKS
Název předmětu Programování a algoritmizace
Kód předmětu AUPKS/AE1PA
Organizační forma výuky Přednáška + Cvičení + Seminář
Úroveň předmětu Bakalářský
Rok studia nespecifikován
Semestr Zimní
Počet ECTS kreditů 4
Vyučovací jazyk Angličtina
Statut předmětu nespecifikováno
Způsob výuky Kontaktní
Studijní praxe Nejedná se o pracovní stáž
Doporučené volitelné součásti programu Není
Vyučující
  • Beltran Prieto Luis Antonio, MSc.
  • Vogeltanz Tomáš, Ing. Ph.D.
  • Král Erik, Ing. Ph.D.
  • Vařacha Pavel, Ing. Bc. Ph.D.
  • Skovajsa Jan, Ing.
Obsah předmětu
- Základní paradigmata programování, deklarativní programování, imperativní programování, objektově orientované programování. Popis algoritmu pomocí vývojového diagramu. - Překlad, sestavení a spuštění programu a základy práce s IDE. - Základní prvky programu. Způsob zadávání hodnot, výrazů a příkazů v programu. Reprezentace hodnot v paměti. Základní typy objektů a operací, které s nimi můžeme provádět. Rozsah platnosti objektu. - Větvení programu a cykly. - Pole. Způsob práce s polem hodnot stejných typů, testování rovnosti a přesouvání hodnot pole. Dvojrozměrné a vícerozměrné pole a dynamické pole a asociativní pole z hlediska uživatele. - Funkce, definice a použití. Rekurzivní funkce. - Struktury a třídy. Základy objektově orientovaného programování. - Vztahy mezi objekty, skládání objektů. Asociace, agregace a kompozice. - Správa paměti, automatická (na zásobníku), statický blok, dynamická alokace (na haldě). - Nalezení chyb, ladění programu, sledování průběhu programu. Druhy výjimek v programu a jejich zpracování. - Tvorba dokumentace a testování softwaru. - Základní knihovny jazyka. Nástroje pro vstupně výstupní operace. - Tvorba znovupoužitelných knihoven a použití knihoven třetích stran. - Případová studie.

Studijní aktivity a metody výuky
Přednášení, Monologická (výklad, přednáška, instruktáž), Metody práce s textem (učebnicí, knihou), Cvičení na počítači
  • Domácí příprava na výuku - 1 hodina za semestr
  • Účast na výuce - 2 hodiny za semestr
Předpoklady
Odborné znalosti
Základy algoritmizace.
Základy algoritmizace.
Výsledky učení
Defines what compiling, building and running a program is.
Defines what compiling, building and running a program is.
Describes what a variable, stack, and heap are.
Describes what a variable, stack, and heap are.
Lists the syntax of arithmetic and Boolean expressions, program branching statements, and loops and functions.
Lists the syntax of arithmetic and Boolean expressions, program branching statements, and loops and functions.
Justifies the appropriateness of using different types of variables, both built-in and user-defined, such as array and struct.
Justifies the appropriateness of using different types of variables, both built-in and user-defined, such as array and struct.
Explain the advantages of organizing code using functions and classes.
Explain the advantages of organizing code using functions and classes.
Definuje co je to překlad, sestavení a spuštění programu.
Definuje co je to překlad, sestavení a spuštění programu.
Popíše co je to proměnná, zásobník a halda.
Popíše co je to proměnná, zásobník a halda.
Vypíše syntaxi aritmetických a boleanovských výrazů, příkazů pro větvení programů a cyklů a funkcí.
Vypíše syntaxi aritmetických a boleanovských výrazů, příkazů pro větvení programů a cyklů a funkcí.
Zdůvodní vhodnost použití různých typů proměnných a to jak zabudovaných tak i uživatelsky definovaných jako je pole a struktura.
Zdůvodní vhodnost použití různých typů proměnných a to jak zabudovaných tak i uživatelsky definovaných jako je pole a struktura.
Vysvětlí výhody organizace kódu pomocí funkcí a tříd.
Vysvětlí výhody organizace kódu pomocí funkcí a tříd.
Odborné dovednosti
Analyzes the problem and proposes a solution using a computer program.
Analyzes the problem and proposes a solution using a computer program.
Uses appropriate constructs in terms of source code organization and program efficiency.
Uses appropriate constructs in terms of source code organization and program efficiency.
Creates the source code of a program.
Creates the source code of a program.
Compile, assemble and run the program using an integrated development environment.
Compile, assemble and run the program using an integrated development environment.
Identifies and corrects errors in the program.
Identifies and corrects errors in the program.
Analyzuje problém a navrhne jeho rešení pomocí počítačového programu.
Analyzuje problém a navrhne jeho rešení pomocí počítačového programu.
Použije vhodné konstrukce z hlediska organizace zdrojového kódu a efektivity programu.
Použije vhodné konstrukce z hlediska organizace zdrojového kódu a efektivity programu.
Vytvoří zdrojový kód programu.
Vytvoří zdrojový kód programu.
Přeloží, sestaví a spustí program s pomocí integrovaného vývojového prostředí.
Přeloží, sestaví a spustí program s pomocí integrovaného vývojového prostředí.
Identifikuje a opraví chyby v programu.
Identifikuje a opraví chyby v programu.
Vyučovací metody
Odborné znalosti
Metody práce s textem (učebnicí, knihou)
Metody práce s textem (učebnicí, knihou)
Cvičení na počítači
Cvičení na počítači
Přednášení
Monologická (výklad, přednáška, instruktáž)
Přednášení
Monologická (výklad, přednáška, instruktáž)
Hodnotící metody
Písemná zkouška
Písemná zkouška
Doporučená literatura
  • Hunt, Andrew. Programátor pragmatik : jak se stát lepším programátorem a vytvářet kvalitní software. Vyd. 1. Brno : Computer Press, 2007. ISBN 978-80-251-1660-9.
  • KEOGH, J. DAVIDSON, K. Datové struktury bez předchozích znalostí. Praha : Computer Press, 2006. ISBN 80-251-0689-6.
  • Keogh, James Edward. OOP bez předchozích znalostí : průvodce pro samouky. Vyd. 1. Brno : Computer Press, 2006. ISBN 80-251-0973-9.
  • McConnell, S. Dokonalý kód. Brno: Computer press,, 2006.
  • Pšenčíková, Jana. Algoritmizace. Vyd. 1. Kralice na Hané : Computer Media, 2007. ISBN 978-80-86686-80-9.


Studijní plány, ve kterých se předmět nachází
Fakulta Studijní plán (Verze) Kategorie studijního oboru/specializace Doporučený ročník Doporučený semestr