37
Tīmekļa programmēšana 2013. gada rudens semestris

Tīmekļa programmēšana

  • Upload
    rosina

  • View
    34

  • Download
    0

Embed Size (px)

DESCRIPTION

Tīmekļa programmēšana. 20 13 . gada rudens semestris. Lekcijas. Ceturtdien, 16:30 – 19:45 Raiņa bulvāris 29, 413. auditorija. Kontakti. docente Dr.dat. Alina Vasiļjeva [email protected]. Kursa materiāli. Kursa Web lapa http://ante.lv  - PowerPoint PPT Presentation

Citation preview

Page 1: Tīmekļa programmēšana

Tīmekļa programmēšana

2013. gada rudens semestris

Page 2: Tīmekļa programmēšana

Lekcijas

• Ceturtdien, 16:30 – 19:45

Raiņa bulvāris 29, 413. auditorija

Page 3: Tīmekļa programmēšana

Kontakti

• docente Dr.dat. Alina Vasiļ[email protected]

Page 4: Tīmekļa programmēšana

Kursa materiāli

• Kursa Web lapa• http://ante.lv

LU maģ. "Tīmekļa programmēšana" 2013.g. rudens

Tieša saite: http://ante.lv/web-programming-2013/

• Moodle• http://estudijas.lu.lv • DatZ5008

Page 5: Tīmekļa programmēšana

Google grupa diskusijām• Grupas nosaukums: Web Programming LU 2013

• Grupas mājas lapa: http://groups.google.com/group/web-programming-lu-2013

• Grupa ir paredzēta vispārīgu jautājumu apspriešanai, kas varētu interesēt visus kursa dalībniekus• Praktisko darbu precizējumi• Tehnisko grūtību atrisināšana• utml

Page 6: Tīmekļa programmēšana

Kursa prasības

• 1.praktiskais darbs (obligāts): 30% (25% + 5%), min 15%

• 2.praktiskais darbs (obligāts): 30% (25% + 5%), min 15%

• 3.praktiskais darbs (obligāts): 25% (20% + 5%), min 10%

• Individuālie mājasdarbi (neobligāti): 15% + 15%

• Izvēļu testi (neobligāti): 10%

• Negaidīti mazie mājasdarbi (neobligāti): max 10%

• Konferences (neobligāti): max 10%

Page 7: Tīmekļa programmēšana

Praktiskie darbi

• Darbus var pildīt individuāli, vai divu cilvēku komandās

• Komandas ir jāpiesaka līdz 23.09.2013 pa e-pastu

• Komandas gadījumā katram cilvēkam ir jāpiedalās katra darba izstrādē un jāmāk paskaidrot gan sevis izpildītas uzdevuma daļas, gan arī visu risinājumu kopumā!!!

Page 8: Tīmekļa programmēšana

Praktiskie darbi• 1. PD (30%)• Uzdevums: Java konsoles programma. Datu iegūšana no

tīmekļa (HTTP klients), datu saglabāšana datubāzē.• Termiņš: 11. novembris (check point: 28. oktobris)

• 2. PD (30%)• Uzdevums: Spring MVC tīmekļa portāls• Termiņš: 9. decembris (check point: 25. novembris)

• 3. PD (25%)• Uzdevums: Rich GUI un Ajax tīmekļa portāls• Termiņš: 19. decembris

Page 9: Tīmekļa programmēšana

Praktiskie darbi• Kavējuma sods

• Par katru nokavētu dienu 0,5 punkti tiek atskaitīti:• 10 dienu garumā ‘check point’ gadījumā• 10 dienu garumā gala termiņa gadījumā

• PĒC 10 DIENĀM IESNIEGT VAIRS NEDRĪKST !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

• Problēmu gadījumā SAVLAICĪGI informēt pasniedzēju!!!

• Darbus vajadzēs iesūtīt pa e-pastu

• Sesijas laikā visus darbus vajadzēs aizstāvēt klātienē

Page 10: Tīmekļa programmēšana

Praktiskie darbi

• Kavējuma soda piemērs

• Iesniegšanas termiņš = 11.11.2013

• Darbs iesūtīts:

• 11.11.2012 max atzīme = 30

• 12.11.2012 max atzīme = 29,5

• 13.11.2012 max atzīme = 29

• .....

• 21.11.2012 max atzīme = 25

• 22.11.2012 FAILED!!!

