Door
Ozzie PHP
op 11-12-2013 18:15
gewijzigd op 11-12-2013 18:16
2.371 views
Ola,
Mijn YAML module werkt inmiddels weer :)
Ik ben inmiddels wel zo slim geweest om alles in een class in te bouwen zodat ik een Exception kan gooien als er iets fout gaat. Wat ik me echter afvraag. Het is een YAML parser en emitter. Wat er met parser wordt bedoeld is wel duidelijk. Emitter houdt in dat hij ook YAML data kan genereren. Zelf gebruik ik hier liever het woord 'create' of 'generate' voor. Welk woord gebruiken jullie?
Mijn vraag is nu... kan ik die class wel een "parser" noemen, aangezien de class ook YAML data genereert (en niet alleen parset)?
Die PECL module heeft de onderstaande functies die ik in een class wil onderbrengen:
•yaml_emit_file — Send the YAML representation of a value to a file
•yaml_emit — Returns the YAML representation of a value
•yaml_parse_file — Parse a YAML stream from a file
•yaml_parse_url — Parse a Yaml stream from a URL
•yaml_parse — Parse a YAML stream
Nu wil ik de class dus YamlParser noemen, maar zoals je ziet zijn er ook "emit" functies (of "dump" functies zoals jij het noemt). Mag ik de class dan nog wel een YamlParser noemen? Of moet ik het bijv. een YamlHandler noemen? Ik zou er ook 2 classes van kunnen maken, maar dat lijkt me ook een beetje vreemd??
Ik wil het in een class hebben, zodat ik exceptions kan gooien als het niet werkt. En op die manier ben ik slechts op 1 plek afhankelijk van de PECL module. Mocht ik ooit op een andere server komen waar die PECL module niet werkt, dan hoef ik alleen die ene class aan te passen.
En mogen, waar praten we over? Hebben we het weer over het wetboek van Ozzie, of hebben we het gewoon over programmeren? Als jij het duidelijk vindt dan gebruik je YamlParser, als je het niet duidelijk vindt gebruik je YamlHandler of wat voor naampje je het beestje geeft.
Ola... het is al een vraag van een tijdje terug... maar ik wil hier toch nog even op terugkomen.
Stel je wilt iets doen met YAML (of bijv. XML) dan zijn er een paar dingen die ik wil kunnen.
- een Yaml string schrijven
- een Yaml string lezen
- een Yaml bestand schrijven
- een Yaml bestand lezen
Deze 4 functionaliteiten, horen die in één class thuis? Dus: