Page 1 of 1

Class vs Function

Posted: 04 Jun 2020, 05:53
by BNOLI
Hallo freundiners,
beim üblichen "Meine Frau schaut im TV lieber andere Sachen-parallell im web gecruise" fielen mir zwei Skripte des AHKDev @aviaryan auf:

Function:
https://github.com/aviaryan/autohotkey-scripts/blob/master/Functions/_Ini.ahk (232 Zeilen)
Class:
https://github.com/aviaryan/autohotkey-scripts/blob/master/Functions/AhkIni.ahk (223 Zeilen)

Beides zum Ini-Datei bearbeiten. Einerseits als function, andererseits als class.
Wo liegen denn da jetzt die Unterschiede :arrow: Pro und Contra??

:think:

Re: Class vs Function

Posted: 04 Jun 2020, 08:46
by just me
Meine Meinung:

Für mich bringen Klassen gegenüber Funktionen dann einen Vorteil, wenn man damit in nennenswertem Umfang globale Variable und/oder Parameterorgien in den Funktionsköpfen einsparen kann. Außerdem lassen sich damit ohne Verrenkungen sehr leicht mehrere Instanzen mit uterschiedlichen Inhalten erzeugen.

In diesem Fall ist noch eine spezielle Eigenschaft interessant:

Die Funktionen arbeiten direkt auf der INI-Datei, d.h. bei allen Zugriffen wird die 'Platte' angefasst.

Die Klasse liest die INI-Datei bereits beim Erstellen der Instanz ein und arbeitet dann nur noch mit internen Objekten, bis die Save Methode aufgerufen wird.

Das geht wahrscheinlich schneller, wenn oft auf die INI-Datei zugegriffen werden muss, kann aber auch für funktionen nachgebildet werden.

So ist Alles wieder einmal Geschmackssache. Nach meinem Geschmack sind Klassen 'übersichtlicher' als ein Bündel von einzelnen Funktionen.

Re: Class vs Function

Posted: 04 Jun 2020, 10:51
by BNOLI
Danke für die Erklärung :thumbup: