Meeskond "WPX": Difference between revisions

From ICO wiki
Jump to navigationJump to search
Akannus (talk | contribs)
No edit summary
Htamm (talk | contribs)
 
(40 intermediate revisions by 2 users not shown)
Line 1: Line 1:
===Liikmed===
==Liikmed.==
* Heiki Tamm
* Heiki Tamm
* Alfi Kannus
* Alfi Kannus
*Mailis Toompuu
* Mailis Toompuu


Projekt: ITK Tunniplaani Rakendus (hiljem ka teistel kõrgkoolidel TTK jne, kes kasutavad Õisi)
Projekt:Tunniplaani Rakendus


==Probleem==
==Eesmärgid.==
*Luua tunniplaani rakendus, mis vastavalt isikule kuvaks tema isiklikku tunniplaani.
*Tunniplaani rakendust peaks olema võimalik ka kasutada teistes koolides, mis kasutavad Õisi süsteeme. (nt. TTK)
*Windows Phone 7, Android, iPhone
 
==Probleemid.==
*Tudengid soovivad oma uute nutitelefonidega tunniplaani vaadata telefonist. Kuidas seda teha?
*Tudengid soovivad oma uute nutitelefonidega tunniplaani vaadata telefonist. Kuidas seda teha?
*Mis formaadis saame tunniplaani Õisist?
*Mis formaadis saame tunniplaani Õisist?
*Kuidas andmeid lugeda jsoni formaadist?
*Kuidas andmeid lugeda jsoni formaadist?
*Kuidas andmeid lugeda iCali formaadist?
*Kuidas andmeid lugeda iCali formaadist?
*Kuidas andmed kätte saada?
*Kumba on targem kasutada?
*Kuidas andmed kätte saada vastavalt formaadile?
*Kuidas andmed viisakalt formeerida ning kuvada?
*Kuidas andmed viisakalt formeerida ning kuvada?
*Kuidas andmed sorteerida päevadeks ning neid eraldi kuvada?
*Kuidas andmed sorteerida päevadeks ning neid eraldi kuvada?
*Kuidas kõik tööle panna Windows Phone 7 peal?
*Kuidas kõik tööle panna Windows Phone 7 peal?
*Kuidas tööle saada iPhonel ja Androidil=
*Kuidas tööle saada iPhonel ja Androidil


==Tegevustik.==
===1. Päev - Esmaspäev  28.03.11===
===1. Päev - Esmaspäev  28.03.11===


* Saime terve tunniplaani feedi json formaadis ning tegeleme selle töötlemisega.
* Saime terve tunniplaani feedi json formaadis ning tegeleme selle töötlemisega.
 
https://itcollege.ois.ee/schedule?format=json
* Saime idee võtta json-i asemel ical fail ja sellele parser teha  
* Saime idee võtta json-i asemel ical fail ja sellele parser teha
https://itcollege.ois.ee/schedule/ical?format=ical


*Lugesime usinalt XNA ja C# raamatuid.
*Lugesime usinalt XNA ja C# raamatuid.




===2. Päev- Teisipäev 29.03.11===
===2. Päev- Teisipäev 29.03.11===


* Andmete töötlemine iCali failist.
* Andmete töötlemine iCali failist.
Line 33: Line 41:


*iCali struktuur
*iCali struktuur
'''4''' element on alguskuupäev ja kellaaeg
*'''4.''' element on alguskuupäev ja kellaaeg
'''5''' element on lõpukuupäev ja kellaaeg
*'''5.''' element on lõpukuupäev ja kellaaeg
'''6''' element on õppeaine nimetus
*'''6.''' element on õppeaine nimetus
'''7''' on selgitus
*'''7.''' on selgitus
'''8''' on ruumi nimi
*'''8.''' on ruumi nimi
 
* Parser trükkis välja kogu andmevoost algusekuupäeva ja kellaaja, lõpukuupäeva ja kellaaja, õppeaine, selgituse ja ruuminime. <br /><br />
 
