Võrgurakendused I 2018: erinevus redaktsioonide vahel

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti
Resümee puudub
Resümee puudub
15. rida: 15. rida:
</table>
</table>


== Aeg, koht, tulemus ==


==  <font color="red">Tulemused</font> ==
Loenguid nädalas: 2 tundi (üks loeng) teisipäeviti <font color="red">08:00-09:30 </font> ruumis CYB - VEENUS
 
2015 sügissemestri tulemused on [[Võrgurakendused I 2015 sügis: tulemused|siin]].
 
 
 
<!--
== <font color="red">Kontrolltöö</font> ==
 
<font color="red">NB! Järel-ülevaatamist</font> vajavad praktikatööd vaadatakse üle mitte sel reedel peale kontrolltöö lõppu, vaid kahel järgneval ajal, palun vali ise endale sobiv:
* Teisipäeval, 19 jaanuaril kell 16:00 IT majas III korrusel kabinetis ICT-312
* Kolmapäeval, 20 jaanuaril kell 16:00 IT majas IV korrusel kabinetis ICT-411
 
Kontrolltöö toimub sessi ajal. Kontrolltöö on kohustuslik ja annab 40% kursuse kogupunktidest.
 
Saad valida ühe kahest ajast:
* Teisipäev, 05.01.2016 kell 09:00, auditooriumis U02-102 (aula taga)
* Reede, 15.01.2016 kell 14:00, auditooriumis U06A-201 (VI korpus)
 
Kontrolltööle registreeruma ei pea. Kaasa tuleb võtta isikut tõendav dokument. Materjale, arvuteid ja mobiiltelefone kasutada ei või.
 
Arvestuse saamiseks peavad olema tehtud neli praktikumi ja kontrolltöö: viimane vähemalt 30% ulatuses.
 
Kontrolltöö koosneb osalt valikvastustest ja osalt pisi-koodijuppide täiendamisest ja kirjutamisest järgmistel teemadel:
html, css, javascript, python cgi rakendustes, php, cgi konventsioon parameetrite edastamisel, sessioonid, cookied, ajax.
Eksootilisi tage, css-i parameetrinimesid ja javascripti teegifunktioonide nimesid meelde jätma ei pea: need antakse kas küsimuses ette või
võib kirjutada "enamvähem sinnapoole" nime. Lihtsamad tagid nagu p, h1, div, table, a, img peavad siiski olema meeles.
 
