Mailinglisten-Archive |
Hallo Ringo, Ringo Großer wrote: > Hallo Liste, > > ich möchte gern meine CSV-Abstraktionsklasse überarbeiten > und bin bei meinen Überlegungen nochmal auf eine grundsätzlich > notwendige Entscheidung gestoßen, zu der ich eure Meinung > wissen möchte. > > Die CSV-Klasse behandelt das Lesen und Schreiben von CSV- > formatierten Textdateien (im allg. Sprachgebrauch > "kommasepariert") und berücksichtigt dabei die zahlreichen > möglichen Varianten der Formatierung solcher Dateien. > > Bislang stellt meine CSV-Klasse eine Abstraktion zur Verfügung, > die mit mehreren Dateien in einem Objekt umgehen kann. Man > kann also mit einem Objekt mehrere Files lesen oder schreiben. > Dies wird über die Setter-Methoden setInput() und setOutput() > getan. > > Alternativ könnte ich mir nun aber auch vorstellen, dass man > eine CSV-Datei selbst als Objekt mit Eigenschaften betrachtet > und dieses mit der Klasse abbildet. > Somit würde ein CSV Objekt immer nur eine Datei behandeln > und entsprechende Eigenschaften und Methoden zur Verfügung > stellen. Aus setInput und setOutput würde dann ein allgemeines > setFile werden und über z.B. setMode würde man festlegen, > ob der Zugriff lesen oder schreibend erfolgt. > > Welche Sichtweise wäre eurer Meinung nach zu bevorzugen, > erscheint dem Anwender logischer oder ist hinsichtlich > Objektorientierung die richtige? > > regards, Ringo Ich würde zu einem Objekt pro CSV Datei tendieren. Hier könnte man noch ein wenig weitergehen. Z.B. habe ich für MySQL 2 Klassen geschrieben. Eine die die Verbindungsdaten handelt und Queries absetzt und eine Weitere Klasse die die Results handelt Bsp: $mysql = new msqlConnection('localhost','user','pass', ...); $result = $mysql->query('Select * Form `foo`'); while($data = $result->fetchAssoc()) { ... } grüße Martin
php::bar PHP Wiki - Listenarchive