===3. Päev- Kolmapäev 30.03.11===
* Saime parseri normaalselt näitama kuupäeva ja kellaaega, alguses näitas ameerikalikult ning kõike lihtsalt numbrijadana.
<code>
<source lang="csharp">
public DateTime TeisendaKuupaev(string strKuuPaev)
        {
            var dtfi = new DateTimeFormatInfo();
            dtfi.FullDateTimePattern = "yyyyMMddTHHmm";
            return DateTime.ParseExact(strKuuPaev.Substring(0, strKuuPaev.Length - 3), "yyyyMMddTHHmm", dtfi);
        }
</source></code><br />
*Olime hädas Windows Phone 7 Simulaatoriga, kuid saime lõpuks peale pikka pusimist hakkama. <br /><br />
 
===4. Päev- Neljapäev 31.03.11===
 
* Parser sorteerib ja formeerib kõik andmed itcollege tunniplaanist ning tunneb täpitähti.
 
*Kuna iCali tunniplaani faili alguses olev esimene kuupäev on 17 märts 2010 siis, kuidas saada koodijupp kuvama päevi alates tänasest, mitte faili algusest.
 
*Kuidas saada nädalapäevi eraldi lehtedena ning, et Windows Phone kuvaks ning "tunneks" nädalapäevi, ning kuvaks neid eraldi lehtedel päistena.<br />
<code>
<source lang="csharp">
  // Esialgne versioon nädalapäevade tundmiseks
 
      string nadalapaev = "";
                var npaev = (int) dateValue.DayOfWeek;
                switch (npaev)
                {
                    case 1:
                        nadalapaev = "Esmaspäev";
                        break;
                    case 2:
                        nadalapaev = "Teisipäev";
                        break;
                    case 3:
                        nadalapaev = "Kolmapäev";
                        break;
                    case 4:
                        nadalapaev = "Neljapäev";
                        break;
                    case 5:
                        nadalapaev = "Reede";
                        break;
                    case 6:
                        nadalapaev = "Laupäev";
                        break;
                    case 7:
                        nadalapaev = "Pühapäev";
                        break;
                    default:
                        nadalapaev = "nädalapäev määramata";
                        break;
                }
</source></code><br />
 
===5. Päev-  Reede 01.04.11===
*Esialgne versioon rakendusest on valmis Windows Phone 7-me jaoks. Täpselt natukene ennem tähtaega 09.56.
 
*Väga algus staadiumis on ka iPhone veebirakendus, mis kuvab ennast juba iPhonel täisekraanil ning näib kui päris iPhones asuv rakendus, kuid tunniplaani veel ei kuva.
 
==Materjalid, mis abistasid/abistavad.==
*"Programming Microsoft ASP.NET 3.5" - Dino Esposito - 2008
*"Microsoft XNA Framework Edition: Programming Windows Phone 7" - Charles Petzold - 2010
*"Micosoft Visual C# 2008" - John Sharp - 2008
*TÄNAME ka väga HEIKI TÄHIST!
 
==Mida õppisime?==
*iCali parsimine.
*Meeskonnatöö ei ole lihtne. Meeskonnas peab olema kindlasti liider.
*Vastavate programmeerimis keelte API-d tuleks eelnevalt läbi lugeda, mitte töö protsessi ajal.
*Eelnevalt võiks olla paigas kindel projekti visioon ja tegevuskava.
*Täiesti tundmatu uue asjaga tegelema hakkamine on alguses väga tööd ja aega nõudev.
*Intensiivõppe nädala mõttes, pole projekt enam õppimise kohaks.
*Targemaks saime C# keeles
*Kuidas Windows Phone 7 rakendust täpselt luua.
*Windows Phone 7 veebilehtiseja arvates oli Õisi wildcard sertifikaat ebausaldusväärne. Selletõttu ei saanud otse iCali laadida.
 
==Muud huvitavat.==
*Sharpkit, mis on C# konverteerimiseks Javaskripti (Visual Studiole sobituv), ei töötanud.
*Script#, mis on samuti C# konverteerimiseks Javaskripti (Visual Studioga sobituv), ei töötanud.
*iTunesis on olemas iTunes U, mis on iTunesi ülikool (nii öelda), sealt on võimalik tõmmata terve kursus Standfordi Universityst, mis räägib kuidas iPhonele rakendust ehitada.
 
