Re: Einfache Stylefrage?!



On 28 Mai, 00:37, edlich <edl...@xxxxxxxxx> wrote:

Beispiel 1:
A) if(object == null) { ... do sth
B) if(null == object) { ... do sth

Hier ist es egal, ich bevorzuge im allgemeinen ersters da intuitiver.
Als alter C++ Programmierer fände ich:

if (object)

besser...;-)

Beispiel 2:
Es liegt vor x ist <fieldName> oder x ist #fieldName#
A) if(x.startsWith("<")) { ... do sth
B) if(0 == x.indexOf("<") { ... do sth

Das ist unter Umständen verschieden performant.
Hier handelt es sich zwar um Java-Standard Klassen jedoch müssen in
anderen Klassen
ähnliche Funktionalität nicht identisch sein. Z.B. könnte eine eigene
String-Klasse mit 1 anfangen
zu zählen und 0 Nichtvorhandensein anzeigen. Unrealistisch, aber man
sollte niemals etwas
implizit voraussetzen. Vorallem nicht wenn eindeutige Alternativen
existieren.

Beispiel 3:
A) if(hashmap.containsKey(key) { ... do sth
B) if(null != hashmap.get(key)) { ... do sth

Hier ist sogar bei Standardklassen so, dass beides nicht identisch
ist.
null kann auch als Value enthalten sein.
Beides kann je nach Anwendung richtig sein. Dann würde ich aber auch

if(hashmap.get(key) != null) bevorzugen


P.S. viel schlimmer finde ich den (un-)style, dass else mit auf die
selbe Zeile zu
schreiben wie die schliessende Klammer von if

if (bla){

} else{
}

besonderns bei (noch) leeren Zweigen ist das extrem häßlich und
unbersichtlich.
Leider hat sich das zum Standard-Java-Stil gemausert. Wieder ein
Beweis, dass
sich schlechtes durchaus durchsetzen kann...
.