Lektüre zur Vermeidung häufiger Programmierfehler

lisaaa17

Mitglied
Ich bin auf der Suche nach Programmierbücher (vorwiegend C, C++, C# oder Java) die sich mit der Vermeidung von Programmierfehlern und Codeoptimerung beschäftigt.


Mit Vermeidung (sinnloser Codefehler) meine ich
Java:
if(pos.x>100)
  pos.x=100;

sollte immer so geschrieben werden:
Java:
if(pos.x>100)
{
  pos.x=100;
}

Grund: Beim erweitern des Codes hat sich gezeigt, dass folgenden Fehler passiert:
Java:
if(pos.x>100)
  System.out.println("WARNING: x position out of field");
  pos.x=100;


mit Codeoptimierung meine ich, wie schreibt man möglichst performante Programme?
Java:
for(int n=0; n<GetNumberOfListEntries(); n++)
{
  String Description="Current Number: ";
  System.out.println(Description+n);
}
optimiert:
Java:
final int NumberOfListEntries=GetNumberOfListEntries();
final String Description="Current Number: ";
for(int n=0; n<NumberOfListEntries; ++n)
{
  System.out.println(Description+n);
}
 

Ruzmanz

Top Contributor
Für "simple" Regeln solltest du kein / kaum Geld ausgeben, da gibt es genügend Archive / Tools im Internet. "Clean Code" von Robert C. Marting ist ziemlich verbreitet, aber da steht nichts drinnen, was man nicht auch im Internet finden würde.

Code:
CheckStyle Ruleset: checkstyle - Available Checks
PMD Ruleset: PMD Rulesets index
[FindBugs] - Unterschied zu PMD: java - What are the differences between PMD and FindBugs? - Stack Overflow

Refactoring:
Refactoring von Martin Fowler auf Deutsch

Architektur-/Entwurfsmuster bzw. "design pattern":
Entwurfsmuster ? Wikipedia

Entwurfsmuster sollte man mal gelesen und das Anwendungsgebiet verstanden haben. Ein gutes Buch fällt mir dazu nicht ein. Ich ziehe eher strukturierte Ausarbeitungen vor. Bsp.: Architekturmuster: Makler

Collections (oder allgemein Datenstrukturen):
Auch hier fällt mir spontan kein Buch ein. Viele Leute (möchte mich da gar nicht ausschließen) kennen nicht alle Collections bzw. Collection-APIs in Java / von Datenbanken. Da können schon 2 Zeilen code Wunder bewirken und Kosten (CPU-Zeit, Speicher, etc. == Geld) sehr stark reduzieren.

Tests -> JUnit ...

Ohne irgendwas schön reden zu wollen. Du wirst zum Ergebnis kommen, dass Java der letzte Mist ist. Um zwischen dem einen oder anderen Übel zu wählen braucht es auf jeden Fall Projekterfahrung. Zum Beispiel gewinnst du bei deiner Code-Optimierung ~0,0001% an Geschwindigkeit, aber reskierst dadurch Fehler.

Java:
public class Haus {
  public Haus() {
    System.out.println("Einmal oder mehrmals?");
    ueberweise100EuroAnBesitzer();
  }
}

Java:
    for(int n=0; n<GetNumberOfListEntries(); n++)
    {
      Haus description = new Haus();
      System.out.println(description);
    }

Java:
      Haus description = new Haus();
    for(int n=0; n<GetNumberOfListEntries(); n++)
    {
      System.out.println(description);
    }
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Suche HSQLDB Tutorial/Lektüre Bücher, Tutorials und Links 7

Ähnliche Java Themen

Neue Themen


Oben