Codestyle so okay?

Status
Nicht offen für weitere Antworten.

Luke

Mitglied
Hi,
bin noch ziemlich neu in der Java Welt und bin mir nicht sicher ob mein CodeStyle so ganz in Ordnung ist, mir gehts da v.a. um die Kommentierung. Ich hab mal ein Beispiel hinzugefügt und da scheint es mir als ob durch die Kommentierung das Ganze realtiv unübersichtlich wird. Kommt das vielleicht nur mir so vor? Kann ich manche Sachen evtl weglassen?
Danke schon mal für die Hilfe! :)

Code:
package uebungen;

public class MyString {
	
	
	/**
	 * Methode search liefert alle Postionen im übergebenen String str zurück, welche den 
	 * ebenfalls als Parameter übergebenen Teil-String pattern enthält
	 * 
	 * @param str      der String, der durchsucht wird
	 * @param pattern  der String, nach dem in str gesucht wird
	 * @return         Array, in dem die gefundenen Postionen von pattern in str aufgeführt sind
	 */
	int[] search (String str, String pattern) {		
		
		int[] ergebnisArray;	// das Ergbenis-Array
		int j = 0;				// Zähler für den Index des Ergebnis-Arrays
		int counter = 0; 		// Zähler, zur Bestimmung der Länge des Ergebnis-Arrays		
		int strLaenge; 			// Länge des Strings str 

		strLaenge = str.length(); 	//Bestimmung der Länge des String str
		
		//Bestimmung der Länge des Ergebnis-Arrays
		for (int i = 0; i <= strLaenge; i++) {
			if(str.indexOf(pattern, i) != -1) {
				counter++;
				i = str.indexOf(pattern, i);
			}//endif
		}//endfor i
		
		ergebnisArray = new int[counter]; 	//intialisierung des Ergebnis-Arrays
		
		//Finden der Postionen des String patterns in str und Speicherung im Array
		for (int i = 0; i <= strLaenge; i++) {
			if(str.indexOf(pattern, i) != -1) {
				ergebnisArray[j] = str.indexOf(pattern, i);
				i = str.indexOf(pattern, i);
				j++;
			}//endif
		}//endfor i
		
		return ergebnisArray;		
	}//endmethod search
}//endclass MyString
 

mikachu

Top Contributor
Das mit dem Codestyle ist ja etwas seeehr subjektives.
Ich geh nach der Methode "sowenig wie möglich, soviel wie nötig".

Aber der beste Weg ist immer noch, wenn du den Code jemandem andres vorlegst, und ihn fragst, was denn da so alles passiert.
Weiterhin kannst du den Code auch mal ne Weile liegen lassen, und nach geraumer Zeit nochmal nen Blick drauf werfen. Wenn du dann noch auf Anhieb verstehst, was du da geschrieben hast, und auch die Kommentare noch nachvollziehen kannst, ist alles in Butter.
 

JPKI

Top Contributor
Hm. So find ich's eigentlich ganz in Ordnung, nur würde ich die Zeilenkommentare mittels Tabulatoren auf eine Linie bringen, etwa so:

Code:
irgendEinObjekt.machIrgendwas();      //Tut was tun
wasAnderes.nochWasMachen();           //Nochwas

Außerdem würde ich oben noch Autoreninfo, Versionsinfo und Urheberrechtsvermerke hinzufügen.
 
S

SlaterB

Gast
endif/ endfor würde ich weglassen,
dazu gibts die Einrückung,
vielleicht ausnahmsweise wenn ein if/ eine Schleife über 40 Zeilen oder so belegt,
was man aber eh nicht programmieren sollte

endclass ist auch seltsam, in welcher Klasse man ist sollte man wissen,

endmethod ist wohl ok, würde ich aber auch nie machen

---------

Kommentare mit ein paar Leerzeichen nach einer Code-Zeile gehen nicht,
das können automatische Formatierer nicht ab, zumindest der in Eclipse nicht,
wenn man dort einmal auf Formatieren klickt sähe das sicher ganz anders aus,

lieber den Kommentar an den Anfang der Zeile davor,
dann hast du auch kein Problem mit der Zeilenbreite/ mehrere Zeilen Kommenta
 

Luke

Mitglied
Super, danke für die Comments!
Die Sache mit den endfor/endif find ich auch etwas strange, sind bei uns an der FH aber Code-Konventionen, muss also wohl oder überl rein ;)
 
G

Guest

Gast
Ich find den Code so auch gut formatiert und kommentiert.

Das meiste haben die anderen vor mir ja schon gesagt, was ich noch immer mache (ist sicher geschmackssache) ist, dass ich die @param-Tags im Kommentar anders mache und zwar in der Form:

Code:
   /**
    * Blablabla ....
    * 
    * @param sText String - In die Datei zu schreibender Text
    */
   public void writeLine(final String sText) {

Sprich, ich schreibe direkt nach dem Variablennamen noch den Typ bevor ich den Bindestrich mache. Sieht meiner Meinung nach im Javadoc besser aus.

Wie gesagt ist sicher geschmackssache! :D
 

-frank

Bekanntes Mitglied
dinge wie //end-if würde ich nur schreiben, wenn der code lang und unübersichtlich wird. so sieht mans eh auf den ersten blick.

Code:
int[] ergebnisArray;   // das Ergbenis-Array 
      int j = 0;            // Zähler für den Index des Ergebnis-Arrays

hier finde ich zeile 2 super, weil man genau weiß, wofür j gut ist. zeile 1 hingegen liefert keine zusätzliche info, denn die variable heißt ja schon "ergebnisArray". da würde ich dann entweder mehr info dazuschreiben oder den kommentar ganz weglassen.[/quote]
 

mikachu

Top Contributor
-frank hat gesagt.:
Code:
int[] ergebnisArray;   // das Ergbenis-Array 
      int j = 0;            // Zähler für den Index des Ergebnis-Arrays

hier finde ich zeile 2 super, weil man genau weiß, wofür j gut ist...

ich würde j noch in indexErgebnisArray umbenennen, denn manche Programmierer legen ihre Variablen sortiert nach dem Typ an, und wenn man aber mehrere Variablen, welche auch nur auch einem Buchstaben bestehen, hat, fällt es schwer, diese noch richtig zuzuordnen.

Jedoch sind i, j und k "vordefiniert" als Zählervariablen.
Das ist so ein ungeschriebenes, freiwilliges Gesetz :wink:.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen

Ähnliche Java Themen


Oben