Dienstag, 12. April 2011
Refactoring Data - Interface Record (PR: 5A, 5B)
Um einfacher automatisch testen zu können, soll das Interface
Überdies wird hier Refactoring geübt, da das Programm (die Klassen) entsprechend angepasst werden müssen (Ihre
Record
(anstatt einer Klasse Record
) bei der Datenklasse Data
verwendet werden.package data; /** * RuD-Übung 2011 * * data.Record.java * @author (c) 2011, Harald R. Haberstroh * 1.3.2011 */ import java.rmi.Remote; import java.rmi.RemoteException; /** * @author Harald R. Haberstroh (hh) * */ public interface Record extends Remote { /** * @return Anzahl der Felder dieses Datensatzes z.B. 8 */ public int getCntFields() throws RemoteException; /** * @return liefert alle Felder verkettet in einen String mit ';' getrennt * z.B. * "12;49.82012,17.260019;47.81497,16.260409;523;201102131510;67;2345121269;O" * Strings sind unter Hochkomma zu setzen. z.B. * "\"wlr1\";\"Werk Laderoboter 1\";\" 50\";\" 50\"" */ public String getCsvString() throws RemoteException; /** * Setzt die Felder auf die gegebenen Strings. Gegebenenfalls sind die * Strings abzuschneiden. Die Anzahl der Strings stimmt beim Aufruf von * setFields() auf alle Fälle mit getCntFields() überein (Prüfung braucht * nicht zu erfolgen). * * @param fields * Array mit den Feldwerten. * @throws RemoteException */ public void setFields(String[] fields) throws RemoteException; }Damit kann per JUnit-Test ganz einfach der Inhalt eines Datensatzes und die Anzahl der Felder geprüft werden.
Überdies wird hier Refactoring geübt, da das Programm (die Klassen) entsprechend angepasst werden müssen (Ihre
Record
-Klasse muss umbenannt werden und eben das gegebene Interface implementieren).Abonnieren Posts [Atom]
Kommentar veröffentlichen