Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi
Cílem předmětu je poskytnout studentům základy procedurálního programování a podporu pro další předměty zaměřené detailně na algoritmy a programovací jazyky či objektově orientované programování. Předmět je určen ke vyrovnání vstupních znalostí v oblasti procedurálního programování a je zaměřen na jazyky C/C++ a použití vývojových nástrojů. Po předmětu Programování 1 budou studenti schopni: pracovat a využívat integrované vývojové prostředí pro jazyky C/C++, vytvářet dokumentaci nejen ke zdrojovým kódům, pracovat v univerzitní školní síti, a budou schopni vytvářet dokumentaci k vyvinutému programu.
Vyučovací metody
Přednášky
Cvičení (v učebně)
Projekt
Anotace
Předmět Programování 1 svou náplní pokrývá oblasti základních znalostí studentů bakalářského studia, a to ve vztahu především k programátorsky cíleným předmětům. Studenti během tohoto předmětu získají potřebné znalosti pro efektivní vyvíjení aplikací ve vývojovém prostředí, vytváření a zpracování související elektronické dokumentace a celou řadu přehledových znalostí z oboru informačních technologií. Domácí stránka předmětu: [[http://www2.cs.vsb.cz/saloun-zp/]] obsahuje odkaz na všechny studijní materiály a přehled požadavků. Důraz a kontrola v průběhu semestru jsou kladeny na samostatnou průběžnou práci, v závěru semestru se odevzdává semestrální projekt s dokumentací a kontrolními vstupy a výstupy.
Povinná literatura:
* Šaloun, P. Programovací jazyk C++ pro zelenáče. Neokortex s.r.o., 2005, 252 stran, ISBN 80-86330-18-4
* Šaloun, P. Programovací jazyk C pro zelenáče, Neocortex, 1999, 208 stran, ISBN 80–86330–02-X
Přednášky a prezentace předmětu Programování 1 Přednášky a další materiály předmětu Algoritmy I. Odkazy na aktuální a relevantní zdroje prezentované na WWW stránkách předmětu.
Doporučená literatura:
* Rajský, P. Kurs jazyka C. 2002, VŠB-TU Ostrava. webový dokument pro distanční výuku, dostupné ze stránek předmětu.
* Janků, M. Kurs jazyka C++. 2002, VŠB-TU Ostrava. webový dokument pro distanční výuku, dostupné ze stránek předmětu.
Způsob průběžné kontroly znalostí během semestru
Odevzdání všech 3 domácích úloh a nejméně 50 % průběžných úloh, semestrálního projektu a absolvování závěrečné písemky. Materiály budete odevzdávat výhradně prostřednictvím webového rozhraní odkazovaného z domácí stránky předmětu.
E-learning
Další požadavky na studenta
Schopnost vytvořit HTML dokument se základnimi tagy/značkami.
Osnova předmětu
Náplň přednášek
* 1. Přehled služeb, informačních systémů, dostupnosti vývojových nástrojů, MSDN AA a prostředí VŠB-TUO pro studenty FEI.
* 2. Operátory, výrazy, základní konstrukce v programu a jednoduchý vstup a výstup.
* 3. Řízení chodu programu a textový vstup a výstup.
* 4. Funkce a jejich deklarace a definice.
* 5. Typické knihovní funkce, jejich použití a umístění.
* 6. Práce s datovými proudy a soubory.
* 7. Základy práce s řetězci, ukazateli a poli.
* 9. Dynamická alokace paměti.
* 10. Dokumentace programu, základy značkovacího jazyka a generování výstupu v něm.
* 11. Struktury a uživatelské typy dat.
* 12. Doporučení pro zápis zdrojového kódu, komentování, formátování, zvyklosti pro tvorbu identifikátorů i nástroje pro vývoj softweru.
* 13. Rezerva - úvod do systému Unix.
Náplň počítačových cvičení Cvičení svou náplní odpovídají přednáškám, průběžným výstupem cvičení je vypracování průběžných úloh a konzultace k nim. Procvičovány budou průběžně konstrukce programovacího jazyka C a C++, po úvodní části semestru bude procvičována tvorba dokumentace a její generování. Postupně bude rozvíjena schopnost ladění programu s využitím možností vývojového prostředí.
Projekt: Zadání projektů budou směřována k implementaci základních dovedností a schopností programování s výstupem do souboru ve značkovacím jazyce. Důraz a kontrola v průběhu semestru jsou kladeny na samostatnou průběžnou práci, v závěru semestru se odevzdává semestrální projekt zejména s důrazem na dokumentaci a kontrolní vstupy a výstupy.