ist die MFC noch gängig ?



  • Hallo,

    da die MFC schon sehr veraltet ist würde ich ganz gerne wissen ob noch viele Programmierer diese Bibliothek nutzen (auch im professionellen Bereich und Firmen) oder gibts schon besseres neueres was genutzt wird.

    Danke



  • Wenn du dir die Postings hier ansiehst dann ist sie noch nicht ausgestorben.
    Mag sein das sie alt und nicht ganz schön ist aber eine alternative für die Winapi.

    Die MFC muss man nicht lernen. Man muss nur wissen welche Klassen es gibt und diese anwenden.
    Ist wie bei den anderen Bibliotheken die eigentlich auch nur Wrapper für die WinApi sind.
    Manche sind noch kostenpflichtig was die MFC nicht ist.
    In Firmen wird sie aber IMHO bald aussterben.
    Dies liegt aber weniger an der MFC als am Marketing von Microsoft und machen Firmen die glauben das NET alle Probleme löst.

    QT ist sehr gut wenn man Plattformunabhängig entwickeln will. Kostet aber was.
    Solche Threads gibt es aber bereits zur genüge in "Rund um die Programmierung"



  • (1) Microsoft hat sich noch nicht ausgekäst, wo es denn nun hingeht.
    WinForms war schon fast totgeboren - zumindest zum Release-Zeitpunkt war klar, daß es nicht lange bleibt. Der vorgesehene Nachfolger - Avalon / XAML - ist noch so vage, daß man überhaupt nicht drüber nachdenken braucht.

    (2) Was habe ich von einem Port auf WinForms?
    Das betrifft ja nicht nur den UI Layer, sondern hat Auswirkungen auf die gesamte Anwendung. Das mindeste, was meine Kunden erwarten, ist, daß sie nix merken. Und so schön WinForms sind, man muß doch wieder und wieder direkt auf die WinAPI zugreifen. (Nicht daß mich das stören würde, aber das hab ich auch ohne)

    (3) Personal
    zumindest im Moment findest du eher einen beauchbaren MFC-Programmierer, als einen .NET-Fritzen. ist so. Die Studenten lernen alle Java und wollen bei Siemens arbeiten, wer einen Job hat, kommt nicht so oft an ein (größeres) .NET - Desktop-Projekt, und die, die keinen Job haben - naja, Schwamm drüber.



  • Ich konnte es mir damals aussuchen und habe MFC gewählt.

    Allerdings gibt es hier mehr und mehr Software, die auf .net setzt - sehr zur Freude derer, die neue Hardware bezahlen müssen. 🙄



  • 1. MFC ist immer noch leistungsfähiger als die WinForms.
    2. MFC wird von MS weiter supported und auch in Zukunft erweitert werden.

    Kann man alles auf msdn.com nachlesen.



  • Also versteh ich das richtig das es zur Zeit noch keine richtige Alternative zur MFC gibt richtig ?



  • Zumindest nicht von MS. Von anderen Herstellern schon, z.B. Qt von Trolltech, oder das kostenlose wxWidgets.

    Was suchst du denn genau? Nur eine GUI-Lib oder das was die MFC auch kann (die MFC kann ja sozusagen alles, mehr als nur GUI)? Wenn es mehr als nur GUI sein soll, sind Qt und wxWidgets die einzigen alternativen zur MFC. Wenn du nur eine GUI-Lib suchst, gibts mehr Konkurrenten wie FOX-Tools oder FLTK.



  • Kurt01 schrieb:

    Hallo,

    da die MFC schon sehr veraltet ist würde ich ganz gerne wissen ob noch viele Programmierer diese Bibliothek nutzen (auch im professionellen Bereich und Firmen) oder gibts schon besseres neueres was genutzt wird.

    Danke

    Wie alt ist die Sprache c?
    Richtig Sie hat schon ein paar Jahre auf dem Buckel.

    Die MFC, sowie andere Frameworks (QT, wxWidgets), sind nur weil es Sie schon länger gibt nicht schlecht.
    Du kannst mit der MFC alles das machen was Du auch mit dem .NET-Framework machen kannst, mit mehr oder weniger Aufwand.
    Das .NET Framework erleichtert einem einfach viele Dinge und ermöglicht es Dir dich auf andere Probleme zu konzentrieren, da eben alles einfacher ist.

    Die Frage ist immer was Du machen willst und mit welchem Aufwand Du dies am besten erreichen kannst.

    MS geht jedenfalls ganz klar Richtung .NET, vorerst.
    Was spricht also dagegen sich gleich damit zu beschäftigen?



  • Vielleicht sag' ich es nochmal anders:
    Für Webanwendungen muß .NET wundervoll sein. Für kleine bis mittlere Desktopanwendungen - großartig!
    Langfristige Desktop-Projekte mit hoher Investition in die UI sind im Moment aber in einer ziemlichen Zwickmühle.



  • Alternativen ok das stimmt mag sein das es da viele gibt aber welche davon sind genau so professionell wie die mfc und werden auch in firmen verwendet ?



  • QT ist mir schon mal "begegnet".

    Ich war kurzfristig in einem Projekt, in dem das eingesetzt wurde. Das war das Stiefkind der Firma. Jeder, der nichts besseres hatte, wurde da dran gesetzt - das war DAS CHAOS schlechthin.



  • Kurt01 schrieb:

    Alternativen ok das stimmt mag sein das es da viele gibt aber welche davon sind genau so professionell wie die mfc und werden auch in firmen verwendet ?

    Was willst Du denn genau machen?

    Wenn ich Projektleiter irgendwo wäre und ein neues Projekt bekommen würde und mich nun umsehen würde und die Sprache c++ muß wäre.
    Dann würde ich wxWidgets nehmen, weil ich es dann recht einfach auch auf anderen Platformen laufen lassen kann. 😉

    Du kannst Dir natürlich auch ein eigenes Framework basteln, was genau das macht, was Du willst.



  • Also ich möchte auf jedenfall etwas nutzen was auf dem Arbeitsmarkt auch sehr gefragt ist deshalb richte ich mich mehr am Arbeitsmarkt.

    Qt ist wahrscheinlich die beste Alternative aber der Preis ist nicht akzeptabel, wenn man bedenkt das wxWidgets und die MFC bei weitem viel billiger sind.

    Das wo es mir aber drauf ankommt ist das was am meisten eingesett wird das ist mir wichtig und zwar im prof. Bereich.

    Ich will man ein beispiel nennen warum:
    Jeder weis das MS Outlook fürn A... ist es gibt bessere Alternativen aber alle großen Firmen nutzen dieses damit sie kompatibel bleiben.



  • Naja so pauschal kann man das ja nicht beantworten es wird dies mehr oder dies weniger genutzt werden in Zukunft. Hängt halt immer vom Projekt ab.
    Es kann sein, daß Du dich jetzt in die MFC einarbeitest, und dann kommst an eine Firma die nunmal Qt benutzt!

    Aber es ist überhaupt nicht wichtig jede Klasse eines Frameworks bis in letzte Detail zu kennen!

    Viel wichtiger ist zu verstehen wie das ganze funktioniert. Denn wenn man weiss wie die MFC funktioniert, dann weiß man auch wie wxWidgets, Qt oder eben das .NET Framework funktioniert.

    Als ich angefangen habe ich mit c++ zu beschäftigen hat mich aber die gleiche Fragestellung gequält. 🙂
    Ich bin dann zu dem Schluss gekommen mal ein eigenes kleines Framework zu bauen, nur so zum Spass.
    Und aufeinmal wurden viele viele Dinge klar, die mir vorher völlig unklar gewesen sind.



  • Kann odenter nur zustimmen. Es ist viel wichtiger zu verstehen wie etwas funktioniert. Wenn man z.B. Objekt Oorientierung versteht, und man soll ein OO-basiertes Framework benutzen, dann versteht man es auch so. Und schliesslich gibt es ja Dokumentationen zu Frameworks. Meistens reicht es schon aus die ersten paar Absätze zu lesen und man hat schon sein erstes Fenster mit ein paar Buttons auf dem Bildschirm.

    Weiterhin wird überall anders entwickelt, bei uns ist es ganz einfach Java weil der Kunde (Volkswagen) ganz einfach auf Java als Konzernstrategie setzt. Da kommt man mit MFC, .NET oder auch Qt nicht sehr weit. Muß man sich in Java einarbeiten um an den Projekten mitwirken zu können.

    Bei der deutschen Bahn kann es schon wieder ganz anders aussehen. Ich kann nur sagen, das ich zu Hause alles ausprobiere. Egal ob MFC, Qt usw. einfach um informiert zu sein. Auf Arbeit mache ich dann 8 Std. nur Java.



  • Die Architektur der MFC in Verbindung mit den Wizards ist nicht sonderlich objektorientiert.
    Wenn ein Dialog Nachrichten eines Buttons verarbeitet ist doch eigentlich schon alles gesagt.
    Das kann man sich zwar unter Mehraufwand zurechtbiegen aber so wirklich toll ist dass nicht.

    MfG Spacelord



  • jein.
    Prinzipien unabhängig von ihrer Implementation zu begreifen ist natürlich das "goldene Ziel". Aber ob dies mit breitgefächertem Schnupperwissen und abstraktem durchkauen der Konzepte möglich ist, wag' ich zu bezweifeln. Niemand tritt mit 5 Peonoschen Axiomen zur Mathearbeit an "weil man ja sowieso nicht weiß, was drankommt, und man sich den Rest herleiten kann".

    Sich irgendwo tiefer reinzuarbeiten ist unumgänglich. Bis zu einem gewissen Punkt ist es fast egal wo: in eine Technologie tiefer einzusteigen, seine eigenen Grenzen kennenzulernen und wieder aufzutauchen ist wichtiger, als zehn Abkürzungen mehr auf dem Bewerbungsbogen. Wasserläufer die nix richtig können, fliegen als erstes raus.

    Ich bin dann zu dem Schluss gekommen mal ein eigenes kleines Framework zu bauen, nur so zum Spass.

    Guter Ansatz 🙂

    Kurt: lern' ein bißchen WinAPI, MFC, meinetwegen Qt, WinForms/.NET, dann such dir eins aus was Dir Spaß macht und tauch' richtig rein.



  • Danke für Euren guten Tips.

    Ich werde mich wohl in die MFC tiefer reinfuxen, in WinForms und Java denke das sind ganz gute Aussichten um professionel auf dem neuesten Stand zu bleiben oder was meint Ihr ?

    Könnt ihr mir zu den obigen Frameworks Bücher und Links empfehlen wo ich das lernen kann ?

    Danke



  • mfc:
    http://download.pearsoned.de/leseecke/VCPLUS6_21Tg/data/start.htm
    java:
    http://www.galileocomputing.de/openbook/javainsel4/

    .NET hab ich noch nicht mit gearbeitet 😉 Hab mir das aber fest vorgenommen mal richtig anzusehen, das VisualStudio dazu hab ich schon, nur wegen laufender Projekte mit C++ noch keine Zeit dazu gehabt 😉

    und http://www.google.de 🙂


Anmelden zum Antworten