Delphi-PRAXiS
Seite 111 von 192   « Erste     1161101109110111 112113121161     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Klatsch und Tratsch (https://www.delphipraxis.net/34-klatsch-und-tratsch/)
-   -   Was nervt euch so, während der Programmierung oder so allgemein (https://www.delphipraxis.net/152540-nervt-euch-so-waehrend-der-programmierung-oder-so-allgemein.html)

himitsu 5. Aug 2012 16:43

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Früher gab's in der VCL mal die Custom-Controls ala TCustomEdit, wo nicht gleich alles Published war ... bei FMX dachte man sich wohl, sowas sei Old School und alle wollen immer gleich alles sehn.
Selbst nachträglich die Property nach Public oder Kleiner zurückzuverschieben bringt irgendwie nichts.

himitsu 7. Aug 2012 23:29

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Ich hasse zwanghafte SCOPEDENUMS.

Freiwillig (wenn nötig) mit Namespace/Scope benutzbar ist OK, aber warum muß die VCL/FMX einen immer und überall dazu zwingen?

jaenicke 8. Aug 2012 05:38

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Ich finde das (wie auch z.B. in C#) sehr sinnvoll und füge das bei allen neuen Quelltexten auch hinzu. Die alte Krücke mit den Prefixes spare ich mir dabei dann auch, so dass der Quelltext viel besser lesbar wird.

Bei VCL/FM kommt glaube ich dazu, dass aufgrund der Ähnlichkeit an manchen Stellen die Bezeichner identisch wären, wenn kein Scope angegeben würde.

Und was spricht denn dagegen?
(Außer Schreibfaulheit, aber so etwas lasse ich nicht gelten.)

Furtbichler 8. Aug 2012 06:53

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Mit gut funktionierender Codecompletion gäbe es keine Schreibfaulen.

jaenicke 8. Aug 2012 08:51

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Bei mir funktioniert die z.B. bei XE nur innerhalb von anonymen Methoden nicht und bei untypisierten Parametern wie bei Format (und bei letzterem ist es ja nachvollziehbar).

himitsu 8. Aug 2012 09:21

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Wenn es funktioniert, dann fände ich manchmal/oftmals eine andere Sortierung (erst die passenden Konstanten, dann Property/Funktionen, welche genau diesen Typen liefern und erst dann verschachtelte Dinge, wo in tieferen Ebenen dann der Typ vorkommt) und/oder eine erweiterte Suchfunktion (nicht nur der Wortanfang) nützlich, denn in der Masse an Vorschlägen findet man nicht immer das, was man braucht, vorallem wenn man grade nicht genau weiß wie das heißt, was man grade braucht.

Ansonsten sind die Dinge manchmal enfach häßlich lang.
Mit Scope und auch noch mit Präfix in einem CASE. (ala TCalloutPosition.cpTop)

PS: Wenn der Typ eindeutig ist, was in Delphi meistens der Fall ist, Dank der strikten Typisierung, dann könnte der Compiler auch etwas freundlicher sein und sich den richtigen/passenden Typen raussuchen, anstatt sich nur die letzte gefundene Implementation anzusehn und zu mackern "nee, paßt nich", dann wären an den meisten Stellen garkeine Scopes nötig, außer da, wo kein fester Typ gegeben ist, wie bei Ord, TypeInfo, offenen VAR-Parametern und Co.

TiGü 8. Aug 2012 09:40

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Zitat:

Zitat von himitsu (Beitrag 1177296)
Ansonsten sind die Dinge manchmal enfach häßlich lang.
Mit Scope und auch noch mit Präfix in einem CASE. (ala TCalloutPosition.cpTop)

PS: Wenn der Typ eindeutig ist, was in Delphi meistens der Fall ist, Dank der strikten Typisierung, dann könnte der Compiler auch etwas freundlicher sein und sich den richtigen/passenden Typen raussuchen, anstatt sich nur die letzte gefundene Implementation anzusehn und zu mackern "nee, paßt nich", dann wären an den meisten Stellen garkeine Scopes nötig, außer da, wo kein fester Typ gegeben ist, wie bei Ord, TypeInfo, offenen VAR-Parametern und Co.

Es passt zwar nicht ganz, aber:
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)

Jemand der in fünf Jahren dein Programm warten muss, wäre über die "überflüssigen" Informationen erfreut. Klar findet man vieles über Strg+Linksklick, aber das stört den Fluss beim Verstehen eines Quelltextes.

jaenicke 8. Aug 2012 10:11

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Zitat:

Zitat von himitsu (Beitrag 1177296)
Ansonsten sind die Dinge manchmal enfach häßlich lang.

Was ist an der Länge schlecht? Man sieht dadurch einfach besser was zu was gehört.

Ich habe auch Enumerationen in nested types, da ist der Bezeichner noch länger, aber auch das halte ich nicht für schlecht. Dafür ist dann der einzelne Typbezeichner kürzer, da klar ist worauf der sich bezieht. Zum Beispiel:
Delphi-Quellcode:
bipLeft
// oder
TButtonImagePosition.bipLeft
Was ist da wohl schneller lesbar, wenn man den Quelltext überfliegt? (bei neuen Werten sinnvollerweise natürlich ohne Prefix, also TButtonImagePosition.Left)

Deshalb finde ich den Zwang dazu eine gute Möglichkeit diejenigen zu disziplinieren, die ansonsten die kürzeren Bezeichner der Lesbarkeit vorziehen...

Namenloser 8. Aug 2012 10:18

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Also mir gefällt diese Schreibweise TFoo.Bar bei Enums sehr gut, denn ich hatte schon öfters Probleme mit Namenskollisionen mit den Präfixen. Mein Delphi kennt das leider noch nicht...

In PHP (schreckliche Sprache, aber darum geht es jetzt nicht) emuliere ich übrigens auch gerne auf diese Weise Enums:

Code:
class MyEnum {
  const A = 0;
  const B = 1;
  const C = 2;
}

$x = MyEnum::A;

himitsu 8. Aug 2012 10:27

AW: Was nervt euch so, während der Programmierung oder so allgemein
 
Ich empfinde es eben gerade nicht unbedingt als Lesbaret, wenn "redundanter" Code "sinnlos" den eigentlichen Code vollmüllt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:38 Uhr.
Seite 111 von 192   « Erste     1161101109110111 112113121161     Letzte »    

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