Programmierstil

Status
Nicht offen für weitere Antworten.
D

Destiny1985

Gast
Habe schon viel gehört, das man sich von anfang an einen sauberen Programmierstil angewöhnen soll.

Da ich im Gebiet Programmierung ja ein Frischling bin und auch keine hier habe, bei dem ich mir das mal angucken könnte wollt ich einfach mal ein kurzes Übungsprogramm von mir posten und eure Meinung hören, was gut und was schlecht ist in Sachen Programmierstil. Hier das Programm:

Code:
/**
 * Das Programm rechnet eine eingegebene Zeitangabe ( Datum und Uhrzeit ) in
 * Sternenzeit um
 *
 * @date 2004-12-21
 * @version 1.0
 */

import Prog1Tools.IOTools;

public class Sternenzeit
{
  public static void main (String args[])
  {
    int jahr, monat, tag, stunde, minute;

    System.out.println("*** DER GALAKTISCHE ZEITUMRECHNER ***\n");
    System.out.println("Mit diesem Programm koennen sie eine gewuenschte Erdzeit");
    System.out.println("in Sternenzeit umrechnen.\n");
    System.out.println("Bitte geben Sie jetzt die Zeit an, die Sie umrechnen lassen wollen:\n");
    
    // Eingabe der Benutzerdaten mit Kontrolle und Wiederholschleife
    
    System.out.print("Jahr: ");
    jahr = IOTools.readInteger();
    System.out.print("\nMonat: ");

    while (( monat = IOTools.readInteger())  < 1 || monat > 12)
    {
      System.out.println("\nDas ist eine ungueltige Monatsangabe! ( 1 - 12 )");
      System.out.print("\nBitte erneute Eingabe: ");
    }
    
    System.out.print("\nTag: ");
    
     while (( tag = IOTools.readInteger())  < 1 || tag > 30)
    {
      System.out.println("\nDas ist eine ungueltige Tagesangabe! ( 1 - 30 )");
      System.out.print("\nBitte erneute Eingabe: ");
    }
    
    System.out.print("\nStunde: ");

    while (( stunde = IOTools.readInteger())  < 0 || stunde > 24)
    {
      System.out.println("\nDas ist eine ungueltige Stundenangabe! ( 0 - 24 )");
      System.out.print("\nBitte erneute Eingabe: ");
    }
    
    System.out.print("\nMinute: ");
    
    while (( minute = IOTools.readInteger())  < 1 || minute > 60)
    {
      System.out.println("\nDas ist eine ungueltige Minutenangabe! ( 0 - 60 )");
      System.out.print("\nBitte erneute Eingabe: ");
    }
    
    // Errechnen der Tage, die seit dem Startdatum vergangen sind
    
    int startjahr = 2000;
    int jahrstern = (jahr - startjahr) * 365;
    int monatstern = monat * 30;
    int tagstern = tag;
    
    int vorkomma = jahrstern + monatstern + tagstern;
    
    // Errechnen der Milli-Einheiten des nicht vollständigen Tages
    // 1 Tag = 1000 Milli-Einheiten
    
    int millistunden = (int)((stunde * 60) / 1.44);
    int milliminuten = (int)(minute / 1.44);
    
    int nachkomma = millistunden + milliminuten;
    
    // Ausgabe der errechneten Sternzeit

    System.out.print("\nDie Erdzeit " + tag + "." + monat + "." + jahr);
    System.out.println(", " + stunde + "." + minute + " Uhr");
    System.out.println("   entpricht der Sternzeit " + vorkomma + "." + nachkomma);
  }
}

Bitte ehrlich sagen was ihr denkt ! Thx :)
 

foobar

Top Contributor
Also mit OOP hat das nicht viel zu tun.
Warum packst du den ganzen Code in die Main-Methode?
 

dotlens

Top Contributor
@foobar
er hat ja geschrieben, dass er neuling ist

@dest
OOP (Objekt Orientierte Programmierung) ist sehr wichtig.
im moment hast du alles in der statischen main methode. mache einen Konstruktor der klasse. Teile deinen code in methoden auf. erzeuge eine Instanz der Klasse in der main methode.

wenn dir das alles nichts sagt empfehl ich dir, erst mal ein paar grundlagen durchzulesen....
http://www.galileocomputing.de/openbook/javainsel3/
 
D

Destiny1985

Gast
ja, für mir hier auch gerade ein Buch zu Gemüte,

"Grundskurs Programmieren in Java"

www.grundkurs-java.de

Muss sagen bin damit ganz zufrieden. Ist halt ein Anfängerbuch, und da wird das erstmal so gelernt.

Denk schon das das irgendeinen Sinn hat, die Autoren werden schon wissen was sie machen (hoff ich *g*)

mfg
 
D

Destiny1985

Gast
Hab gerade nochmal im Buch geblättert, die nächsten Abschnitte beschäftigen sich mit Unterprogrammen und Methoden und danach kommt Kapitel 2 mit dem verheißungsvollen Namen "Objektorientiertes Programmieren in Java"

also...es wird ;)
 
B

Beni

Gast
Bei einem Programm dieser Grösse macht OOP sowieso noch nicht wirklich Sinn...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Avalon Programmierstil beim Mocken Java Basics - Anfänger-Themen 45
S Zugriff auf protected Fields = guter Programmierstil? Java Basics - Anfänger-Themen 11
K Sauberer Programmierstil? Java Basics - Anfänger-Themen 3
M Best Practice Programmierstil Graphen-A*-Suche Java Basics - Anfänger-Themen 5
F Erste Schritte Frage zum Programmierstil Java Basics - Anfänger-Themen 11
A OOP Fragen zu Programmierstil Java Basics - Anfänger-Themen 18
I Programmierstil Java Basics - Anfänger-Themen 64
E Richtiger Programmierstil ? Java Basics - Anfänger-Themen 51
M Sind ternäre Operatoren für einen guten Programmierstil wichtig ? Java Basics - Anfänger-Themen 10
M Programmierstil Java Basics - Anfänger-Themen 14
B Frage zu Programmierstil: sollte Hauptklasse nur main enthalten? Java Basics - Anfänger-Themen 6
G Guter Programmierstil? Java Basics - Anfänger-Themen 8
G Guter Programmierstil? Java Basics - Anfänger-Themen 4
D Programmierstil - Bei Vererbung welchen Typ benutzen? Java Basics - Anfänger-Themen 8
Bernasconi Programmierstil / Wann eine neue Datei? Java Basics - Anfänger-Themen 5
K guter Programmierstil Java Basics - Anfänger-Themen 3
C Programmierstil und OOP Java Basics - Anfänger-Themen 7
M Programmierstil Java Basics - Anfänger-Themen 17

Ähnliche Java Themen

Neue Themen


Oben