Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi RAD Studio 2009 und .net? (https://www.delphipraxis.net/122452-rad-studio-2009-und-net.html)

anylol 16. Okt 2008 12:48


RAD Studio 2009 und .net?
 
Hallo,

ich bin total verwirrt! :cry:

Ich dachte dieses .net wäre von Microsoft, also hätte MS ein Monopol auf das .net und die einzigen die eine IDE rausbrkngen könnten, würden und machen...

Was ist das mit RAD Studio 2009?

Da habe ich auch ein compiler bzw. IDE für .net?
Bedeutet das, ich brauch das MS-Teil nicht mehr und kann in Delphi coden und .net?
(ja ich weiss einzelne zu startende Programme...)


Greifen die ineinander?
Gibt es ein converter von a nach b oder ist genau dazu dieses Studio was einem etwas hilft bzgl. Befehlsreferenz?

Das bedeute ja: Ich könnte von Delphi .NET in .net (MS) compilieren, richtig?

Benötige ich dann noch das .net Framework?
Oder verstehe ich das volkommend falsch, ist es eher so:
Delphi .net ist einfach nur vom syntax wie .net von MS?
Also vergleichbar mit kbasic welche z.b. den syntax von vb eingebaut haben?

Gibt es Boarland nichtmehr, ich dachte von denen ist Delphi?

Vielen Dank für die Beantwortung meiner ganzen Fragen!

jfheins 16. Okt 2008 12:56

Re: RAD Studio 2009 und .net?
 
net ist erstmal ein Satz von Funktionen, den das Betriebssystem bereitstellt, damit man als Programmierer nicht mehr jedes kleine Fitzelchen selber programmieren muss.

Microsoft hat nicht das Monopol auf .net, es gibt auch Mono für Linux. Das setzt dieselben Funktionen auf Linux um, sodass die Programme sowohl auf Windows als auch auf Linux laufen können.

Und Embarcadero kann natürlich auch Entwicklern die Chance geben, diese Funktionen zu nutzen.

(Damit sie nutzbar sind, muss natürlich Mono oder das .net-Framework installiert sein ;) )

Um .net Programme auszuführen benötigst du in jedem Fall das .net Framework, zum Entwickeln ... eigentlich auch.

Daniel 16. Okt 2008 12:58

Re: RAD Studio 2009 und .net?
 
Darf ich kurz mal zwischenfragen, wo Du ein RAD-Studio 2009 her hast, das eine .NET-Personality beinhaltet? Die gibt es tatsächlich, aber nicht von offizieller Seite.

Tatsächlich ist es so, dass CodeGear (so heißt die einstige Abteilung von Borland, die sich mit dem IDE-Werkzeugen befasst), eine gänzlich neue .NET-Lösung herausbringen wird.

Sherlock 16. Okt 2008 13:01

Re: RAD Studio 2009 und .net?
 
Nicht so direkt fragen, Daniel...subtiler ;)

Sherlock

anylol 16. Okt 2008 13:05

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von Daniel
Darf ich kurz mal zwischenfragen, wo Du ein RAD-Studio 2009 her hast, das eine .NET-Personality beinhaltet? Die gibt es tatsächlich, aber nicht von offizieller Seite.

GRR!! Jetzt wird behauptet DAS ICH ES HABE??? :twisted:

Was soll das? Ich habe es gelesen, quelle:
http://entwickler-forum.de/showthread.php?t=51068

Ich habe es nicht! Meine erste Frage im Forum und schon gehs los...
Ich hoffe das in Zukunft ich mich nicht extra von allem distanzieren muss.

Bernhard Geyer 16. Okt 2008 13:12

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von anylol
GRR!! Jetzt wird behauptet DAS ICH ES HABE??? :twisted:

Was soll das? Ich habe es gelesen, quelle:
http://entwickler-forum.de/showthread.php?t=51068

Und wo steht das was von .NET? :gruebel:

anylol 16. Okt 2008 13:12

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von jfheins
net ist erstmal ein Satz von Funktionen, den das Betriebssystem bereitstellt, damit man als Programmierer nicht mehr jedes kleine Fitzelchen selber programmieren muss.

Ah, okay.

Zitat:

Zitat von jfheins
Microsoft hat nicht das Monopol auf .net, es gibt auch Mono für Linux. Das setzt dieselben Funktionen auf Linux um, sodass die Programme sowohl auf Windows als auch auf Linux laufen können.

Danke! Dies war nun eine andere Antwort die ich jemanden stellte, dem ich fragte, wie es möglich sei, ein .net Programm (windows) auch für Linux zu veröffenlichen, wie das Gegenstück heist, da ich keine Antwort bekam, freut es mich, das ich nun dies hierdurch mitbekommen habe. :hello:

Bedeutet das also:
Wenn ich mir .net anschaue ist es besser (ja sorry, anderes Wort gibt es hierfür nicht) als Delphi, weil dieses kylix ja irgendwie tot ist?

Kann ich .net auch auf dem Mac compilieren? Wie heißt dort das Gegensrück?
(wenn ich schon mich mit was beschäftige, dann richtig).

Kann man behaupten, das .net konkurenzfähig ist zu c(++)? (wegen, wenn es auch auf dem mac funktioniert, plattformunabhängig ist?)


Zitat:

Zitat von jfheins
Und Emburkado (oder wie Codegear jetzt heißt) kann natürlich auch Entwicklern die Chance geben, diese Funktionen zu nutzen.

Wo ist Boarland hin? Delphi= Borland! Oder aufgekauft?

Zitat:

Zitat von jfheins
(Damit sie nutzbar sind, muss natürlich Mono oder das .net-Framework installiert sein ;) )

Ist mono zu net 100% kompatibel?

Zitat:

Zitat von jfheins
Um .net Programme auszuführen benötigst du in jedem Fall das .net Framework, zum Entwickeln ... eigentlich auch.


Naja oder mono :-D

Sherlock 16. Okt 2008 13:15

Re: RAD Studio 2009 und .net?
 
mono ist nicht 100% kompatibel. Es gibt aber auch ein mono für Mac.

Der derzeitige Stand von mono ist 2.0 (http://www.heise.de/open/NET-Klon-Mo...meldung/116972)

.net ist im Übrigen keine Sprache sondern ein Framework. Und aus genau diesem Grund gibt es auch verschiedene Sprachen für .net (von Basic über C und Delphi bis Fortran).

Edit: Borland hat sich von den Entwicklungsumgebungen (Codegear) getrennt, weiss der Geier warum. Embarcadero hats schließlich gekauft. http://www.codegear.com/

Sherlock

anylol 16. Okt 2008 13:18

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von Bernhard Geyer
Zitat:

Zitat von anylol
GRR!! Jetzt wird behauptet DAS ICH ES HABE??? :twisted:

Was soll das? Ich habe es gelesen, quelle:
http://entwickler-forum.de/showthread.php?t=51068

Und wo steht das was von .NET? :gruebel:

Benutzt du Google? Da steht nichts, es gibg doch um die 2009er version oder?
natürlich nutze ich google, und tada:
http://www.codegear.com/de/products/radstudio
da ich nie eine alte version nutze und warte bis etwas neu rauskommt bezog dich die Frage auf 2009, klar oder?

So, nun back to topic, ich freue mich schon auf die Antworten (ich meine die von mir gestellten).

Weitere Anfragen beantworte ich dir nur per PM weil das thema sonst mit offtopic zugepickt wird. Und ich würde es schade finden für mein erstes Thema! :(

Phoenix 16. Okt 2008 13:21

Re: RAD Studio 2009 und .net?
 
@Cheffe: Er hat doch gar nie gesagt dass er es hat ;-)

Zitat:

Zitat von anylol
Was soll das? Ich habe es gelesen, quelle:
http://entwickler-forum.de/showthread.php?t=51068

Da steht aber im übrigen rein gar nichts von .NET im Rad Studio 2009 sondern von C++...

Fakt ist:
Das Rad Studio 2007 bringt den Teil "Delphi für .NET" mit.

Es gibt übrigens (stand: Heute) noch kein Studio 2009. Erst wenn der .NET Teil für 2009 fertig ist (das ganze Ding wird sich Prism nennen - eine Ankündigung der Ankündigung gab es schon - und Prism wird übernächste Woche auf der PDC vorgestellt und wahrscheinlich noch dieses Jahr rauskommen. Erst wenn Prism da ist, sind alle Teile für ein Rad Studio 2009 fertig, und erst dann wird es das Rad Studio 2009 (Besteht dann aus Delphi 2009, C++ Builder 2009, Prism) geben. Was auch schon angekündigt wurde ist, dass Prism nicht in der Delphi-IDE lebt, sondern ein Teil vom Visual Studio wird. Das heisst also, mit dem Rad Studio hat man einmal Die Delphi-IDE mit Delphi / Win32 und C++, und einmal das VS mit Prism.

So. Jetzt ist das mit den Produkten hoffentlich erstmal geklärt ;-)

Nun zu .NET als solches:

.NET besteht aus mehreren Teilen. Da wäre einmal die Laufzeit-Umgebung (die sogenannte CLR). Die ist vergleichbar mit der Java Virtual Machine, und muss auf dem Zielcomputer vorhanden sein, damit .NET Anwendungen dort laufen. Das ist einmal der Fall, wenn das offizielle .NET Framework von Microsoft installiert ist, aber z.B. für Linux und auch Mac OSX gibt es Mono als Alternative.

Dann bringt das .NET Framework neben der CLR (also der Basis für alles) noch einen recht ordentlichen Stapel an Bibliotheken (ähnlich wie die Delphi RTL & VCL) mit. Der Stapel an mitgelieferten Bibliotheken wird mit .NET Version zu .NET Version immer aufgestockt. .NET 3.0 war im übrigen 'nur' .NET 2.0 CLR plus 3 Bibliotheken. Zugegeben recht umfangreiche ;-)