==Mida edasi teha peale intensiivõppe nädalat.==
*Luua päris funktsionaalne rakendus, kuhu inimesed saaksid vastavalt isikule ise oma tunniplaani sisestada.
*Parandada rakendust, et rakendus tunneks tänast päeva ning alustaks kuvamist alates tänasest päevast.
*Luua rakendus ka iPhonele
 
==Mis võiks olla teisit intensiivõppe nädalal.==
*Projektid võiksid olla teada.
*Kindel arv front-end ja back-end developereid, disainereid jne
*Kõik saavad ise valida projekti, kus osalevad ning grupisosalejate arv on piiratud. (hetkel oli ühes grupis 6 inimest ja teises 3, mis oli ebavõrdväärnne)

Latest revision as of 21:27, 1 April 2011

Liikmed.

  • Heiki Tamm
  • Alfi Kannus
  • Mailis Toompuu

Projekt:Tunniplaani Rakendus

Eesmärgid.

  • Luua tunniplaani rakendus, mis vastavalt isikule kuvaks tema isiklikku tunniplaani.
  • Tunniplaani rakendust peaks olema võimalik ka kasutada teistes koolides, mis kasutavad Õisi süsteeme. (nt. TTK)
  • Windows Phone 7, Android, iPhone

Probleemid.

  • Tudengid soovivad oma uute nutitelefonidega tunniplaani vaadata telefonist. Kuidas seda teha?
  • Mis formaadis saame tunniplaani Õisist?
  • Kuidas andmeid lugeda jsoni formaadist?
  • Kuidas andmeid lugeda iCali formaadist?
  • Kumba on targem kasutada?
  • Kuidas andmed kätte saada vastavalt formaadile?
  • Kuidas andmed viisakalt formeerida ning kuvada?
  • Kuidas andmed sorteerida päevadeks ning neid eraldi kuvada?
  • Kuidas kõik tööle panna Windows Phone 7 peal?
  • Kuidas tööle saada iPhonel ja Androidil

Tegevustik.

1. Päev - Esmaspäev 28.03.11

  • Saime terve tunniplaani feedi json formaadis ning tegeleme selle töötlemisega.
https://itcollege.ois.ee/schedule?format=json
  • Saime idee võtta json-i asemel ical fail ja sellele parser teha
https://itcollege.ois.ee/schedule/ical?format=ical
  • Lugesime usinalt XNA ja C# raamatuid.


2. Päev- Teisipäev 29.03.11

  • Andmete töötlemine iCali failist.
  • Kuidas optimaalselt C# iCalist andmeid kätte saada.
  • iCali struktuur
  • 4. element on alguskuupäev ja kellaaeg
  • 5. element on lõpukuupäev ja kellaaeg
  • 6. element on õppeaine nimetus
  • 7. on selgitus
  • 8. on ruumi nimi
  • Parser trükkis välja kogu andmevoost algusekuupäeva ja kellaaja, lõpukuupäeva ja kellaaja, õppeaine, selgituse ja ruuminime.

3. Päev- Kolmapäev 30.03.11

  • Saime parseri normaalselt näitama kuupäeva ja kellaaega, alguses näitas ameerikalikult ning kõike lihtsalt numbrijadana.

 public DateTime TeisendaKuupaev(string strKuuPaev)
        {
            var dtfi = new DateTimeFormatInfo();
            dtfi.FullDateTimePattern = "yyyyMMddTHHmm";
            return DateTime.ParseExact(strKuuPaev.Substring(0, strKuuPaev.Length - 3), "yyyyMMddTHHmm", dtfi);
        }


  • Olime hädas Windows Phone 7 Simulaatoriga, kuid saime lõpuks peale pikka pusimist hakkama.

