C# vs. Kylix

Ich stehe momentan vor der Entscheidung mich einer neuen Programmiersprache hinzugeben.

Nun weis ich aber nicht, was ich lernen soll.
Das neue Kylix (Delphi für Linux) oder C# welches nach Postings in Foren scheinbar C++ und Java vereint und dabei relativ einfach zu erlernen ist und dennoch Plattformunabhängig!

Ich schreib euch jetzt erst einmal kurz was ich so machen will und dann könnt ihr eure Meinung dazu abgeben.

Ich will hauptsächlich Programme schreiben, welche mit Netzwerken zu tun haben. was weis ich… z. B. die dynamische IP abfragen und dann per SMS verschicken oder so ! Oder meinetwegen ein Fernwartungsprogramm oder Systemdienste die mir die Administration eines Netzwerkes erleichtern (Linux und/oder WinNT/2K)

So, jetzt meine Fragen.

Was ist besser geeignet ?
Welche Programmiersprache ist zukunftssicherer?
Welche Sprache ist leichter ?
Ist C# wirlich Plattformunabhängig (ausser Virtual Machine)?
Welche Programmiersprache ist für meine Zwecke aus welchem Grund besser geeignet ?

Ich bin auf eure Meinungen gespannt !

Moin,

jetzt bin ich ein wenig verwirrt. Ist das echt oder trolling?

Was ist besser geeignet ?

Java

Welche Programmiersprache ist zukunftssicherer?

Java oder C/C++ sowie Perl und Python. Alle vier (oder sehr
nahe Verwandte) werden auch in zehn Jahren noch weit verbreitet
sein.

Welche Sprache ist leichter ?

Python kenne ich nicht, von den anderen halte ich Java für die
Sprache, mit der man am besten anfangen kann.

Ist C# wirlich Plattformunabhängig (ausser Virtual Machine)?

Nein. Glaub es erst, wenn Du es siehst.

Welche Programmiersprache ist für meine Zwecke aus welchem
Grund besser geeignet ?

Java ist weit verbreitet, wird von fast allen Unternehmen
unterstützt, bietet eine ausgereifte Klassenbibliothek gerade
für Netzwerkprogrammierung, eine große Anzahl von Tools und
läuft auf allen momentan interessanten Plattformen bis hin zum
Palm.

Thorsten

Hi Flashover,

ich rate Dir aus Gründen, die ich ja weiter unten schon angeführt habe, dringend zu C#!

Ich will hauptsächlich Programme schreiben, welche mit
Netzwerken zu tun haben. was weis ich… z. B. die dynamische
IP abfragen und dann per SMS verschicken oder so ! Oder
meinetwegen ein Fernwartungsprogramm oder Systemdienste die
mir die Administration eines Netzwerkes erleichtern (Linux
und/oder WinNT/2K)

Dafür ist C# sehr gut geeignet, da Du ja die komplette Win32-API objektorientiert (!) und konsistent (!) im .net verfügbar hast.

Was ist besser geeignet ?

C#, weil Du eine einzige objektorientierte, konsistente API hast, die Win32, COM, DCOM, … einheitlich abdeckt.

Welche Programmiersprache ist zukunftssicherer?

Weder noch, ich denke, beide haben große Zukunft.

Welche Sprache ist leichter ?

Eindeutig C#, weil’s konsistenter und logischer als in Java ist. Beispiel? Alles (auch die einfachen Datentypen) sind Objekte, …

Ist C# wirlich Plattformunabhängig (ausser Virtual Machine)?
Welche Programmiersprache ist für meine Zwecke aus welchem
Grund besser geeignet ?

C# erzeugt MSIL (Microsoft Intermediate Language, eine Art Zwischencode à la Bytecode von Java). Und MSIL läuft überall, wo es ein .net Framework gibt, also zur Zeit Windows und bald Linux.

Ich bin auf eure Meinungen gespannt !

Grüße,

Golo Haas

http://www.golohaas.de - the web the way you want it

Moin,

ich rate Dir aus Gründen, die ich ja weiter unten schon
angeführt habe, dringend zu C#!

Du meinst weiter unten, wo Du alle vier Wochen eine Antwort
schuldig bleibst?

Thorsten

Moin,

jetzt bin ich ein wenig verwirrt. Ist das echt oder trolling?

Was ist besser geeignet ?

Java

Auch Moin! :wink:

Java hat aber einen entscheidenden Nachteil:
Seit dem „Friedensschluß“ zwischen SUN und Microsoft vor ein paar Monaten hat Java das Image der Anti-Microsoft-Programmiersprache verloren. Viele Microsoft-Gegner wenden sich von SUN und SUN-Produkten ab, eben weil es zu diesem Friedensschluß gekommen ist (siehe entsprechende Aussagen aus USA). SUN mußte seit der Ausgleichszahlung durch Microsoft drastische Umsatzeinbrüche hinnehmen, weil viele Kunden, die strikt gegen Microsoft sind, Verträge rückggängig gemacht haben. Tel Aviv, wie der Lateiner sagt! :wink:)

Grüße
Siegfried

Moin,

Java hat aber einen entscheidenden Nachteil:
Seit dem „Friedensschluß“ zwischen SUN und Microsoft vor ein
paar Monaten hat Java das Image der
Anti-Microsoft-Programmiersprache verloren. Viele
Microsoft-Gegner wenden sich von SUN und SUN-Produkten ab,
eben weil es zu diesem Friedensschluß gekommen ist (siehe
entsprechende Aussagen aus USA).

Quellen?

Natürlich programmiere ich nicht in Java, weil es eine
Anti-MS-Sprache ist, sondern wegen der diversen anderen
Vorteile.

Thorsten

Hallo FlashOver,

kurz und bündig:

wenn Deine Programme oft ein GUI haben sollen und trotzdem
portabel sein sollen (WIN/Linux, kann Kylix noch mehr ?) dann Kylix.

Wenn Du systemnah auf der Kommandozeile arbeiten willst dann C#.

C# hat den Vorteil, dass Du auf sehr viel Quellcode
zureuckgreifen kannst (auch wenn der C und C++ ist).

Gruss
Arne

Frage: Wie kann man C# Systemnähe zusprechen ? *tstststs

Hi Florian,

C# ist genauso systemnah wie VC++, da es auf alle Schnittstellen dessen auch zugreifen kann. Sowohl mittels .net als auch im nicht abgesicherten Modus per Win32-API, COM, DCOM, …

Grüße,

Golo Haas

PS: Da Du mich schon im anderen Forum darauf hinweist, dass ich meine Artikel ja unsachlich und imn falschen Forum poste, möchte ich Dich hier auch auf etwas hinweisen: Wenn Du mal die Nettiquette beachtest, wirst Du feststellen, dass Artikel ohne „Hallo“, „Tschüss“, … im Allgemeinen als sehr unhöflich aufgenommen werden.

C# ist genauso systemnah wie VC++, da es auf alle
Schnittstellen dessen auch zugreifen kann. Sowohl mittels .net
als auch im nicht abgesicherten Modus per Win32-API, COM,
DCOM, …

tja … die APIs sind systemnah … die Systemnähe wird durch diese begrenzt … das habe ich damit gemeint … VB basiert auf den gleichen Bibliotheken … aber keines wegs systemnahe … verstehe mich nicht falsch … wenn du zum Beispiel mit C# einen Treiber für zum Beispiel deine eigene Hardware schreiben kannst … dann würde ich von Systemnähe sprechen

Die Portierungen von .net werden auf etwas ähnliches herauslaufen wie Java … MS wird schon dafür sorgen dass es vielleicht unter XP Systemnahe wird … aber denkst du wirklich sie haben ein Interesse das ganze auf Solaris zu portieren (was ein ziemlicher Aufwand wäre ! Der „Underground“ müsste total an Solaris angepasst werden und man müsste für in Solaris nicht vorhandene Komponenten alternativen schreiben … sprich es wird bei einer oberflächlichen Portierung bleiben die SICHER schlechter sein wird als bei XP. Die Portierung auf Linux wird ähnlich sein …

PS: Da Du mich schon im anderen Forum darauf hinweist, dass
ich meine Artikel ja unsachlich und imn falschen Forum poste,
möchte ich Dich hier auch auf etwas hinweisen: Wenn Du mal die
Nettiquette beachtest, wirst Du feststellen, dass Artikel ohne
„Hallo“, „Tschüss“, … im Allgemeinen als sehr unhöflich
aufgenommen werden.

dazu sage ich jetzt mal nichts und verweisse auf die Antwort im anderen Forum …

gruss

Berni

Moin,

C# ist genauso systemnah wie VC++, da es auf alle
Schnittstellen dessen auch zugreifen kann. Sowohl mittels .net
als auch im nicht abgesicherten Modus per Win32-API, COM,
DCOM, …

Definiere ‚Plattformunabhängigkeit‘.

Thorsten