Wenn Du mit Delphi für .NET 2007 (nicht mehr zu empfehlen!) oder mit Prism (einfach noch etwas warten) auf .NET Basis entwickeln willst, dann solltest Du Dir vorher die Vor- und Nachteile der Umgebung genauer angucken.

jfheins 16. Okt 2008 13:26

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von anylol
Bedeutet das also:
Wenn ich mir .net anschaue ist es besser (ja sorry, anderes Wort gibt es hierfür nicht) als Delphi, weil dieses kylix ja irgendwie tot ist?

Naja ... ich muss etwas ausholen:

Also, so einen "Satz von funktionen für grundlegende Aufgaben" gibt es eigentlich schon immer - gehört eigentlich zwingend zu einem Betriebssystem.

Seit Windows 95 hatte man nun gewisse Funktionen, und aufgrund wachsender Anforderungen etc. sind immer mehr Funktionen hinzugekommen. Irgendwann wurde es dann unübersichtlich, weil es von vielen Funktionen 6 verscheidene Versionen gibt, manche melden einen Fehler im Rückgabewert, manche nicht und pi pa po.
Das heißt Win32-API.
Dann hat Microsoft .net entwickelt um einmal schön "aufzuräumen" Zusammengehörige Funktionen wurden in Klassen gepackt, vielfach erweitert und vereinheitlicht. Neue Konzepte wurden verwirklicht und das nannte man dann ".net Framework"

Win32-API hat Windows natürlich noch, aber in jedem neueren Windows ist auch das .net-Framework vorhanden.

Beide Sachen haben aber gewisse Vor und Nachteile. Eine Sache jetzt als besser darzustellen hat keinen Sinn, da sofort jemand kommt und sagt "da ist das andere schneller" ;)

Zitat:

Kann ich .net auch auf dem Mac compilieren? Wie heißt dort das Gegensrück?
(wenn ich schon mich mit was beschäftige, dann richtig).
Ich galube es geht, aber ich bin mir nicht sicher. Da MacOSX ja "nur" ein aufgebohrtes Linux ist, könnte sogar Mono drauf laufen aber mit macs kenne ich mich nicht so gut aus.

Zitat:

Kann man behaupten, das .net konkurenzfähig ist zu c(++)? (wegen, wenn es auch auf dem mac funktioniert, plattformunabhängig ist?)
Das kann man denke ich so sagen.
Edit: Was Anwendungsentwicklung angeht - einen Mikrocontroller in C# mit .net zu programmieren .. anyone?

Zitat:

Wo ist Boarland hin? Delphi= Borland! Oder aufgekauft?
Borland hat Delphi an Embarcadero verkauft, und Embarcadero lässt es unter der Marke CodeGear laufen.

Zitat:

Ist mono zu net 100% kompatibel?
Nicht ganz, es hinkt immer ein wenig hinterher. Aber das wesentliche funktioniert. Nur eben die allerneuesten Entwicklungen brauchen eben immer etwas Zeit.

Phoenix 16. Okt 2008 13:27

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von Sherlock
mono ist nicht 100% kompatibel. Es gibt aber auch ein mono für Mac.

