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
 
Dejan Vu
(Gast)

n/a Beiträge
 
#12

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

  Alt 19. Mai 2014, 14:03
Zitat:
2. Mock <> Fake
Fakt ist, man ersetzt das richtige Dings durch nen anderes Dings. Und damit man son Dings austauschen kann, muss man sie voneinander entkoppeln.
Alles klar. Kann man so vereinfachen.
Zitat:
zu 4. robust eher im Sinne von wenn ich am Code an Stelle a etwas ändere krachts nicht an Stelle b, die auf der anderen Seite des Programms ist (geht auch ein bisschen Richtung Punkt 5)
zu 5. es geht nicht nur ums tippen sondern darum, dass man durch Erweiterungen nicht sein halbes System umstricken muss (Stichworte: OCP, LSP, ISP)
'einen Wolf tippen' ist die Quintessenz und der eigentliche Grund (einer davon), weshalb diverse Designregeln, OCP, LSP, ISP... eingeführt wurden. Ich mache etwas, weil ich nicht ewig tippen will, und 100 Jahre entwanzen, weil diese ich diese dämlichen Seiteneffekte nicht vermeiden kann und nicht, weil es gegen Gesetze verstößt. Kommt zwar aufs Gleiche heraus, aber ich habe hier ein paar sehr kluge Programmierer, die nur den Regeln folgen und dabei gar nicht merken, wie verworren, komplex und total überkandidelt das Ganze mittlerweile ist. Aber sie reiten auf den von Dir immer wieder zitierten Regeln herum und finden es total geil, sich 3 Tage über SRP den Kopf zu zerbrechen, anstatt es einfach 'einfach' zu gestalten. Ein sehr schönes Thema für einen anderen Thread.

Zitat:
Der will nur wissen, ob er XY machen darf oder nich und nicht, wie er das ermitteln.
Das war der korrekte Einwand von p80286, woraufhin ich meinte, man sollte 'IUser' durch 'IPermissions' ersetzen. Natürlich kann man das abstrahieren , aber die konkreten Rechte sind Bestandteil der Spezifikation und insofern nicht abstraktionswürdig. Kann man machen, wird man aber nicht. Wir haben Szenarioklassen à la 'Execute<BusinessObject>' die eine 'CanExecute' Methode haben, in der die Rechteabfrage umtergebracht ist.

Zitat:
Ich sag es oft
mir hast Du das noch nicht gesagt.

Aber dann verstehe ich deinen Einwand auch nicht: Ich habe ein Kommando als oberste Instanz. Dies führt eine Aktion und alle damit verbundenen weiteren Aktionen aus (Speichern, loggen, drucken, validieren etc.) Dem muss ich doch alle Abhängigkeiten übergeben, oder wie geht das sonst?

Geändert von Dejan Vu (19. Mai 2014 um 14:09 Uhr)
  Mit Zitat antworten Zitat
 


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 08:48 Uhr.
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-2025 by Thomas Breitkreuz