<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="et">
	<id>http://www.lambda.ee/w/index.php?action=history&amp;feed=atom&amp;title=V%C3%B5rgurakendused_I_2014</id>
	<title>Võrgurakendused I 2014 - Redigeerimiste ajalugu</title>
	<link rel="self" type="application/atom+xml" href="http://www.lambda.ee/w/index.php?action=history&amp;feed=atom&amp;title=V%C3%B5rgurakendused_I_2014"/>
	<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=V%C3%B5rgurakendused_I_2014&amp;action=history"/>
	<updated>2026-10-28T15:15:40Z</updated>
	<subtitle>Selle lehekülje redigeerimiste ajalugu</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=V%C3%B5rgurakendused_I_2014&amp;diff=12428&amp;oldid=prev</id>
		<title>Tammet: Uus lehekülg: &#039;&lt;table&gt; &lt;tr&gt; &lt;td&gt; mootor &lt;/td&gt; &lt;td&gt; Ainekood: ITV0110&lt;br&gt; Link: http://www.lambda.ee/index.php/V%C3%B5rgurakendused_I &lt;!-- ehk http://www.lambda.ee/index...&#039;</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=V%C3%B5rgurakendused_I_2014&amp;diff=12428&amp;oldid=prev"/>
		<updated>2015-08-30T20:02:18Z</updated>

		<summary type="html">&lt;p&gt;Uus lehekülg: &amp;#039;&amp;lt;table&amp;gt; &amp;lt;tr&amp;gt; &amp;lt;td&amp;gt; &lt;a href=&quot;/wiki/Fail:Engine.jpg&quot; title=&quot;Fail:Engine.jpg&quot;&gt;left|mootor&lt;/a&gt; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Ainekood: ITV0110&amp;lt;br&amp;gt; Link: http://www.lambda.ee/index.php/V%C3%B5rgurakendused_I &amp;lt;!-- ehk http://www.lambda.ee/index...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Uus lehekülg&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
