kostenloser Webspace werbefrei: lima-city


Ist C++ besser als C#

lima-cityForumProgrammiersprachenC/C++ und D

  1. Autor dieses Themas

    jgherb

    jgherb hat kostenlosen Webspace.

    Hallo!

    Ich programmiere jetzt seit nunmehr 2 Jahren in meiner Freizeit mit C#.NET.
    Mich ärgert aber, dass ich C#-Anwendungen nicht ohne Weiteres auf Linux portieren kann.
    Soweit ich weiß, ist die C++ - Programmierung aber deutlich zeitwieriger und komplizierter, vor Allem bei GUIs.
    Stimmt das und was würdet ihr mir empfehlen?

    Abstimmung (Nur eine Auswahl möglich)

    C#
    25 % (3 Stimmen)
    C++
    75 % (9 Stimmen)
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Für jede Aufgabe das richtige Tool.

    C++ ist sicher etwas aufwändiger, mehr Fehler kann man auch machen, aber es lohnt sich für hardwarenahe Programmierung.

    C# kann man mit Mono auf unixoiden Systemen laufen lassen, wie gut das funktioniert müsstest du ausprobieren.

    Ich würde an deiner Stelle einfach mal damit anfangen, kleine Teile in C++ umzusetzen (Wichtig, wenn du Visual Studio nutzt ist hierbei eine reine C++-Anwendung zu starten). Was für ein GUI-Toolkit du nutzt musst du natürlich noch suchen.
  4. h******d

    Wenn du schon Erfahrung mit C# hast, kannst du jetzt ja anfangen mit C++ zu programmieren.

    Ich persönlich bevorzuge C++, weil man damit tiefer ins System eingreifen kann.
    C++ ist zwar schwieriger zu lernen, aber das muss man ja bei allen Programmiersprachen.
  5. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    »Besser« kann sich hier maximal auf einen Berech beziehen, wofür du die Sprache(n) einsetzen willst.

    GUI in C++ lässt sich beispielsweise relativ einfach mit Qt erstellen, wobei das nur eines von vielen Frameworks dazu ist.

    Was du jedenfalls unbedingt beachten musst, wenn du eines Tages C++ schreiben solltest: nur portablen Code schreiben. Also keine MSVC-Eigenheiten nutzen (außer per Compiler-Weiche) genauso wie keine Windows/Linux-Only-Funktionen nutzen (auch hier wieder: außer per Compiler/Plattform-Weiche). Ansonsten wird es haarig das mal für andere Plattformen zu übersetzen/portieren. Außer dein Ziel ist sowieso nur eine Plattform, dann ist das natürlich egal.

    Ob dann »für hardwarenahe Programmierung« C++ wieder die beste Wahl ist, sei mal dahin gestellt.

    Meine Empfehlung, bevor jemand direkt C++ lernt, ist allerdings: zuerst C lernen. Alles was C kann ist in C++ enthalten, aber man ist nicht gleich verleitet irgendwelche Vereinfachungen/Abstraktionen zu nutzen (z.B. I/O-Streams), ohne noch die Basis (z.B. Pointer) überhaupt verstanden zu haben. Und falls wer meint »C(++) und C# ist doch sowieso fast gleich« – »Ja, genauso gleich wie Java und JavaScript«.
  6. Also ich finde bei C++ und C# gibt es kaum Unterschiede.
    Ich habe das programmieren mit VB.Net angefangen dann habe ich mit Java losgelegt jetzt spiele ich etwas mit C# wegen Windows Apps herum.

    Ich persönlich finde es gibt sogar fast keinen Unterschied zwischen C# bzw. C++ und Java. Natürlich die befehle sind etwas anders aber die Struktur ist die selbe.

    Vielleicht währe auch Java für dich eine Alternative zu C#. Java läuft auf fast jeden Rechner auf der Welt egal ob Linux, Mac oder Windows. Dort hättest du keine Probleme mit dem portieren.
  7. j*********r

    cstrsk schrieb:
    Ich persönlich finde es gibt sogar fast keinen Unterschied zwischen C# bzw. C++ und Java. Natürlich die befehle sind etwas anders aber die Struktur ist die selbe.


    Natürlich, es sind alles objektorientierte Programmiersprachen, die miteinander verwandt sind. Deshalb ist sich auch vieles ähnlich. Aber zu sagen, dass es fast keine Unterschiede gäbe...
    C++ wird direkt zu Binärcode kompiliert, Java nicht. Java hat einen Garbagecollector und dafür bspw. keine Destruktoren - C++ schon. Gibt es in Java Pointer wie in C++? Und ich glaube auch, wenn es darum geht bspw. Variablen zu deklarieren, hat man doch noch einige Möglichkeiten mehr, den Code kompliziert zu machen in C++... :wink:

    Und das waren lange noch nicht alle Unterschiede!

    mfg
    Jonas
  8. Naja stimmt schon ich finde für mich das es dort fast keine Unterschiede gibt.
    Natürlich gibt es andere Funktionen und sonstige Feinheiten.
    Jeder muss von seinen stand punkt sehen.
    Ich denke aber das jgherb mit Java besser bedient ist wenn es seine Projekte auf verschiedene Plattformen heraus geben will. Ob er das will ist seine sache ich will niemanden bevormunden.
  9. Unterschiede gibt es zwischen den verschiedenen Programmiersprachen nun wirklich ausreichend, wenn man sie ein bisschen näher betrachtet. Schon beim kompilieren/ausführen zeigen sich hier Gravierende, die Java beispielsweise sehr attraktiv für Softwaresysteme macht, die auf unterschiedlichen Betriebssystemen laufen soll. Legst du also vor allem Wert auf Portierbarkeit und kannst auf Hardwarenähe verzichten, dann ist Java vielleicht wirklich eine geeignete Sprache. Weiterhin kann ich meinen Vorschreibern nur beipflichten, dass beide Sprachen (C++, C#) eine Daseinsberechtigung haben, und es immer auf das Projekt ankommt, welcher Einsatz sinnvoller ist.
    Interessant wäre es da, um was es sich bei deinem Programm genau handelt. Dann lässt sich deine Frage eher beantworten.

  10. Ich würde dir zu C++ raten. C# ist zwar "einfacher" aber mit C++ kann man am Ende einfach mehr. Syntax ist ja ähnlich also wirst du mit 2Jahren Erfahrung es einfacher haben als andere die C++ neu lernen.

    MfG
  11. Hallo,
    für C# unter UNIX kannst du Mono nehmen hat sich im letzte jahr um einiges gebesert. Auf der Arbeit setzten wir Mono sogar auf RasPi´s und Beagebones ein. Nur die Microsoft Internen sachen gehen halt unter Linux nicht (ACL,WINS,AD) haben wir festgestellt.

    Wenn du genauers wissen wilst melde dich bei mir (PN oder Jabber)

    Spitzei
  12. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!