Hea mõte on teha soenduseks läbi need väikesed w3schools testid:
[http://www.w3schools.com/html/html_quiz.asp html],
[http://www.w3schools.com/css/css_quiz.asp css],
[http://www.w3schools.com/js/js_quiz.asp javascript],
[http://www.w3schools.com/php/php_quiz.asp php].
Need testid ei kata kogu küsitavat materjali ning kontrolltöö sisaldab ka pisi-koodikirjutamis-ülesandeid, mida w3schools testid ei sisalda.
 
 
-->
<!--
 
== <font color="red">Külalisloeng</font> ==
 
Neljapäeval kell 12:15 annab loengu veebiliideste guru Martin Grüner, kes on aktiivselt tegev Garage48 korraldamises ning on mh selliste projektide käivitaja ja autor nagu http://aplefly.com/ http://meieraha.eu/ http://www.menyyd.ee/
 
-->
 
<!--  
== <font color="red">Kontrolltöö jaanuaris</font> ==


Kursuse tulemused peale kontrolltööd on [[itv0110 2014 tulemused|siin tabelis]] (ainult kontrolltööl osalenute tulemused).
Praktikume nädalas: 2 tundi (üks praktikum). Praktikumijuhendaid on mitu: põhijuhendaja on Roger Kerse, talle tuleb lisaks abilisi.
Praktikumid toimuvad eri gruppidele neljal erineval ajal.


Tulbad: matriklinumber, initsiaalid, prax1, prax2, prax3, prax4, prax5, kontrolltöö, praksid kokku, kontrolltöö skaalal 0-40, punktisumma kokku, hinne.
* esmaspäeval 12:00-13:30 ruumis ICT-401
 
* esmaspäeval 14:00-15:30 ruumis ICT-401
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 "kontrolltöö skaalal 0-40" ja "punktisumma kokku" väärtus 0; kel on täidetud, on kursus positiivse hindega lõpetatud.
* kolmapäeval 10:00-11:30 ruumis ICT-501  
 
* neljapäeval 08:00-09:30 ruumis ICT-501
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.
 
 
 
Kontrolltöö tuleb kirjutada paberile, materjale kasutada ei või. Küsimusi on järgmise viie teema osas: html & css, javascript & ajax, cgi & python, php & sql, sessioonid & 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 & css tagid, parameetrid ja süntaks peaksid siiski meeles olema.
-->
 
== Aeg, koht, tulemus ==
 
Loenguid nädalas: 2 tundi (üks loeng) neljapäeviti <font color="red">12:15-13:45 </font> ruumis CYB - VEENUS
 
Praktikume nädalas: 2 tundi (üks praktikum). Praktikumijuhendaid on mitu: põhijuhendaja on Roger Kerse, lisaks on esmaspäeviti abiks Artur Luik ning esmaspäeviti ja kolmapäeviti Triin Lakspere. Praktikumi-tähtaja nädalatel on Triin kõigil päevadel, samuti toetab nendel nädalatel Priit Järv.
Praktikumid toimuvad:
* esmaspäeval 10:00-11:30 ruumis ICT-501 rühmadele  IABB37,  IAPB31,  IAPB32
* esmaspäeval 12:00-12:30 ruumis ICT-501 rühmadele  IABB31,  IABB32
* kolmapäeval 10:00-11:30 ruumis ICT-501 rühmadele  IAPB33,  IAPB37,  IATM11
* neljapäeval 10:00-11:30 ruumis ICT-501 rühmadele  IABB33,  IAPB34,  IAPB35


Kursus lõpeb hindelise arvestusega. Hinne sõltub kursuse jooksul tehtud praktikumide tulemustest (60%) pluss kursuse lõpus toimuva kontrolltöö tulemustest (40%).
Kursus lõpeb hindelise arvestusega. Hinne sõltub kursuse jooksul tehtud praktikumide tulemustest (60%) pluss kursuse lõpus toimuva kontrolltöö tulemustest (40%).
96. rida: 35. rida:
* Brauseri põhitehntoloogiad: html-i, CSS-i ja javascripti baasoskused.
* Brauseri põhitehntoloogiad: html-i, CSS-i ja javascripti baasoskused.
* Serveripoolse rakenduse kirjutamise põhimõtted,  
* Serveripoolse rakenduse kirjutamise põhimõtted,  
* cgi protokoll ja erinevate keelte (sh shell, C, php, python, java, javascript) kasutamise sissejuhatus serverirakendustes
* cgi protokoll ja erinevate keelte (sh shell, C, php, python, java, javascript) kasutamise ülevaade serverirakendustes
* Pythoni ja php kasutamise esmased oskused.
* Pythoni ja php kasutamise esmased oskused.
* node.js kasutamise sissejuhatus  
* node.js kasutamise sissejuhatus  
120. rida: 59. rida:


* [[ITV0110 1. töö: Html põhioskused|Prax 1: html põhioskused]]. Tähtaeg 14-17 septembri nädal, vastavalt sinu praktikumirühmale.  
* [[ITV0110 1. töö: Html põhioskused|Prax 1: html põhioskused]]. Tähtaeg 14-17 septembri nädal, vastavalt sinu praktikumirühmale.  
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.
* [[ITV0110 2. töö 2015: CSS, javascript|Prax 2: CSS, javascript]]. Tähtaeg 12-15 oktoobri nädal, vastavalt sinu praktikumirühmale.  
* [[ITV0110 2. töö 2015: CSS, javascript|Prax 2: CSS, javascript]]. Tähtaeg 12-15 oktoobri nädal, vastavalt sinu praktikumirühmale.  
* [[ITV0110 3. töö 2015: Serverirakendus: cgi pythonis|Prax 3: serverirakendus: cgi pythonis]]. Tähtaeg 8-12 novembri nädal, vastavalt sinu praktikumirühmale.  
* [[ITV0110 3. töö 2015: Serverirakendus: cgi pythonis|Prax 3: serverirakendus: cgi pythonis]]. Tähtaeg 8-12 novembri nädal, vastavalt sinu praktikumirühmale.  
* [[ITV0110 4. töö 2015: Andmebaasiga serverirakendus|Prax 4: andmebaasiga serverirakendus php-s]].  Tähtaeg 14-17 detsembri nädal, vastavalt sinu praktikumirühmale.  
* [[ITV0110 4. töö 2015: Andmebaasiga serverirakendus|Prax 4: andmebaasiga serverirakendus php-s]].  Tähtaeg 14-17 detsembri nädal, vastavalt sinu praktikumirühmale.  
* [[ITV0110 node.js töö| Prax 5: (vabatahtlik) serverirakendus node.js abil]]. Mittekohustuslik. Tähtaeg 14-17 detsembri nädal, vastavalt sinu praktikumirühmale.  
* [[ITV0110 node.js töö| Prax 5: (vabatahtlik) serverirakendus node.js abil]]. Mittekohustuslik. Tähtaeg 14-17 detsembri nädal, vastavalt sinu praktikumirühmale.  
<!--
Järgmised ülesanded on lihtsalt tutvumiseks, pärit 2014 aastast ja sellisena neid teha ei tule: 2015 aasta ülesanded tulevad sarnased, nende konkreetne sisu uuendatakse veidi enne eelmise ülesande tähtaja saabumist.
* [[ITV0110 3. töö 2014: Serverirakendus: cgi pythonis|Prax 3: serverirakendus: cgi pythonis]]. Tähtaeg 9-12 novembri nädal, vastavalt sinu praktikumirühmale. <font color="red">NB!</font> sissejuhatus 3. praksi koos serverirakenduste põhialustega antakse 8. oktoobri loengus.
-->
<!--
Järgmine ülesanne on lihtsalt tutvumiseks, pärit 2013 aastast ja sellisena neid teha ei tule.
2014 aasta ülesanne tuleb veidi erinev ning antakse jooksvalt eelmise ülesande tähtaja lähenedes.
* [[ITV0110 3. töö: Serverirakendus: cgi pythonis]]. Tähtaeg 20/21 november. Kaugõppe tähtaeg 30. november.
* [[ITV0110 4. töö: Andmebaasiga serverirakendus php-s|Andmebaasiga serverirakendus php-s]]. Tähtaeg 18/19. detsember. Kaugõppe tähtaeg on kontrolltöö aeg jaanuaris.
-->


Kursuse edukaks läbimiseks peavad kõik kohustuslikud praktilised tööd - neli esimest - olema tehtud.
Kursuse edukaks läbimiseks peavad kõik kohustuslikud praktilised tööd - neli esimest - olema tehtud.


Lehtede kujundamise ja stiili osas lähtu [[htmli kujunduse üldpõhimõtted| sellest juhendist]].
Lehtede kujundamise ja stiili osas lähtu [[htmli kujunduse üldpõhimõtted| sellest juhendist]].
<!--
== Leitud asju ==
Vaata seda: http://keithclark.co.uk/articles/creating-3d-worlds-with-html-and-css/
-->


== Vajalikud tööriistad ==
== Vajalikud tööriistad ==
152. rida: 75. rida:
Oma arvutiga töö tegemiseks peab seal olema vähemalt
Oma arvutiga töö tegemiseks peab seal olema vähemalt


* [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]
* [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]
* [http://www.mozilla.com Mozilla Firefox] ja [https://www.google.com/intl/en/chrome/browser/ Google Chrome]
* [http://www.mozilla.com Mozilla Firefox] ja [https://www.google.com/intl/en/chrome/browser/ Google Chrome]
* [http://www.mozilla.com Mozilla Firefoxi] jaoks installi endale [https://getfirebug.com/ firebug] plugin
* [http://www.mozilla.com Mozilla Firefoxi] jaoks installi endale [https://getfirebug.com/ firebug] plugin

Redaktsioon: 6. september 2016, kell 04:33

mootor
mootor

Ainekood: ITV0110
Link: http://www.lambda.ee/index.php/V%C3%B5rgurakendused_I Punkte: 3.5 AP ehk 5 EAP
Lektor: Tanel Tammet
Kontakt: tanel.tammet@ttu.ee, 6203457
olemas on ka 2015 aasta arhiiv koos kõigi eelmise aasta materjalidega.

Aeg, koht, tulemus

Loenguid nädalas: 2 tundi (üks loeng) teisipäeviti 08:00-09:30 ruumis CYB - VEENUS

Praktikume nädalas: 2 tundi (üks praktikum). Praktikumijuhendaid on mitu: põhijuhendaja on Roger Kerse, talle tuleb lisaks abilisi. Praktikumid toimuvad eri gruppidele neljal erineval ajal.

  • esmaspäeval 12:00-13:30 ruumis ICT-401
  • esmaspäeval 14:00-15:30 ruumis ICT-401
  • kolmapäeval 10:00-11:30 ruumis ICT-501
  • neljapäeval 08:00-09:30 ruumis ICT-501

Kursus lõpeb hindelise arvestusega. Hinne sõltub kursuse jooksul tehtud praktikumide tulemustest (60%) pluss kursuse lõpus toimuva kontrolltöö tulemustest (40%).

Kursuse eesmärk

Veebirakenduste põhimõtted ja nende kirjutamise oskus nii brauseri kui serveri poolel. Konkreetsemalt:

  • Brauseri põhitehntoloogiad: html-i, CSS-i ja javascripti baasoskused.
  • Serveripoolse rakenduse kirjutamise põhimõtted,
  • cgi protokoll ja erinevate keelte (sh shell, C, php, python, java, javascript) kasutamise ülevaade serverirakendustes
  • Pythoni ja php kasutamise esmased oskused.
  • node.js kasutamise sissejuhatus
  • Lihtsamad SQLi kasutamise oskused.

Kursusel eeldatakse elementaarsete programmeerimisoskuste olemasolu: nende puudumisel ei ole võimalik kursust läbida.

Julgustuseks loe seda väikest juttu

Praktilised tööd

Kursusel on neli kohustuslikku praktilist ẗööd ja üks vabatahtlik praktiline töö. Iga töö annab 0-12 punkti. Hilinenud tööd annavad poole punktidest. Töid võib (ja on soovitav) esitada enne tähtaega.

NB!

  • Kui sinu praktikum on õigeaegselt arvestatud, siis saad esitada täiendusi kuni kaks nädalat peale tähtaega, ilma pooli punkte kaotamata.
  • 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.
  • Üle kolme nädala hilinenud praks annab edukal arvestamisel ainult üheainsa punkti.
  • Oma tööd saad arvestuseks esitada ainult 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.

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 serveri kasutamise õpetust.

Ülesanded:

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.

Kursuse edukaks läbimiseks peavad kõik kohustuslikud praktilised tööd - neli esimest - olema tehtud.

Lehtede kujundamise ja stiili osas lähtu sellest juhendist.

Vajalikud tööriistad

Oma arvutiga töö tegemiseks peab seal olema vähemalt

Loengute teemad ja materjalid lugemiseks

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.


HTML põhioskused

Loe ja proovi läbi (st vaja põhimõtted selgeks õppida):

Vanemates tutorialites toodud markup on reeglina endiselt pädev, v.a. xhtml ja päised: sina kasuta html5 standardit (päises <!DOCTYPE html>) ja ignoreeri xml teemat html-s.

Lisaks olulist:

Keerulisemat:

CSSi põhioskused

Lugeda ja proovida läbi (st vaja põhimõtted selgeks õppida):

Abiks on tutvuda heade tutorialidega järgmistel teemadel:

Häid praktilisi soovitusi kujundusest css-ga:

Vingeid graafilisi canvas+webgl asju:

Javascripti põhioskused

Kaks loengut: (a) sissejuhatus (b) reaalne kasutamine brauseris (html ja css muutmine, evendid jne)

Vaata soenduseks/demoks Google kogutud näiteid.

Seejärel loe läbi ja proovi järgi selles järjekorras:

NB! Selle tulemusena on sul baasettekujutus javascripti keelest, aga mitte reaalsest kasutusest (seda vaatame järgmises loengus).

Javascripti kasutamine brauseris: alustuseks on hea vaadata põhjalikku näidete loetelu

ja tingimata lugeda sinna juurde teegijuhendeid:

Javascripti ja css-i teegid: uurime veidi kõige populaarsemaid teeke

Veebirakenduse optimeerimine mobiilile

Täiendavalt spetsiifilisematest teemadest:



Cgi töötlemine eri keeltes (C, python, bash, java, ...)

Kõigepealt loe ja proovi tingimata ise läbi teha: pythoni cgi-d dijkstra serveris: kiire sissejuhatus

Seejärel vaata hulka näiteid, mille täpsem seletus antakse loengus.

Tutvu linuxi shelli elementaarsete käskudega siit alustades ja selle lühiõpetusega jätkates. Iga käsu juures on abiks man, näiteks man ls. Huvi korral googelda lisaks.


Seejärel loe neid materjale CGI protokollist ja CGI programmidest serveris:

ning siis vaata lisaks loengus tehtud/proovitud lihtsaid cgi programminäiteid eri keeltes.

Cgi jaoks on olemas ka nö rfc-standard, mille lugemine on aga pisut vaevarikas (nagu enamikel standarditel) ja üldjuhul on praktilisem lugeda hoopis ülaltoodud õpetusi ja vaadata näiteid.

Python ja näiteid kasutamisest serverirakendustes

Tutvumine kolmanda praktikumiga: ITV0110 3. töö: Serverirakendus: cgi pythonis. Praksi jaoks vajaliku koodi kirjutamise harjutamine (loengus etteprogrammeerimine).

Sealt leiad ka soovitused esmatutvuseks Pythoniga (praktikumi jaoks piisab kõige lihtsamatest Pythoni konstruktsioonidest ja cgi teegist, keerukamaid asju pole otseselt vaja):

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:


Ajax ehk serveriga andmevahetus otse javascriptist

Lisaks võib abi olla:

NB:

  • Vanade IE-de erivariante ei ole mingit mõtet kasutada.
  • Ajaxiga avatud urlilt võib tulla mis iganes tekst (ei pea olema xml).

Serverirakendused PHP-s, näited

SQL

Loe selles järjekorras:


SQL serverirakendustes

Harilikud tutorialid ja tähelepanekud:

Sessioonid, cookied, sisselogimine, autentimine, web storage

Mõned lingid:


node.js sissejuhatus

node.js on süsteem serverirakenduste kirjutamiseks javascriptis. Ta on ehitatud chrome javascripti mootori peale ja lisab sinna hulgem kasulikke teeke, veebiserveri jne.

Vaata:

Seejärel installeeri enda arvutisse node.js ja alusta katsetamist:

Veebiserveri ehitusest ja konfigureerimisest

Kõigepealt tutvu või tuleta meelde http protokolli põhimõtteid:

Veebiserverist paremaks arusaamiseks tasub veidi eksperimenteerida pisikese veebiserveriga.

Enimkasutatav veebiserver Apache:

Apache konfigureerimisest: