WinAPI oder MFC
-
hallo Leute,
ich hab vor kurzem gehört, dass bei nachfolgenden Windowsversionen (longhorn) die WinAPI durch .Net gekapselt wird, heißt das, ich brauche API-programmierung gar nich mehr lernen, weil die nachfolgenden Versionen es eh nicht mehr verwenden? Werden auch einfache Funktionen, wie das Erstellen von einfachen Fenstern nicht mehr unterstützt?
Im Voraus danke für die Antworten
-
Die WinAPI wurde bereits seit Jahren von der MFC gekapselt. Bereits heute wird sie auch von .NET gekapselt, aber auf noch höherer Ebene.
Man konnte daher (und wird das auch in Zukunft können) schon immer Programme direkt in WinAPI programmieren. Aber mit der Zeit erkannten die meisten Leute, daß MFC einfacher und schneller ist, zumindest für Standardanwendungen. Genauso ist es heute mit .NET, man erkennt, daß es noch einfacher geht als mit MFC.
Trotzdem lernen weiterhin Leute WinAPI und MFC - teils weil sie die Basics verstehen wollen und diese hohe Kapselung unbefriedigend finden (zu viel versteckt), teils aus Performancegründen, teils auch deswegen, weil sie alten vorhandenen Code pflegen müssen.
Ich würde heute generell keinem mehr den direkten Einstieg in WinAPI-Programmierung empfehlen, wenn er als Ziel die Erstellung von Programmen hat. Da sollte man schon direkt höhere einsteigen. Aber es schadet dann sicherlich nicht, nach einer gewissen Zeit mal bißchen was "primitives" in WinAPI oder MFC zu programmieren, weil dies das Verständnis für die Vorgänge unterhalb der Kapselung erhöht (deswegen ist auch ein bißchen Assemblerprogrammierung nie ein Fehler, dann lernt man mal, was der Compiler so alles für uns tut und warum wir ihm manchmal mit unseren Dingen weh tun).
-
Es ist andersrum. Bei Vista wird die WinAPI nur noch ein kompatibilitäts Layer sein. Daher lohnt es sich nicht die WinAPI zu lernen, da Vista intern anders ablaufen wird und die WinAPI dann auch nicht mehr um neue Features erweitert wird.
-
Schon klar.
Deswegen schreibe ich ja auch "Ich würde heute generell keinem mehr den direkten Einstieg in WinAPI-Programmierung empfehlen".
Trotzdem wird es für das Verständnis eines Programms mit grafischer Benutzeroberfläche nicht schaden, wenn man sich WinAPI mal angesehen hat.
Ansehen != Lernen;ausgiebig damit programmieren.
-
Marc++us schrieb:
Schon klar. [...]
Ich bezog mich auch eher auf folgendes
deepLink schrieb:
ich hab vor kurzem gehört, dass bei nachfolgenden Windowsversionen (longhorn) die WinAPI durch .Net gekapselt wird
-
das heißt dann, ich brauch einen ordentlichen Compiler...im moment verwende ich noch die Bloodshed-IDE mit ming-compiler...welche Compiler eignen sich für anspruchsvolle Anwendungen? gibts Alternativen zu Visual C++ von MS?
ich weiß, viele Fragen auf einmal, aber wo gibts bessere antworten als hier
-
Es gibt auch noch mehr als nur WinAPI, MFC oder .NET.
Schau Dir zum Beispiel mal Qt an, dass ist verglichen mit anderen Frameworks modernes C++ und Du bindest Dich nicht nur an Windows.
-
Hallo,
deepLink schrieb:
das heißt dann, ich brauch einen ordentlichen Compiler...
Wenn du MFC oder .NET machen willst, kommst du AFAIK um das Visual Studio nicht rum (Nein, die Express Edition reicht nicht).
im moment verwende ich noch die Bloodshed-IDE mit ming-compiler...
Weg damit. Wenn du dich doch für ein anderes Framework (z.B. QT oder wxWindows) entscheiden solltest, nimm am besten Code::Blocks, das hat auch den MinGW unter der Haube. Ein sehr guter Compiler.
Mfg
GPC
-
Marc++ schrieb:
Schau Dir zum Beispiel mal Qt an, dass ist verglichen mit anderen Frameworks modernes C++ und Du bindest Dich nicht nur an Windows.
Richtig. Aber ich könnte keinem Einsteiger Qt als erstes Framework empfehlen. Dazu ist die Dokumentation und das zur Verfügung stehende Material viel zu sehr auf Leute mit Erfahrung in einem anderen Framework ausgerichtet. Es gibt kaum Bücher, die sich damit befassen, selbst auf Englisch nur wenig Einsteigerliteratur, und die Tutorials sind bereits sehr stark als Dokumentation ausgeprägt, nicht als Lehrgang für Einsteiger.
Aber Literatur (auch gute
) für MFC oder .NET zum Einstieg gibt's wie Sand am Meer.
Das hat also durchaus seine Berechtigung, am Anfang mit der Masse zu schwimmen. Kür kommt nach der Pflicht.