4. Päev- Neljapäev 31.03.11

  • Parser sorteerib ja formeerib kõik andmed itcollege tunniplaanist ning tunneb täpitähti.
  • Kuna iCali tunniplaani faili alguses olev esimene kuupäev on 17 märts 2010 siis, kuidas saada koodijupp kuvama päevi alates tänasest, mitte faili algusest.
  • Kuidas saada nädalapäevi eraldi lehtedena ning, et Windows Phone kuvaks ning "tunneks" nädalapäevi, ning kuvaks neid eraldi lehtedel päistena.

  // Esialgne versioon nädalapäevade tundmiseks

       string nadalapaev = "";
                var npaev = (int) dateValue.DayOfWeek;
                switch (npaev)
                {
                    case 1:
                        nadalapaev = "Esmaspäev";
                        break;
                    case 2:
                        nadalapaev = "Teisipäev";
                        break;
                    case 3:
                        nadalapaev = "Kolmapäev";
                        break;
                    case 4:
                        nadalapaev = "Neljapäev";
                        break;
                    case 5:
                        nadalapaev = "Reede";
                        break;
                    case 6:
                        nadalapaev = "Laupäev";
                        break;
                    case 7:
                        nadalapaev = "Pühapäev";
                        break;
                    default:
                        nadalapaev = "nädalapäev määramata";
                        break;
                }


5. Päev- Reede 01.04.11

  • Esialgne versioon rakendusest on valmis Windows Phone 7-me jaoks. Täpselt natukene ennem tähtaega 09.56.
  • Väga algus staadiumis on ka iPhone veebirakendus, mis kuvab ennast juba iPhonel täisekraanil ning näib kui päris iPhones asuv rakendus, kuid tunniplaani veel ei kuva.

Materjalid, mis abistasid/abistavad.

  • "Programming Microsoft ASP.NET 3.5" - Dino Esposito - 2008
  • "Microsoft XNA Framework Edition: Programming Windows Phone 7" - Charles Petzold - 2010
  • "Micosoft Visual C# 2008" - John Sharp - 2008
  • TÄNAME ka väga HEIKI TÄHIST!

Mida õppisime?

  • iCali parsimine.
  • Meeskonnatöö ei ole lihtne. Meeskonnas peab olema kindlasti liider.
  • Vastavate programmeerimis keelte API-d tuleks eelnevalt läbi lugeda, mitte töö protsessi ajal.
  • Eelnevalt võiks olla paigas kindel projekti visioon ja tegevuskava.
  • Täiesti tundmatu uue asjaga tegelema hakkamine on alguses väga tööd ja aega nõudev.
  • Intensiivõppe nädala mõttes, pole projekt enam õppimise kohaks.
  • Targemaks saime C# keeles
  • Kuidas Windows Phone 7 rakendust täpselt luua.
  • Windows Phone 7 veebilehtiseja arvates oli Õisi wildcard sertifikaat ebausaldusväärne. Selletõttu ei saanud otse iCali laadida.

Muud huvitavat.

  • Sharpkit, mis on C# konverteerimiseks Javaskripti (Visual Studiole sobituv), ei töötanud.
  • Script#, mis on samuti C# konverteerimiseks Javaskripti (Visual Studioga sobituv), ei töötanud.
  • iTunesis on olemas iTunes U, mis on iTunesi ülikool (nii öelda), sealt on võimalik tõmmata terve kursus Standfordi Universityst, mis räägib kuidas iPhonele rakendust ehitada.

Mida edasi teha peale intensiivõppe nädalat.

  • Luua päris funktsionaalne rakendus, kuhu inimesed saaksid vastavalt isikule ise oma tunniplaani sisestada.
  • Parandada rakendust, et rakendus tunneks tänast päeva ning alustaks kuvamist alates tänasest päevast.
  • Luua rakendus ka iPhonele

Mis võiks olla teisit intensiivõppe nädalal.

  • Projektid võiksid olla teada.
  • Kindel arv front-end ja back-end developereid, disainereid jne
  • Kõik saavad ise valida projekti, kus osalevad ning grupisosalejate arv on piiratud. (hetkel oli ühes grupis 6 inimest ja teises 3, mis oli ebavõrdväärnne)