AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Globale Variablen/Abhängigkeiten = Böse... Und nu?
Thema durchsuchen
Ansicht
Themen-Optionen

Globale Variablen/Abhängigkeiten = Böse... Und nu?

Ein Thema von Dejan Vu · begonnen am 19. Mai 2014 · letzter Beitrag vom 13. Jun 2014
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#21

AW: Globale Variablen/Abhängigkeiten = Böse... Und nu?

  Alt 19. Mai 2014, 21:26
Was raus kommt, wenn mans übertreibt kann man sehr schön an dieser Fizzbuzz Implementierung sehen.
Das Ding ist super
  Mit Zitat antworten Zitat
Benutzerbild von implementation
implementation

Registriert seit: 5. Mai 2008
940 Beiträge
 
FreePascal / Lazarus
 
#22

AW: Globale Variablen/Abhängigkeiten = Böse... Und nu?

  Alt 13. Jun 2014, 20:31
Mir war der Begriff "Globale Abhängigkeit" neu, und ich finde auch bei Google nichts darunter. Hat vielleicht jemand ein paar gute Links dazu oder einen alternativen Begriff unter dem etwas zu finden ist?

Mir viel nämlich gerade auf, dass eine Haskell-Bibliothek, die ich aus ganz anderen Gedanken schrieb, eine perfekte Struktur hat, so etwas auch allgemeiner zu bedienen, daher will ich da mal etwas nachforschen.

Geändert von implementation (13. Jun 2014 um 20:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#23

AW: Globale Variablen/Abhängigkeiten = Böse... Und nu?

  Alt 13. Jun 2014, 20:41
Im Prinzip heißt es, daß der Code von "globalen" Dingen abhängig ist.
Du greifst also von deinem Code auf eine globale Variable zu, bzw. holst dir aus irgendeiner fremden Instanz etwas raus.

Beispiel: die globalen Form-Variablen (von Form2 auf Form1 zugreifen)

Damit bist du davon abhängig. Ohne geht nicht und mit was Anderem auch nicht.



Wenn du dir das jetzt aber geben lässt, anstatt es von irgendwo zu holen, dann bist du nicht mehr abhängig und man kann dich mit sonstwas verwenden.



Man lässt sich Eingabedinge geben und Rückgaben gibt man entweder an ein interface raus, wo sich aber jeder registrieren kann, bzw. es wird über eine Callback-Methode rausgegeben.
* nichts selber holen, außer von frei registrierbaren Quellen, oder sich alles geben lassen
* nicht selber irgendwo an was Festes übergeben, außer an frei registrierbare Ziele, oder die Ergebnisse abholen lassen

* wenn man davon problemlos mehrere Instanzen erstellen kann, ohne daß sich beide Instanzen irgendwie in die Quere kommen, dann gibt es vermutlich keine Abhängigkeiten
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (13. Jun 2014 um 20:48 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#24

AW: Globale Variablen/Abhängigkeiten = Böse... Und nu?

  Alt 13. Jun 2014, 21:01
"Globale Abhängigkeit" = Abhängigkeit auf einen global State (meist eine globale Variable oder ein Singleton).

Siehe dazu z.B. dieser Clean Code Talk.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 19:58 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