Page 11: Tīmekļa programmēšana

Extra credit

• Praktiskajiem darbiem papildus pamata prasībām tiks definēti arī “extra credit” uzdevumi, par kuriem būs iespējams iegūt papildus punktus

• Extra credit uzdevumus drīkst pildīt līdz sesijas beigām• “līdz sesijas beigām” = darbu jāiesūta vismaz 60

stundas pirms nākšanas uz eksāmenu

Page 12: Tīmekļa programmēšana

Individuālas prakt. darbu tēmas

• Ja Jūsu pieredze tīmekļa programmēšanā ir attīstījusies citā virzienā un vēlaties kursa laikā programmēt citas tīmekļa lietojumprogrammas, tad piesakoties pirmajās 2 nedēļās varat piedāvāt savu praktisko darbu virkni

Page 13: Tīmekļa programmēšana

Individuālie mājasdarbi

• Nav obligāti

• Pirmo uzdevumu izlozē – tiks piedāvāti 3 varianti, var izvēlēties kuru pildīt

• Otro uzdevumu var brīvi izvēlēties

• Termiņš – līdz sesijas beigām• “līdz sesijas beigām” = darbu jāiesūta vismaz 60

stundas pirms nākšanas uz eksāmenu

Page 14: Tīmekļa programmēšana

Izvēļu testi

• Būs pieejami Moodle vidē semestra beigās

• Nav obligāti

Page 15: Tīmekļa programmēšana

Negaidīti mazie mājasdarbi

• Iespējams, tiks uzdoti lekciju laikā

• Izpildes termiņš: 1 nedēļa

• Maksimāls punktu skaits, kurus būs iespējams iegūt: 10%

Page 16: Tīmekļa programmēšana

Konferences

• Motivācija:• vairāk iesaistīt studentus mācību procesā • padarīt lekcijas interaktīvākās• dalīties ar pieredzi

• Veltītas konkrētai tēmai• NoSQL datubāzes, MVC ietvari, Ajax ietvari utml

• Studenti veiks 10-15 minūtes ilgas prezentācijas

• Pēc prezentācijām notiks kopēja diskusija

• Maksimāls punktu skaits: 10%

Page 17: Tīmekļa programmēšana

Jautājumi ???

Page 18: Tīmekļa programmēšana

Maģistra darbi

Pieredze: 16 veiksmīgi aizstāvēti vadītie maģistra darbi

1.Visdažādākās tēmas, kas saistītas ar tīmekli un programmēšanu

2.Kvantu skaitļošana

Nāciet runāt...Nāciet runāt...Rakstiet e-pastus... Rakstiet e-pastus...

Page 19: Tīmekļa programmēšana

Kursa saturs

Page 20: Tīmekļa programmēšana

Internets mūsdienās

• Mūsdienās VISI zina kas ir Internets un

VISI izmanto Internetu

• Bet mūs, kā datoriķus, interesē kā veidot tīmekļa lietojumprogrammas

gan mazuļi gan vecmammiņas

Page 21: Tīmekļa programmēšana

Kursa mērķis

• Kursa mērķis ir iepazīties ar dažādām Java un Java Enterprise Edition tehnoloģijām, kas noder tīmekļa lietojumprogrammu veidošanai

Kas ir Kas ir tīmekļa tīmekļa

lietojumprogramma ???lietojumprogramma ???

Page 22: Tīmekļa programmēšana
Page 23: Tīmekļa programmēšana

Kursa saturs (1., 2. lekcija)

• Java programmēšanas valodas svarīgāko elementu pārskats

• Rīki un palīglīdzekļi, kuru izmantošana atvieglo programmētāja dzīvi un darba pieredze ar kuriem ir nepieciešama mūsdienu programmētājam:• Integrētas izstrādes vide Eclipse• Versiju kontroles rīki Git un Subversion• Projektu pārvaldības un būvēšanas rīki Maven un Ant

Page 24: Tīmekļa programmēšana

Kursa saturs (3. lekcija)

• Spring Framework – lietojumprogrammu izstrādes ietvars Java platformai

• Vispārīgs Spring ietvara pārskats

• Spring moduļi

• ”Atkarību injicēšanas” princips (Dependency Injection)

• ”Kontroles inversijas” konteineris (Inversion of Control)

Page 25: Tīmekļa programmēšana

