<?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_2016</id>
	<title>Võrgurakendused I 2016 - 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_2016"/>
	<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=V%C3%B5rgurakendused_I_2016&amp;action=history"/>
	<updated>2026-10-28T11:51:14Z</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_2016&amp;diff=13741&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_2016&amp;diff=13741&amp;oldid=prev"/>
		<updated>2017-09-04T02:18:17Z</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 2015| 2015 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;
&lt;br /&gt;
== &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NB! See on 2016 aasta arhiiv, mitte hetkel kehtiv variant&amp;lt;/font&amp;gt; ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Olin lumes vahepeal kinni.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
25. oktoobri loeng jääb ära: T.Tammet on TTÜ delegatsiooniga Gruusias, Roger Kerse on haige.&lt;br /&gt;
&lt;br /&gt;
Samal põhjusel jäävad ära 26. oktoobri (kolmapäev) ja 27. oktoobri (neljapäev) praktikumid.&lt;br /&gt;
&lt;br /&gt;
Sellega seoses lükkuvad tähtajad nädala võrra edasi.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Tulemused&amp;lt;/font&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
Kursuse tulemusd on siin tabelis: [[Võrgurakendused 1 2016 tulemused]].&lt;br /&gt;
&lt;br /&gt;
Tulbad: matriklinumber ilma kursuse koodita, eesnime esitäht, hinne. kontrolltöö punktid, praktikumide punktide summa.&lt;br /&gt;
&lt;br /&gt;
Tabel on sorteeritud matriklinumbrite järgi.&lt;br /&gt;
&lt;br /&gt;
Kui sa avastad, et sul peaksid punktid teistmoodi olema, siis palun kirjuta tanel.tammet@ttu.ee.&lt;br /&gt;
&lt;br /&gt;
== Kontrolltöö  ==&lt;br /&gt;
&lt;br /&gt;
Kontrolltöö toimub sessi ajal, kaks võimalikku aega, sarnaselt eksamile.&lt;br /&gt;
&lt;br /&gt;
Kuupäevad kontrolltööks on (vali kas 6 või 19 jaanuar, mõlemil tulla ei saa):&lt;br /&gt;
&lt;br /&gt;
* 6 jaanuar ruumis U02-102 kell 15:00 (kõigil sama aeg kell 15, sõltumata matriklinumbrist)&lt;br /&gt;
* 19 jaanuar ruumis U06A-201 kell 12:00 ja kell 15:00 :&lt;br /&gt;
** Paarisarvuga (0,2,4,6,8) lõppeva matriklinumbriga tudengitel palun tulla kell 12:00, &lt;br /&gt;
** paaritu arvuga (1,3,5,7,9) lõppeva matriklinumbriga tudengitel palun tulla kell 15:00.&lt;br /&gt;
&lt;br /&gt;
Kontrolltööle registreeruma ei pea.&lt;br /&gt;
&lt;br /&gt;
[[Võrgurakendused I kontrolltöö sisust]]&lt;br /&gt;
&lt;br /&gt;
Praktikumide tulemused ilmuvad siia aastavahetusel.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
NB! Reedel 16 sept lisa-praksiaega ei ole. See-eest:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Semestri viimase nädala lisa-ajad (lisaks tava-praksiaegadele):&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* esmasp 19 dets on lisa-praksiaeg alates 16-st: koguneme koridoris ICT-401 ees&lt;br /&gt;
* teisip 20 dets toimub loengu ajal ja ruumides lisa-praktikum, mitte loeng.&lt;br /&gt;
* reedel 23 dets lisa-praksiaeg kõigile rühmadele kell 12:00, koguneme koridoris ICT-401 ees&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 &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;08:00-09:30 &amp;lt;/font&amp;gt; ruumis CYB - VEENUS &lt;br /&gt;
&lt;br /&gt;
Praktikume nädalas: 2 tundi (üks praktikum). Praktikumijuhendaid on mitu: põhijuhendaja on Roger Kerse, talle tuleb lisaks abilisi.&lt;br /&gt;
Praktikumid toimuvad eri gruppidele neljal erineval ajal.&lt;br /&gt;
&lt;br /&gt;
* esmaspäeval 12:00-13:30 ruumis ICT-401&lt;br /&gt;
* esmaspäeval 14:00-15:30 ruumis ICT-401&lt;br /&gt;
* kolmapäeval 10:00-11:30 ruumis ICT-501 &lt;br /&gt;
* neljapäeval 08:00-09:30 ruumis ICT-501&lt;br /&gt;
&lt;br /&gt;
Reedel 16 dets lisa-praksiaega ei ole. See-eest:&lt;br /&gt;
&lt;br /&gt;
* esmasp 19 dets on lisa-praksiaeg alates 16-st: koguneme koridoris ICT-401 ees&lt;br /&gt;
* teisip 20 dets toimub loengu ajal ja ruumides lisa-praktikum, mitte loeng.&lt;br /&gt;
* reedel 23 dets lisa-praksiaeg kõigile rühmadele kell 12:00, koguneme koridoris ICT-401 ees&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;
Veebirakenduste põhimõtted ja nende kirjutamise oskus nii brauseri kui serveri poolel. Konkreetsemalt: &lt;br /&gt;
&lt;br /&gt;
* Brauseri põhitehntoloogiad: html-i, CSS-i ja javascripti baasoskused.&lt;br /&gt;
* Serveripoolse rakenduse kirjutamise põhimõtted, &lt;br /&gt;
* cgi protokoll ja erinevate keelte (sh shell, C, php, python, java, javascript) kasutamise ülevaade serverirakendustes&lt;br /&gt;
* Pythoni ja php kasutamise esmased oskused.&lt;br /&gt;
* node.js kasutamise sissejuhatus &lt;br /&gt;
* Lihtsamad SQLi kasutamise oskused.&lt;br /&gt;
&lt;br /&gt;
Kursusel eeldatakse elementaarsete programmeerimisoskuste olemasolu: nende puudumisel ei ole võimalik kursust läbida.&lt;br /&gt;
&lt;br /&gt;
Julgustuseks loe [https://www.reddit.com/r/web_design/comments/3hg1t0/how_to_not_feel_overwhelmed_when_learning_to_code/ seda väikest juttu]&lt;br /&gt;
&lt;br /&gt;
== Praktilised tööd ==&lt;br /&gt;
&lt;br /&gt;
Kursusel on neli kohustuslikku praktilist ẗööd ja üks vabatahtlik praktiline töö. Iga 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 kuni kaks nädalat peale tähtaega, ilma pooli punkte kaotamata.&lt;br /&gt;
* Kui sinu praktikum ei ole õigeaegselt arvestatud, siis on sul esitamiseks aega veel kolm nädalat peale tähtaega (välja arvatud neljas ja viies praks), aga selliselt hilinenud praks annab ainult pooled punktid.&lt;br /&gt;
* Üle kolme nädala hilinenud praks annab edukal arvestamisel ainult üheainsa punkti.&lt;br /&gt;
* Oma tööd saad arvestuseks 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;
Kõik tööd tuleb esitada ise TTÜ arvutiklassis: emailiga saadetud töid ei vaadata. Kasutada võib nii klassi arvuteid kui oma arvutit, brauser ja operatsioonisüsteem on vabalt valitavad. Tööde presenteerimiseks tuleb kasutada ülikooli serverit dijkstra: kõiki prakse vaatavad õppejõud ainult sealt serverist. Kindlasti loe [[Dijkstra server|dijkstra serveri kasutamise õpetust]].&lt;br /&gt;
&lt;br /&gt;
Ülesanded:&lt;br /&gt;
&lt;br /&gt;
* [[ITV0110 1. töö: Html põhioskused|Prax 1: html põhioskused]]. Tähtaeg 14-17 septembri nädal, vastavalt sinu praktikumirühmale. &lt;br /&gt;
* [[ITV0110 2. töö 2016: CSS, javascript|Prax 2: CSS, javascript]]. Tähtaeg 10-14 oktoobri nädal, vastavalt sinu praktikumirühmale. &lt;br /&gt;
* [[ITV0110 3. töö 2016: Serverirakendus: cgi pythonis|Prax 3: serverirakendus: cgi pythonis]]. Tähtaeg lükkus ühe nädala edasi ja on nüüd 15-18 novembri nädal, vastavalt sinu praktikumirühmale. Varem esitamine on samas väga soovitav.&lt;br /&gt;
* [[ITV0110 4. töö 2016: Andmebaasiga serverirakendus|Prax 4: andmebaasiga serverirakendus php-s]].  Tähtaeg 12-16 detsembri nädal, vastavalt sinu praktikumirühmale. &lt;br /&gt;
* [[ITV0110 node.js töö 2016| Prax 5: (vabatahtlik) serverirakendus node.js abil]]. Mittekohustuslik. Tähtaeg 12-16 detsembri nädal, vastavalt sinu praktikumirühmale. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Järgmised ülesanded on lihtsalt tutvumiseks, pärit 2015 aastast ja sellisena neid teha ei tule: 2015 aasta ülesanded tulevad sarnased, nende konkreetne sisu uuendatakse veidi enne eelmise ülesande tähtaja saabumist. &lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kursuse edukaks läbimiseks peavad kõik kohustuslikud praktilised tööd - neli esimest - 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;
== 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] või [http://www.sublimetext.com/ sublime text] või [https://atom.io/ atom]&lt;br /&gt;
* [http://www.mozilla.com Mozilla Firefox] ja [https://www.google.com/intl/en/chrome/browser/ Google Chrome]&lt;br /&gt;
* [http://www.mozilla.com Mozilla Firefoxi] jaoks 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;
== Loengute teemad ja materjalid lugemiseks ==&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;
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 põhiblokk] kunide vormide allpeatükini.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&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;
--&amp;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;
Lisaks olulist: &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;
&lt;br /&gt;
Keerulisemat:&lt;br /&gt;
* [http://www.w3.org/TR/html/ ametlik w3c standard]&lt;br /&gt;
* [http://hsivonen.iki.fi/doctype/ !DOCTYPE prefix] ja html vanade versioonide kuvamine&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* html 5 [http://en.wikipedia.org/wiki/Canvas_element canvas]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&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 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;
--&amp;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;
&amp;lt;!--&lt;br /&gt;
* [http://www.w3.org/MarkUp/Guide/Style.html First CSS intro]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* [http://www.w3schools.com/css/ w3schools&amp;#039;i css tutorial]: põhiosa kuni CSS3 blokini (sealt alates ei ole tingimata esialgu vaja), huvi korral loe edasi. Järgmised on eriti olulised osad:&lt;br /&gt;
** [http://www.w3schools.com/css/css_howto.asp erinevad stiilifailid/blokid ja nende hierarhia]&lt;br /&gt;
** [http://www.w3schools.com/css/css_display_visibility.asp display and visibility]&lt;br /&gt;
** [http://www.w3schools.com/css/css_boxmodel.asp box model]&lt;br /&gt;
** [http://www.w3schools.com/css/css_dimension.asp dimensioonid]&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;
&amp;lt;!--&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 --&amp;gt;&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;
&amp;lt;!--&lt;br /&gt;
* [http://robchadwick.com/TerrainEditor/ terrain editor] --&amp;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. Loe algust, kogu juttu pole tingimata vaja. Keelt siit ei õpi!&lt;br /&gt;
* [http://www.w3schools.com/js/default.asp W3schools javascripti sissejuhatus]: Lisaks põhi-tutorialile alguses on kriitiline JS HTML DOM blokk allpool: kuidas tegelikult htmlist tükke kätte saada ja neid muuta.&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 universaalseid teeke&lt;br /&gt;
&lt;br /&gt;
* [http://www.jquery.com jquery] javascripti teek dom-ga manipuleerimiseks ja ajaxiks&lt;br /&gt;
* [http://underscorejs.org/ underscore] funktsionaalsed pisivahendid&lt;br /&gt;
* [http://getbootstrap.com bootstrap] css + javascript, widgetid jne&lt;br /&gt;
* [https://facebook.github.io/react react] facebooki kapitaalne teek / pool-framework keerukamate kasutajaliideste tegemiseks&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;
&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;
&amp;lt;!-- * [http://impulse.luster.io/ interaktsiooni-animatsioonide teek] --&amp;gt;&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;
* [https://en.wikipedia.org/wiki/Common_Gateway_Interface wikipedia]&lt;br /&gt;
* [http://www.tutorialspoint.com/python/python_cgi_programming.htm cgi sissejuhatus pythonis] ja [http://cgi.tutorial.codepoint.net/hellow-world alternatiiv]&lt;br /&gt;
* [http://www.cs.tut.fi/~jkorpela/forms/cgic.html cgi C keeles]&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;
===  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;
* Vaata [[lihtsaid php ja mysql näiteid]] loengust.&lt;br /&gt;
&lt;br /&gt;
===  SQL  === &lt;br /&gt;
&lt;br /&gt;
Loe selles järjekorras:&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* [http://web.njit.edu/~song/courses/is698/SQL_tutorials.ppt hea esimene sissejuhatus]&lt;br /&gt;
--&amp;gt;&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;
===  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;
&amp;lt;!--&lt;br /&gt;
* [http://dmsa.concordia.ca/tutorial_files/shortsql.ppt mysql PHP-s: ppt] &lt;br /&gt;
--&amp;gt;&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;
&amp;lt;!-- * [http://oreilly.com/catalog/webdbapps/chapter/ch08.html ok sessiooniõpetus] --&amp;gt;&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;
===  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;
&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>