AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi published und das Prinzip des Information Hiding
Thema durchsuchen
Ansicht
Themen-Optionen

published und das Prinzip des Information Hiding

Ein Thema von sunny-andy · begonnen am 2. Apr 2008 · letzter Beitrag vom 3. Apr 2008
Antwort Antwort
sunny-andy

Registriert seit: 11. Nov 2007
26 Beiträge
 
#1

published und das Prinzip des Information Hiding

  Alt 2. Apr 2008, 15:14
Hallo!

Wenn ich eine normale Form erstelle, werden alle darauf abgelegten Steuerelemente unter published eingetragen. Dies verstößt doch eigentlich gegen das Prinzip des Information Hiding!?
Von außen habe ich eine unüberschaubare Anzahl an möglichen Properties, Steuerelementen und Methoden, die ich ansprechen kann. Gibt es nicht die Möglichkeit, alle Steuerelemente automatisch in den private Bereich schieben zu lassen?

Gruß,
Andy
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: published und das Prinzip des Information Hiding

  Alt 2. Apr 2008, 16:11
Komponenten sind nicht published, sondern managed. Du müsstest dich dann selber um die Erzeugung und Freigabe kümmern, wenn du diese privat machst.
Aber ein Formular ist auch keine "normale" Klasse.
Markus Kinzler
  Mit Zitat antworten Zitat
busybyte

Registriert seit: 15. Sep 2006
165 Beiträge
 
#3

Re: published und das Prinzip des Information Hiding

  Alt 3. Apr 2008, 02:46
Die nächste Stufe wäre wohl protected.
Aus Gründen der Funktionalität bietet es sich an
die meisten Objekte,Klassen usw. für andere Units zur Verfügung zu stellen,nur so
ist objektorientiertes Programmieren sinvoll.
Da die Objekte der Klasse zugeordnet werden sollten, ist auch eine
Verwechslung kaum zu erwarten.
Es kommt allerdings schonmal in
Delphi-Quellcode:
With MyObject do
begin
...
end
Konstrukten vor,ist aber relativ selten und einfach durch voranstellen des Objektes vor die Methode zu beheben.
Wenn Du mit mehreren Units bzw. Forms arbeitest,wirst Du bald merken warum private/protected Deklarationen
eher hinderlich aber zum Glück auch möglich sind.
I love DiscCat
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: published und das Prinzip des Information Hiding

  Alt 3. Apr 2008, 08:03
ich muss sunny-andy recht geben. Es ist nicht wirklich schön das von außen direkt auf edits zugegriffen werden kann etc.
Allerdings ist es eben managed und wenn man ein Formular objectorientiert verwendet so stellt man es selten direkt zu Verfügung. Meistens wird das Formular dann innerhalb einer anderen Klasse erstellt und liegt dort im private oder protected. Dadurch ist es dann auch gegen Zugriffe von außen geschützt.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#5

Re: published und das Prinzip des Information Hiding

  Alt 3. Apr 2008, 08:29
Ja die Unsitte der Var Formular:TForm1 deklaration kann man eigentlich nur im Hauptfenster gebrauchen, an sonnsten sollten
die anderen Formulare immer in Variablen die einem Object zugeordnet sind also Attributen erzeugt werden.
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
Antwort Antwort


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 10:56 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