Meeskond "partycrasher": Difference between revisions

From ICO wiki
Jump to navigationJump to search
Tlebedev (talk | contribs)
Tlebedev (talk | contribs)
 
(8 intermediate revisions by the same user not shown)
Line 3: Line 3:
Veebiteenus, mis salvestab rakendustes tekkivad vead.
Veebiteenus, mis salvestab rakendustes tekkivad vead.


Erindi (ingl.k exception) tekkimisel saadab rakendus, kus viga tekkis, veebiteenusele vea kirjelduse, stack trace'i, koodifaili nime ja rea numbri. Arendajad saavad hiljem vigade andmebaasi sirvida, vea parandada ja selle andmebaasi tehtuks märkida.
Erindi (ingl.k exception) tekkimisel saadab rakendus, kus viga tekkis, veebiteenusele vea kirjelduse, stack trace'i, koodifaili nime ja rea numbri. Arendajad saavad hiljem vigade andmebaasi sirvida, vea parandada ja selle andmebaasis tehtuks märkida.


Et veebiteenusele andmete saatmine käib XML abil, siis võib klientrakenduseks olla suvaline rakendus. Käesoleva projekti raames luuakse klientrakendusena Javascript teek ning näidisveeb, millega saab prooviks vigu tekitada.
Et veebiteenusele andmete saatmine käib XML abil, siis võib klientrakenduseks olla suvaline rakendus. Käesoleva projekti raames luuakse klientrakendusena Javascript teek ning näidisveeb, millega saab prooviks vigu tekitada.
Line 14: Line 14:
==Kasutuslood==
==Kasutuslood==


===Kasutaja===
===Arendaja/Lõppkasutaja===


* Konto registreerimine
* Konto registreerimine
Line 29: Line 29:


https://github.com/tanel/partycrasher
https://github.com/tanel/partycrasher
==XML==


===XSD===
===XSD===
Line 43: Line 45:


Näidisväljund: http://enos.itcollege.ee/~tlebedev/partycrasher/out/crashreport-0-1.html
Näidisväljund: http://enos.itcollege.ee/~tlebedev/partycrasher/out/crashreport-0-1.html
==Veebiteenus==
==Klientrakendus==


==Retsetsioonid==
==Retsetsioonid==
Line 48: Line 54:
===Unusual suspects===
===Unusual suspects===


https://github.com/dsour/veebirakendus_kt1/blob/master/Unusual_Suspects/soiduplaan.xml
Retsenseeritav XML: https://github.com/dsour/veebirakendus_kt1/blob/master/Unusual_Suspects/soiduplaan.xml
 
http://validator.w3.org/check validaator kinnitab, et XML on valiidne.
 
Natuke häirib see, et XML-is on elemendid ja atribuudid läbisegi nii eesti kui inglise keeles. Näiteks “Plaan”, “Liinid” aga object, refid. Minupoolne soovitus oleks loobuda eestikeelsest XML-ist ning kasutada läbivalt kodeerimisel inglise keelt. Soovituse mõte ei ole eelistada võõrkeelt, vaid see hõlbustaks veebiteenuse kasutamist ka väljaspool Eestit või neil, kes eesti keelt ei oska.
 
Ei saa aru, miks on elemendi “Plaan” all “object” ja milleks seda vaja läheb. Atribuut “type” tundub olevat mitte tüüp, vaid GUID-laadne identifikaator – kas tegu on Flashiga? XML koosneb andmetest, kuid “object” puhul on segatud andmeid ning nende esitamist – nii on “object” elemendil “style” atribuut, mis paistab olevat CSS. Võib-olla tuleks andmed ning nende esitus kuidagi lahus hoida, näiteks esitada andmeid HTML abil.
 
“Paev” elemendi sisu on tegelikult piiratud hulk. Siis tuleks kasutada piiranguid, näiteks siit leiab näiteid, kuidas seda võiks teha: http://www.w3schools.com/schema/schema_facets.asp
 
“alates” ja “kuni” kuupäevad ei sisalda ajatsooni. Ma lisaks igaks juhuks ka ajatsooni selguse mõttes.
 
Ei saa aru, mida tähendab atribuut “refid”, mis elemendil “Suund” on valikuline, kuid elemendil “PeatusLiinil” kohustuslik.
 
Kui need pisiasjad kõrvale jätta, siis väga hästi tehtud.
 
===Meeskond "Kolmas" 2012===
 
Retsenseeritav XML: http://enos.itcollege.ee/~lrooden/v_rak_2/notes.xml
 
