Ist C++ bei professioneller Softwareentwicklung unumgänglich?



  • Hallo,

    ich habe eine Frage und zwar, ist es möglich alle Programme in Ansi-C und
    mit Windows API zu schreiben, oder kommt man irgendwann an einen Punkt wo
    man ohne C++ und MFC nicht mehr weiterkommt?
    Vielen Dank!

    Grüße,
    Tutorialfresser



  • Hi,
    wenn du es bezahlen kannst, ist es auch möglich Programme in Assembler programmieren zu lassen. 🙄
    Ohne MFC kommt man sehr gut klar, die ist nähmlich schrecklich.
    Aber am besten nimmt man immer das, was am ehesten geeignet ist. Also alles mal anschauen und dann abwägen was man am besten realisieren kann.



  • Am besten ist das was am zweckmäßigsten ist. Wenn für ein Projekt Java die beste Basis bildet wirds in Java gemacht und wenn für ein anderes Projekt die Eigenschaften von C besser sind wirds in C gemacht.

    Schönen Abend noch



  • Hallo,

    vielen Dank, aber ich habe mich möglicherweise falsch ausgedrückt.
    Ich habe gemeint ob man jedes beliebige Programm egal ob Textverarbeitung
    oder moderne Computerspiele, das in C++ und MFC geschrieben ist, auch genau
    so gut in C und WinAPI schreiben kann, oder kommt man irgendwann an einen
    Punkt an dem C nicht mehr mithalten kann?

    Grüße,
    Tutorialfresser



  • TutorialFresser schrieb:

    oder kommt man irgendwann an einen Punkt an dem C nicht mehr mithalten kann?

    Du wirst an einem Punkt in einem großen Projekt kommen, an dem z.B. prozedurale Programmierung unübersichtlich wird.



  • Lass dich nicht verunsichern, programmier ruhig erstmal eine Weile reine Winapi in C. Danach ist es ein Kinderspiel MFC oder ähnliches zu lernen und du wirst ein weitaus tieferes und besseres Verständnis über die Winapi haben als viele andere Programmierer. Das ist ungemein nützlich.



  • TutorialFresser schrieb:

    Ich habe gemeint ob man jedes beliebige Programm egal ob Textverarbeitung
    oder moderne Computerspiele, das in C++ und MFC geschrieben ist, auch genau
    so gut in C und WinAPI schreiben kann

    Ein klares Jein! Grundsätzlich ist das schon möglich. Es gibt (gab?) C++ Compiler, die als Zwischenschritt den Code erstmal komplett in C umgewandelt haben. Und letztendlich spielt es auch keine Rolle, ob du foo.bar() oder bar(&foo) schreibst. Kompliziert (bzw. nicht machbar) wird es erst, wenn du C++ spezifische Sachen verwendest, zB Exceptions oder Templates. Sowas kann man in C meist nicht vollständig nachbilden.
    Und MFC ist im Grunde ja nichts weiter als eine Kapselung der WinAPI Funktionalität. Von der Seite dürfte es eigentlich keine Probleme geben.



  • ja, du KANNST alles was man mit C++ und MFC machen kann auch mit C und WinAPI machen. Windows ist z. B. in C geschrieben, alte Versionen von MS Office wahrscheinlich auch. Linux ist in C geschrieben.
    Aber gewisse Dinge sind mit C++ einfach einfacher, weil man mit C++ grundsaetzlich leichter uebersichtlichen Code schreiben kann. OpenOffice ist in C++ geschrieben, neue Versionen von MS Office ziemlich sicher auch.
    Was MFC angeht: die MFC ist grausam, alt und unangenehm. In C++ verwendet man andere Dinge.

    Was z. B. Computerspiele angeht: die verwenden hauptsaechlich DirectX oder OpenGL, kaum WinAPI oder MFC.



  • Blue-Tiger schrieb:

    Was z. B. Computerspiele angeht: die verwenden hauptsaechlich DirectX oder OpenGL, kaum WinAPI oder MFC.

    Birnen und Äpfel.



  • Ja, alles was du in C++ realisieren kannst, lässt sich auch in C programmieren.

    Allerdings ist das nicht immer zweckmäßig.

    C und Windows API sind eine tolle Kombination, wenn es um einfache Windows-Anwendungen geht.

    Genau so sind C++ und Qt eine tolle Kombination für plattformübergreifende, graphische Anwendungen.

    Java mit Swing und AWT bietet erstklassige Funktionalität, um Anwendungen als Applets auf Webseiten bereitzustellen.

    C#, VB.NET, J# und andere Sprachen bieten einem Programmierer, der die entsprechenden Grundlagen beherrscht, einen einfachen Zugriff auf die Möglichkeiten und Fähigkeiten des .NET-Framework.

    .NET wiederrum hat mit Windows Forms die meines Erachtens einfachste Bibliothek für graphische Windows-Anwendungen. Mit keiner anderen Bibliothek kann ich so schnell ein präsentables Programm entwickeln.

    Du siehst also, es kommt auf den Einsatzbereich des Programmes, auf die Möglichkeiten der Plattform und auf die Eigenheiten der Sprache an.

    Und, letztlich, ist das auch eine Frage der Fähigkeiten des Programmierers. Wenn ich kein Java beherrsche, dann werde ich eine Web-Software wohl in .NET (ASP.NET) entwickeln, und keine Java Servlets erstellen.

    Cheers
    Sid



  • Ja, das hat mir jetzt weitergeholfen! 👍

    Vielen Dank!

    Grüße,
    Tutorialfresser


Anmelden zum Antworten