[linux-l] c fuer puristen

Peter Ross Peter.Ross at alumni.tu-berlin.de
Sa Jul 28 16:32:56 CEST 2007


Hi Steffen,

On Fri, 27 Jul 2007, Steffen Dettmer wrote:

> "Traue dem System und keinem anderen Programm einen guten Druckdialog
> zu, baue lieber einen selbst und zwar auch für alle anderen Programme,
> ob die nun wollen oder nicht"? Das führte doch dann dazu, was ich mit
> dem Desktopicon-vergleich meinte: jedes Programm installier "seinen"
> Button für "alle" anderen, am Ende hat man nur noch Riesendialoge mit
> "Faxen", "FAXEN", "Webseite X besuchen" usw.

Aehmm. so war das nicht gemeint.

Ich moechte nicht, dass jedes Programm einen Dialog installiert,

sondern dass der Dialog zum System dazukommt, wenn dieses eine neue 
Funktionalitaet hat (z.B. Faxen).

Natuerlich kann man statt des Fax-Buttons auch einen "Druckertyp" Fax 
einbinden,

es ging mir um ein _Beispiel_ ueber dynamische Erweiterbarkeit von 
Modulen, die von jedem Programm genutzt werden koennen.

Um dn Unterschied zu C++ noch einmal deutlich zu machen:

Wenn Du in C++ eine Klassenbibliothek nutzt, kommen 
Verbesserungen/Erweiterungen einer Klasse nicht einem bereits verlinkten 
Programme zugute, da die alte Version dieser Klasse zur Compilierungszeit 
eingebunden wurde.

Unter Objective C kannst Du die Klasse auswechseln und Dein altes Programm 
hat die neue Version - ohne Neukompilation - zur Verfuegung.

Das setzt natuerlich voraus, dass das Design Syntax und Semantik ausgiebig 
spezifiziert, damit das Programm weiterhin funktioniert.

Die Parallelitaet gleicher Funktionen ist doch unter Linux/FreeBSD/anderes 
Unix geradezu ein Trauerspiel, wenn ich z.B. OpenOffice installiere, Gnome 
"Bescheid" sage, welche Dateitypen ich damit oeffnen kann, aber Firefox 
weiss davon nichts:-( Die Mehrfachentwicklung von "magic" Dateien zur 
Dateityp-Erkennung (eine fuer 'file', eine fuer CUPS ..) .. das Ganze kann 
man fortsetzen.

Eine ordnende Hand in Gestalt einer Nextstep-Ojective-C-Bibliothek mit 
Systemintegration war sehr angenehm.

Gruss
Peter


Mehr Informationen über die Mailingliste linux-l