Der derzeitige Stand von mono ist 2.0 (http://www.heise.de/open/NET-Klon-Mo...meldung/116972

Aufpassen:!: Mono 2.0 != .NET 2.0

Mono 2.0 beinhaltet z.B. bereits etliche Bibliotheken aus .NET 3.5 (z.B. System.Core.dll - das ganze Zeug für LINQ ist da drin). Einige fehlen dafür aber auch z.B. noch aus 3.0 (bzw. sind noch nicht fertig - z.B. die Workflow Foundation). Der Funktionsumfang des .NET Frameworks 2.0 soll aber wohl inzwischen komplett fertig sein.

Will heissen: In aller Regel (ausser man benutzt so schnieke neue Sachen wie ASP.NET MVC...) sollte das eigene Gedöns auch auf Mono (und damit auf der gleichen Runtime unter Windows, Linux und auf dem Mac) laufen.

Apollonius 16. Okt 2008 13:29

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von anylol
Wenn ich mir .net anschaue ist es besser (ja sorry, anderes Wort gibt es hierfür nicht) als Delphi, weil dieses kylix ja irgendwie tot ist?

Kann ich .net auch auf dem Mac compilieren? Wie heißt dort das Gegensrück?
(wenn ich schon mich mit was beschäftige, dann richtig).

Kann man behaupten, das .net konkurenzfähig ist zu c(++)? (wegen, wenn es auch auf dem mac funktioniert, plattformunabhängig ist?)

.NET ist keine Sprache. .NET ähnelt in vielerlei Hinsicht Java: Ein Compiler erzeugt Bytecode, der dann von einer Runtime interpretiert oder JIT-kompiliert wird. Die ausgelieferte Datei ist daher bereits plattformunabhängig (natürlich nur, wenn du keine plattformsezifischen Dinge tust). Es heißt also nicht "write once, compile anywhere" wie beispielsweise bei nativem C++ oder Lazarus, sondern "compile once, run anywhere" (in leichter Abwandlung des Java-Mottos). .NET ist letztlich lediglich die Definition dieses Bytecodes, der sogenannten IL.
Es gibt Compiler, die beispielsweise C in Java-Bytecode übersetzen können. Dies ist allerdings nicht die Regel - meistens schreibt man Java-Programme auch in Java. In .NET ist das ein wenig anders. Für sehr viele Sprachen gibt es einen .NET-Compiler, beispielsweise C++, Delphi, C# und VB.NET (die beiden letzteren gibt es überhaupt nicht nativ).

MrSpock 16. Okt 2008 13:33

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von jfheins
Microsoft hat nicht das Monopol auf .net, es gibt auch Mono für Linux.

Microsoft hat sehrwohl das Monopol auf .NET. Es gibt nur Gruppen, die dasselbe Interface für andere Plattformen zu implementieren versuchen. Neben der Harmonisierung der Betriebssystem-Funktionsaufrufe, will MS mit .NET den bisherigen Platzhirsch für plattformunabhängige Programmierung -JAVA- Konkurrenz machen.

anylol 16. Okt 2008 15:14

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von MrSpock
Microsoft hat sehrwohl das Monopol auf .NET.

Äm, ich sagte Patent oder monopol? Naja, nicht das sie wirklich ein Software-Patent drauf haben. Das hieße ja, Mono lebt nicht mehr lange (bis zum Softwarepatent).


Zitat:

Zitat von Apollonius
Ein Compiler erzeugt Bytecode, der dann von einer Runtime interpretiert oder JIT-kompiliert wird. Die ausgelieferte Datei ist daher bereits plattformunabhängig

Äm, nicht richtig oder??
Wenn ich unter Windows compiliere mit einer windows-IDE oder nur einen compiler, ist es eine windows-binary. richtig?
Ich muss also je OS und ie compiler 1x compilieren.



Zitat:

Zitat von Apollonius
(natürlich nur, wenn du keine plattformsezifischen Dinge tust).

das bedeutet für mich: winapi= ignorieren. Und rtfm lesen.
Ich erhoffe mir das die community groß wird, größer als die von MSDN.
(Anmerkung: Ich finde es klasse wenn ich abkürzen kann dank des tooltips auf den Abkürzungen!)

Zitat:

Zitat von Apollonius
In .NET ist das ein wenig anders. Für sehr viele Sprachen gibt es einen .NET-Compiler, beispielsweise C++, Delphi, C# und VB.NET (die beiden letzteren gibt es überhaupt nicht nativ).

Kannst mir jemand verraten, mit welchem Sinn es für C++ einen .net-compiler gibt?
c++ ist doch plattformunabhängig, da kommt *jemand* und bastelt etwas, was die Welt umbedingt braucht, einen .net-compiler. Ironischer weise wäre es auch noch so, das man das net-Framework braucht, und nicht auf mono verwiesen wird... (habe ich nicht nachgeschaut)

Schließlich gibt es auch eine Sprache D und ich erfinde morgen Programmiersprache F (mist, gibt es schon seid 1999, dann nehme ich Z!).


Andere Frage:
Ein Toolkit kann ich aber trotzdem verwenden, oder? Finde GTK schick!
(der Übersichtlichkeit: bitte nur über Geschmack streiten per PM, falls erwünscht. Meiner Meinung nach nicht.)

mkinzler 16. Okt 2008 15:18

Re: RAD Studio 2009 und .net?
 
Zitat:

Äm, nicht richtig oder??
Bei Compilern für .Net-Sprachen oder für die Java-VM schon

Apollonius 16. Okt 2008 15:23

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von anylol
Zitat:

Zitat von Apollonius
Ein Compiler erzeugt Bytecode, der dann von einer Runtime interpretiert oder JIT-kompiliert wird. Die ausgelieferte Datei ist daher bereits plattformunabhängig

Äm, nicht richtig oder??
Wenn ich unter Windows compiliere mit einer windows-IDE oder nur einen compiler, ist es eine windows-binary. richtig?
Ich muss also je OS und ie compiler 1x compilieren.

Zitat:

Zitat von Apollonius
Es heißt also nicht "write once, compile anywhere" wie beispielsweise bei nativem C++ oder Lazarus, sondern "compile once, run anywhere"

Das habe ich durchaus ernst gemeint.

Phoenix 16. Okt 2008 15:37

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von anylol
Zitat:

Zitat von Apollonius
Ein Compiler erzeugt Bytecode, der dann von einer Runtime interpretiert oder JIT-kompiliert wird. Die ausgelieferte Datei ist daher bereits plattformunabhängig

Äm, nicht richtig oder??
Wenn ich unter Windows compiliere mit einer windows-IDE oder nur einen compiler, ist es eine windows-binary. richtig?
Ich muss also je OS und ie compiler 1x compilieren.

Nein. .NET Code ist Intermediate-Language.
Jede Plattform übersetzt den IL-Code beim erstmaligen Aufrufen (also just in time - JIT) in echten binärcode für die CPU. Das bedeutet sogar, dass der IL-Code ggf. auf einem x64 System anders übersetzt wird als einem 32bit-System, und hier durch die runtime nochmal auf die jeweilige CPU optimiert wird.

Einmal compilieren -> gleiches Binary auf Windows, Linux oder Mac-Systemen benutzen. Und im Gegensatz zu Java heisst es sogar tatsächlich compile once, run anywhere und nicht compile once, debug anywhere.

Zitat:

Zitat von anylol
Andere Frage:
Ein Toolkit kann ich aber trotzdem verwenden, oder? Finde GTK schick!

Sofern es das Toolkit für .NET gibt, ja. Aber Du hast Glück: Das Mono-Projekt arbeitet auch an Gtk#: http://www.mono-project.com/GtkSharp

Es gibt für Max OSX z.B. auch Cocoa#.

DMW 17. Okt 2008 08:39

Re: RAD Studio 2009 und .net?
 
Zitat:

Zitat von anylol
Kannst mir jemand verraten, mit welchem Sinn es für C++ einen .net-compiler gibt?
c++ ist doch plattformunabhängig, da kommt *jemand* und bastelt etwas, was die Welt umbedingt braucht, einen .net-compiler.

C++-Code ist nur solange plattformunabhängig, wie du dich auf die standardisierten Sprachmittel und Bibliotheken beschränkst; die C++-Standard-Library ist allerdings in vielen Fällen nicht ausreichend.

Da viele Unternehmen Unmengen wertvollen C++-Codes haben und somit nicht ohne weiteres ihre ganze Anwendung neu schreiben können, bietet ihnen C++/CLI die Möglichkeit, in einer einzigen Anwendung sowohl ihre Altbestände als auch neuen Code, der die Vorteile von .NET nutzt, gemeinsam zu verwenden. Das ist meines Wissens in keiner anderen Sprache möglich, auch ist die Interaktion zwischen managed und unmanaged code AFAIK nirgendwo so einfach.

Wenn du mehr über C++ für .NET wissen willst, lies den Wikipedia-Artikel zu C++/CLI.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 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