AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Unit-Design - was bevorzugt ihr?

Ein Thema von a.def · begonnen am 3. Jan 2017 · letzter Beitrag vom 6. Jan 2017
Antwort Antwort
Seite 3 von 5     123 45      
Rollo62

Registriert seit: 15. Mär 2007
4.093 Beiträge
 
Delphi 12 Athens
 
#21

AW: Unit-Design - was bevorzugt ihr?

  Alt 3. Jan 2017, 17:30
Wo wir schon bei Units sind ...

Ich benutze auch gerne weitere Verschachtelungen durch .
in der Art

String.Utils.Converter.pas

Das mache ich mittlerweile in vorrauseilendem Gehorsam, also auch
wenn es String.pas und String.Utils.pas noch gar nicht gibt


Rollo
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#22

AW: Unit-Design - was bevorzugt ihr?

  Alt 3. Jan 2017, 17:39
Bei uns lagen allgemeine Units bis vor ein paar Jahren relativ ungeordnet herum.
Der wesentliche Unterschied hier ist wohl wir und ich. Solange ich mich in meinem Chaos zurecht finde geht's, sobald ein zweiter hinzu kommt, ist das wohl eher kontraproduktiv. Aber wie immer kommt's es auf den Einzelfall an.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#23

AW: Unit-Design - was bevorzugt ihr?

  Alt 3. Jan 2017, 17:49
Ich ändere gerade auch alles um, damit mein Chaos etwas geordneter wird.
In eine eben angelegte Datei habe ich bereits 22 Methoden gesteckt. Die Datei hat mittlerweile komplett 745 Zeilen.
Bis wie viel Zeilen ist eine Datei denn noch OK, wenn thematisch alle Methoden die da drin sind zusammenpassen?
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.143 Beiträge
 
Delphi 10.3 Rio
 
#24

AW: Unit-Design - was bevorzugt ihr?

  Alt 4. Jan 2017, 16:32
Ich ändere gerade auch alles um, damit mein Chaos etwas geordneter wird.
In eine eben angelegte Datei habe ich bereits 22 Methoden gesteckt. Die Datei hat mittlerweile komplett 745 Zeilen.
Bis wie viel Zeilen ist eine Datei denn noch OK, wenn thematisch alle Methoden die da drin sind zusammenpassen?
Ich denke das ist gar nicht die Frage...

Ich habe auch noch Projekte wo es Units gibt, die gesammelte Proceduren und Funktionen habe... (> 7000 LOC)

Da hat aber auch so gut wie keine Procedure etwas mit der anderen zu tun... Und i.d.R haben die alle 2 Versionen

Delphi-Quellcode:
Procedure Foo(Const AValue : AnsiString);overload;
Procedure Foo(Const AValue : WideString);overload;
Ich rede mich raus mit : Gewachsener Code seit 1984.

Wenn ich Proceduren für Typen baue, dann immer in einer Class Abstract oder z.B. für TArray<T> hier ist alleine die Klassendefinition fast 200 LOC.

Mavarik
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
640 Beiträge
 
Delphi 10.1 Berlin Professional
 
#25

AW: Unit-Design - was bevorzugt ihr?

  Alt 4. Jan 2017, 17:21
Ich ändere gerade auch alles um, damit mein Chaos etwas geordneter wird.
Das glaube ich ist der Punkt: Irgendwann wird ein ungeordnetes System chaotisch. Wichtiger ist also meiner Meinung nach mehr, dass man überhaupt ein System verwendet. Welches ist dann wiederum davon abhängig, ob man das System nur für sich selber verwendet, oder in der Gruppe.

Bis wie viel Zeilen ist eine Datei denn noch OK, wenn thematisch alle Methoden die da drin sind zusammenpassen?
Wenn alles was drin steckt thematisch zusammen passt, und entsprechend geordnet ist, gibt es wahrscheinlich keine Größenvorgabe. Jedenfalls mache ich mir keine.

Zitat von Mavarik:
Procedure Foo(Const AValue : AnsiString);overload;
Procedure Foo(Const AValue : WideString);overload;
Darüber muss man sich nicht raus reden. Solche Leichen hat wohl fast jeder im Keller, der die Ansistring-Umstellung hinter sich hat
Gruss Otto
Wenn du mit Gott reden willst, dann bete.
Wenn du ihn treffen willst, schreib bei Tempo 220 eine SMS
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.093 Beiträge
 
Delphi 12 Athens
 
#26

AW: Unit-Design - was bevorzugt ihr?

  Alt 4. Jan 2017, 17:25
Gewachsene Libraries sind/werden wohl immer chaotisch, ich sehe das ganz locker.

Man sollte nur permanent an Verbesserungen und Reduzierungen von Redundanz und Kopplung arbeiten.
Dann wir schon alles gut

Hauptsache der Codeowner kennt sich im Dschungel noch aus.

Rollo
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#27

AW: Unit-Design - was bevorzugt ihr?

  Alt 5. Jan 2017, 00:01
Darüber muss man sich nicht raus reden. Solche Leichen hat wohl fast jeder im Keller, der die Ansistring-Umstellung hinter sich hat
Meine ist aktuell....

Delphi-Quellcode:
function IfThen(aValue: Boolean; const ATrue, AFalse: Integer): Integer; overload;
begin
 if aValue then
  Result := ATrue
 else
  Result := AFalse;
end;

function IfThen(aValue: Boolean; const ATrue, AFalse: string): string; overload;
begin
 if aValue then
  Result := ATrue
 else
  Result := AFalse;
end;

function IfThen(aValue: Boolean; const ATrue, AFalse: Boolean): Boolean; overload;
begin
 if aValue then
  Result := ATrue
 else
  Result := AFalse;
end;
Mir ging es auf die Nerven, dass es von offizieller Seit nur eine davon gab. Also habe ich mir die genommen, in meine Sammlung gepackt und zwei hinzugefügt.
Auf diese Art und Weise konnte ich viel Code sparen alà
Delphi-Quellcode:
// Vorher
if A = B then
 s := 'C'
else
 s := 'D';

// Nachher
s := IfThen(A = B, 'C', 'D');
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#28

AW: Unit-Design - was bevorzugt ihr?

  Alt 5. Jan 2017, 00:09
Mir ging es auf die Nerven, dass es von offizieller Seit nur eine davon gab.
In System.Math sind noch sechs andere. Fehlt nur die für Boolean.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#29

AW: Unit-Design - was bevorzugt ihr?

  Alt 5. Jan 2017, 00:26
In System.Math sind noch sechs andere.
Kommt mir ein bisschen vor wie die Suche nach den Eiern an Ostern
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#30

AW: Unit-Design - was bevorzugt ihr?

  Alt 5. Jan 2017, 08:07
Könnte man das nicht auch so lösen (ungetestet)?
Delphi-Quellcode:
type
  TGenericCompare<T> = record
  public
    class function IfThen(Expression: Boolean; const AThen, AElse: T): T; static;
  end;

class function TGenericCompare<T>.IfThen(Expression: Boolean; const AThen,
  AElse: T): T;
begin
  if Expression then
    Result := AThen
  else
    Result := AElse;
end;
Aufruf dann z.B.
Delphi-Quellcode:
procedure TfrmTest.ButtonTestClick(Sender: TObject);
var
  s: string;
begin
  s := TGenericCompare<string>.IfThen(1 = 1, 'Ja', 'Nein');
  ShowMessage(s);
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz