Forum: Object-Pascal / Delphi-Language
by Luckie,
22. Mär 2010
Auch wenn es langsam offtopic wird, aber nur damit ich das richtig verstehe. Du schreibst jedes Jahr das komplette Programm neu, wenn der Kunde etwas geändert oder erweitert haben will? Kannst du mir mal bitte sagen, was das soll und warum du das machst?
Forum: Object-Pascal / Delphi-Language
by Luckie,
22. Mär 2010
Natürlich gibt es firmeninterne Styleguides, wie Code zu formatieren ist. Vielleicht nicht in jeder Firma aber in größeren bestimmt. Und wenn man im Team arbeitet ist es fast unumgänglich, dass man sich da einigt.
Richtig.
Dann viel Spass, wenn der Kund ein zwei Jahren wiederkommt und etwas geändert haben will. Und wenn dann noch der ursprüngliche Programmierer nicht mehr da ist, kann das...
Forum: Object-Pascal / Delphi-Language
by Luckie,
22. Mär 2010
Nein auch Wartbarkeit spielt eine Rolle. Und damit ein Code wartbar ist, muss er lesbar und möglichst leicht verständlich sein. Ein wildes hin und her Gespringe mit goto und ähnlichen Konstrukten, ist da eher kontraproduktiv.
Forum: Object-Pascal / Delphi-Language
by Luckie,
20. Mär 2010
Das try-finally gefällt mir sogar besser, weil da sicher gestellt wird, dass der Speicher wieder freigegeben wird.
Forum: Object-Pascal / Delphi-Language
by Luckie,
20. Mär 2010
Stellt sich die Frage, ob nach dem Exit der finally-Abschnitt noch abgearbeitet wird. Wenn dem so ist, dann spricht natürlich nichts gegen deine Lösung.
Forum: Object-Pascal / Delphi-Language
by Luckie,
20. Mär 2010
Das wäre natürlich eine Lösung. Allerdings finde ich meine besser lesbar.
Wollte ich den Speicher nicht in der Thread-Funktion frei geben, müsste ich die Variable global machen und doch wieder an anderer Stelle im Code freigeben. So hat man den direkten Bezug, auch wenn es natürlich oftmals schöner ist den Speicher dort wieder frei zu geben, wo man ihn anfordert. Da stimme ich dir zu.
Forum: Object-Pascal / Delphi-Language
by Luckie,
19. Mär 2010
Der Einsatz von goto wird ja immer so verteufelt. Ich habe das bisher eigentlich schon immer etwas differenziert gesehen, hatte bisher nur nie die Situation, in der ein goto sinnvoll gewesen wäre. Aber ich denke, gerade eben bin ich über einen sinnvollen Einsatz gestolpert:
function DemoThread(p: Pointer): Integer;
var
i: Integer;
ParentHandle: THandle;
label CLEANUP;
begin
...