Slovníček pojmů

Hub

Zařízení sloužící pro propojování počítačů v koncových segmentech sítě. Pracuje pouze na fyzické vrstvě a je hloupé - rozesílá přijatá data na všechny připojené uzly. Signály pouze zesiluje.

IPv4

IPv4 protokol je využíván pro směrování dat a komunikaci na internetu. IPv4 adresa je čtyřbajtová adresa využívaná pro adresování komunikace. 4 bajty = 32 bitů. Zapisuje se v dekadické soustavě po jednotlivých bajtech oddělených tečkami, tedy například 112.225.80.21. Mezi tečkami je vždy dekadicky zapsán jeden bajt (8 bitů), nejvyšší hodnota je tedy 255. Nejvyšší IP, kterou můžeme zapsat je tedy 255.255.255.255

IPv6

IPv6 je nástupnická verze IP protokolu pro komunikaci na internetu. Narozdíl od IPv4 má adresa IPv6 16 bajtů (128 bitů), je s ní tedy možno adresovat řádově větší počet uzlů (počítačových stanic, serverů, routerů a dalšího hw) na internetu.

Jednorozměrná pole

Pole jsou typem proměnné, který funguje ve své podstatě jako seznam. Pokud tedy potřebujete v programu pracovat s větším množstvím shodných druhů objektů, obvykle jejich instance vkládáte do pole. Pole je označeno názvem, stejně jako proměnná, a jednotlivý záznam se v něm vyhledává pomocí indexu (čísla) v hranatých závorkách.

jmeno[10] - vyhledá jméno, uložené na jedenácté (počítá se od nuly) pozici pole jmen.

Deklarace pole je téměř shodná jako pri inicializaci primitivních datových typů. Vždy napíšete datový typ, který se v daném poli bude ukládat, hranaté závorky, název pole. Následuje rovnítko, opět datový typ, hranaté závorky a v nich počet prvků pole. Pole v javě mají vždy velikost pevně nastavenu na začátku!

String[] jmena = new String[15];

poté můžu s polem pracovat:
jmena[0] = "Karel";
jmena[1] = "Robert";
jmena[2] = "Zelda";

out.print(jmena[1]); //vypise Robert
out.print(jmena[0]); //vypise Karel
atd...

NAT

Network Adress Translation - je využíván především pro šetření rozsahem veřejných IP adres. Za NAT bránou s veřejnou IP adresou se nachází síť jejíž uzly mají IP adresy z neveřejného rozsahu. Pokud uzel z vnitřní sítě chce komunikovat s okolím, požadavek odchází přes NAT bránu, kde se v tabulce zdrojovému SOCKETu na lokální síti přiřadí unikátní číslo. V hlavičce datagramu se pak přepíše zdrojový socket IP adresou NAT brány a jako číslo portu se uvede právě přiřazené unikátní číslo.

Vzdálený počítač tedy odpověď posílá na IP adresu NAT brány. Ta podle čísla portu na které je odpověď směrována a interní tabulky zjistí, který počítač vnitřní sítě si odpověď vyžádal a odpověď mu předá (změní cílový SOCKET odpovědi na SOCKET uvedený v tabulce k danému číslu portu).

Objekt

Objektem můžeme označit cokoliv kolem nás. Objekt má vlastnosti (výška, rychlost, výkon, ...) a svému okolí nabízí metody (činnosti, které umí provádět).

Objekt v Javě (=instance objektu) má své vlastnosti uložené v zapouzdřených atributech (např. int vek, int vyska, String jmeno), které obvykle nejsou okolí dostupné přímo. Cizím objektům pak nabízí metody (v nich jsou zapsány algoritmy), které u něj vyvolají potřebnout akci, případně změní jeho vlastnosti.

Private vs public

Příznak private v konstruktoru proměnné/metody určuje, zda budou dostupné z okolí instance dané třídy. Public znamená, že daná metoda/proměnná bude přímo dostupná z okolí instance a budeme ji moci zavolat. Pokud nastavíme private, metoda/proměnná bude okolí skryta.

private String vydejZvuk() - metodu by nešlo zavolat z okolí dané instance, mohli bysme ji zavolat pouze z některé z jejich dalších metod.

