Přejít k hlavnímu obsahu Mobilní verze Mapa webu
Teleinformatika

BPC1T: Počítače a programování 1

Obrázek vystihující předmět
Garant: doc. Ing. Ivo Lattenberg, Ph.D.
Zkratka: BPC1T
Rozsah: 26P – 26C
Zařazení: bakalářské studium
Kredity: 5
Povinnost: povinný
Typ studia: prezenční

Stručný popis

Seznámit studenty se základy počítačových sítí, s architekturou univerzitní a fakultní sítě včetně služeb a s operačními systémy DOS, Windows a Unix, jejich službami a souborovými systémy. Seznámit studenty se základy programování a algoritmizace s využitím jazyka ANSI C a vývojového nástroje Visual Studio.

Popis předmětu

Absolvent předmětu je schopen:

  • využívat Informační systém VUT a výukový systém Moodle
  • konfigurovat klienty elektronické pošty,
  • připojit zařízení k Wi-Fi síti VUT,
  • ovládat vývojové prostředí Microsoft Visual Studio,
  • naprogramovat základní úlohy v jazyce C dle standardu ANSI do úrovně sestavení a aplikace funkcí,
  • ladit program v jazyce C a hledat chyby,
  • navrhnout strukturu programu.

Obsah předmětu (anotace):

V předmětu se studenti seznámí s řešením počítačových sítí a řešením a možnostmi univerzitní a fakultní sítě. Součástí výuky v předmětu je seznámení funkcí operačních systémů, jejich službami a souborovými systémy. Předmět je dále zaměřen na získání praktických dovedností algoritmizace úloh a jejich programování v jazyce C dle standardu ANSI do úrovně sestavování vlastních funkcí a jejich využívání.

Sylabus

  1. Tři nezávislé systémy na VUT/FEKT a jim odpovídající uživatelské účty:  Informační systém VUT, UNIX, Novell. Pravidla počítačové sítě VUT. Na koho se obrátit v případě problémů, www stránka s návody a informacemi o síti FEKT. Seznámení s informačním systémem VUT, přístup k elektronickým textům, zápis na zkoušku, zasílání VUT zpráv. Výukový systém Moodle, odevzdávání projektů elektronickou cestou. Systém pro přenos velkých souborů Gigadisk. 
  2. Fakultní UNIX server: přístup pomocí ssh klienta (program PuTTY), změna hesla, přenos souborů pomocí scp resp. sftp (program WinSCP). Elektronická pošta: přístup přes WWW rozhraní Horde, Konfigurace klientů elektronické pošty, protokoly: imap, pop3, smtp. Jaké typy souborů příloh jsou filtrovány (odstraňovány), maximální velikost příloh. Možnost přesměrování elektronické pošty, problémy a povinnosti studenta s tím spojené. Wifi síť  VUT, síť eduroam, připojování zařízení k pevné síti.
  3. Vlastnosti algoritmů, notace a zápis algoritmů. Seznámení s vývojovým prostředím MS Visual Studio 2012. Vývoj programů v jazyce C ve Visual Studiu. Editace programů. Překlad programů. Nápověda. Látka zde probraná slouží jako rámec pro další výklad, který má umožnit posluchačům od počátku psát jednoduché programy. Vše bude probráno později podrobně.
  4. Techniky řešení problémů. Návrh a implementace algoritmů. Podprogram, rozdělení programu do několika souborů. Krokování programu, nastavení breakpointů, zobrazení hodnot proměnných. Grafická forma zápisu algoritmu.
  5. Principy vyšších programovacích jazyků. Symboly, oddělovače, konstanty, identifikátory, proměnné, reprezentace čísel, návěští, řetězce. Zápis číselných, znakových a řetězcových konstant. Platnost identifikátorů v rámci programu a jejich priority.
  6. Koncepce dat. Jednoduché datové typy v jazyce C: boolean, byte, short, integer, long, float, double,… . Jednorozměrná a vícerozměrná pole proměnných. Výrazy a příkazy.
  7. Řídící struktury. Bloková struktura programu, rozsah platnosti identifikátorů.
  8. Funkce, parametry funkcí v jazyce C. Předávání hodnot odkazem, předávání hodnotou.
  9. Textové soubory, standardní vstup/výstup. Interakce programu s uživatelem.
  10. Strukturované datové typy. Jejich převod na pole bytů a zpět (vhodné pro přenos po síti).
  11. Numerické metody v programování. Rekurze v programování. Řadicí algoritmy.
  12. Typ ukazatel a dynamické proměnné. Spojové struktury.
  13. Verifikace programů a dokumentace. Nástroj Doxygen pro automatickou dokumentaci vytvořených programů. Tvorba jednotkových testů a jejich význam z pohledu správy programu. Metodiky vývoje software – testy řízené programování.