1145
Comment:
|
7499
|
Deletions are marked like this. | Additions are marked like this. |
Line 3: | Line 3: |
2009/2010 -- zimný semester | 2011/2012 -- zimný semester <<TableOfContents()>> |
Line 8: | Line 10: |
=== Konzultácie === Pondelok 16:00 -- 17:00 == Oznamy == <<Pozor>> Tuto je zadanie na skúšobné cvičenie: [[attachment:zadanie_skus.pdf]] <<Pohov>> |
|
Line 14: | Line 25: |
* Základy konfigurácie sietí a služieb | |
Line 19: | Line 31: |
* Dynamické webové stránky cez CGI skripty * Šablónové jazyky |
* Dynamické webové stránky pomocou CGI skriptov * !JavaScript, AJAX |
Line 28: | Line 41: |
1. Craig Hunt, ''TCP/IP Network administration'', 3. vydanie, O'Reilly | 1. Craig Hunt, ''TCP/IP Network administration'', 3. vydanie, O'Reilly, http://docstore.mik.ua/orelly/networking_2ndEd/tcp/index.htm 1. David Gourley, Brian Totty, Marjorie Sayer, Anshu Aggarwal, Sailu Reddy, et al., ''HTTP: The Definitive Guide'', O'Reilly (2002) 1. David Flanagan, ''!JavaScript: The Definitive Guide'', O'Reilly Media, Inc.; 5th edition (2006) |
Line 33: | Line 48: |
1. HTML and CSS Tutorials, References, and Articles, http://htmldog.com/ 1. Jak psát web, http://www.jakpsatweb.cz/ 1. Color scheme designer, http://colorschemedesigner.com/ 1. Selectutorial: CSS selectors, http://css.maxdesign.com.au/selectutorial/ 1. Allowed nesting of elements in HTML 4 (and XHTML 1.0), http://www.cs.tut.fi/~jkorpela/html/nesting.html 1. The W3C Markup Validation Service, http://validator.w3.org/ 1. The W3C CSS Validation Service, http://jigsaw.w3.org/css-validator/ 1. CSS Zen Garden, http://www.csszengarden.com/ 1. Mercurial SCM, http://mercurial.selenic.com/ 1. Mercurial: The Definitive Guide by Bryan O'Sullivan, http://hgbook.red-bean.com/ == O mercuriali == [[mercurial]] |
|
Line 38: | Line 66: |
* Dve zápočtové cvičenia vypracované ako rozšírenie domácich zadaní | * Tri zápočtové cvičenia vypracované ako rozšírenie domácich zadaní |
Line 41: | Line 69: |
* Jedno domáce zadanie z web dizajnu a šablón | * Jedno zápočtové cvičenie z CSS == Výsledky == [[/Vysledky]] == Témy jednotlivých prednášok == 1. Vrstvové referenčné modely. a. Model ISO/OSI a. Model TCP/IP 1. Problém riadenia súbežného prístupu (MAC) a. Centralizované a decentralizované modely, deterministické a nedeterministické modely a. Modely s centrálnym arbitrom, token ring a. ALOHA, slotted ALOHA, CSMA, CD, Ethernet 1. Sieťová vrstva, adresácia, smerovanie a. IPv4 adresy, triedy A,B,C a. Privátne adresy a. Sieťová a broadcast adresa a. Preklad IP adries (masquerading) 1. Transportná vrstva, UDP, TCP a. Protokoly TCP a UDP a. Softwarové rozhranie pre prístup k transportnej vrstve - sockety a. Šablóny programov "klient" a "server" - fork prístup k servru. 1. Aplikačné protokoly a. Základy fungovania DNS, SMTP a. Protokol HTTP 1. HTML a CSS a. XHTML 1.0 a. Štylizácia HTML pomocou kaskádových štýlov 1. Dynamický web a. Základné princípy dynamického webu a. CGI 1. Pokročilé aspekty HTTP a. Autorizácia (Basic) a. Cookies 1. Web 2.0 a. !JavaScript cez jquery a. Techniky AJAX == Skúška == 1. "Teoretická otázka", vysvetliť dôležité aspekty niektorej z týchto tém. a. IP protokol - adresácia, smerovanie a. TCP a UDP protokol, spoločné vlastnosti, rozdiely, spôsob použitia v programoch -- sockety. a. Princípy fungovania TCP protokolu, emulácia spoľahlivého spájaného prenosu cez IP. a. HTTP protokol - základy. a. CGI skripty - spôsob fungovania, použitie s HTML formulármi. a. Pokročilé aspekty HTTP - cookies, autorizácia. 1. Budem chcieť navrhnúť a ústne obhájiť nejaký aplikačný protokol. Podrobnosti toho, ako si to predstavujem, poviem na prednáške. === Príklad zadania na skúšku z roku 2010 === [[attachment:skuska_2010.pdf]] == Zadania na cviko == == Šablóny programov, programy, html a css súbory == === Generický repozitár pre python, html, css === Na bitbucket.org: http://bitbucket.org/gjenca/python_vyuka_public/ . === Programy, ktoré píšem live na prednáškach v roku 2012 === Na bitbucket.org: http://bitbucket.org/gjenca/ps2012 === Stiahnuť všetko naraz ako zip === http://bitbucket.org/gjenca/python_vyuka_public/get/tip.zip alebo (s inštalovaným mercurialom) príkazom {{{ hg clone http://bitbucket.org/gjenca/python_vyuka_public/ }}} Ak už máte raz stiahnuté dáta pomocou {{{hg clone}}}, stačí už len v adresári projektu napísať {{{ hg pull hg update }}}. V prípade, že sa mercurial pri príkaze {{{update}}} sťažuje na konflikty, znamená to, že ste niečo zmenili v pracovnom adresári. Vtedy treba napísať {{{ hg update -C }}} === TCP/UDP klient/server === || TCP server bez súbežnej obsluhy viacerých klientov || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_server.py || || TCP server so súbežnou obsluhou viacerých klientov || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_server_fork.py || || TCP server so súbežnou obsluhou viacerých klientov používajúci `socket.makefile` || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_server_fork_makefile.py || || TCP klient || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_client.py || || UDP server || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/udp_server.py || || UDP klient || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/udp_client.py || === Sumátor klient a server === || Sumátor server || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_sumator_server.py || || Sumátor klient || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_sumator_client.py || === Jednoduchý HTTP server === || Jednoduchý HTTP server || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/http_server.py || === CGI skripty === || Testovací bez CGI modulu || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/test.py || || Testovací s CGI modulom || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/test2.py || || Vypisovanie a spracovanie formulára || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/form.py || || Vypisovanie a spracovanie formulára - matematika || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/matika.py || || Vypisovanie a spracovanie formulára - sin a cos || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/sincos.py || === XHTML stránky === || Stránka so základnými XHTML elementami || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/simple2.html || || Stránka pre skúšanie CSS || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/pagelayout.html || || Minimálna stránka || http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/kostra.html || ## == Odovzdávanie programov == ## [[/OdovzdavanieProgramov | Stránka pre odovzdávanie programov ]] |
Počítačové siete
2011/2012 -- zimný semester
Contents
Vyučujúci
Gejza Jenča gejza.jenca@stuba.sk
Konzultácie
Pondelok 16:00 -- 17:00
Oznamy
Tuto je zadanie na skúšobné cvičenie: zadanie_skus.pdf |
Stručná osnova predmetu
- Taxonómia počítačových sietí
- Vrstvový model
- Sieťová vrstva, routing
- Základy konfigurácie sietí a služieb
- Transportná vrstva, sockety
- Aplikačná vrstva
- Aplikačné protokoly
- HTTP
- HTML a CSS, dizajn web stránok
- Dynamické webové stránky pomocou CGI skriptov
JavaScript, AJAX
Literatúra
Andrew S. Tanenbaum, Computer Networks, 4. vydanie, Prentice-Hall
Craig Hunt, TCP/IP Network administration, 3. vydanie, O'Reilly, http://docstore.mik.ua/orelly/networking_2ndEd/tcp/index.htm
David Gourley, Brian Totty, Marjorie Sayer, Anshu Aggarwal, Sailu Reddy, et al., HTTP: The Definitive Guide, O'Reilly (2002)
David Flanagan, JavaScript: The Definitive Guide, O'Reilly Media, Inc.; 5th edition (2006)
Webové stránky
HTML and CSS Tutorials, References, and Articles, http://htmldog.com/
Jak psát web, http://www.jakpsatweb.cz/
Color scheme designer, http://colorschemedesigner.com/
Selectutorial: CSS selectors, http://css.maxdesign.com.au/selectutorial/
Allowed nesting of elements in HTML 4 (and XHTML 1.0), http://www.cs.tut.fi/~jkorpela/html/nesting.html
The W3C Markup Validation Service, http://validator.w3.org/
The W3C CSS Validation Service, http://jigsaw.w3.org/css-validator/
CSS Zen Garden, http://www.csszengarden.com/
Mercurial SCM, http://mercurial.selenic.com/
Mercurial: The Definitive Guide by Bryan O'Sullivan, http://hgbook.red-bean.com/
O mercuriali
Podmienky na zápočet
- Počas semestra sa bude udeľovať 40 bodov. Na zápočet je potrebných 20 bodov.
- 40 bodov bude udeľovaných za tieto veci:
- Tri zápočtové cvičenia vypracované ako rozšírenie domácich zadaní
- TCP/IP a sockety
- CGI skripty
- Jedno zápočtové cvičenie z CSS
- Tri zápočtové cvičenia vypracované ako rozšírenie domácich zadaní
Výsledky
Témy jednotlivých prednášok
- Vrstvové referenčné modely.
- Model ISO/OSI
- Model TCP/IP
- Problém riadenia súbežného prístupu (MAC)
- Centralizované a decentralizované modely, deterministické a nedeterministické modely
- Modely s centrálnym arbitrom, token ring
- ALOHA, slotted ALOHA, CSMA, CD, Ethernet
- Sieťová vrstva, adresácia, smerovanie
- IPv4 adresy, triedy A,B,C
- Privátne adresy
- Sieťová a broadcast adresa
- Preklad IP adries (masquerading)
- Transportná vrstva, UDP, TCP
- Protokoly TCP a UDP
- Softwarové rozhranie pre prístup k transportnej vrstve - sockety
- Šablóny programov "klient" a "server" - fork prístup k servru.
- Aplikačné protokoly
- Základy fungovania DNS, SMTP
- Protokol HTTP
- HTML a CSS
- XHTML 1.0
- Štylizácia HTML pomocou kaskádových štýlov
- Dynamický web
- Základné princípy dynamického webu
- CGI
- Pokročilé aspekty HTTP
- Autorizácia (Basic)
- Cookies
- Web 2.0
JavaScript cez jquery
- Techniky AJAX
Skúška
- "Teoretická otázka", vysvetliť dôležité aspekty niektorej z týchto tém.
- IP protokol - adresácia, smerovanie
- TCP a UDP protokol, spoločné vlastnosti, rozdiely, spôsob použitia v programoch -- sockety.
- Princípy fungovania TCP protokolu, emulácia spoľahlivého spájaného prenosu cez IP.
- HTTP protokol - základy.
- CGI skripty - spôsob fungovania, použitie s HTML formulármi.
- Pokročilé aspekty HTTP - cookies, autorizácia.
- Budem chcieť navrhnúť a ústne obhájiť nejaký aplikačný protokol. Podrobnosti toho, ako si to predstavujem, poviem na prednáške.
Príklad zadania na skúšku z roku 2010
Zadania na cviko
Šablóny programov, programy, html a css súbory
Generický repozitár pre python, html, css
Na bitbucket.org: http://bitbucket.org/gjenca/python_vyuka_public/ .
Programy, ktoré píšem live na prednáškach v roku 2012
Na bitbucket.org: http://bitbucket.org/gjenca/ps2012
Stiahnuť všetko naraz ako zip
http://bitbucket.org/gjenca/python_vyuka_public/get/tip.zip
alebo (s inštalovaným mercurialom) príkazom
hg clone http://bitbucket.org/gjenca/python_vyuka_public/
Ak už máte raz stiahnuté dáta pomocou hg clone, stačí už len v adresári projektu napísať
hg pull hg update
.
V prípade, že sa mercurial pri príkaze update sťažuje na konflikty, znamená to, že ste niečo zmenili v pracovnom adresári. Vtedy treba napísať
hg update -C
TCP/UDP klient/server
TCP server bez súbežnej obsluhy viacerých klientov |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_server.py |
TCP server so súbežnou obsluhou viacerých klientov |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_server_fork.py |
TCP server so súbežnou obsluhou viacerých klientov používajúci socket.makefile |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_server_fork_makefile.py |
TCP klient |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_client.py |
UDP server |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/udp_server.py |
UDP klient |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/udp_client.py |
Sumátor klient a server
Sumátor server |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_sumator_server.py |
Sumátor klient |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/tcp_sumator_client.py |
Jednoduchý HTTP server
Jednoduchý HTTP server |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/http_server.py |
CGI skripty
Testovací bez CGI modulu |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/test.py |
Testovací s CGI modulom |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/test2.py |
Vypisovanie a spracovanie formulára |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/form.py |
Vypisovanie a spracovanie formulára - matematika |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/matika.py |
Vypisovanie a spracovanie formulára - sin a cos |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/cgiserver/cgi-bin/sincos.py |
XHTML stránky
Stránka so základnými XHTML elementami |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/simple2.html |
Stránka pre skúšanie CSS |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/pagelayout.html |
Minimálna stránka |
http://bitbucket.org/gjenca/python_vyuka_public/raw/tip/kostra.html |