Klaus Ulbrecht
Banned
- Registriert
- Feb. 2020
- Beiträge
- 65
Man kann C# als einen Abkömmling von Java betrachten. Gerade, wenn man diese Sprachen aus einem historischen Blickwinkel betrachtet. Jedoch gibt es wesentliche Unterschiede zwischen diesen Sprachen.
Mir geht es um eure subjektive Meinung, die ich gerne in Erfahrung bringen möchte. Mir geht es um die Frage, welche semantische, philosophische Herangehensweise ihr bevorzugt - die von Java, oder die von C#?
In Java besteht eine Klasse im wesentlichen aus Feldern und Methoden, wenn man von inneren Klassen und anderen, hochgestochenen, selten verwendeten Schickschnack absieht. C# wiederum bietet zusätzlich dazu noch Properties, Indexer und Delegates an - wobei es sich hier um in C# oft verwendete Features handelt.
Die Organisation des Source-Codes ist ebenfalls anders - In Java kriegt (für gewöhnlich) jede Klasse seine eigene Datei. Diese sind in Packages untergliedert, welche wiederum in Module untergliedert sind. C# bietet Namespaces an.
Auch bietet C# sehr viele zusätzliche Schlüsselwörter an, dessen Erläuterung den Rahmen sprengen würde. Nicht unerwähnt bleiben darf das Schlüsselwort "unsafe". Was hier für Schweinereien möglich sind, brauche ich nicht weiter erläutern.
Meine Meinung
Man merkt, dass hinter Java nicht nur ein kommerzieller Zweck, sondern eine Idee stand, die für sich stehen konnte. Seine Erdenker waren unzufrieden mit C++ und seiner Aufgeblähtheit und wollten eine Sprache und eine Programmier-Umgebung schaffen, die dem Entwickler eine klare, einheitliche Art des Entwickelns ermöglichen soll.
Die Motivation zur Kreierung von C# jedoch lieferten Konkurrenzdenken und Missgunst. Microsoft war schon seit jeher ein Künstler darin, bestehende Produkte nachzuahmen, dann zu erweitern und somit das Standardprodukt vom Markt zu prügeln. Das glückte jedoch bei weitem nicht immer.
Aus meiner Sicht merkt man, dass C# ein aufgeblähter, an vielen Stellen liebloser Abklatsch von Java ist. Die Vielfalt, seine Ideen in Quellcode auszudrücken ist bei C# kein Segen, sondern ein Fluch. Properties führen das Prinzip der Objektorientierung strenggenommen, genau wie Getter und Setter ad absurdum, die hunderttausend zusätzlichen Schlüsselwörter und die riesige Bibliothek erschweren Wiederverwendbarkeit, Erlernbarkeit und Wartbarkeit.
Kurz: Hinter Java stand eine Vision. Hinter C# stand eine bissige Riesenfirma mit, zugegeben durchaus fähigen Programmierern, jedoch kein Ideal. Java fühlt sich organisch an. C# fühlt sich eher lieblos an. Man kann C# benutzen - es ist kein Schmerz, es benutzen zu müssen, jedoch auch keine wirkliche Freude. Genau so erging es wahrscheinlich auch denjenigen Entwicklern, die den Auftrag bekamen, C# zu entwickeln.
Mir geht es um eure subjektive Meinung, die ich gerne in Erfahrung bringen möchte. Mir geht es um die Frage, welche semantische, philosophische Herangehensweise ihr bevorzugt - die von Java, oder die von C#?
In Java besteht eine Klasse im wesentlichen aus Feldern und Methoden, wenn man von inneren Klassen und anderen, hochgestochenen, selten verwendeten Schickschnack absieht. C# wiederum bietet zusätzlich dazu noch Properties, Indexer und Delegates an - wobei es sich hier um in C# oft verwendete Features handelt.
Die Organisation des Source-Codes ist ebenfalls anders - In Java kriegt (für gewöhnlich) jede Klasse seine eigene Datei. Diese sind in Packages untergliedert, welche wiederum in Module untergliedert sind. C# bietet Namespaces an.
Auch bietet C# sehr viele zusätzliche Schlüsselwörter an, dessen Erläuterung den Rahmen sprengen würde. Nicht unerwähnt bleiben darf das Schlüsselwort "unsafe". Was hier für Schweinereien möglich sind, brauche ich nicht weiter erläutern.
Meine Meinung
Man merkt, dass hinter Java nicht nur ein kommerzieller Zweck, sondern eine Idee stand, die für sich stehen konnte. Seine Erdenker waren unzufrieden mit C++ und seiner Aufgeblähtheit und wollten eine Sprache und eine Programmier-Umgebung schaffen, die dem Entwickler eine klare, einheitliche Art des Entwickelns ermöglichen soll.
Die Motivation zur Kreierung von C# jedoch lieferten Konkurrenzdenken und Missgunst. Microsoft war schon seit jeher ein Künstler darin, bestehende Produkte nachzuahmen, dann zu erweitern und somit das Standardprodukt vom Markt zu prügeln. Das glückte jedoch bei weitem nicht immer.
Aus meiner Sicht merkt man, dass C# ein aufgeblähter, an vielen Stellen liebloser Abklatsch von Java ist. Die Vielfalt, seine Ideen in Quellcode auszudrücken ist bei C# kein Segen, sondern ein Fluch. Properties führen das Prinzip der Objektorientierung strenggenommen, genau wie Getter und Setter ad absurdum, die hunderttausend zusätzlichen Schlüsselwörter und die riesige Bibliothek erschweren Wiederverwendbarkeit, Erlernbarkeit und Wartbarkeit.
Kurz: Hinter Java stand eine Vision. Hinter C# stand eine bissige Riesenfirma mit, zugegeben durchaus fähigen Programmierern, jedoch kein Ideal. Java fühlt sich organisch an. C# fühlt sich eher lieblos an. Man kann C# benutzen - es ist kein Schmerz, es benutzen zu müssen, jedoch auch keine wirkliche Freude. Genau so erging es wahrscheinlich auch denjenigen Entwicklern, die den Auftrag bekamen, C# zu entwickeln.