Kursa saturs (4. lekcija)

• HTTP protokols • HTTP klientu programmēšana Java valodā

• Tīmekļa datu apmaiņas formāti• JSON, XML, YAML un citi

• Programmatiskā apstrāde, lasīšana, ģenerēšana

• XML apstrāde: DOM, SAX un citas pieejas

Page 26: Tīmekļa programmēšana

Kursa saturs (5.,6. lekcija)

• Datubāzes piekļuve

• Java Database Connectivity (JDBC)

• Objektu-relāciju attēlojums (Object-Relational Mapping)

• Java Persistence API ietvars

• Java Persistence Query Language (JPQL)

• Hibernate ietvars

Page 27: Tīmekļa programmēšana

Kursa saturs (6.,7. lekcija)

• NoSQL datubāzes• Key-Value Stores

• Document Stores

• Graph Databases

• Multivalue databases

• Object databases

• Spring Data:• Redis (key-value store)

Page 28: Tīmekļa programmēšana

Kursa saturs (7. lekcija)

• Žurnalēšanas ietvars log4j

• Vienību testēšana• JUnit

• Mockito

• Spring Test Framework

Page 29: Tīmekļa programmēšana

Kursa saturs (8. lekcija)

• Pārskata lekcija par moderno tīmekli

• HTML5, CSS3 interesantākie elementi

• Node.js

Page 30: Tīmekļa programmēšana

Kursa saturs (9. lekcija)

• Tīmekļa lietojumprogrammu arhitektūra un darbības pamatprincipi• Tīmekļa serveri, lietojumprogrammu serveri

• Tīmekļa lietojumprogrammas komponenti

• Moduļa (WAR) struktūra

• Tīmekļa lietojumprogrammas konfigurācija (web.xml fails)

• Tīmekļa lietojumprogrammu izvietošana (deployment) uz servera

• Java Enterprise Edition: tīmekļa lietojumprogrammu izstrādes platforma

Page 31: Tīmekļa programmēšana

Kursa saturs (9. lekcija)

• Tīmekļa lietojumprogrammu arhitektūra un darbības pamatprincipi• Tīmekļa serveri, lietojumprogrammu serveri

• Tīmekļa lietojumprogrammas komponenti

• Moduļa (WAR) struktūra

• Tīmekļa lietojumprogrammas konfigurācija (web.xml fails)

• Tīmekļa lietojumprogrammu izvietošana (deployment) uz servera

• Java Enterprise Edition: tīmekļa lietojumprogrammu izstrādes platforma

Page 32: Tīmekļa programmēšana

Kursa saturs (10. lekcija)

• Java Servlet tehnoloģija

• Servlet - Java programma, kas tiek darbināta uz tīmekļa servera, apstrādā HTTP pieprasījumus un veido tīmekļa lapas

Page 33: Tīmekļa programmēšana

Kursa saturs (11. lekcija)

• JavaServer Pages (JSP) tehnoloģija• servera puses Java tehnoloģija, kas ļauj veidot

dinamiski ģenerētas tīmekļa lapas HTML formātā

• JSTL tagu bibliotēka

Page 34: Tīmekļa programmēšana

Kursa saturs (11., 12., 13. lekcijas)

• Spring Web MVC

ietvars tīmekļa lietojumprogrammu izstrādei

• Tīmekļa lietojumprogrammu testēšana• Selenium

• HttpUnit

Page 35: Tīmekļa programmēšana

Kursa saturs (14. lekcija)

• Tīmekļa pakalpes (Web servisi)

• Tīmekļa servisu dažādi izmantošanas stili –

SOA un REST

• SOA tīmekļa servisu standarti – SOAP, WSDL

• RESTful tīmekļa servisi

• Tīmekļa servisu izstrāde ar JAX-WS un JAX-RS lietojumprogrammas saskarnēm

Page 36: Tīmekļa programmēšana

Kursa saturs (15. lekcija)

• Bagātīgas tīmekļa lietojumprogrammas

(Rich Internet Applications)

• Ajax - bagātīgu tīmekļa lietojumprogrammu izstrādes tehnoloģiju kopa

• Comet (Ajax Push)

Page 37: Tīmekļa programmēšana

Kursa saturs (15., 16. lekcijas)

RIA un Ajax ietvari

•Google Web Toolkit ietvars (GWT)

•jQuery bibliotēka