IPP Semestrálka Flashcards

1
Q

Programování

A

Činnost, která převádí určitý algoritmus (typicky myšlenkový) na posloupnost elementárních úkonů počítače. Přitom dochází k uložení tohoto postupu tak, aby jej stroj mohl opakovat periodicky.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Programátor

A

Ten, kdo proces tvorby programu realizuje.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Programovací jazyk

A

Prostředník mezi běžnou řečí a posloupností typicky binárních číslic.

Alternativně:
Konečná množina příkazů, která má specifickou syntaktickou strukturu a pevně a přesně vymezenou sémantiku.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Počítačový program

A

Zápis v programovacím jazye, který je abstrakcí reality.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Druhy programovacích jazyků podle abstrakce dat

A
  • Strojové jazyky, assemblery
  • Jazyky vyšší úrovně (Fortan, Cobol)
  • Univerzální jazyky (PL/I)
  • Blokově strukturované jazyky
  • Modulární blokově strukturované jazyky
  • Objektově orientované jazyky
  • Jazyky rozšiřující datové paradigma
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Strojové jazyky

A

Práce s bity, podpora základních typů specifická podle cílové architektury.
Typické operace jsou aritmetické (sčítání/odčítání, násobení/dělení) a bitové (posuny, logické součty, negace…)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Jazyky vyšší úrovně

A

Jednoduché datové typy, skryta jejich implementace (jsou známy jen obecné vlastnosti).
Stále vysoká závislost na cílové architektuře.
Např. Fortran, Cobol

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Univerzální jazyky - PL/I

A

Velké množství různých datových typů
Není ale možné definovat vlastní typy
Neexistence klíčových slov

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Blokově strukturované jazyky

A

Možnost definovat složitější datové (i řídící) struktury pomocí jednoduchých konstrukcí
Konstrukce lze spojovat i vnořovat
První skupina jazyků, která umožňuje použití návrhové metodologie
Např. Pascal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Modulární blokově strukturované jazyky

A

Umožňují oddělit definici typu od operací, které ho manipulují
Podpora knihoven

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Objektově orientované jazyky

A

Možnost spojit konkrétní data s operacemi, které je manipulují

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Jazyky jiných paradigmat

A

Patří sem:

  • logické jazyky (Prolog)
  • funkcionální jazyky
  • pro sazbu textu (TeX)
  • pro definici a manipulaci dat (SQL)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Druhy jazyků podle abstrakce řízení

A

Deklarativní a imperativní

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Imperativní jazyk

A

Takový jazyk, kde programátor musí řešit, co za operace má být provedeno
a v jakém pořadí (!) to má být provedeno.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Deklarativní jazyk

A

Takový jazyk, kde programátor musí řešit, co za operace má být provedeno

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Syntaxe

A

Definuje strukturu programu (jakým způsobem je dovoleno jednotlivé konstrukce řadit za sebe)

17
Q

Sémantika

A

Popis významu jednotlivých syntaktických konstrukcí, způsobu jejich vyhodocení, zpracovávání atd.

18
Q

Deklarace

A

Úplně vymezuje atributy dané entity. Může být explicitní i implicitní.
Např.:
extern int variable;
int function(int, double, char *);

19
Q

Definice

A

Úplně vymezuje atributy dané entity a dále u proměnných způsob alokace paměti a u funkcí navíc jejich tělo
Např.:
int variable = 54;
int function (int i, double d, char *s) {
return i+(int)(d/(double)s[0]);
}

20
Q

Vlastnosti proměnné

A
  • jméno
  • adresa a umístění v paměti
  • hodnoty, kterých může nabývat
  • typ
  • doba života
  • rozsah platnosti
21
Q

Rozsah platnosti

A

Určuje tu část programu, kdy je možné s proměnnou pracovat

22
Q

Doba života

A

Časový interval, po který je pro danou proměnnou alokována paměť.