Aangezien ik met 2 programmeertalen werk, heb ik het even ve-ralgemeniseerd.
Stel; je hebt een webapp met een template parser en een x aantal formulieren. Op die formulieren heb je diverse busines rules aangebracht, bijv. een naam mag niet leeg zijn of een foto moet minimaal x kb groot zijn etc.
Stel dat er dan fouten of meldigen getoond moeten worden, dan kun je die foutmeldingen op een paar manieren doen;
a) (fout)meldingen zijn gedefinieerd in de code file
b) (fout)meldingen zijn gedefinieerd in een aparte file
c) (fout)meldingen zijn gedefinieerd in de template en worden enkel getoond indien dat vereist is.
d) (fout)meldingen zijn in de templates gedefinieerd.
Eerst had ik de foutmeldingen in de aspx/php files staan, bij de validatie.
- Slecht voor meertaligheid en slecht te onderhouden
- Geen meertaligheid
- Text/code niet gescheiden
Toen had ik ze allemaal in aparte files gezet als constants en daarnaar refereerde ik.
- Nog niet zo goed te onderhouden, want dit geeft erg veel files
- Geen meertaligheid
- Text/code deels gescheiden
Nu heb ik ze in een XML file staan, en ik laad (en parse) deze XML file als deze wijzigd of als deze nog niet in de sessie zit en vervolgens sla ik hem in de sessie / viewstate op.
- Door de naam van de pagina in de error te verwerken heb ik dus feitelijk meertaligheid ingebouwd
- Alle meldingen op 1 plaats, gesplitst in: "errors" / "messages" / "formerrors"
Maar ik denk eraan om hier ook vanaf het stappen, want wat als er geen sessie gebruikt worden?
Nu zit ik erover te denken om de (fout)meldingen (de text dus) in de template te stoppen; en deze puur visible te maken als er fouten zijn. Dan kan ik per template / taal zelf de foutmeldingen invoeren.
- Beter te onderhouden
- Meertaligheid (lees: per template)
- Text/code gescheiden
- Geen sessies meer nodig
- Nadeel: Indien 2 of meer files hetzelfde zijn dien je de foutmelding in alle files te kopieeren
Toch denk ik dat deze laatste methode nog helemaal niet zo slecht is. Wat vinden jullie, of belangrijker, hoe doen jullie dit soort zaken oplossen?
Stel; je hebt een webapp met een template parser en een x aantal formulieren. Op die formulieren heb je diverse busines rules aangebracht, bijv. een naam mag niet leeg zijn of een foto moet minimaal x kb groot zijn etc.
Stel dat er dan fouten of meldigen getoond moeten worden, dan kun je die foutmeldingen op een paar manieren doen;
a) (fout)meldingen zijn gedefinieerd in de code file
b) (fout)meldingen zijn gedefinieerd in een aparte file
c) (fout)meldingen zijn gedefinieerd in de template en worden enkel getoond indien dat vereist is.
d) (fout)meldingen zijn in de templates gedefinieerd.
Eerst had ik de foutmeldingen in de aspx/php files staan, bij de validatie.
- Slecht voor meertaligheid en slecht te onderhouden
- Geen meertaligheid
- Text/code niet gescheiden
Toen had ik ze allemaal in aparte files gezet als constants en daarnaar refereerde ik.
- Nog niet zo goed te onderhouden, want dit geeft erg veel files
- Geen meertaligheid
- Text/code deels gescheiden
Nu heb ik ze in een XML file staan, en ik laad (en parse) deze XML file als deze wijzigd of als deze nog niet in de sessie zit en vervolgens sla ik hem in de sessie / viewstate op.
- Door de naam van de pagina in de error te verwerken heb ik dus feitelijk meertaligheid ingebouwd
- Alle meldingen op 1 plaats, gesplitst in: "errors" / "messages" / "formerrors"
Maar ik denk eraan om hier ook vanaf het stappen, want wat als er geen sessie gebruikt worden?
Nu zit ik erover te denken om de (fout)meldingen (de text dus) in de template te stoppen; en deze puur visible te maken als er fouten zijn. Dan kan ik per template / taal zelf de foutmeldingen invoeren.
- Beter te onderhouden
- Meertaligheid (lees: per template)
- Text/code gescheiden
- Geen sessies meer nodig
- Nadeel: Indien 2 of meer files hetzelfde zijn dien je de foutmelding in alle files te kopieeren
Toch denk ik dat deze laatste methode nog helemaal niet zo slecht is. Wat vinden jullie, of belangrijker, hoe doen jullie dit soort zaken oplossen?
[ Voor 6% gewijzigd door xces op 30-04-2009 09:06 ]