Seite 2 von 2 ErsteErste 12
Ergebnis 21 bis 24 von 24

Thema: C, C++, C#? Wo geht was?

  1. #21
    Sicher, schließlich muss ich mich dann selber entscheiden, was ich benutze!
    Mir ging es ja nicht darum, welche leichter ist, erlernen kann man sie sicher alle1

    Aber ich wollte/will nur in Erfahrung bringen (siehe Thread titel) was man mit welcher Sprache am besten, oder gar nicht machen kann, sodass ich mir später keine Möglichkeiten verbau, weil ich die falsche Sprach erlernt habe!

    Deshalb wüsste ich (hab ja schon aller hand erfahren) gerne, was halt mit welcher Sprache am besten geht! (Scheinbar mit C++ alles!)

  2. #22
    also...

    C
    Wurde damals in den 1970er Jahren für das Betriebssystem Unix erfunden. Sehr stabile Sprache, mit der man manche Programme schreiben kann, die sonst nur mit Assembler realisierbar wären.

    C++
    C++ erweitert die Programmiersprache C im Prinzip um einige Funktionen. Dazwischen gab es noch Sachen wie "C with classes". Bjarne Stroustrup entwickelte schließlich C++. Neu sind hier die Möglichkeiten zu Objektorientierten Programmierung (OOP), Klassen, die Standard Template Library und noch so einiges. (ich selbst code C++)

    C#
    Erste Ansetze im Jahre 2000, wirklich offiziell wird C# (gesprochen C sharp) Januar 2002, als .NET samt SDK und Visual Sudio 2002 vorgestellt werden. C# soll die Standard-Sprache für .NET - ein Satz von microsoft-eigenen Technologien - werden. C# (und .NET) sind vor allem gegen SUN Java gerichtet, jedoch nur für Windows verfügbar (okay, es gibt derzeit Projekte unter Linux). C# ähnelt C und C++ natürlich etwas, jedoch laufen damit geschriebene Programme meiner Meinung nach wesentlich langsamer, wer kein besonderes Interesse an .NET hat sollte die Finger von C# lassen.

    Soweit, so gut. Übrigens gibt es dann noch "Managed Extensions for C++", um .NET direkt in C++ zu implementieren (von Microsoft natürlich...). Doch es gibt auch zahlreiche Programmiersprachen in denen kein C vorkommt...

    C++ ist meiner Meinung nach die empfehlenswerteste Sprache, weil sie OOP bietet, aber nicht erzwingt und gleichzeitig keine Sprache ist, die sich NUR aus fertigen Funktionen zusammensetzt. Wenn man C++ (oder auch C) einmal einigermaßen beherrscht, kann man schnell eine andere Programmiersprache lernen.

    Geändert von Дlυсаrδ (22.03.2005 um 22:55 Uhr)

  3. #23
    so da hier fast durchweg c# als lahme nicht zu empfehlende sprache dargestellt wird:

    werde ich c# und das .net framework verteidigen!

    das sind alles unterschiede von c# zu c++/c
    - Zwischencode für Laufzeitumgebung,
    - JIT (Just-In-Time-Compiler),
    - Garbage Collection (automatische Speicherfreigabe),
    - Sicherheitssystem mit Autorisierung,
    - Exceptions (statt Fehlermeldung per Return-Code),
    - Inspection (Schnittstellenbeschreibung in der Komponente, keine Einträge in Windows-Registrierung).
    - strengere Objektorientierung,
    - keine Mehrfachvererbung (multiple Inheritance), nur Einfachvererbung,
    - Schnittstellenkonzept,
    - sicherere Typprüfung,
    - keine direkten Zeiger (nur Referenzen),
    - die Operatoren '::' und '->' entfallen, nur '.' wird verwendet,
    - boolsche Variablen werden nicht mehr durch ein int repräsentiert, sondern haben einen eigenen Typ,
    - char ist ein 16 Bit breites Unicode-Zeichen,
    - Arrays sind managed Types mit Bereichsüberprüfung,
    - es gibt keine globalen Funktionen, Variablen oder Konstanten mehr,
    - es gibt keine .h-Header-Dateien mehr (Deklaration und Definition sind kombiniert),
    - es gibt keine Präprozessor-Makros mehr und
    - es gibt keine Lib- und keine Obj-Dateien mehr.
    und jetzt der für mich größte vorteil:
    man kann mit c# sowohl windowsapplication, webapps und spiele programmieren
    die spiele programmierung ist zwar erst im kommen (s. z.b. Aximo) aber besonders bei größeren spielen dürfte der GC einen performance GEWINN mit sich bringen, da nicht benötigte ressourcen wieder freigegeben werden! dies kann man meines achtens auch bei c++ manuel machen, dann ist es aber immernoch eine starke erleichertung des progrmmierens...
    habe ich eigentlich schon die enorme stabilität aufgeführt?
    und das mit der portierbarkeit: da habe ich gerade auch ein kleines problem, der user muss einmal ganze 23 mb mehr runterladen, das ist besonders im zeitalter von dsl und isdn ein enormes problem
    und wegen umstieg auf andere programmiersprachen: als ich auf der messe (GC [habe leider keine c# programmierer gefunden, aber dafür ein paar tolle webseiten^^]) c++ Code gesehen habe, wusste ich fast immer was dieser "schnippsel" machen soll...
    verstehen und selber proggen ist zwar noch etwas anderes aber trotzdem

    @all vorposter: auf die plätzte, feritg, **diesen artikel zerfetztend** los

    EDIT: habe vorhin irgendwo als nachteil gesehen dass man yy.xxx.eee.r() statt nur r() schreiben muss! mit der using anweisung yy.xxx.eee kann man dann auch alle funktionen, eigenschaften direkt verwenden! das ist nunmal das system von der wiederverwendbarkeit

    Geändert von altertoby (06.04.2005 um 18:22 Uhr)

  4. #24
    Zitat Zitat von altertoby
    so da hier fast durchweg c# als lahme nicht zu empfehlende sprache dargestellt wird:
    >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:(
    werde ich c# und das .net framework verteidigen!
    :eek: :eek: :eek:
    das sind alles unterschiede von c# zu c++/c
    [Liste von Unterschieden]
    Die treffen zum größten Teil auch auf Java zu.

    Zitat Zitat
    und jetzt der für mich größte vorteil:
    man kann mit c# sowohl windowsapplication, webapps und spiele programmieren
    Das ist sowohl mit C++ als auch mit Java genauso gut möglich. Zugegeben, die Webprogrammierung mit C++ (via ActiveX) ist absolut nicht empfehlenswert, aber es ist möglich.

    Zitat Zitat
    besonders bei größeren spielen dürfte der GC einen performance GEWINN mit sich bringen, da nicht benötigte ressourcen wieder freigegeben werden!
    Eher nicht. Das Überwachen der Referenzen, wie es der GC tut, macht die Anwendungen in der Entwicklung schneller und in der Ausführung theoretich sicherer, geht aber auf die Ausführungsgeschwindigkeit. Neben dem Bytecode-Interpreter ist der GC einer der Hauptgründe, warum C++ viermal schneller als Java ist - und bei Dotnet wird sich das nicht anders verhalten.

    Zitat Zitat
    habe ich eigentlich schon die enorme stabilität aufgeführt? :p
    Dotnet-Applikationen sind zwar gegen Speicherlecks relativ gut geschützt (einen vollständigen Schutz bietet auch ein GC nicht), können aber bei schlampiger Programmierung immer noch Ärger machen. Wenn man Pecht hat erwischt man eine Schwachstelle in der VM und alle laufenden Dotnet-Programme schmieren ab.
    Mit Java geht das genauso gut... Jede Programmiersprache ist letztendlich nur so sicher wie der Programmierer kompetent ist und jedes System kann einem im Ernstfall Probleme bereiten.

    Zitat Zitat
    und das mit der portierbarkeit: da habe ich gerade auch ein kleines problem, der user muss einmal ganze 23 mb mehr runterladen, das ist besonders im zeitalter von dsl und isdn ein enormes problem :confused: :confused:
    Mono ist 28 MiB groß und läuft nur auf x86, s390, SPARC, HPPA, StrongARM und PowerPC. Außerdem unterstützt Mono nicht die gesamte Dotnet-API - man kann Dotnet-Anwendungen also nicht immer ausführen oder sie verhalten sich nicht korrekt.

    Zitat Zitat
    EDIT: habe vorhin irgendwo als nachteil gesehen dass man yy.xxx.eee.r() statt nur r() schreiben muss! mit der using anweisung yy.xxx.eee kann man dann auch alle funktionen, eigenschaften direkt verwenden! das ist nunmal das system von der wiederverwendbarkeit
    Es war zu erwarten, daß Microsoft sowas implementiert - das gibt es in jeder brauchbaren OO-Programmiersprache.


    Ich bin nach wie vor der Ansicht, daß Dotnet einfach das imitiert, was Java bereits ist - und ich betreue lieber Sun (die es mit der Portierberkeit wirklich ernst nehmen) mit der Entwicklung einer global portierbaren Programmiersprache als Microsoft. Allein schon deshalb weil Microsoft einer der großen Betriebssystemhersteller ist und Sun weder mit Solaris noch mit JDS genug Marktpräsenz hat, um sich so aufzuführend, wie es der Gorilla aus Redmond öfters tut.


    BTW, willkommen im Forum, speziell in unserer kleinen Ecke hier. Viel Spaß im Ring.

Berechtigungen

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