XML valideerub (vt http://validator.w3.org/check?uri=http%3A%2F%2Fenos.itcollege.ee%2F~lrooden%2Fv_rak_2%2Fnotes.xml&charset=%28detect+automatically%29&doctype=Inline&group=0), kuid annab hoiatuse, et fail sisaldab BOM märki. Minu soovitus oleks seda märki mitte kasutada, kuivõrd XML ise deklareerib, et kodeeringuks on UTF-8. Unicode'i standard ütleb, et UTF-8 puhul ei ole BOM kohustuslik ega soovituslik (vt http://en.wikipedia.org/wiki/Byte_order_mark#cite_note-2).
 
Kui elemendil “note” on alati olemas ja kohustuslik “id” ning “url” alam-element, siis tuleks need võib-olla teha elemendi “note” atribuutideks.
 
Tundub, et “users/user” elemendid võiks hoopis kanda nime “comments/comment”, sest tegu tundub olevat kommentaaride loendiga, mitte kasutajate loendiga. Elemendil “user” on alam-element “time”, aga ei saa hästi aru, mis aeg seal on – kas see on kommentaari lisamise aeg?
 
Mõte kommentaari CDATA-ga kodeerida tundub kaval, sest kasutaja võib tõesti sisestada kommentaari ka XML märke. Samas saab ta seda vist teha ka oma nime puhul? St võib-olla tuleks kasutaja nimi ka CDATA-ga kodeerida, nagu ka lipikud (“tags”)?
 
Muus osas on XML hästi lihtne, hõlpsalt töödeldav ja loetav.


==Log==
==Log==

Latest revision as of 17:54, 11 April 2012

Idee

Veebiteenus, mis salvestab rakendustes tekkivad vead.

Erindi (ingl.k exception) tekkimisel saadab rakendus, kus viga tekkis, veebiteenusele vea kirjelduse, stack trace'i, koodifaili nime ja rea numbri. Arendajad saavad hiljem vigade andmebaasi sirvida, vea parandada ja selle andmebaasis tehtuks märkida.

Et veebiteenusele andmete saatmine käib XML abil, siis võib klientrakenduseks olla suvaline rakendus. Käesoleva projekti raames luuakse klientrakendusena Javascript teek ning näidisveeb, millega saab prooviks vigu tekitada.

Konkurendid

Kasutuslood

Arendaja/Lõppkasutaja

  • Konto registreerimine
  • Sisselogimine
  • Vea salvestamine XML paketiga
  • Vigade sirvimine
  • Vea lahendatuks märkimine

Admin

  • Kasutajate sirvimine

Lähtekood

https://github.com/tanel/partycrasher

XML

XSD

https://github.com/tanel/partycrasher/blob/master/crashreport-0-1.xsd

XML

https://github.com/tanel/partycrasher/blob/master/crashreport-0-1.xml

XSLT

https://github.com/tanel/partycrasher/blob/master/crashreport-0-1-html.xslt

Näidisväljund: http://enos.itcollege.ee/~tlebedev/partycrasher/out/crashreport-0-1.html

Veebiteenus

Klientrakendus

Retsetsioonid

Unusual suspects

Retsenseeritav XML: https://github.com/dsour/veebirakendus_kt1/blob/master/Unusual_Suspects/soiduplaan.xml

http://validator.w3.org/check validaator kinnitab, et XML on valiidne.

Natuke häirib see, et XML-is on elemendid ja atribuudid läbisegi nii eesti kui inglise keeles. Näiteks “Plaan”, “Liinid” aga object, refid. Minupoolne soovitus oleks loobuda eestikeelsest XML-ist ning kasutada läbivalt kodeerimisel inglise keelt. Soovituse mõte ei ole eelistada võõrkeelt, vaid see hõlbustaks veebiteenuse kasutamist ka väljaspool Eestit või neil, kes eesti keelt ei oska.

Ei saa aru, miks on elemendi “Plaan” all “object” ja milleks seda vaja läheb. Atribuut “type” tundub olevat mitte tüüp, vaid GUID-laadne identifikaator – kas tegu on Flashiga? XML koosneb andmetest, kuid “object” puhul on segatud andmeid ning nende esitamist – nii on “object” elemendil “style” atribuut, mis paistab olevat CSS. Võib-olla tuleks andmed ning nende esitus kuidagi lahus hoida, näiteks esitada andmeid HTML abil.

“Paev” elemendi sisu on tegelikult piiratud hulk. Siis tuleks kasutada piiranguid, näiteks siit leiab näiteid, kuidas seda võiks teha: http://www.w3schools.com/schema/schema_facets.asp

“alates” ja “kuni” kuupäevad ei sisalda ajatsooni. Ma lisaks igaks juhuks ka ajatsooni selguse mõttes.

Ei saa aru, mida tähendab atribuut “refid”, mis elemendil “Suund” on valikuline, kuid elemendil “PeatusLiinil” kohustuslik.

Kui need pisiasjad kõrvale jätta, siis väga hästi tehtud.

Meeskond "Kolmas" 2012

Retsenseeritav XML: http://enos.itcollege.ee/~lrooden/v_rak_2/notes.xml

XML valideerub (vt http://validator.w3.org/check?uri=http%3A%2F%2Fenos.itcollege.ee%2F~lrooden%2Fv_rak_2%2Fnotes.xml&charset=%28detect+automatically%29&doctype=Inline&group=0), kuid annab hoiatuse, et fail sisaldab BOM märki. Minu soovitus oleks seda märki mitte kasutada, kuivõrd XML ise deklareerib, et kodeeringuks on UTF-8. Unicode'i standard ütleb, et UTF-8 puhul ei ole BOM kohustuslik ega soovituslik (vt http://en.wikipedia.org/wiki/Byte_order_mark#cite_note-2).

Kui elemendil “note” on alati olemas ja kohustuslik “id” ning “url” alam-element, siis tuleks need võib-olla teha elemendi “note” atribuutideks.

Tundub, et “users/user” elemendid võiks hoopis kanda nime “comments/comment”, sest tegu tundub olevat kommentaaride loendiga, mitte kasutajate loendiga. Elemendil “user” on alam-element “time”, aga ei saa hästi aru, mis aeg seal on – kas see on kommentaari lisamise aeg?

Mõte kommentaari CDATA-ga kodeerida tundub kaval, sest kasutaja võib tõesti sisestada kommentaari ka XML märke. Samas saab ta seda vist teha ka oma nime puhul? St võib-olla tuleks kasutaja nimi ka CDATA-ga kodeerida, nagu ka lipikud (“tags”)?

Muus osas on XML hästi lihtne, hõlpsalt töödeldav ja loetav.

Log

  • 02.04.2012 wiki leht, githubi repo, XSD, XML
  • 03.04.2012 XSD ja XML-ile rohkem dimensioone; XLST
  • 04.04.2012 Windows 8, Visual Studio ja SQL Serveri installimine VirtualBoxi
  • 08.04.2012 Retsensioonide kirjutamine.