Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi werd ich Delphi 2005 können? (https://www.delphipraxis.net/34078-werd-ich-delphi-2005-koennen.html)

Pseudemys Nelsoni 17. Nov 2004 00:21


werd ich Delphi 2005 können?
 
hi,

ich habe bis jetzt immer mit delphi <=7 gearbeitet... wenn ich mir die screenshoots von sakuras delphi2005 thread angucke sieht der code etwas anders aus als ich ihn kenne...z.b sowas wie "strict" oder "assembly"...muss ich delphi nachher noch komplett neu lernen oder wie :\

Robert_G 17. Nov 2004 00:40

Re: werd ich Delphi 2005 können?
 
"strict" ist ein Keyword von Delphi.Net und macht aus einem private/protected ein richtiges private/protected.
kleiner Bleistift:
Delphi-Quellcode:
type EineKlasse = class
  strict private  fStrictPrivate  :Integer;
         private  fPrivate        :Integer;
  strict protected fStrictProtected :Integer;
         protected fProtected      :Integer;
end;

type EineAbleitung = class(EineKlasse)
  private procedure DoSomething;
end;

type EineGanzAndereKlasse = class
  private procedure DoSomething;
end;

procedure EineAbleitung.DoSomething;
begin
  fStrictPrivate  := 1; // boom
  fPrivate        := 1; // geht
  fStrictProtected := 1; // geht
  fPrivate        := 1; // geht
end;

procedure EineGanzAndereKlasse.DoSomething;
begin
  fStrictPrivate  := 1; // boom
  fPrivate        := 1; // geht
  fStrictProtected := 1; // boom
  fProtected      := 1; // geht
end;
Das das Wort "Assembly" aus der .Net-Welt stammt sollte dir auch schon untergekommen sein. ;)

Zitat:

Zitat von Pseudemys Nelsoni
muss ich delphi nachher noch komplett neu lernen oder wie :\

Glaube mir, unter .Net willst du kein Delphi benutzen. ;)
Es ist in .Net normale (und auch gewollte) Praxis eine öffentliche Eigenschaft nach ihrem Typen zu benennen.
Da der Delphi compiler einfach nicht schlau genug ist um herauszufinden, wann du das gleiche Wort als Typ und wann als Eigenschaft benutzt, wirst du fast dazu gezwungen, den Typen in einer anderen Unit und unter einem anderen NameSpace zu deklarieren. Und dann musst du natürlich den Typen _IMMER_ inklusive kompletten NameSpace-Pfad ( :evil: ) angeben.
Jeder .Net-Delphianer wird diesen Schnipsel nur zu gut kennen (und hassen) gelernt haben:
Code:
  If SomeDialog.ShowDialog() = [b]System.Window.Forms.[/b]DialogResult.OK then
Ein TTypName kannst du unter .Net getrost vergessen, jeder C#'ler/VB.Net'ler wird sich bei dir "bedanken" für diese ollen Ts;

Edit: Schlectschreibung...

Hansa 17. Nov 2004 00:56

Re: werd ich Delphi 2005 können?
 
Zitat:

Zitat von Robert_G
...Glaube mir, unter .Net willst du kein Delphi benutzen. ;)

Schwachsinn. :mrgreen:

Robert_G 17. Nov 2004 01:02

Re: werd ich Delphi 2005 können?
 
Zitat:

Zitat von Hansa
Zitat:

Zitat von Robert_G
...Glaube mir, unter .Net willst du kein Delphi benutzen. ;)

Schwachsinn. :mrgreen:

Wenn Borland in Delphi2063 mit einem modernen Compiler auftrumpft wären meine Argumente natürlich Schwachfug.
Wer sich die Demo-Videos zu D2005 angesehen hat, wird auch dort wieder System.Windows.Form.DialogResult.OK gesehen haben. ;)

toyoman 17. Nov 2004 05:57

Re: werd ich Delphi 2005 können?
 
Wie ist denn das jetzt mit Delphi 2005..

Ich arbeite auch noch mit der Delphi 7 Enterprise.
Kann ich meine Sourcen direkt übernehmen und weiterprogrammieren oder geht das genau auch nicht wie das in Delphi 8 .net der Fall war?

Wie schauts aus mit SQL (ADO) Support bei Delphi 2005 Professional? Bei Version 7 konnte man ja nur mit der Enterprise auf AD0 zugreiffen...

Die tollen Info-Pages im Netz sind immer so übersichtlich dass man doch nicht weiss was jetzt wo geht...

gruss

mirage228 17. Nov 2004 06:01

Re: werd ich Delphi 2005 können?
 
Zitat:

Zitat von toyoman
Wie ist denn das jetzt mit Delphi 2005..

Ich arbeite auch noch mit der Delphi 7 Enterprise.
Kann ich meine Sourcen direkt übernehmen und weiterprogrammieren oder geht das genau auch nicht wie das in Delphi 8 .net der Fall war?

Wie schauts aus mit SQL (ADO) Support bei Delphi 2005 Professional? Bei Version 7 konnte man ja nur mit der Enterprise auf AD0 zugreiffen...

Die tollen Info-Pages im Netz sind immer so übersichtlich dass man doch nicht weiss was jetzt wo geht...

gruss

Also Delphi für Win32 sollte diesmal in so gut wie allen Fällen funktionieren, da der Delphi für Win32 Compiler auch "nur" ein verbesserter D7 Compiler ist :)

mfG
mirage228

toyoman 17. Nov 2004 06:07

Re: werd ich Delphi 2005 können?
 
Zitat:

Zitat von mirage228
Zitat:

Zitat von toyoman
Wie ist denn das jetzt mit Delphi 2005..

Ich arbeite auch noch mit der Delphi 7 Enterprise.
Kann ich meine Sourcen direkt übernehmen und weiterprogrammieren oder geht das genau auch nicht wie das in Delphi 8 .net der Fall war?

Wie schauts aus mit SQL (ADO) Support bei Delphi 2005 Professional? Bei Version 7 konnte man ja nur mit der Enterprise auf AD0 zugreiffen...

Die tollen Info-Pages im Netz sind immer so übersichtlich dass man doch nicht weiss was jetzt wo geht...

gruss

Also Delphi für Win32 sollte diesmal in so gut wie allen Fällen funktionieren, da der Delphi für Win32 Compiler auch "nur" ein verbesserter D7 Compiler ist :)

mfG
mirage228

DANKE!
das wollte ich hören :wink:

Pseudemys Nelsoni 17. Nov 2004 09:52

Re: werd ich Delphi 2005 können?
 
Zitat:

Zitat von Robert_G
"strict" ist ein Keyword von Delphi.Net und macht aus einem private/protected ein richtiges private/protected.
kleiner Bleistift:
Delphi-Quellcode:
type EineKlasse = class
  strict private  fStrictPrivate  :Integer;
         private  fPrivate        :Integer;
  strict protected fStrictProtected :Integer;
         protected fProtected      :Integer;
end;

type EineAbleitung = class(EineKlasse)
  private procedure DoSomething;
end;

type EineGanzAndereKlasse = class
  private procedure DoSomething;
end;

procedure EineAbleitung.DoSomething;
begin
  fStrictPrivate  := 1; // boom
  fPrivate        := 1; // geht
  fStrictProtected := 1; // geht
  fPrivate        := 1; // geht
end;

procedure EineGanzAndereKlasse.DoSomething;
begin
  fStrictPrivate  := 1; // boom
  fPrivate        := 1; // geht
  fStrictProtected := 1; // boom
  fProtected      := 1; // geht
end;
Das das Wort "Assembly" aus der .Net-Welt stammt sollte dir auch schon untergekommen sein. ;)

Zitat:

Zitat von Pseudemys Nelsoni
muss ich delphi nachher noch komplett neu lernen oder wie :\

Glaube mir, unter .Net willst du kein Delphi benutzen. ;)
Es ist in .Net normale (und auch gewollte) Praxis eine öffentliche Eigenschaft nach ihrem Typen zu benennen.
Da der Delphi compiler einfach nicht schlau genug ist um herauszufinden, wann du das gleiche Wort als Typ und wann als Eigenschaft benutzt, wirst du fast dazu gezwungen, den Typen in einer anderen Unit und unter einem anderen NameSpace zu deklarieren. Und dann musst du natürlich den Typen _IMMER_ inklusive kompletten NameSpace-Pfad ( :evil: ) angeben.
Jeder .Net-Delphianer wird diesen Schnipsel nur zu gut kennen (und hassen) gelernt haben:
Code:
  If SomeDialog.ShowDialog() = [b]System.Window.Forms.[/b]DialogResult.OK then
Ein TTypName kannst du unter .Net getrost vergessen, jeder C#'ler/VB.Net'ler wird sich bei dir "bedanken" für diese ollen Ts;

Edit: Schlectschreibung...



hallo robert, danke für deinen code, nur ganz verstehe ich ihn nicht.
z.B hier:

Delphi-Quellcode:
procedure EineGanzAndereKlasse.DoSomething;
begin
  fStrictPrivate  := 1; // boom
  fPrivate        := 1; // geht
  fStrictProtected := 1; // boom
  fProtected      := 1; // geht
end;
wie können 2 felder daon gehen? Sie ist ja nicht von "EineKlasse" abgeleitet.

waren die alten "Private/Protected" felder keine "echten" ?

oh hab gar nicht gesehen das du noch mehr geschrieben hatttest....jo ich finde das auch doof das messagebox nun so aussieht: MessageBox.Show() O_o

Sanchez 17. Nov 2004 10:37

Re: werd ich Delphi 2005 können?
 
Zitat:

Zitat von Pseudemys Nelsoni
hallo robert, danke für deinen code, nur ganz verstehe ich ihn nicht.
z.B hier:

Delphi-Quellcode:
procedure EineGanzAndereKlasse.DoSomething;
begin
  fStrictPrivate  := 1; // boom
  fPrivate        := 1; // geht
  fStrictProtected := 1; // boom
  fProtected      := 1; // geht
end;

Ich glaube Robert meint damit sowas:

Delphi-Quellcode:
procedure EineGanzAndereKlasse.DoSomething;
begin
  with InstanzVonEineKlasse do begin
    fStrictPrivate  := 1; // boom
    fPrivate        := 1; // geht
    fStrictProtected := 1; // boom
    fProtected      := 1; // geht
  end;
end;
grüße, daniel

Robert_G 17. Nov 2004 11:06

Re: werd ich Delphi 2005 können?
 
Zitat:

Zitat von Sanchez
Ich glaube Robert meint damit sowas:

Delphi-Quellcode:
procedure EineGanzAndereKlasse.DoSomething;
begin
  with InstanzVonEineKlasse do begin
    fStrictPrivate  := 1; // boom
    fPrivate        := 1; // geht
    fStrictProtected := 1; // boom
    fProtected      := 1; // geht
  end;
end;
grüße, daniel

Jupp, war wohl zu früh/spät... :oops:


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:10 Uhr.
Seite 1 von 2  1 2      

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