Detail předmětu

Principy programovacích jazyků a OOP

IPP Ak. rok 2011/2012 letní semestr 5 kreditů

Aktuální akademický rok

Předmět nabízí základní klasifikaci programovacích jazyků s podrobnějším představením imperativních a deklarativních jazyků. V rámci imperativních jazyků budou představeny nestrukturované jazyky, blokově a modulárně strukturované jazyky i objektové paradigma. Úvod do funkcionálních a logických jazyků bude přednesen v rámci deklarativních jazyků. Budou též zmíněny teorie ležící v základu těchto paradigmat. Studenti budou také obeznámeni se způsoby zpracování jednotlivých typů programovacích jazyků.

Garant předmětu

Jazyk výuky

česky, anglicky

Zakončení

zápočet+zkouška

Rozsah

  • 39 hod. přednášky
  • 13 hod. projekty

Zajišťuje ústav

Získané dovednosti, znalosti a kompetence z předmětu

Studenti budou schopni rozlišovat typy a úroveň programovacích jazyků a orientovat se v problematice jak uživatelského zvládnutí daného paradigmatu, tak v problematice analýzy, či překladu daného typu programovacího jazyka.

Cíle předmětu

Zvládnutí: orientace v programovacích jazycích, jednotlivých programovacích paradigmat, nároků na zpracování jednotlivých typů jazyků.

Doporučené prerekvizity

Požadované prerekvizitní znalosti a dovednosti

Formální jazyky a jejich modely, gramatiky, automaty; překlady/analýza formálních jazyků. Zaměření na regulární a bezkontextové jazyky a jejich modely, gramatiky, automaty a zpracování.

Literatura studijní

  • Texty přednášek v elektronické podobě
  • Kolář, D.: Principy programovacích jazyků a objektově orientovaného programování - I, studijní opora pro kombinované studium, modul IPP I, VUT FIT, 2006
  • Křivka, Z., Kolář, D.: Principy programovacích jazyků a objektově orientovaného programování - II, studijní opora pro kombinované studium, modul IPP II, VUT FIT, 2008
  • Kolář, D.: Principy programovacích jazyků a objektově orientovaného programování - III, studijní opora pro kombinované studium, modul IPP III, VUT FIT, 2006

Literatura referenční

  • Sebesta R.W.: Concepts of Programming Languages, 4th edition, ADDISON-WESLEY, 1999, ISBN 0-201-38596-1
  • MacLennan, B.J.: Principles of Programming Languages: Design, Evaluation, and Implementation (3rd Edition). Oxford University Press, 1999.

Osnova přednášek

  • Úvodní vymezení pojmů a problematiky
  • Úvod do imperativních jazyků - nestrukturované programovací jazyky
  • Blokově strukturované jazyky
  • Modulární jazyky
  • Objektově orientované jazyky
  • Některé zvláštnosti objektově orientovaných jazyků
  • Srovnání imperativních programovacích jazyků a paradigmat
  • Úvod do deklarativních jazyků - lambda kalkul
  • Funkcionální jazyky
  • Logické programovací jazyky
  • Další typy deklarativních jazyků, srovnání
  • Hlavní rozdíly v práci a implementaci u imperativních a deklarativních jazyků
  • Shrnutí tématu, diskuze navazujících předmětů

Průběžná kontrola studia

Student musí během semestru získat alespoň 50% bodů z možného maxima, tj. 20 bodů ze 40.
Pokud bude odhaleno plagiátorství nebo nedovolená spolupráce na projektech, či u půlsemestrální zkoušky, zápočet nebude udělen a dále bude zváženo zahájení disciplinárního řízení.

Kontrolovaná výuka

  • Půlsemestrální zkouška - písemně, formou testu, kde odpovědi mohou být jak větné, tak volbou 1 z N, či kombinace obou, neexistuje náhradní/opravný termín. (20 bodů)
  • Vypracování projektů - 1 projekt (implementace jednoho či více programů, dle zadání) s příslušnou dokumentací. (20 bodů)
  • Závěrečná zkouška - písemně, formou testu, kde odpovědi mohou být jak větné, tak volbou 1 z N, či kombinace obou, 2 opravné termíny. (60 bodů - pro získání bodů ze zkoušky je nutné zkoušku vypracovat tak, aby byla hodnocena nejméně 25 body, v opačném případě bude zkouška hodnocena 0 body.)
Nahoru