[[Pilt:Engine.jpg|left|mootor]]&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
Ainekood: ITV0110&amp;lt;br&amp;gt;&lt;br /&gt;
Link: http://www.lambda.ee/index.php/V%C3%B5rgurakendused_I &amp;lt;!-- ehk http://www.lambda.ee/index/itv0110&amp;lt;br&amp;gt; --&amp;gt;&lt;br /&gt;
Punkte: 3.5 AP ehk 5 EAP&amp;lt;br&amp;gt;&lt;br /&gt;
Lektor: [http://www.facebook.com/tanel.tammet Tanel Tammet]&amp;lt;br&amp;gt;&lt;br /&gt;
Kontakt: tanel.tammet@ttu.ee, 6203457&amp;lt;br&amp;gt;&lt;br /&gt;
olemas on ka [[Võrgurakendused_I 2013| 2013 aasta arhiiv]] koos kõigi eelmise aasta materjalidega.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NB! See on 2014 aasta arhiiv, mitte hetkel kehtiv kursuse leht!&amp;lt;/font&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Kontrolltöö jaanuaris&amp;lt;/font&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
Kursuse tulemused peale kontrolltööd on [[itv0110 2014 tulemused|siin tabelis]] (ainult kontrolltööl osalenute tulemused).&lt;br /&gt;
&lt;br /&gt;
Tulbad: matriklinumber, initsiaalid, prax1, prax2, prax3, prax4, prax5, kontrolltöö, praksid kokku, kontrolltöö skaalal 0-40, punktisumma kokku, hinne.&lt;br /&gt;
&lt;br /&gt;
Positiivse tulemuse eeldus on esimese kolme ja viimase praksi arvestamine ning kontrolltöö tulemus vähemalt 50 punkti 180-st. Kel need nõuded ei ole täidetud, on tulpades &amp;quot;kontrolltöö skaalal 0-40&amp;quot; ja &amp;quot;punktisumma kokku&amp;quot; väärtus 0; kel on täidetud, on kursus positiivse hindega lõpetatud.&lt;br /&gt;
&lt;br /&gt;
Kuna tegemist on praktikumiainega, siis siin aines järeltöid ei ole ning ebaõnnestumise korral tuleb kursus sooritada 2015 sügisel; seejuures ei pea uuesti tegema juba arvestatud praktikume. Erandina võivad aprillis-mais esitada oma täiendatud praktikume ja teha uue kontrolltöö need tudengid, kes hakkavad 2014 kevadel ülikooli lõpetama: sel juhul tuleb näidata, et kevadine lõpetamine on reaalne; võta aprillis ühendust.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
Kontrolltöö tuleb kirjutada paberile, materjale kasutada ei või. Küsimusi on järgmise viie teema osas: html &amp;amp; css, javascript &amp;amp; ajax, cgi &amp;amp; python, php &amp;amp; sql, sessioonid &amp;amp; cookied. Iga teema kohta üks/kaks valikvastustega küsimust, üks/kaks paarilauselist selgitust ootavat küsimust ja üks/kaks pisiülesannet. Pisiülesanded ei eelda, et teil oleks täpselt meeles tagide/teekide/funktsioonide õiged nimed: need antakse kas ette või piisab umbkaudsetest nimedest. Elementaarsed html &amp;amp; css tagid, parameetrid ja süntaks peaksid siiski meeles olema.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Aeg, koht, tulemus ==&lt;br /&gt;
&lt;br /&gt;
Loenguid nädalas: 2 tundi (üks loeng) teisipäeviti 10:00-11:30 ruumis CYB - VEENUS &lt;br /&gt;
&lt;br /&gt;
Praktikume nädalas: 2 tundi (üks praktikum). Praktikume juhendab Roger Kerse. Kui pole teisiti märgitud, toimuvad praktikumid:&lt;br /&gt;
* esmaspäeval 08:00-09:30 ruumis ICT-401 rühmadele   IABB31,  IABB32,  IABB33&lt;br /&gt;
* teisipäeval 16:00-17:30 ruumis ICT-501 rühmadele IABB37,  IAPB37,  IATM11&lt;br /&gt;
* neljapäeval 10:00-11:30 ruumis ICT-501 rühmadele  IAPB31,  IAPB32&lt;br /&gt;
* reedel 08:00-09:30 ruumis ICT-501 rühmadele  IAPB33,  IAPB34,  IAPB35&lt;br /&gt;
&lt;br /&gt;
Kursus lõpeb hindelise arvestusega. Hinne sõltub kursuse jooksul tehtud praktikumide tulemustest (60%) pluss kursuse lõpus toimuva kontrolltöö tulemustest (40%).&lt;br /&gt;
&lt;br /&gt;
== Kursuse eesmärk ==&lt;br /&gt;
&lt;br /&gt;
Lihtsamate veebirakenduste põhimõtted ja nende kirjutamise oskus nii brauseri kui serveri poolel. Konkreetsemalt: &lt;br /&gt;
* html-i kirjutamise oskus, esmane tutvus CSS-i ja javascriptiga. &lt;br /&gt;
* serveripoolse rakenduse kirjutamise põhimõtted, &lt;br /&gt;
* node.js kasutamise sissejuhatus serverirakendustes.&lt;br /&gt;
* cgi protokoll, erinevate keelte (sh shell, C, php, python, java, javascript) kasutamise sissejuhatus serverirakendustes&lt;br /&gt;
* pythoni ja php kasutamise esmased oskused.&lt;br /&gt;
* lihtsamad SQLi kasutamise oskused.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kursusel eeldatakse elementaarsete programmeerimisoskuste olemasolu. Kes programmeerimisega üldse kokku puutunud ei ole või seda paralleelselt ei õpi, ei suuda kursust läbida.&lt;br /&gt;
&lt;br /&gt;
== Praktilised tööd ==&lt;br /&gt;
&lt;br /&gt;
Kursusel on neli kohustuslikku praktilist ẗööd ja üks mittekohustuslik praktiline töö. Iga töö (sh mittekohustuslik töö) annab 0-12 punkti. &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Hilinenud tööd annavad poole punktidest.&amp;lt;/font&amp;gt; Töid võib (ja on soovitav) esitada enne tähtaega. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NB!&amp;lt;/font&amp;gt; &lt;br /&gt;
* Kui sinu praktikum on õigeaegselt arvestatud, siis saad esitada täiendusi (näiteks kolmanda praksi teist poolt) ka hiljem, ilma pooli punkte kaotamata.&lt;br /&gt;
* Esimest ja teist praksi saab esitada veel &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;novembris&amp;lt;/font&amp;gt;, aga detsembris neid enam vastu ei võeta. Kaugõppe tudengid saavad erandina esitada ka neid prakse detsembris.&lt;br /&gt;
* Alates kolmandast praksist saad oma tööd esitada &amp;lt;b&amp;gt;ainult&amp;lt;/b&amp;gt; oma rühma praksi ajal. Kui sa ei ole üheski rühmas, siis on aeg vaba. Lihtsalt nõu ja abi saad küsida ka teistel aegadel.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kõik tööd tuleb esitada ise TTÜ arvutiklassis: emailiga saadetud töid ei arvestata. Kasutada võib nii klassi arvuteid kui oma arvutit, brauser ja operatsioonisüsteem on vabalt valitavad. Serverirakenduste tööde presenteerimiseks tuleb kasutada ülikooli serverit dijkstra.&lt;br /&gt;
&lt;br /&gt;
Ülesanded:&lt;br /&gt;
&lt;br /&gt;
* [[ITV0110 1. töö: Html põhioskused|Html põhioskused]]. Tähtaeg 15-19 septembri nädal, vastavalt sinu praktikumirühmale. Detsembris seda praksi enam esitada ei saa. Kaugõppe tähtaeg 20. sept.&lt;br /&gt;
* [[ITV0110 2. töö 2014: CSS, javascript, veebiserver|CSS, javascript, veebiserver]]. Tähtaeg 6-10 oktoobri nädal, vastavalt sinu praktikumirühmale. Detsembris seda praksi enam esitada ei saa. &amp;#039;&amp;#039;&amp;#039;Erandina need kes 28.11 praksis ennast kirja panid saavad kaitsta P. Järve juures ICT-501 5.12&amp;#039;&amp;#039;&amp;#039;.  Kaugõppe tähtaeg on 18. oktoober.&lt;br /&gt;
* [[ITV0110 3. töö 2014: Serverirakendus: cgi pythonis|Serverirakendus: cgi pythonis]]. Tähtaeg 10-14 novembri nädal. Kaugõppe tähtaeg on 29. november.&lt;br /&gt;
* [[ITV0110 node.js töö| Serverirakendus node.js abil]]. Mittekohustuslik. Tähtaeg lükkus edasi &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;1. detsembrini&amp;lt;/font&amp;gt;. Kaugõppe tähtaeg on 29. november&lt;br /&gt;
* [[ITV0110 4. töö 2014: Andmebaasiga serverirakendus|Andmebaasiga serverirakendus php-s]].  Tähtaeg 18/19. detsember. Kaugõppe tähtaeg on kontrolltöö aeg jaanuaris.&lt;br /&gt;
&lt;br /&gt;
Ainult kaugõppe jaoks eriajad detsember ja jaanuar:&lt;br /&gt;
* lisa-praksiaega laupäeval 13 detsembril kell 16 IT maja 4 või 5 korrusel&lt;br /&gt;
* detsembris võib kaugõpe esitada nii 1,2 kui 3 praksi mistahes päevastel aegadel&lt;br /&gt;
* jaanuaris saab kaugõpe esitada ainult 4. praksi peale kontrolltööd (kaks eri kuupäeva)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Järgmine ülesanne on lihtsalt tutvumiseks, pärit 2013 aastast ja sellisena neid teha ei tule. &lt;br /&gt;
2014 aasta ülesanne tuleb veidi erinev ning antakse jooksvalt eelmise ülesande tähtaja lähenedes.&lt;br /&gt;
* [[ITV0110 3. töö: Serverirakendus: cgi pythonis]]. Tähtaeg 20/21 november. Kaugõppe tähtaeg 30. november.&lt;br /&gt;
* [[ITV0110 4. töö: Andmebaasiga serverirakendus php-s|Andmebaasiga serverirakendus php-s]]. Tähtaeg 18/19. detsember. Kaugõppe tähtaeg on kontrolltöö aeg jaanuaris.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kursuse edukaks läbimiseks peavad kõik kohustuslikud praktilised tööd olema tehtud.&lt;br /&gt;
&lt;br /&gt;
Lehtede kujundamise ja stiili osas lähtu [[htmli kujunduse üldpõhimõtted| sellest juhendist]].&lt;br /&gt;
&lt;br /&gt;
== Leitud asju ==&lt;br /&gt;
&lt;br /&gt;
Vaata seda: http://keithclark.co.uk/articles/creating-3d-worlds-with-html-and-css/&lt;br /&gt;
&lt;br /&gt;
== Loengute plaan ja materjalid ==&lt;br /&gt;
&lt;br /&gt;
Alltoodud teemad kaetakse igaüks ühe-kahe loenguga. Suur osa loengutest on pühendatud näidete läbitegemisele ning seletamisele, ette-programmeerimisele ja praktikumide osalisele realiseerimisele.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== HTML põhioskused ===&lt;br /&gt;
&lt;br /&gt;
Taustaks tasub&lt;br /&gt;
* meelde tuletada interneti baastehnoloogia IT sissejuhatusest: [[Media:Itsissejuhatus10o08.pdf|Itsissejuhatus10o08.pdf]].&lt;br /&gt;
Loe ja proovi läbi (st vaja põhimõtted selgeks õppida):&lt;br /&gt;
* [http://www.w3schools.com/html/default.asp w3schools html tutorial basic blokk].&lt;br /&gt;
Loe enne või sama-aegselt lisaks läbi ka&lt;br /&gt;
* [http://www.w3.org/MarkUp/Guide/ Raggetti vanaaegne mikrotutorial  algajatele] ja selle [http://www.w3.org/MarkUp/Guide/Advanced.html teine osa]&lt;br /&gt;
* Hea eestikeelne, samuti natuke vana sissejuhatus [http://akadeemia.kakupesa.net/arhiiv/VR1/loengud/loeng3 Kaido Kikkaselt (html)]  &lt;br /&gt;
&lt;br /&gt;
Vanemates tutorialites toodud markup on reeglina endiselt pädev, v.a. xhtml ja päised: sina kasuta html5 standardit (päises &amp;amp;lt;!DOCTYPE html&amp;amp;gt;) ja ignoreeri xml teemat html-s.&lt;br /&gt;
&lt;br /&gt;
Keerulisemat: &lt;br /&gt;
* [http://www.w3.org/TR/1999/REC-html401-19991224/ vana, siiani ametlik w3c standard]&lt;br /&gt;
* html 5: [http://www.w3.org/TR/html5/ w3c pooleli html 5] ja [http://www.whatwg.org/specs/web-apps/current-work/multipage/ whatwg living html 5] ja [http://www.w3schools.com/html/html5_intro.asp w3schools tutorial]&lt;br /&gt;
* [http://www.w3.org/TR/html401/struct/tables.html tabelite osa ametlikust 4.01 standardist]&lt;br /&gt;
* [http://www.w3schools.com/html/html_entities.asp html entities osa1] ja [http://www.w3schools.com/html/html_symbols.asp osa2] ja [http://en.wikipedia.org/wiki/UTF-8 utf-8] ja [http://en.wikipedia.org/wiki/Character_encodings_in_HTML charseti seadmine]&lt;br /&gt;
* [http://hsivonen.iki.fi/doctype/ !DOCTYPE prefix] ja html vanade versioonide kuvamine&lt;br /&gt;
* Kasulik tagide nimistu: [http://joshduck.com/periodic-table.html html 5 elementide perioodiline tabel]&lt;br /&gt;
* [http://www.w3schools.com/html/html_xhtml.asp html and xhtml] ja [http://en.wikipedia.org/wiki/HTML5 html 5] &lt;br /&gt;
* klassikaline salvestamine: [http://en.wikipedia.org/wiki/HTTP_cookie cookie] tutorial [http://www.w3schools.com/js/js_cookies.asp javascriptis]&lt;br /&gt;
* html 5 web storage [http://dev-test.nemikor.com/web-storage/support-test/ support]&lt;br /&gt;
* html 5 indexed db [http://en.wikipedia.org/wiki/Indexed_Database_API lühidalt], [http://caniuse.com/indexeddb support] ja [http://www.html5rocks.com/en/tutorials/webdatabase/websql-indexeddb/ kuidas kasutada] ja [http://www.html5rocks.com/en/tutorials/indexeddb/todo/ tutorial]&lt;br /&gt;
* html 5 [http://en.wikipedia.org/wiki/Canvas_element canvas]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== CSSi põhioskused === &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lugeda ja proovida läbi (st vaja põhimõtted selgeks õppida):&lt;br /&gt;
* [http://www.w3.org/MarkUp/Guide/Style.html First CSS intro]&lt;br /&gt;
* [http://www.w3schools.com/css/ w3schools&amp;#039;i css tutorial]: : kindlasti &amp;quot;basic&amp;quot;, &amp;quot;styling&amp;quot; ja &amp;quot;box&amp;quot; blokid, huvi korral loe edasi (advanced jne) ka, kuid need viimased ei ole üleni kohustuslikud, välja arvatud järgmised eriti olulised osad advanced blokist:&lt;br /&gt;
** [http://www.w3schools.com/css/css_display_visibility.asp display and visibility]&lt;br /&gt;
** [http://www.w3schools.com/css/css_positioning.asp positioning]&lt;br /&gt;
** [http://www.w3schools.com/css/css_float.asp float]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** [http://www.w3schools.com/css/css_image_sprites.asp image sprites]: see on oluline praktikumitöös&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* Väga kasulik abimaterjal on w3schoolsi [http://www.w3schools.com/cssref/default.asp  css reference]&lt;br /&gt;
Abiks on tutvuda heade tutorialidega järgmistel teemadel:&lt;br /&gt;
* [http://www.thesitewizard.com/css/center-div-block.shtml centering div]&lt;br /&gt;
* [http://robertnyman.com/2010/02/24/css-display-inline-block-why-it-rocks-and-why-it-sucks/ inline block]&lt;br /&gt;
* [http://css.maxdesign.com.au/floatutorial/  floats]&lt;br /&gt;
* [http://css.maxdesign.com.au/listamatic/  listikasutus] ja sealtsamast [http://css.maxdesign.com.au/listutorial/index.htm listikasutuse tutorialid]&lt;br /&gt;
* [http://www.css3.info/preview/box-shadow/ css shadow]&lt;br /&gt;
* [http://webdesignerwall.com/tutorials/cross-browser-css-gradient css gradiendid]&lt;br /&gt;
Häid praktilisi soovitusi kujundusest css-ga:&lt;br /&gt;
* [http://webdesignerwall.com/tutorials/css3-gradient-buttons css nupud] ja [http://www.webdesignerwall.com/demo/css-buttons.html nupukataloog] ja [http://css-tricks.com/examples/ButtonMaker/# nuputegija1] ja [http://www.cssbuttongenerator.com/ nuputegija2]&lt;br /&gt;
* [http://smashinghub.com/9-amazing-css-rules-that-save-designers-and-developers.htm rounded corners, shadow, gradient fill jne]&lt;br /&gt;
* [http://www.script-tutorials.com/css3-metal-menu-with-icons/ multilevel metal menu with icons] pluss html/css alt muid häid css3 õpetusi&lt;br /&gt;
* [http://informationarchitects.net/blog/the-web-is-all-about-typography-period/ puhtast tüpograafia-kujundusest]&lt;br /&gt;
Vingeid graafilisi canvas+webgl asju:&lt;br /&gt;
* [http://www.clicktorelease.com/code/streetViewReflectionMapping/#59.4369400264884,24.743906027972344 street view + knot] &lt;br /&gt;
* [http://alteredqualia.com/three/examples/webgl_materials_skin.html pea]&lt;br /&gt;
* [http://robchadwick.com/TerrainEditor/ terrain editor]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Javascripti põhioskused === &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kaks loengut: (a) sissejuhatus (b) reaalne kasutamine brauseris (html ja css muutmine, evendid jne)&lt;br /&gt;
&lt;br /&gt;
Vaata soenduseks/demoks [http://www.chromeexperiments.com/ Google kogutud näiteid].&lt;br /&gt;
&lt;br /&gt;
Seejärel loe läbi ja proovi järgi selles järjekorras:&lt;br /&gt;
* [http://en.wikipedia.org/wiki/JavaScript Wikipedia javascripti üldartikkel]: ülevaade, ajalugu jne. Keelt siit ei õpi!&lt;br /&gt;
* [http://www.w3schools.com/js/default.asp W3schools javascripti sissejuhatus]: JS Basic ja JS Objects osad. Mõned asjad jäävad siin veidi ebaselgeks!&lt;br /&gt;
* [http://en.wikipedia.org/wiki/JavaScript_syntax Wikipedia Javascripti keele kiirõpetus]: loe ja proovi paralleelselt w3schools-ga. Siit saab mõned asjad selgemaks kui ainult w3schoolsist.&lt;br /&gt;
&lt;br /&gt;
NB! Selle tulemusena on sul baasettekujutus javascripti keelest, aga mitte reaalsest kasutusest (seda vaatame järgmises loengus).&lt;br /&gt;
&lt;br /&gt;
Javascripti kasutamine brauseris: alustuseks on hea vaadata põhjalikku näidete loetelu&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3schools.com/js/js_ex_dom.asp html dom objektid]: põhiasjad&lt;br /&gt;
* [http://www.tizag.com/javascriptT/javascriptform.php form validation]: klassikaline rakendus&lt;br /&gt;
* [http://www.w3schools.com/js/js_ex_browser.asp brauseriobjektid]: vahel kah kasulikud&lt;br /&gt;
&lt;br /&gt;
ja tingimata lugeda sinna juurde teegijuhendeid:&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3schools.com/jsref/dom_obj_all.asp  html dom ülevaadet]&lt;br /&gt;
* [http://www.w3schools.com/jsref/dom_obj_event.asp html events ülevaadet]&lt;br /&gt;
* [http://www.w3schools.com/jsref/dom_obj_style.asp style lugemine/muutmine js-s: hädavajalik reference]&lt;br /&gt;
&lt;br /&gt;
Javascripti ja css-i teegid: uurime veidi kõige populaarsemaid teeke&lt;br /&gt;
&lt;br /&gt;
* [http://w3techs.com/technologies/overview/javascript_library/all populaarsed teegid] &lt;br /&gt;
* [http://www.jquery.com jquery] javascripti teek&lt;br /&gt;
* [http://getbootstrap.com bootstrap] css + javascript, widgetid jne&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Veebirakenduse optimeerimine mobiilile === &lt;br /&gt;
&lt;br /&gt;
* [http://www.seabreezecomputers.com/tips/mobile-css.htm sissejuhatavaid punkte ja olulist]&lt;br /&gt;
* [http://www.luster.io/blog/9-29-14-mobile-web-checklist.html põhjalik checklist kogu värgist]: kindlasti vaata, aga kõige selle tegemine on päris töömahukas ja ei ole praksis üldse nõutud.&lt;br /&gt;
&lt;br /&gt;
Täiendavalt spetsiifilisematest teemadest:&lt;br /&gt;
&lt;br /&gt;
* [http://www.javascriptkit.com/dhtmltutors/cssmediaqueries.shtml css-i valik mobiilile] ja [http://css-tricks.com/snippets/css/media-queries-for-standard-devices/ sama teema selgitusteta]&lt;br /&gt;
* [http://webdesignerwall.com/tutorials/mobile-navigation-design-tutorial navigeerimine ja menüüd]&lt;br /&gt;
* [http://taylor.fausak.me/2013/11/01/ios-7-web-apps/ iOS nüansid]&lt;br /&gt;
* [https://www.youtube.com/watch?v=3Bq521dIjCM&amp;amp;feature=youtu.be&amp;amp;t=23m50s optimeeri sujuvust: video]&lt;br /&gt;
* [http://impulse.luster.io/ interaktsiooni-animatsioonide teek]&lt;br /&gt;
* [http://ionicframework.com/ huvitav mobiili-hübriid-veebirakenduste teek]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
; Praktilist teisest praktikumist&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kuidas ja kuhu faile serverisse üles laadida jms: loe [[ITV0110 2. töö: CSS, javascript, veebiserver| teise praktikumi materjalidest]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===  Cgi töötlemine eri keeltes (C, python, bash, java, ...) === &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kõigepealt loe ja proovi tingimata ise läbi teha: [[pythoni cgi-d dijkstra serveris: kiire sissejuhatus]]&lt;br /&gt;
&lt;br /&gt;
Seejärel vaata [[cgi examples|hulka näiteid]], mille täpsem seletus antakse loengus.&lt;br /&gt;
&lt;br /&gt;
Tutvu linuxi shelli elementaarsete käskudega [http://www.freesoftwaremagazine.com/articles/command_line_intro siit alustades] ja [http://www.pixelbeat.org/cmdline.html selle lühiõpetusega jätkates.] Iga käsu juures on abiks man, näiteks &amp;lt;tt&amp;gt;man ls&amp;lt;/tt&amp;gt;. Huvi korral googelda lisaks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Seejärel loe neid materjale CGI protokollist ja CGI programmidest serveris:&lt;br /&gt;
&lt;br /&gt;
* [http://www.jmarshall.com/easy/cgi/ lihtne sissejuhatus cgi-desse]&lt;br /&gt;
* [[Media:cgi.pdf|cgi.pdf: detailsem juhend]]&lt;br /&gt;
* [http://www.cs.tut.fi/~jkorpela/forms/cgic.html cgi C keeles]&lt;br /&gt;
* Pythonis cgi programmeerimise tutoriali [http://www.tutorialspoint.com/python/python_cgi_programming.htm leiad siit]&lt;br /&gt;
* [http://webpython.codepoint.net/cgi_tutorial cgi Pythonis]&lt;br /&gt;
* [http://www.yolinux.com/TUTORIALS/BashShellCgi.html cgi Bashis]&lt;br /&gt;
&lt;br /&gt;
ning siis vaata lisaks loengus tehtud/proovitud [[lihtsaid cgi programminäiteid]] eri keeltes.&lt;br /&gt;
&lt;br /&gt;
Cgi jaoks on olemas ka nö [http://www.rfc-editor.org/rfc/rfc3875.txt rfc-standard], mille lugemine on aga pisut vaevarikas (nagu enamikel standarditel) ja üldjuhul on praktilisem lugeda hoopis ülaltoodud õpetusi ja vaadata&lt;br /&gt;
näiteid.&lt;br /&gt;
&lt;br /&gt;
===  Python ja näiteid kasutamisest serverirakendustes === &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tutvumine kolmanda praktikumiga: [[ITV0110 3. töö: Serverirakendus: cgi pythonis]]. Praksi jaoks vajaliku koodi kirjutamise harjutamine (loengus etteprogrammeerimine).&lt;br /&gt;
&lt;br /&gt;
Sealt leiad ka soovitused esmatutvuseks Pythoniga (praktikumi jaoks piisab kõige lihtsamatest Pythoni konstruktsioonidest ja cgi teegist, keerukamaid asju pole otseselt vaja):&lt;br /&gt;
&lt;br /&gt;
* loe [http://docs.python.org/tutorial/ tutoriali] algust (keerulised andmestruktuurid, moodulite ja klasside värgi võid esialgu lugemata jätta) &lt;br /&gt;
* hea tutorial [http://www.tutorialspoint.com/python/python_cgi_programming.htm cgi programmide kohta pythonis]&lt;br /&gt;
* lisaks [http://docs.python.org/library/cgi.html cgi teegi õpetust].&lt;br /&gt;
&lt;br /&gt;
Hea mõte on paralleelselt teha lahti Pythoni interpretaator ja katsetada kõrvale asju otse Pythoni käsureal. Kui su masinas Pythonit pole, siis installeeri! Kasulikke asju lisaks:&lt;br /&gt;
&lt;br /&gt;
* [http://docs.python.org/library/index.html#library-index teegi dokumentatsioonis].&lt;br /&gt;
* [[Kasulikke pythoni näitejuppe cgi jaoks]]&lt;br /&gt;
* [http://www.makotemplates.org/ mako templates:] katsetame neid veidi loengus&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Ajax ehk serveriga andmevahetus otse javascriptist === &lt;br /&gt;
&lt;br /&gt;
* Loe seotud tehnoloogiatest: [http://en.wikipedia.org/wiki/Ajax_%28programming%29 wikipedia ajax], [http://en.wikipedia.org/wiki/XMLHttpRequest wikipedia xmlhttprequest], [http://en.wikipedia.org/wiki/JSON wikipedia json]&lt;br /&gt;
* Vaata [[xmlhttprequest ja jsonile rakendatud eval näited]]&lt;br /&gt;
&lt;br /&gt;
Lisaks võib abi olla:&lt;br /&gt;
* [http://www.w3schools.com/ajax/default.asp w3schoolsi ajaxi mikrotutorial]&lt;br /&gt;
* [http://api.jquery.com/jquery.ajax/ jquery mugavamad wrapperid xmlhttprequestile]&lt;br /&gt;
&lt;br /&gt;
NB:&lt;br /&gt;
* Vanade IE-de erivariante ei ole mingit mõtet kasutada. &lt;br /&gt;
* Ajaxiga avatud urlilt võib tulla mis iganes tekst (ei pea olema xml).&lt;br /&gt;
&lt;br /&gt;
===  node.js sissejuhatus === &lt;br /&gt;
&lt;br /&gt;
[http://nodejs.org/ node.js] on süsteem serverirakenduste kirjutamiseks javascriptis. Ta on ehitatud chrome javascripti mootori peale ja lisab sinna hulgem kasulikke teeke, veebiserveri jne.&lt;br /&gt;
&lt;br /&gt;
Vaata:&lt;br /&gt;
&lt;br /&gt;
* [http://nodejs.org/ node.js] ise&lt;br /&gt;
* node.js [http://en.wikipedia.org/wiki/Node.js wikipedias]&lt;br /&gt;
&lt;br /&gt;
Seejärel installeeri enda arvutisse node.js ja alusta katsetamist:&lt;br /&gt;
&lt;br /&gt;
* [http://nodeguide.com/beginner.html hea sissejuhatav tutorial]&lt;br /&gt;
* [http://www.nodebeginner.org/ järgmine ok tutorial]&lt;br /&gt;
* [http://nodeschool.io/#learnyounode hulk eri tutoriale] mis vajavad installeerimist&lt;br /&gt;
&lt;br /&gt;
===  Veebiserveri ehitusest ja konfigureerimisest === &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kõigepealt tutvu või tuleta meelde http protokolli põhimõtteid:&lt;br /&gt;
&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol http wikipedias]&lt;br /&gt;
* [http://www.jmarshall.com/easy/http/ veel http-st]&lt;br /&gt;
* [http://www.factini.com/c/httpViewer/ headerite jms vaatamise veebiabivahend]&lt;br /&gt;
&lt;br /&gt;
Veebiserverist paremaks arusaamiseks tasub veidi eksperimenteerida [[Media:Itsissejuhatus_tiny.zip|pisikese veebiserveriga]].&lt;br /&gt;
&lt;br /&gt;
Enimkasutatav veebiserver Apache:&lt;br /&gt;
&lt;br /&gt;
* [http://httpd.apache.org/ apache oma koduleht]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Apache_HTTP_Server wikipedia apachest]&lt;br /&gt;
* [http://news.netcraft.com/archives/category/web-server-survey/ veebiserverite kasutusstatistikat]&lt;br /&gt;
&lt;br /&gt;
Apache konfigureerimisest:&lt;br /&gt;
&lt;br /&gt;
* [http://www.jlk.net/apache/beginners.shtml sissejuhatus algajatele]&lt;br /&gt;
* [http://httpd.apache.org/docs/2.2/ ametlik juhend]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Serverirakendused PHP-s, näited === &lt;br /&gt;
&lt;br /&gt;
* Väikese ajaloolise ülevaate leiad [http://en.wikipedia.org/wiki/PHP wikipeediast]&lt;br /&gt;
* Põhiõpetus on [http://www.php.net/manual/en/ php oma saidil]: loe sealt kõigepealt [http://www.php.net/manual/en/tutorial.php sissejuhatavat tutoriali]&lt;br /&gt;
* [http://w3schools.com/php/default.asp W3school-si php tutorial] on samuti päris OK.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  SQL  === &lt;br /&gt;
&lt;br /&gt;
Loe selles järjekorras:&lt;br /&gt;
&lt;br /&gt;
* [http://web.njit.edu/~song/courses/is698/SQL_tutorials.ppt hea esimene sissejuhatus]&lt;br /&gt;
* [http://www.w3schools.com/sql/default.asp w3schools&amp;#039;i tutorial]&lt;br /&gt;
* [http://dev.mysql.com/doc/refman/5.0/en/tutorial.html mysql esmane tutorial] ja [http://dev.mysql.com/doc/refman/5.0/en/index.html mysql manuaal]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  SQL serverirakendustes === &lt;br /&gt;
&lt;br /&gt;
* [[Vorgurakendused 1 SQL naited loengust]]: alusta siit&lt;br /&gt;
* Vaata veel kombineeritult [[lihtsaid php ja mysql näiteid]] loengust.&lt;br /&gt;
&lt;br /&gt;
Harilikud tutorialid ja tähelepanekud:&lt;br /&gt;
&lt;br /&gt;
* [http://dmsa.concordia.ca/tutorial_files/shortsql.ppt mysql PHP-s: ppt] &lt;br /&gt;
* [http://www.tizag.com/mysqlTutorial/ mysql PHP-s: veebitutorial]&lt;br /&gt;
* [http://blogs.techrepublic.com.com/security/?p=2368 SQL injection] vt ka [http://lh6.ggpht.com/_5YF7KQZuZS0/S6dvFXu5OoI/AAAAAAAACWM/qTcVpMxcDnA/licence%20plate%20camera%20sql%20injection_2%5B3%5D.jpg?imgmax=800 seda] ja [http://www.schneier.com/blog/archives/2010/10/pen-and-paper_s.html seda] ja [http://alicebobandmallory.com/articles/2010/09/23/did-little-bobby-tables-migrate-to-sweden seda]&lt;br /&gt;
* [http://www.w3schools.com/php/default.asp w3schools PHP tutorial all vasakul Mysql blokk]&lt;br /&gt;
&lt;br /&gt;
===  Sessioonid, cookied, sisselogimine, autentimine, web storage === &lt;br /&gt;
&lt;br /&gt;
Mõned lingid:&lt;br /&gt;
&lt;br /&gt;
* basic authentication [http://en.wikipedia.org/wiki/Basic_access_authentication wikipedias], [http://httpd.apache.org/docs/2.0/howto/auth.html apache manuaalis] ja [[basic authentication näited]]&lt;br /&gt;
* cookie [http://en.wikipedia.org/wiki/HTTP_cookie wikipedias], php cookie handling [http://w3schools.com/PHP/php_cookies.asp w3schools-st] ja [http://www.php.net/manual/en/function.setcookie.php php manuaalist]&lt;br /&gt;
* [http://oreilly.com/catalog/webdbapps/chapter/ch08.html ok sessiooniõpetus]&lt;br /&gt;
* php sessioonihandling [http://w3schools.com/PHP/php_sessions.asp w3schools] ja siit [http://ee.php.net/manual/en/book.session.php php mahukas sessiooni-manuaal] ja siit [http://www.tizag.com/phpT/phpsessions.php eraldi tutorial]&lt;br /&gt;
* väike [http://www.secologic.org/downloads/web/051123_eurosec_course_material_on_web_application_session_management.ppt ok sessioonihalduse tutorial]&lt;br /&gt;
* [[autentimise näide php sessiooniga]]&lt;br /&gt;
* [http://www.w3schools.com/html/html5_webstorage.asp Web storage]: HTML5 parem ja lihtne alternatiiv cookiedele. Vaata kindlasti ka muid [http://www.html5rocks.com/en/tutorials/offline/storage/ HTML5 data-salvestus-mehhanisme], [http://www.html5rocks.com/en/tutorials/appcache/beginner/ HTML5 application cache] ja [http://diveintohtml5.info/storage.html seda detailsemat täiendavat juttu].&lt;br /&gt;
&lt;br /&gt;
== Vajalikud tööriistad ==&lt;br /&gt;
&lt;br /&gt;
Oma arvutiga töö tegemiseks peab seal olema vähemalt&lt;br /&gt;
&lt;br /&gt;
* [http://notepad-plus-plus.org/ Notepad++] või [http://www.scintilla.org/SciTE.html scite] või [http://brackets.io/ brackets]&lt;br /&gt;
* [http://www.mozilla.com Mozilla Firefox] või [https://www.google.com/intl/en/chrome/browser/ Google Chrome]&lt;br /&gt;
* [http://www.mozilla.com Mozilla Firefoxi] kasutades installi endale [https://getfirebug.com/ firebug] plugin&lt;br /&gt;
* Windowsil [http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html putty] või mõni sarnane sisselogimis-proge (Linuxil piisab ssh käsust). Hea erivariant Puttyst on [http://www.9bis.net/kitty/ kitty], mis laseb kasutajatunnuse ja parooli meelde jätta, et ei peaks igakord uuesti sisestama.&lt;br /&gt;
* Windowsil [http://winscp.net winscp] (vaata [http://winscp.net/eng/docs/ui_editor konfimisest!]) või mõni sarnane failide-üleslaadimis-proge (Linuxil piisab scp käsust)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
== Veel lugemiseks ==&lt;br /&gt;
&lt;br /&gt;
Üldist:&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3schools.com/ Mitu head tutoriali eri teemadel]&lt;br /&gt;
* [http://www.websitetips.com/ suur kogu häid tutoriale, artikleid ja soovitusi]&lt;br /&gt;
* Lisamaterjale kursusest [[Kasutajaliidesed võrgutehnoloogia baasil]]&lt;br /&gt;
&lt;br /&gt;
HTML:&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3.org/MarkUp/Guide/ Raggetti tutorial  algajatele]&lt;br /&gt;
* [http://akadeemia.kakupesa.net/arhiiv/VR1/loengud/loeng3 Kaido Kikkase hea eestikeelne sissejuhatus] &lt;br /&gt;
* [http://innar.li.ttu.ee/failid/VR_2006.pdf Innar Liivi hea eestikeelne sissejuhatus] &lt;br /&gt;
* [http://www.w3schools.com/html/ w3schools&amp;#039;i põhjalik html tutorial]&lt;br /&gt;
* [http://joshduck.com/periodic-table.html tore tagide nimistu]&lt;br /&gt;
* [http://www.w3.org/TR/html4/ HTML 4.01 ametlik standard]&lt;br /&gt;
* [http://www.w3.org/TR/html5/ HTML 5.0 ametlik draft]&lt;br /&gt;
&lt;br /&gt;
HTML+CSS+Javascript:&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3.org/MarkUp/Guide/Style.html First CSS intro]&lt;br /&gt;
* [http://www.w3schools.com/css/ w3schools&amp;#039;i css tutorial]&lt;br /&gt;
* [http://www.w3schools.com/js/ w3schools&amp;#039;i javascripti tutorial]&lt;br /&gt;
* [http://www.maxdesign.com.au/articles/liquid/ liquid layouts]&lt;br /&gt;
* [http://www.alistapart.com/  A list apart]&lt;br /&gt;
* [http://css.maxdesign.com.au/listamatic/  listikasutus]&lt;br /&gt;
* Javascript, mashup ja ühe-lehe-sait sightsmap: http://www.sightsmap.com/&lt;br /&gt;
&lt;br /&gt;
HTTP &lt;br /&gt;
&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol http wikipedias]&lt;br /&gt;
* http://www.jmarshall.com/easy/http/&lt;br /&gt;
* [http://www.w3.org/Protocols/HTTP/AsImplemented.html T. Berners-Lee leiutatud esimene HTTP spec]&lt;br /&gt;
* [http://www.garshol.priv.no/download/text/http-tut.html hea väike HTTP ja CGI tutorial]&lt;br /&gt;
* [http://www.factini.com/c/httpViewer/ headerite jms vaatamise veebiabivahend]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CGI programmid serveris&lt;br /&gt;
&lt;br /&gt;
* [http://www.jmarshall.com/easy/cgi/ lihtne sissejuhatus cgi-desse]&lt;br /&gt;
* [[Media:cgi.pdf|cgi.pdf: detailsem juhend]]&lt;br /&gt;
* [http://www.whizkidtech.redprince.net/cgi-bin/tutorial cgi esmane sissejuhatus Bashi näidetega]&lt;br /&gt;
* [http://www.cs.tut.fi/~jkorpela/forms/cgic.html cgi C keeles]&lt;br /&gt;
* [http://webpython.codepoint.net/cgi_tutorial cgi Pythonis]&lt;br /&gt;
* [http://www.yolinux.com/TUTORIALS/BashShellCgi.html cgi Bashis]&lt;br /&gt;
* [[Media:Itsissejuhatus_tiny.zip|Tiny www server]] ja [[lihtsaid cgi programminäiteid]]&lt;br /&gt;
&lt;br /&gt;
PHP ja MySQL&lt;br /&gt;
&lt;br /&gt;
* http://www.php.net/ sh http://www.php.net/tut.php või http://www.php.net/manual/en/tutorial.php&lt;br /&gt;
* http://www.mysql.org, alustuseks http://dev.mysql.com/doc/refman/5.1/en/tutorial.html&lt;br /&gt;
* [[ajut22]]&lt;br /&gt;
* [[ajut23]]&lt;br /&gt;
&lt;br /&gt;
Veebiserverid:&lt;br /&gt;
&lt;br /&gt;
* [[Media:Itsissejuhatus_tiny.zip|Tiny www server]] ja [[lihtsaid cgi programminäiteid]]&lt;br /&gt;
* http://www.devside.net/guides/windows/apache&lt;br /&gt;
* http://net.tutsplus.com/tutorials/php/how-to-setup-a-dedicated-web-server-for-free/&lt;br /&gt;
* http://www.yolinux.com/TUTORIALS/LinuxTutorialWebSiteConfig.html&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Kursus]]&lt;/div&gt;</summary>
		<author><name>Tammet</name></author>
	</entry>
</feed>