Ergebnis 1 bis 20 von 45

Thema: Flamewar: C# vs. C++

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Mit C++ kann man keine anständigen Spiele mehr schreiben der Perfomance verlust ist viel zu hoch.
    Ich habe übrigens geschrieben das C# oder C.Net wie man es nenne will oder wirklich heisst für Windows extrem gut geeignet ist und wer Linux Fan eher nicht.
    Ausserdem finde ich es sehr belustigen das angeblich die Sprachen so erfolgreich sind,wegen Propaganda großer Firmen.
    C# wird für sehr viele Spiele benutzt.


    Warum also sollten man sich für C# (wird "C Sharp" gesprochen) entscheiden?
    Weil C# fast alle Vorteile von C++ und Java in sich vereint.
    Dem C++ oder Java-Programmierer wird der Einstieg in C# besonders einfach fallen, da C# ein Abkömmling der C/C++ Sprachfamilie ist und somit die Syntax ähnlich wie in diesen Sprachen ist. Ein großer Vorteil gegenüber C++ ist, dass C# komplett neu entwickelt wurde und daher keine Überreste aus vergangenen Tagen wie etwa C++, das eine Weiterentwicklung von C ist, hat. Dies macht die Sprache leichter verständlich als C++. Des Weiteren wurde C# speziell für das .NET-Framework entwickelt und passt sich daher optimal in diese Umgeben ein. Aus diesem Grund eignet sich C# unter anderem auch besonders für die Entwicklung von Online-Diensten. Ein weiterer Vorteil ist, dass C# plattformunabhängig ist(ok nicht unbedingt), daher ein Programm, das mit C# programmiert wurde läuft auf jedem Betriebsystem, auf dem auch das .NET-Framework läuft. Des Weiteren ist C# vollständig objektorientiert. Selbst die Elementaren Datentypen wie Integer oder Booleans werden in C# als Objekte gesehen.
    Ein weiterer Vorteil ist, dass C# die komponentenbasierte Programmierung unterstützt, was zu mehr Produktivität führt, da einmal programmierte Programme ohne Probleme weiterverwendet werden können.

    So damit sollte alles gesagt sein....für WIndows leute ein unbedungtes muss.
    Ich habe nie behauptet das C# die bester Sprache ist.
    Schluss, aus, Baste^^.

  2. #2
    Zitat Zitat
    Mit C++ kann man keine anständigen Spiele mehr schreiben der Perfomance verlust ist viel zu hoch.
    Zeige mir auch nur eine glaubwürdige Statistik, die nicht von Microsoft stammt und deine Aussage belegt.

    Ich möchte einfach mal einen Post aus einem anderen Forum zitieren:
    Zitat Zitat
    xero.NET auf coding-board.de
    ich hab da einen benchmark... ergebnisse darf ich jedoch jetzt hier nicht veröffentlichen, da m$ das nicht will ... aber selber darf jeden den benchmark durchführen...

    hier ein auszug aus der c't: "... Microsoft verbietet selbst für die Final Version des SDK, Benchmarks ohne Genehmigung zu veröffentlichen - eine eigenwillige Auffassung von Offenheit. Mit unseren Quelltexten, die sie inklusive aller anderen Beispiele aus diesem Artikel unter den Soft-Links für diese Ausgabe finden, kann immerhin jeder selbst Geschwindigkeitsvergleiche durchführen. Der grundsätzliche Eindruck ist, dass C# und Java sich nicht viel nehmen, also deutlich langsamer laufen als in Maschinensprache kompiliertes C++. Ein überraschendes Tempo legt aber Managed C++ vor, also in MSIL-Zwischencode übersetztes C++. ..."

    hier der download zum benchmark:
    ftp://ftp.heise.de/pub/ct/listings/0204-098.zip

    bzw. auf http://www.heise.de/ct/ gehen und als softlink "0204098" eingeben
    Schon komisch, dass MS nicht will, dass Benachmarks veröffentlicht werden, wenn die Sprache doch so viel schneller ist.

  3. #3
    Zitat Zitat von Fansoftware Beitrag anzeigen
    Mit C++ kann man keine anständigen Spiele mehr schreiben der Perfomance verlust ist viel zu hoch.
    Ich habe übrigens geschrieben das C# oder C.Net wie man es nenne will oder wirklich heisst für Windows extrem gut geeignet ist und wer Linux Fan eher nicht.
    Ausserdem finde ich es sehr belustigen das angeblich die Sprachen so erfolgreich sind,wegen Propaganda großer Firmen.
    C# wird für sehr viele Spiele benutzt.


    Warum also sollten man sich für C# (wird "C Sharp" gesprochen) entscheiden?
    Weil C# fast alle Vorteile von C++ und Java in sich vereint.
    Dem C++ oder Java-Programmierer wird der Einstieg in C# besonders einfach fallen, da C# ein Abkömmling der C/C++ Sprachfamilie ist und somit die Syntax ähnlich wie in diesen Sprachen ist. Ein großer Vorteil gegenüber C++ ist, dass C# komplett neu entwickelt wurde und daher keine Überreste aus vergangenen Tagen wie etwa C++, das eine Weiterentwicklung von C ist, hat. Dies macht die Sprache leichter verständlich als C++. Des Weiteren wurde C# speziell für das .NET-Framework entwickelt und passt sich daher optimal in diese Umgeben ein. Aus diesem Grund eignet sich C# unter anderem auch besonders für die Entwicklung von Online-Diensten. Ein weiterer Vorteil ist, dass C# plattformunabhängig ist(ok nicht unbedingt), daher ein Programm, das mit C# programmiert wurde läuft auf jedem Betriebsystem, auf dem auch das .NET-Framework läuft. Des Weiteren ist C# vollständig objektorientiert. Selbst die Elementaren Datentypen wie Integer oder Booleans werden in C# als Objekte gesehen.
    Ein weiterer Vorteil ist, dass C# die komponentenbasierte Programmierung unterstützt, was zu mehr Produktivität führt, da einmal programmierte Programme ohne Probleme weiterverwendet werden können.

    So damit sollte alles gesagt sein....für WIndows leute ein unbedungtes muss.
    Ich habe nie behauptet das C# die bester Sprache ist.
    Schluss, aus, Baste^^.
    lol.

  4. #4
    Zitat Zitat von Fansoftware Beitrag anzeigen
    Mit C++ kann man keine anständigen Spiele mehr schreiben der Perfomance verlust ist viel zu hoch.
    Performanceverlust wodurch? C++ wird zu Maschionencode kompiliert und hat eine vergleichsweise winzige Runtime. Was genau macht C++ langsamer?


    Zitat Zitat
    Dem C++ oder Java-Programmierer wird der Einstieg in C# besonders einfach fallen, da C# ein Abkömmling der C/C++ Sprachfamilie ist und somit die Syntax ähnlich wie in diesen Sprachen ist.
    Gilt auch für C++ und Java. Und D.


    Zitat Zitat
    Ein großer Vorteil gegenüber C++ ist, dass C# komplett neu entwickelt wurde und daher keine Überreste aus vergangenen Tagen wie etwa C++, das eine Weiterentwicklung von C ist, hat. Dies macht die Sprache leichter verständlich als C++.
    Gilt auch für Java und D, wobei bei Java-artigen Sprachen (wozu auch alle Dotnet-Sprachen gehören) oft angemerkt wird, daß sie teilweise schwer verständlich sind, weil der Quelltext einfach zu wortreich wird.


    Zitat Zitat
    Des Weiteren wurde C# speziell für das .NET-Framework entwickelt und passt sich daher optimal in diese Umgeben ein. Aus diesem Grund eignet sich C# unter anderem auch besonders für die Entwicklung von Online-Diensten.
    Gilt auch für Java. Schon mal was von Servlets gehört?


    Zitat Zitat
    Ein weiterer Vorteil ist, dass C# plattformunabhängig ist(ok nicht unbedingt), daher ein Programm, das mit C# programmiert wurde läuft auf jedem Betriebsystem, auf dem auch das .NET-Framework läuft.
    Also auf Windows 200, Windows XP, Windows 2003 Server und Windows Vista. Damit ist C♯ genauso portabel wie C++, welches für win32 gebaut ist; man spart sich lediglich die Neukompilierung.
    Wenn man allerdings portable Bibliotheken wie wxWidgets verwendet kann man auch aufwendige C++-Anwendungen für haufenweise Plattformen schreiben. Und im Gegensatz zu Dotnet bietet wxW selbst Support für diese Plattformen und erwartet nicht, daß irgendwer die Runtime und die Klassenbibliothek reverse engineert, um überhaupt nennenswerte Portabilität zu bieten.


    Zitat Zitat
    Des Weiteren ist C# vollständig objektorientiert. Selbst die Elementaren Datentypen wie Integer oder Booleans werden in C# als Objekte gesehen.
    Was wiederum bedeutet, daß C♯ Performanceverlust bedeutet. Glaub' mir, junge, OOP ist teuer. Vollständig auf OOP ausgelegte Programmiersprachen sind cool, aber sie sind auch langsam.


    Zitat Zitat
    Ein weiterer Vorteil ist, dass C# die komponentenbasierte Programmierung unterstützt, was zu mehr Produktivität führt, da einmal programmierte Programme ohne Probleme weiterverwendet werden können.
    Zu dumm, daß komponentenorientierte Programmierung einfach nur eine andere Art ist, OOP anzuwenden. Mit C++ kann man komponentenorientiert arbeiten (siehe Bonobo) und Java tut es auch (Enterprise Java Beans).


    Zitat Zitat
    So damit sollte alles gesagt sein....für WIndows leute ein unbedungtes muss.
    Bis auf die Leute, die Wert auf Performance legen oder sich die Option der späteren Portabilität offen halten wollen. Oder die, die einfach Java verwenden und somit Portabilität gratis kriegen.

    Geändert von Jesus_666 (01.07.2007 um 14:44 Uhr)

  5. #5
    Zitat Zitat von Fansoftware Beitrag anzeigen
    Mit C++ kann man keine anständigen Spiele mehr schreiben der Perfomance verlust ist viel zu hoch.
    Ich habe übrigens geschrieben das C# oder C.Net wie man es nenne will oder wirklich heisst für Windows extrem gut geeignet ist und wer Linux Fan eher nicht.
    Ausserdem finde ich es sehr belustigen das angeblich die Sprachen so erfolgreich sind,wegen Propaganda großer Firmen.
    C# wird für sehr viele Spiele benutzt.


    Warum also sollten man sich für C# (wird "C Sharp" gesprochen) entscheiden?
    Weil C# fast alle Vorteile von C++ und Java in sich vereint.
    Dem C++ oder Java-Programmierer wird der Einstieg in C# besonders einfach fallen, da C# ein Abkömmling der C/C++ Sprachfamilie ist und somit die Syntax ähnlich wie in diesen Sprachen ist. Ein großer Vorteil gegenüber C++ ist, dass C# komplett neu entwickelt wurde und daher keine Überreste aus vergangenen Tagen wie etwa C++, das eine Weiterentwicklung von C ist, hat. Dies macht die Sprache leichter verständlich als C++. Des Weiteren wurde C# speziell für das .NET-Framework entwickelt und passt sich daher optimal in diese Umgeben ein. Aus diesem Grund eignet sich C# unter anderem auch besonders für die Entwicklung von Online-Diensten. Ein weiterer Vorteil ist, dass C# plattformunabhängig ist(ok nicht unbedingt), daher ein Programm, das mit C# programmiert wurde läuft auf jedem Betriebsystem, auf dem auch das .NET-Framework läuft. Des Weiteren ist C# vollständig objektorientiert. Selbst die Elementaren Datentypen wie Integer oder Booleans werden in C# als Objekte gesehen.
    Ein weiterer Vorteil ist, dass C# die komponentenbasierte Programmierung unterstützt, was zu mehr Produktivität führt, da einmal programmierte Programme ohne Probleme weiterverwendet werden können.

    So damit sollte alles gesagt sein....für WIndows leute ein unbedungtes muss.
    Ich habe nie behauptet das C# die bester Sprache ist.
    Schluss, aus, Baste^^.
    NACK.


    Du musst sehr, sehr, sehr viel RAM haben. Sehr, sehr, sehr viel.

  6. #6
    Zitat Zitat von Fansoftware Beitrag anzeigen
    Ein weiterer Vorteil ist, dass C# plattformunabhängig ist(ok nicht unbedingt), daher ein Programm, das mit C# programmiert wurde läuft auf jedem Betriebsystem, auf dem auch das .NET-Framework läuft.
    Das wären dann die X-Box 360 und Windows! Wirklich viel oder?

    C# ist etwas einfacher als C(++), aber von den aktuellen Möglichkeiten her, ist C++ die absolute Nr1 (Neben Pascal und den Pascal-Weiterentwicklungen wie Delphi) in allen Gebieten. Für kleinere Programme ist C# nett, aber Großprojekte sind in C(++) besser aufgehoben, da man hier nicht irgendein Framework braucht.

  7. #7
    Zitat Zitat von S.E.B.I. Beitrag anzeigen
    Das wären dann die X-Box 360 und Windows! Wirklich viel oder?
    Hey, das sind verdammt viele, überleg doch mal: X-Box 360, Windows 98, Windows 98 SE, Windows 2000, Windows XP Home, Windows XP Professional, Windows 2003 Server, Windows Vista Starter, Windows Vista Home Basic, Windows Vista Home Premium, Windows Vista Business, Windows Vista Enterprise, Windows Vista Ultimate und Windows CE! Das sind 14 verschiedene! Und wenn man von der immer noch häufig anzutreffenden Version 1.0 ausgeht, kommt sogar Windows NT 4.0 dazu!

    Edit: ich hab Windows Mobile vergessen! Also sogar 15!

  8. #8
    Ich kenn mich mit Java nicht besonders gut aus aber der Propaganda großer Firmen zufolge scheint die Sprache doch ganz nett zu sein. Gibt es eine alternative die Programme erzeugt, die ohne neu kompilierung und mit einem ähnlichen Funktionsumfang für dieselben Anwendungsgebiete auf so vielen Plattformen läuft?
    Zitat Zitat
    Mit C++ kann man keine anständigen Spiele mehr schreiben der Perfomance verlust ist viel zu hoch.
    C++ ist viel toller und besser und schneller und hat nen längeren als dein C♯.

    Zitat Zitat
    Was bringt mir C hassen?
    C hassen ist etwas besonderes, nicht jeder kann das aus vollem Herzen. C hassen bringt dir die Genugtuung, dich nicht blindlings einem "Sachzwang" ergeben zu haben. Es lässt vermuten, dass du deine Entscheidungen auf der Grundlage solider Analysen und nicht der Mehrheitsmeinung fällst.
    Der Text ist klasse.

  9. #9
    Aso und wer unbedingt C# auch auf anderen Betriebssystem nutzten will sollte einfach Mono benutzten.
    Hier der Link:
    http://www.mono-project.com/Main_Page

    Das ganze läuft auf Linux, Solaris, Mac OS X, Windows, und Unix.
    Hoffe damit wäre die kompalitäts sache geklärt.

    Und nein ich bin nicht zu feige hier weiter zu schreiben,
    C++ ist vieleicht noch gut für Betriebssysteme das will garnicht abstreiten,aber dafür wurde C# net ausgelegt.
    Zudem musss man bedenken das oft 10zeilen C++ coding in C# eine ergeben.

  10. #10
    nur ist mono, wenn ich mich recht erinnere, erheblich langsamer noch als normales unter windoze laufendes C#

  11. #11
    Zitat Zitat von Fansoftware Beitrag anzeigen
    C++ ist vieleicht noch gut für Betriebssysteme das will garnicht abstreiten,aber dafür wurde C# net ausgelegt.
    Erst sagst du, dass C++ ausgestorben sei, weil es C# gibt.
    Also ist, nach deiner Meinung, C# ein vollwertiger Nachfolger von C++
    Aber nun sagst du, dass C# nicht fürs schreiben von Betriebssystemen geeignet ist.
    Denk erstmal nach, bevor du was schreibst.

  12. #12
    Also die Diskussion ist sehr interessant und um auch mal ein Statement eines Studenten hierzulassen: Wenn man bei uns mit dem Thema C# anfängt erntet man vom zuständigen Hochschulpersonal nur ein müdes (oder mitleidiges?) Lächeln, bei uns wird C und anschließend C++ gelehrt.

  13. #13
    Zitat Zitat von Kaworu Beitrag anzeigen
    Also die Diskussion ist sehr interessant und um auch mal ein Statement eines Studenten hierzulassen: Wenn man bei uns mit dem Thema C# anfängt erntet man vom zuständigen Hochschulpersonal nur ein müdes (oder mitleidiges?) Lächeln, bei uns wird C und anschließend C++ gelehrt.
    Kann ich nur bestätigen. Bei uns ists Java, Assembler und C. (Nunja, ein wenig Haskell wird uns auch noch aufgezwungen)

    C# scheint an deutschen Hochschulen auf keinerlei Intresse zu stossen,...
    (Was zB an meiner Uni kein Wunder ist, die hiesige technische Fakultät besitzt genau 2 Windows Rechner. Der Rest läuft auf Solaris.)

  14. #14
    Tjo, womit die Anfangsaussage
    Zitat Zitat
    Wird euch jeder Student sagen der was mit Programmieren zu tun hat C# hat alle Vorteile und läuft auch stabiler.
    wohl widerlegt wäre.
    Bei uns gibts übrigens auch nen optionalen Kurs für Java und Assembler haben wir auch, aber nur Grundzüge.
    Somit sei geklärt was an deutschen Hochschulen wirklich gelehrt wird

  15. #15
    Zitat Zitat von Fansoftware Beitrag anzeigen
    Aso und wer unbedingt C# auch auf anderen Betriebssystem nutzten will sollte einfach Mono benutzten.
    Hier der Link:
    http://www.mono-project.com/Main_Page
    Du hast offensichtlich nie großartig versucht, Mono als Ersatz für das .NET Framework bei Anwendungen einzusetzen, die letzteres ausdrücklich voraussetzen.

    Zitat Zitat
    C++ ist vieleicht noch gut für Betriebssysteme das will garnicht abstreiten,aber dafür wurde C# net ausgelegt.
    Singularity?

  16. #16
    Also, was C# und Portabilität anbelangt ....
    ... das hier ist wahre Portabilität!

    http://developer.gnome.org/doc/API/2...ect/index.html

    Wenn du hier zu den virtuellen Methoden vor blätterst und dir durch liest was dort steht, wirst du auch merken, wie wichtig Performance in anderen Welten ist. Um das zu verstehen, muss man sich aber auch erst überlegen, was es z.B. überhaupt bedeutet, etwas zu dereferenzieren.


    Wenn du so oft 10 Zeilen Code in Cpp für eine Zeile in C# brauchst, verwendest du die falschen Bibliotheken.


    Ich kenne ja beide Welten, und bin gezielt ins C-Land gekehrt: Schon alleine die Oberflächenentwicklung unter GTK rockt im Vgl. Unter C# kann man doch nur alles per Pixel positionieren. Das ist einfach nicht der Weg, den ich gehen mag. Oder, gibt es dafür schon eine Alternative?

  17. #17
    Zitat Zitat von Mog v2.00b Beitrag anzeigen
    Ich kenne ja beide Welten, und bin gezielt ins C-Land gekehrt: Schon alleine die Oberflächenentwicklung unter GTK rockt im Vgl. Unter C# kann man doch nur alles per Pixel positionieren. Das ist einfach nicht der Weg, den ich gehen mag. Oder, gibt es dafür schon eine Alternative?
    GTK# vllt.?

  18. #18
    Naja ich denke mal das ganze wird für mich persönlich auf kein ergebnis hinauslaufen.
    Ich bleibe aber dennoch defintiv bei meinen Propaganda C#.
    Und ihr könnt bei eurem C++ bleiben.
    Ich werde trotzdem mal helfen wenn es bei c++ irgenwo hackt, bei irgenjemanden. Denke mal jedem ist das selbst überlassen wo mit er Programmiert,sofern er nicht auch für den Job oder das Studium eine bestimmte Prommiersprache nehmen muss.

    Von daher sage ich nur noch eins:
    Thema erledigt.
    Hoffe mir nimmt das niemand übel das ich C# besser finde .

  19. #19
    Zitat Zitat von Fansoftware Beitrag anzeigen
    Naja ich denke mal das ganze wird für mich persönlich auf kein ergebnis hinauslaufen.
    Ich bleibe aber dennoch defintiv bei meinen Propaganda C#.
    Und ihr könnt bei eurem C++ bleiben.
    Ich werde trotzdem mal helfen wenn es bei c++ irgenwo hackt, bei irgenjemanden. Denke mal jedem ist das selbst überlassen wo mit er Programmiert,sofern er nicht auch für den Job oder das Studium eine bestimmte Prommiersprache nehmen muss.

    Von daher sage ich nur noch eins:
    Thema erledigt.
    Hoffe mir nimmt das niemand übel das ich C# besser finde .
    Uns ging es eigentlich eher um die falschen Fakten. :P Den Funktionsumfang an C# finde ich persönlich z.B. auch erstklassig. ^^

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •