Autor |
Beitrag |
hansa
      
Beiträge: 3079
Erhaltene Danke: 9
|
Verfasst: Do 03.07.03 12:34
Hi,
ich muß mich nochmals zu Wort melden. Wegen der Kommentare. In einem Programm mußte ich 1  Zeile ändern, nur eine einzige!.
Um das irgendwann noch nachvollziehen zu können, habe ich eine halbe Din A 4 Seite Kommentar an der Stelle in den Quelltext geschrieben.
Tja, so kanns auch gehen. 
_________________ Gruß
Hansa
|
|
mimi
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Do 03.07.03 13:32
mir ist gerade ihn den sin gekommen, einfach mal meine tsokubahn klasse hier zu posten, weil ich denke, so änlich sollte es schon aussehen. oder ?:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54:
| TSokubahn = class GLXImageList:TGLXImageList; GLXFont1: TGLXFont; Map:array of array of TMap; Tasten:array[0..6] of Byte; Keys:array[0..256] of Boolean; Undos:array of TUndo; UndoIndex:Integer; IniFile:String; StartPositionen:String; ZielIndex:Integer; Player:TPlayer;
DialogText:String; strCaption:String; strText:String; DrawDialog:Boolean; DialogTyp:Integer; DialogKey:Integer; private
IS_FPS:Boolean; GameSound:TSound; MapX:Integer; MapY:Integer; MapS:Integer; procedure ClearMap; procedure SetPlayerPos(NewX, NewY:Integer); procedure MoveKiste(NewX, NewY,OldX, OldY,DirX, dirY:Integer); procedure LoadKey; procedure KeyCheck; procedure SetUndoPos; procedure DrawText(Str : string; x,y,s,i:Integer; color,color1:TColor); procedure setMapSize(aMapX, aMapY,aMapS: Integer); function KisteOnZiel:Integer; function GetObjektCount(Typ:Integer):Integer; function PlayerRandomPos(Pos1:String):TPoint; function ShowMyDialog(aCaption, aDialogText:String; aDialogTyp:Integer):Integer;
public GLXDraw:TGLXDraw; FPS:Integer; constructor create(GXLDraw:TGLXDraw;GLXDraw2:TGLXDraw); procedure CreateRandomMap; procedure DrawGame; procedure LoadFileMap(pFileName,PlayerName:String); procedure InputKey(Key:Word; off:Boolean); end; |
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Aya
      
Beiträge: 1964
Erhaltene Danke: 15
MacOSX 10.6.7
Xcode / C++
|
Verfasst: Do 03.07.03 14:10
Hi,
@Mimi: Nich falsch verstehen, aber solche kommentare sind in meinen Augen der Horror... *grinst fies*
Ich finde da sind so dermaßen viele überflüssige Kommentare drin... ai ai ai.... *g*
Ausserdem finde ich bei der Art immer nervig, das wenn ich in ner Zeile was schreibe und an's Ende will um z.B. nen vergessenes Semikolon zu machen.. dann drücke ich auf "Ende".. und schwupp bin ich am ende des kommentars und darf erstmal mühevoll mit den Pfeiltaste an die richtige stelle springen...
Au'revoir,
Aya~
_________________ Aya
I aim for my endless dreams and I know they will come true!
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 03.07.03 14:13
Da ist wirklich viel Überflüssiges drin.
|
|
mimi
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Do 03.07.03 15:05
@Aya
das mit dem semikolen mache ich anders:
einfach strg + pfeiltasten:) und fertig.
gut ich gebe zu das da viel sinloses drin ist, aber dafür sollte es auch ein anfänger verstehen oder ?
aber ich schreibe die kometrae nur in den classen definiationen hin im qullcode wird du selten auf kometrae stoßen.)
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Popov 
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: Do 03.07.03 16:51
Aya hat folgendes geschrieben: | ... und an's Ende will um z.B. nen vergessenes Semikolon zu machen... |
Um ehrlich zu sein, kann ich mich nicht mehr drann erinnern wann ich das letzte mal ein Semikolon vergessen habe. Es passiert eher, daß ich in einem Basic Programm Semikolons setzte. Aber in einem Pascal Programm passiert mir das inzwischen nicht mehr. Inzwischen ist das ein Instinkt.
Zu dem Beispiel von mimi - also ich finde nicht, daß es zuviele Kommentare sind. Zugegeben, es ist ein sehr gut dokumentierter Code und ich schätze, daß es auch Bereiche gibt die nicht so gut dokummentiert sind, aber seien wir doch mal ehrlich - in diesem Code blickt jeder sofort durch. Auch der, der nicht weißt wozu das Programm gut ist, weißt sofort wozu die Prozeduren und Variablen sind. Ein gut gewählter Name kann nie so gut sein wie ein Satz, der den Sinn beschreibt.
_________________ Popov
|
|
mimi
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Do 03.07.03 17:46
dann erkläre mal wozu die procedruen und funktionen gut sind:)
wie gesagt, ich mache das nur in den deklationen von den Proc und Funktionen.....
ich vergesse ehrer und Klammer auf bzw. zu das ist mein eingetliches problem. das ich nie weiß wo die klammer zu hin muss
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Aya
      