Proměnné

V jazyce Java existují dva základní typy proměnných - proměnné uchovávající primitivní hodnoty, jako je číslo, krátký text. Ty se inicializují zápisem:
datový_typ název_proměnné;
Příklad:
int vek;

Druhým typem proměnných je pak proměnná s referencí na instanci určitého objektu. Taková proměnná se inicializuje shodně jako běžná, jako datový typ se u ní používá název třídy, kterou budeme instancovat.
Příklad:
Osoba franta;

Router

Směrovač pracuje na síťové vrstvě modelu ISO/OSI, tedy obvykle s IP adresami. Stará se o směrování dat po internetu - rozhoduje dle směrovací tabulky do které sítě pošle přicházející data. Směrovací tabulka obsahuje síťové adresy známých sítí a rozhraní na kterém jsou dosažitelné.

Smyčky

V Javě (a prakticky stejně v jiných programovacích jazycích) používáme pro opakující se činnosti smyčky. Popíšeme si dvě z nich - smyčku FOR a smyčku WHILE.

For smyčka se používá pokud víme kolikrát budeme chtít běh určitého algoritmu zopakovat (kolik jmen zvířat budeme chtít od uživatele zadat). Její zápis vypadá takto:

for(int i=0; i<X; i++){
...
náš opakovaný algoritmus
...
}
přičemž za písmenko X dosazujeme námi požadovaný počet opakování. Při prvním běhu je proměnná i nastavena na nulu, při každém dalším proběhnutí se její hodnota zvedá o jedničku. V momentě, kdy přestane platit i

While smyčka se používá při předem neznámém počtu opakování, například pokud čekáme, až algoritmus uzavřený uvnitř smyčky dojde k nějakému výsledku (najde největšího dělitele, zjistí jestli je proměnná prvočíslem, etc.). Zápis smyčky while vypadá takto:

while(x > 0){
print x;
x--;
}
Smyčka se bude provádět dokola opět dokud bude splněna podmínka v kulatých závorkách. Jakmile podmínka nevyhoví, provádění smyčky se ukončí a program bude pokračovat dále pod smyčkou.

Switch

Zařízení propojující počítače na jednom segmentu sítě. Pracuje na linkové vrstvě - propojuje komunikující uzly na základě MAC adres (fyzické adresy síťové karty).

Třída

Třída v jazyce Java je šablonou objektů. Třída má specifikované všechny metody, které daný typ objektu podporuje a je u ní určeno, jaké bude mít daný typ objektu vlastnosti (obvykle však nejsou určeny jejich hodnoty!).

Z třídy se stává skutečný objekt vytvořením její instance v jiné třídě a uložením této instance do proměnné. Jednotlivé instance třídy jsou na sobě zcela nezávislé.

Vytvoření instance třídy Osoba v Javě:
Osoba pepik = new Osoba();

Volání metod - Java

V Javě voláme metody obvykle na jednotlivých instancích tříd, které máme uložené v proměnných. Můžeme na nich volat veškeré metody, které jsou v mateřské třídě zapsány jako "public". Volají se zapsáním jména proměnné, tečky a názvu metody.
Příklad:
fanda.ucesSe(); //fanda se učeše

Metody mohou také vracet hodnoty, které pak chceme dále používat. V takovém případě vrácenou hodnotu musíme uložit do další proměnné.
int vyska = fanda.getVyska(); //do proměnné vyska jsme uložili výšku, kterou nám vrátila metoda getVyska().

Metody mohou vyžadovat také parametr (text, číslo, jiný objekt, ...). V takovém případě parametr předáváme v závorkách, které jsou za názvem metody.
fanda.setVysku(199); //nastavuji fandovu výšku na 199 cm

Zapouzdření

Zapouzdření nám zaručuje transparentnost běhu metod jednotlivých objektů. Veškerá data a samotné procedury jsou zapouzdřeny uvnitř objektu a nejsou přímo dostupné z jeho okolí. Přistupuje se k nim pouze přes metody objektu.

Nálepky
Slovník - výběr
Vyzkoušejte si
Další odkazy