"Sauberer Code"

Kyoko

Erfahrenes Mitglied
Hi, ich wollte nur Fragen ob ihr meinen Code sauber findet:

Code:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;LuasivDOS 0.01b;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;Dieses Programm ist eine Emulation von LuasivOS, mit dem man den Computer verwalten kann.
;;Es ist nicht OpenSource.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;Anforderungen.
;Windows
;ca. 10 MB-RAM
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;Head

InitMovie()

OpenConsole()    ;Öffnet die Konsole


;;Head-Body

ConsoleLocate(0,0)

Repeat 

                      ;Setzt die Cursor-Position auf 0
Print("Befehl#: ")                      ;Gibt Befehl#: auf dem Screen aus
befehla$ = Input()                      ;Liest User-Eingabe ein
PrintN("")                              ;Fügt Zeilenumbruch aus
befehlb$ = LCase(befehla$)              ;Konvertiert die Eingabe in Kleinbuchstaben    
befehl$ = Trim(befehlb$)                ;Entfernt alle Leerzeichen am Anfang und am Ende des Strings


;;Body

;;Abfragen starten

;;;;;;;;;;;;;;;;;;;;Power-Kommandos;;;;;;;;

If befehl$ = "shutdown"
ShutdownEx(#EWX_SHUTDOWN)
EndIf
If befehl$ = "poweroff"
ShutdownEx(#EWX_POWEROFF)
EndIf
If befehl$ = "logoff"
ShutdownEx(#EWX_LOGOFF)
EndIf
If befehl$ = "reboot"
ShutdownEx(#EWX_REBOOT)
EndIf

;;;;;;;;;;;;;;;;;;Date-Kommandos;;;;;;;;;;;;

If befehl$ = "date"
datea = Date()
date$ = FormatDate("%dd.%mm.%yyyy  %hh:%ii:%ss", datea)
PrintN(date$)
EndIf

;;;;;;;;;;;;;;;;;;Multimedia-Kommandos;;;;;;;;;;;;;;;
If befehl$ = "play"
Print("Pfad: ")
file$ = Input()
PrintN("")
If LoadMovie(0, file$) = 0
PrintN("Fehlgeschlagen!")
Else
PlayMovie(0, WindowID())
EndIf
;;;;;;;;;;;;;;;;;;Datei-Kommandos;;;;;;;;;;;;;;;;;;;
If befehl$ = "createfile"
Print("Pfad: ")
file$ = Input()
PrintN("")
CreateFile(0, file$)
EndIf 
If befehl$ = "deletefile"
Print("Pfad: ")
file$ = Input()
PrintN("")
DeleteFile(file$)
EndIf 

EndIf  

Until befehl$ = "end"
 
Hallo.

Also mir erscheint dein Code auf den ersten Blick etwas unsauber.
Benutz' doch mal die TAB-Taste, um deine IF-Abfragen etwas einzurücken.
So erkennt man zumindest mal ansatzweise, welches IF wo zugemacht wird. ;)

Auch hast du es mit den Kommentaren *etwas* zu gut gemeint, wobei es natürlich besser ist,
zuviele Kommentare zu haben, als zu wenige. :D

Mein Änderungsvorschlag für den Body (ohne den eigentlichen Code verändert zu haben):
Code:
;;Body

;;Abfragen starten

;;;;;;;;;;;;;;;;;;;;Power-Kommandos;;;;;;;;
If befehl$ = "shutdown"
    ShutdownEx(#EWX_SHUTDOWN)
EndIf

If befehl$ = "poweroff"
    ShutdownEx(#EWX_POWEROFF)
EndIf

If befehl$ = "logoff"
    ShutdownEx(#EWX_LOGOFF)
EndIf

If befehl$ = "reboot"
    ShutdownEx(#EWX_REBOOT)
EndIf


;;;;;;;;;;;;;;;;;;Date-Kommandos;;;;;;;;;;;;
If befehl$ = "date"
    datea = Date()
    date$ = FormatDate("%dd.%mm.%yyyy  %hh:%ii:%ss", datea)
    PrintN(date$)
EndIf


;;;;;;;;;;;;;;;;;;Multimedia-Kommandos;;;;;;;;;;;;;;;
If befehl$ = "play"
    Print("Pfad: ")
    file$ = Input()
    PrintN("")

    If LoadMovie(0, file$) = 0
        PrintN("Fehlgeschlagen!")
    Else
        PlayMovie(0, WindowID())
    EndIf


;;;;;;;;;;;;;;;;;;Datei-Kommandos;;;;;;;;;;;;;;;;;;;
    If befehl$ = "createfile"
        Print("Pfad: ")
        file$ = Input()
        PrintN("")
        CreateFile(0, file$)
    EndIf 

    If befehl$ = "deletefile"
        Print("Pfad: ")
        file$ = Input()
        PrintN("")
        DeleteFile(file$)
    EndIf 

EndIf  

Until befehl$ = "end"
Ich habe nur TABs und Leerzeilen eingefügt, bzw. entfernt.

Gruß, Niko
 
Nebenbei würd ich dir eher zu # als kommentarZeichen empfehlen oder // oder /* was halt funktoniert. ; is bisl komisch :)
 
@Sicaine:
Andere Programmiersprache, andere Kommentarzeichen. :)
Daran sollte sich ein Programmierer ja eigentlich nicht stören.
Solange man auf den ersten Blick erkennt, dass es ein Kommentar sein soll, würde ich sogar ein hurz als "Kommentarzeichen" akzeptieren.

Gruß, Niko
 
Das würdest du echt akzeptieren?


Code:
;;Body

;;Abfragen starten

hurzhurzhurzhurzPower-Kommandoshurzhurzhurzhurz
If befehl$ = "shutdown"
    ShutdownEx(#EWX_SHUTDOWN)
EndIf

If befehl$ = "poweroff"
    ShutdownEx(#EWX_POWEROFF)
EndIf

If befehl$ = "logoff"
    ShutdownEx(#EWX_LOGOFF)
EndIf

If befehl$ = "reboot"
    ShutdownEx(#EWX_REBOOT)
EndIf


hurzhurzhurzhurzDate-Kommandoshurzhurzhurzhurz
If befehl$ = "date"
    datea = Date()
    date$ = FormatDate("%dd.%mm.%yyyy  %hh:%ii:%ss", datea)
    PrintN(date$)
EndIf

hurzhurzhurzhurzMultimedia-Kommandoshurzhurzhurzhurz
If befehl$ = "play"
    Print("Pfad: ")
    file$ = Input()
    PrintN("")

    If LoadMovie(0, file$) = 0
        PrintN("Fehlgeschlagen!")
    Else
        PlayMovie(0, WindowID())
    EndIf


hurzhurzhurzhurzDatei-Kommandoshurzhurzhurzhurz
    If befehl$ = "createfile"
        Print("Pfad: ")
        file$ = Input()
        PrintN("")
        CreateFile(0, file$)
    EndIf 

    If befehl$ = "deletefile"
        Print("Pfad: ")
        file$ = Input()
        PrintN("")
        DeleteFile(file$)
    EndIf 

EndIf  

Until befehl$ = "end"
:)
 
Danke für eure Antworten. Enrückun tut er eigentlich schon automatisch, ist aber durch das Kopieren-Einfügen draufgegangen.
Und es geht kein Anderes Kommentarzeichen in PureBasic.
Cu.
 
Und es geht kein Anderes Kommentarzeichen in PureBasic.

Das muss ich klarstellen bevors einer glaubt.

In PureBasic muss das Semikolon nur als Indikator einer Remark-Line/Kommentar voranstehen.
Danach sind generell alle Zeichen möglich.

Du hättest es auch so machen können:

Code:
; --------------------------------- Mein Comment -----------------------------------------
 

Neue Beiträge

Zurück