Vergleich mit Java: Produkte und Zwischenprodukte

Die Programmiersprache C# und Programmierung im .NET Framework/Mono
Antworten
Benutzeravatar
fat-lobyte
Beiträge: 1398
Registriert: Sa Jul 05, 2008 12:23 pm
Wohnort: ::1
Kontaktdaten:

Vergleich mit Java: Produkte und Zwischenprodukte

Beitrag von fat-lobyte » Di Sep 04, 2012 4:21 pm

Hallo!

Ich habe ne Frage, die ich wahrscheinlich mit viel Googeln und Lesen zwar lösen könnte; allerdings habe ich gehofft dass mir einer von euch viel Zeit ersparen kann.

In meiner Vorstellung ist C# vom Prinzip das gleiche wie Java.

In Java hat man Quellcode (.java), aus den Quellcode baut man Objektcode (.class) und diese .class Dateien kann man entweder mit der JRE ausführen (wenns ne main()-Methode gibt) oder in Java code verwenden (import-Anweisung).


Wie sähe da das Äquivalent in C# aus? (Wenn es eines gibt)

In C# hat man Quellcode (.cs), generiert daraus was? (.dll/.exe/.???), dieses Dings kann man dann mit der CLR ausführen; kann man das dann auch irgendwie importieren?


Für eure Hilfe wäre ich sehr Dankbar.

lg, fat-lobyte
Haters gonna hate, potatoes gonna potate.

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Vergleich mit Java: Produkte und Zwischenprodukte

Beitrag von cloidnerux » Di Sep 04, 2012 4:54 pm

In meiner Vorstellung ist C# vom Prinzip das gleiche wie Java
Eher weniger.

Einzelne C#-Dateien werden entweder zu manifesten Compiliert und dann eine Klasse oder ein größerer Verbund zu einer *.dll oder *.exe
Willst du nun C#-Klassen einbinden, kannst du das entweder über einbeziehen der Quellen machen oder durch importieren der *.dll. Durch die zusätzlichen Informationen in den .NET-dlls ist es möglich, alles Klassen samt aller öffentlichen Bestandteilen zu erfassen, damit wird dann z.B die IntelliSense bei VS gefüttert, bzw du kannst das mit System.Reflection auch machen.
Damit ist .NET Code nicht universell ausführbar, sondern nur auf Windows-Maschinen mit .NET-Runtime.
Redundanz macht wiederholen unnötig.
quod erat expectandum

Benutzeravatar
fat-lobyte
Beiträge: 1398
Registriert: Sa Jul 05, 2008 12:23 pm
Wohnort: ::1
Kontaktdaten:

Re: Vergleich mit Java: Produkte und Zwischenprodukte

Beitrag von fat-lobyte » Di Sep 04, 2012 9:10 pm

cloidnerux hat geschrieben:Einzelne C#-Dateien werden entweder zu manifesten Compiliert und dann eine Klasse oder ein größerer Verbund zu einer *.dll oder *.exe
Willst du nun C#-Klassen einbinden, kannst du das entweder über einbeziehen der Quellen machen oder durch importieren der *.dll. Durch die zusätzlichen Informationen in den .NET-dlls ist es möglich, alles Klassen samt aller öffentlichen Bestandteilen zu erfassen, damit wird dann z.B die IntelliSense bei VS gefüttert, bzw du kannst das mit System.Reflection auch machen.
Damit ist .NET Code nicht universell ausführbar, sondern nur auf Windows-Maschinen mit .NET-Runtime.
Klingt für mich trotzdem alles gleich :-)

.dll/.exe entspricht einer .jar, ein Manifest einer .class und die .NET-Runtime ist das gleiche wie JRE.

Also es ist schon möglich eine .NET DLL in deinen Code einzubinden, wenn ich das richtig verstehe?

Danke vielmals für die prompte Antwort!
Haters gonna hate, potatoes gonna potate.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Vergleich mit Java: Produkte und Zwischenprodukte

Beitrag von Xin » Di Sep 04, 2012 9:16 pm

fat-lobyte hat geschrieben:Klingt für mich trotzdem alles gleich :-)
Ist es im Prinzip auch. .NET-DLLs sind auch nichts anderes als Container. .class-äquivalente Dateien sind mir in .NET nicht bekannt.
fat-lobyte hat geschrieben:Also es ist schon möglich eine .NET DLL in deinen Code einzubinden, wenn ich das richtig verstehe?
Du kannst in einem C# Projekt .NET-kompatible DLLs importieren und dann die darin enthaltenen Klassen per using einbinden.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Vergleich mit Java: Produkte und Zwischenprodukte

Beitrag von cloidnerux » Di Sep 04, 2012 9:25 pm

Du kannst in einem C# Projekt .NET-kompatible DLLs importieren und dann die darin enthaltenen Klassen per using einbinden.
Du kannst auch nicht .NET Klassen einbinden. Ob aber die Umkehrung, also in C/C++ .NET Klassen zu nutzen Funktioniert, weiß ich gerade nicht. Aber wie immer hilft google:
http://stackoverflow.com/questions/8520 ... e-native-c
Redundanz macht wiederholen unnötig.
quod erat expectandum

Benutzeravatar
fat-lobyte
Beiträge: 1398
Registriert: Sa Jul 05, 2008 12:23 pm
Wohnort: ::1
Kontaktdaten:

Re: Vergleich mit Java: Produkte und Zwischenprodukte

Beitrag von fat-lobyte » Di Sep 04, 2012 9:27 pm

Ok, danke für die Info!
Haters gonna hate, potatoes gonna potate.

Antworten