Beiträge: 1964
Erhaltene Danke: 15
MacOSX 10.6.7
Xcode / C++
|
Verfasst: Do 03.07.03 17:48
Popov hat folgendes geschrieben: | Ein gut gewählter Name kann nie so gut sein wie ein Satz, der den Sinn beschreibt. |
und was is an:
Delphi-Quelltext
besser als an:
Delphi-Quelltext 1:
| procedure LandkarteLaden; |
???
Au'revoir,
Aya~
PS: Das is aber doch wohl übertrieben:
Delphi-Quelltext 1:
| procedure LandkarteLaden; |
_________________ Aya
I aim for my endless dreams and I know they will come true!
|
|
Popov 
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: Do 03.07.03 23:01
mimi hat folgendes geschrieben: | dann erkläre mal wozu die procedruen und funktionen gut sind:) |
Ich verstehe den Sinn der Frage nicht, bzw. wieso die Frage von dir kommt.
@Aya
Was besser ist,
procedure Map; //Lädt die Landkarte
oder
procedure LandkarteLaden;
werde ich nicht beantworten. Ich hab hier die Frage nicht gestellt um zu diskutieren ob man es machen muß. In meiner Firma muß ich, zumindest bei einigen Projekten, alle Programme aufs genauste dokumentieren. Ich kann alle Prozeduren, Funktionen und Variablen in einem extra Dokument auflisten und genau beschreiben oder ich mach das direkt im Code. Ich mach das zwar auch nicht immer, aber wenn's im Pflichtenheft steht, dann mach ich es mir am einfachsten. Und ein Kommentarkopf ist einfacher als ein extra Dokument. Aber um ehrlich zu sein, so mache ich Kopfbeschreibungen auch in privaten Programmen. Zwar nicht bei allen, aber zumindes bei den wichtigen.
Nur habe keine feste und standarisierte Form eines Prozedurkopfes. Bei jedem Projekt hab ich es bis jetzt anders gemacht. Deshalb war meine Frage weniger als Diskusionsfrage gedacht, als Erfahrungsaustausch. Da ich dachte, daß mehr Programmierer ihre Prozeduren dokumentieren, wollte ich nachfrage wie die es machen.
Aber um auf dich zurückzukommen, Aya.
Aya hat folgendes geschrieben: | Ich meine jetzt in der OH nachschauen was der Befehl macht ... |
Aya hat folgendes geschrieben: | ... hab in der OH nachgeguckt ... |
Du guckst in der OH-Dokumentation nach was die Funktion macht? Willst du etwa behaupten, daß die Prozeduren und Funktionen von Delphi nicht selbsterklärende Namen haben?  (ich weiß, das war jetzt fies) 
_________________ Popov
|
|
|