Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Function mit mehreren Rückgabewerten (https://www.delphipraxis.net/157726-function-mit-mehreren-rueckgabewerten.html)

jaenicke 16. Jan 2025 07:59

AW: Function mit mehreren Rückgabewerten
 
Zitat:

Zitat von Stevie (Beitrag 1544155)
Tuple unpacking ist ein ziemlich klares und verständliches Konzept.

Verständlich ist es schon, aber wie in Delphi bei Methoden mit vielen Parametern unübersichtlich. Da finde ich benannte Argumente in C# deutlich besser. Entsprechend finde ich es auch besser, wenn man einen Record oder ähnliches zurückbekommt, so dass man mit Namen auf die Werte zugreift und nicht z.B. über Tupel basierend auf der Reihenfolge.

Stevie 16. Jan 2025 12:21

AW: Function mit mehreren Rückgabewerten
 
Das ist Sache, wie Tuples implementiert werden - in C# kannst du explizite Feldnamen weglassen, oder sie definieren - siehe https://learn.microsoft.com/en-us/do...s/value-tuples
Ebenfalls in Python kannst du auch Named tuples nutzen, siehe https://www.slingacademy.com/article...uple-examples/ - das kommt eigtl schon fast an eine Deklaration eines expliziten Recordtyps heran, was wir auch in Delphi machen können.

Allerdings gehen viele Bestrebungen in modernen Programmiersprachen dahin, die sogenannte Cermony zu verringern, also diesen ganzen Boilerplate Code, den man so schreiben muss, damit der Compiler versteht, was man eigtl will. Gute Designs opfern hierbei wenig bis gar keine Verständlichkeit des Source Codes.

jaenicke 16. Jan 2025 14:34

AW: Function mit mehreren Rückgabewerten
 
Zitat:

Zitat von Stevie (Beitrag 1545272)
Allerdings gehen viele Bestrebungen in modernen Programmiersprachen dahin, die sogenannte Cermony zu verringern, also diesen ganzen Boilerplate Code, den man so schreiben muss, damit der Compiler versteht, was man eigtl will.

In dem Fall geht es ja um die Lesbarkeit und Wartbarkeit für den Entwickler, nicht um etwas, das der Compiler braucht. Ich bin kein Freund davon, möglichst wenige Buchstaben zu schreiben, sondern finde gute und schnelle Lesbarkeit viel wichtiger.

Stevie 17. Jan 2025 11:18

AW: Function mit mehreren Rückgabewerten
 
Zitat:

Zitat von jaenicke (Beitrag 1545280)
Zitat:

Zitat von Stevie (Beitrag 1545272)
Allerdings gehen viele Bestrebungen in modernen Programmiersprachen dahin, die sogenannte Cermony zu verringern, also diesen ganzen Boilerplate Code, den man so schreiben muss, damit der Compiler versteht, was man eigtl will.

In dem Fall geht es ja um die Lesbarkeit und Wartbarkeit für den Entwickler, nicht um etwas, das der Compiler braucht. Ich bin kein Freund davon, möglichst wenige Buchstaben zu schreiben, sondern finde gute und schnelle Lesbarkeit viel wichtiger.

Korrekt, es geht um die Essenz und nicht um den ganzen Extraklump (aka Ceremony) - gute Languagedesigner (von denen es gar nicht so viele gibt) achten darauf, dass gerade nicht die Lesbarkeit und Verständlichkeit des Codes leidet sondern verbessert wird, da man keine kognitive Leistung damit verplempert, im Kopf den ganzen Extraklump durchzuparsen. Natürlich sind bei langjährigem Gebrauch bestimmte Synapsen schon ausgetreten und so mancher meint, dass dies und das weniger lesbar oder verständlich ist. Das ist aber genauso als ob ich behaupte, dass chinesisch total schwierig und unverständlich ist, nur weil ich es nicht kann. Milliarden von Menschen würden mir da vermutlich widersprechen.

Ich führ das jetzt nicht weiter aus, weil das schon sehr offtopic ist und ich keine Lust habe, ein Essay über die Thematik zu schreiben.

QuickAndDirty 17. Jan 2025 16:27

AW: Function mit mehreren Rückgabewerten
 
Ich mache das schon seit längerem mit Records. Unter anderem auch um exceptions usw. wiederzugeben...
Delphi-Quellcode:
TSuccessRes=record
  Success:Boolean;
  Error:String;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:45 Uhr.
Seite 4 von 4   « Erste     234   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz