Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Prism Delphi .NET Facts - was sich ändert (https://www.delphipraxis.net/5921-delphi-net-facts-sich-aendert.html)

EnORItZ 10. Sep 2003 12:36

Re: Delphi .NET Facts - was sich ändert
 
Also zu den Objekten, z.B. können die ja so aussehen

Delphi-Quellcode:
type
 TMeinObjekt = Object
  eigenschaft1 : string;
  procedure Hallo(var i,a,b: integer);
 end;
Jetzt wird aber das Object selbst wegfallen, allerdings hab ich gehört das man sowas wie dort oben auch mit Records realisierbar sein soll(Also Methoden z.B.).

Also so:
Delphi-Quellcode:
type
 TMeinObjekt = Record
  Eigenschaft1: string;
  procedure Hallo(var i,a,b: integer);
 end;
vorher wars ja nur möglich Prozeduren so in Records einzubauen:
Delphi-Quellcode:
type
 TMeinRecord = Record
  eigenschaft1: string;
  Hallo: Procedure(var i,a,b: integer);
 end;
Korrigiert mich bitte wenn ich da was falsches sage.

Ich glaub das stand sogar in Ausgabe 4.2003 von Der Entwickler

/Edit:
Zitat:

Records werden als "Value Types" gewertet. (Hm, keine Ahnung, wie das zu verstehen ist ) Neu ist, das Records in Zukunft auch Methoden deklarieren können. Diese müssen als final (neu!) deklariert werden. Vererbung von Records ist weiterhin nicht möglich - es gibt ja Klassen
Sorry das hab ich zu spät gesehn

sakura 10. Sep 2003 12:46

Re: Delphi .NET Facts - was sich ändert
 
Kein Problem. ;-) Zum Thema object vs. class. Object kommt noch aus Turbo Pascal Zeiten (seit Version 5.5) und wird von Delphi nur aus Gründen der Kompatibilität unterstützt. Seit Version 1 von Delphi sollte man für alle neuen Klassen (und Objekte) mit class arbeiten.

...:cat:...

Tool-Box 14. Okt 2003 21:55

Re: Delphi .NET Facts - was sich ändert
 
Hallo Sakura,

Ich bin am Überlegen von Turbo Pascal 7.0 auf Delphi 8 umzusteigen.

Ich habe gelesen, dass auf der Delphi 8 (octane) auch die Delphi 7 Version beigelegt sein soll. Weisst du, ob auch Kylix 3 mit enthalten sein wird ?

Desweiteren habe ich hier irgendwo gelesen, dass unter Delphi.Net der Befehl "File of..." nicht mehr unterstützt werden soll.

Wie müsste untengenannter Record aus Pascal in Delphi umgeschrieben werden ?


Bsp.

Delphi-Quellcode:
Type Datenbank_Spiel_77 = Record (* Super 6 - Nr. 1 *)
Nr : LongInt;
Ziehung_I : Integer;
Ziehung_S : String[7];
Datum : String[10];
Ziehungstag : String[2];
Ziehungsmonat : String[2];
Ziehungsjahr : String[4];
Spiel : String[8];
Spieltag : String[10];
S1 : Byte;
S2 : Byte;
S3 : Byte;
S4 : Byte;
S5 : Byte;
S6 : Byte;
S7 : Byte;
end;
Filetyp_2 = File of Datenbank_Spiel_77;
Danke im voraus für evtl. Info.

Gruss, Tool-Box :)

[edit=sakura]Delphi-TAGs eingefügt. Mfg, sakura[/edit]

sakura 15. Okt 2003 08:21

Re: Delphi .NET Facts - was sich ändert
 
Zitat:

Zitat von Tool-Box
Ich habe gelesen, dass auf der Delphi 8 (octane) auch die Delphi 7 Version beigelegt sein soll. Weisst du, ob auch Kylix 3 mit enthalten sein wird ?

Da kann auch ich nur sagen: Mal bei Borland anrufen...
Die liebe Frau am Borland-Telefon sagte unverbindlich
Prinzipiell wird Kylix nicht zusammen mit Delphi 8 (Octane) ausgeliefert. Es wird zur Zeit jedoch darüber seniert, ob es unter Umständen eine Promotionaktion geben wird, zu welcher während der Einführung Kylix enthalten ist.


Zitat:

Zitat von Tool-Box
Desweiteren habe ich hier irgendwo gelesen, dass unter Delphi.Net der Befehl "File of..." nicht mehr unterstützt werden soll.

Wie müsste untengenannter Record aus Pascal in Delphi umgeschrieben werden ?

Das wirst Du am Besten komplett auf Streams ausweichen - sollte man schon jetzt tun, wenn es geht ;-) Mit obiger Type-Strukture sähe es dann wie folgend aus:

Delphi-Quellcode:
var
  DbEntry: Datenbank_Spiel_77;
  FS: TFileStream;
begin
  // Datei öffnen
  FS := TFileStream.Create('data.file', fmOpenReadWrite or fmShareDenyNone);
  try
    // read 3 data entry
    FS.Position := SizeOf(Datenbank_Spiel_77) * (3 - 1);
    FS.Read(DbEntry, SizeOf(Datenbank_Spiel_77));

    ...


    // save at first position
    FS.Position := 0;
    FS.Write(DbEntry, SizeOf(Datenbank_Spiel_77));
  finally
    // Datei schließen
    FS.Free;
  end;
...:cat:...

Wormid 15. Okt 2003 10:15

Re: Delphi .NET Facts - was sich ändert
 
Zwei Dinge:

1) Wie sieht es denn in Zukunft mit der nonVCL - Programmierung aus, wenn Zeiger, und Low-Level-Speicherverwaltung (GetMem, FreeMem, etc...) nicht mehr benutzt werden dürfen?

2)Wird es denn noch Befehle wie "LoadLibrary" und "GetProcAddress" geben? Ich meine, wenn Sie alles ausmerzen, was eine Plattformabhängigkeit schaffen könnte, dann gehört sowas doch leider auch dazu...
Es wäre IMHO ein herber tiefschlag für Delphi, wenn man auf einmal keine der teilweise recht genialen, frei verfügbaren DLLs diverser Projekte nutzen könnte (libmysql.dll, bass.dll.. usw und so fort!)

Gruß

Wormid

Chewie 15. Okt 2003 10:17

Re: Delphi .NET Facts - was sich ändert
 
Soweit ich weiß lassen sich mit .NET Dlls einbinden, allerdings nur sehr aufwändig. Wenn du DLLs benutzen musst, kannst du aber auch eine native Win32 (bzw. bald Win64??)-Anwendung erstellen.

sakura 15. Okt 2003 10:31

Re: Delphi .NET Facts - was sich ändert
 
Zitat:

Zitat von Wormid
1) Wie sieht es denn in Zukunft mit der nonVCL - Programmierung aus, wenn Zeiger, und Low-Level-Speicherverwaltung (GetMem, FreeMem, etc...) nicht mehr benutzt werden dürfen?

Vorläufig gibt es ja noch Win32 - allerdings widersprechen diese Art der Anwendungen dem "Sicherheitskonzept" von .NET. Keine Ahnung wie es in ein paar Jahren damit aussieht.

Zitat:

Zitat von Wormid
2)Wird es denn noch Befehle wie "LoadLibrary" und "GetProcAddress" geben? Ich meine, wenn Sie alles ausmerzen, was eine Plattformabhängigkeit schaffen könnte, dann gehört sowas doch leider auch dazu...

DLLs wird man noch laden können. Wie weiß ich noch nicht, aber das sollte nicht das eigentliche Problem sein. Aber auch hier gilt gleiches wie oben, wenn es mal eine reine .NET Plattform geben wird, dann wird es auch hier nur noch Assemblies geben und DLLs sind wahrscheinlich. ein Teil der grausigen Vergangenheit. (Letzteres beruht jetzt aber nur auf theoretisch hergeleitetem Wissen und nicht auf basierten Kenntnissen.)

...:cat:...

Ghostwalker 17. Okt 2003 06:52

Re: Delphi .NET Facts - was sich ändert
 
hmmmm...sieht auf den ersten blick nicht tragisch aus. Nur... .NET ist ja (genaugenommen) platform abhängig, da es nur unter Win verfügbar ist (und ich nicht glaube das M$ hier nen Port auf Linux macht.. :mrgreen:). und somit stellt sich mir die frage was der Quark eigentlich soll ?

Jens Schumann 17. Okt 2003 08:30

Re: Delphi .NET Facts - was sich ändert
 
Hallo
Zitat:

und ich nicht glaube das M$ hier nen Port auf Linux macht
Dafür gibt ja das Mono Projekt

Pseudemys Nelsoni 10. Nov 2003 05:01

Re: Delphi .NET Facts - was sich ändert
 
irgendwie hört sich das .NET zeug mehr wien nachteil als vorteil an? oder täuscht das?


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:12 Uhr.
Seite 3 von 4     123 4      

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