lohnt es sich noch?



  • mh gui sachen hab ich schon mit delphi geschrieben und ich würde auch weiterhin bei der sprache bleiben aber zum einen ist es immer von vorteil mehrere sprachen zu können und zum anderen bin ich immer wieder an der verwendung von winapi funktionen etc gescheitert...

    deswegen habe ich mit c++ angefangen einfach um den aufbau und die syntax der winapi besser zu verstehen und auch bei der msdn besser durchzusehen.
    es geht mir also in erster linie nicht um gui.

    mir kam eher die frage durch das kommende vista was ja auf .net aufbauen wird und es auch ausschließlich verwenden wird (wobei es ja abwärtskompatibel sein wird oder?). ob es sich dann noch lohnt programme zu schreiben die die winapi benutzen wenn alles auf .net umgestellt wird.

    denn wenn die programme in der zukunft nicht mehr aktuell sind und man mit .net einfach besser bedient ist (auch im bezug auf studium und beruf--- bin ja noch schüler) lohnt es sich ja nicht sich mit der winapi grundlegend und umfassend auseinanderzusetzen oder?

    oder wird sie auch unter vista noch einen so großen stellenwert haben, dass man sagen kann es lohnt sich?



  • Was ist denn Vista??

    Aber ganz abgesehen davon glaube ich nicht, daß gleich "alles auf .net umstellt". Wer WinApi kann, wird voraussichtlich erstmal überlegen, ob er Vista auch noch können muß. Ist schließlich auch mit Aufwand verbunden.



  • Meiner Meinung nach lohnt es sich auf jeden Fall sich mit der WinAPI zu beschäftigen. Ich bin auch dabei. 🙂

    Man lernt sehr viel dabei. Die WinAPI an sich ist eigentlich nicht schwer, es handelt sich einfach um sehr (!!!) viele Funktionen und Typen, und man muss wissen, wo man suchen muss um was zu finden.

    Der Petzold hilft denke ich schon sehr. Das Buch ist ziemlich locker geschrieben und es werden auch einige Dinge erläutert wieso etwas so ist, wieso Windows ziemlich mit Altlasten zu kämpfen hat (hatte?), usw. Ich weiß zwar mittlerweile nicht mehr viel davon, aber ich werd' mir das Buch demnächst nochmal durchlesen, wenn ich etwas mehr Zeit habe.

    Was die Unterstützung der WinAPI angeht, so glaube ich nicht, dass MS diese so schnell abschaffen wird. Viele Programme (eigene Schätzung) bauen direkt auf der WinAPI auf, die MFC kapselt lediglich die WinAPI, diese Programme würden dann also auch wegfallen. Ebenso bauen glaube ich alle GUI-Toolkits (wxWidgets, QT, etc.) auf die WinAPI auf, Programme, die mit solchen Toolkits geschrieben wurden, würden also auch nicht mehr laufen. Somit hätte man dann ein tolles Windows installiert und evtl. die neuesten MS-Produkte, aber sonst würde kein Programm mehr laufen. Ist zwar nur eine Schätzung von mir, aber ich glaube das würde MS nicht riskieren.



  • Es kann doch nicht sein, dass Windows Vista ("Longhorn") keine WinApi-Programme mehr akzeptiert. Dann würden ja Office und Co. auch nicht mehr laufen, oder? Man kann nichts falschmachen, wenn man sich die WinApi reinzieht, um so verständnis für Messages und so zu bekommen.



  • Es ist nicht schädlich, wenn man sich mit WinAPI auskennt, auf keinen Fall. Man versteht die Hintergründe besser, keine Frage. Man erkennt, warum die verdammten Trees so blöd zu benutzen sind und wieso eine Richedit Box so viele Besonderheiten hat.

    Allerdings sollte man als junger Einsteiger doch eher nach vorn sehen. Mit Vista (Das neue Windows, für alle, an denen die Zeit vorbeiläuft, die Beta ist bereits erhältlich) und dem neuen GUI-System Avalon wird sich einiges ändern in der Welt der Fenster und Bildchen. Und wenn Du tatsächlich mal professionell in Sachen Windowsprogrammierung einsteigst, dann wird dies zu einem Zeitpunkt sein, an dem vieles anders ist als heute. Ich könnte mir vorstellen, dass dann Erfahrungen mit der heutigen WinAPI so belächelt/verehrt werden, wie heute die Assambler-Erfahrungen.

    WinAPI wird wohl nie ganz verschwinden, aber sich zumindest stark verändern, nehme ich an. Wie immer gilt, das ist meine Meinung, kein Gesetz und schöngarnicht für andere bindend. 😉



  • Leon++ schrieb:

    Es kann doch nicht sein, dass Windows Vista ("Longhorn") keine WinApi-Programme mehr akzeptiert. Dann würden ja Office und Co. auch nicht mehr laufen, oder? Man kann nichts falschmachen, wenn man sich die WinApi reinzieht, um so verständnis für Messages und so zu bekommen.

    Keine Ahnung wer behauptet, dass WinAPI abgeschafft wird. Da muss ich wohl was überlesen haben. Es geht nach meinen Verständis darum, ob ein heutiger Schüler, der noch einige Jahre Ausbildung vor sich hat, sich WinAPI oder doch lieber .Net antut.



  • WinApi wird nicht einfach abgeschafft. Schon aus Gründen der Rückwärtskompatibilität mit alten Programmen muß sie erhalten bleiben. Was würde Gates wohl für ein Geschrei ernten, wenn man feststellt, daß plötzlich alle schönen alten Spiele oder Anwendungen unter neuen Windows-Versionen nicht mehr laufen. Ein Aufschrei ginge durch die Welt: LINUX.... Das wäre der Tod von Microsoft.



  • Leon++ schrieb:

    Es kann doch nicht sein, dass Windows Vista ("Longhorn") keine WinApi-Programme mehr akzeptiert. Dann würden ja Office und Co. auch nicht mehr laufen, oder?

    die bauen bestimmt so'n kompatibilitätsmodus ein, so dass winapi nur noch emuliert wird. das hamse ja mit dos auch so gemacht als winnt rauskam. wahrscheinlich sind dann auch alle ehemals schnellen winapi-programme so superlahm weil sie unter der .NET vm laufen



  • hm, also .net hat imho sicher nicht das Zeug, native WinAPI u. die gesamte Platform SDK zu ersetzen, bzw. in ertragbarer Performance zu emulieren. Auch durch die strikte Typensicherheit von c# (auch mit marshalling) wird es wohl kein leichtes unterfangen sein, eine Emulation zu implementieren, der Win32 executeables interpretiert. Wenn sachen wie

    var x = new[] {1, 2, 3, 4};
    var y = "Micha"
    

    (geplante Typinferenz in C# 3.0) sich durchsetzen, dann gute Nacht für'n sauberen Stil. Lambda ausdrücke

    D<int> dg = param => param + 1;
    Console.WriteLine( dg(41) );
    

    halt' ich für genial 😉

    aber, naja... spielereien.

    @net: Hast Du zugriff auf die Benutzerdatenbank hier im Forum? hab' vor ca. einem 3/4 Jahr einen account "neox86" angelegt und "find" ihn nicht mehr? Hast Du ne Ahnung wo der abgeblieben ist?



  • @net: 'tschuldige, hatt dich als Moderator in Erinnerung... einfach ignorieren.



  • Amateur schrieb:

    mmir kam eher die frage durch das kommende vista was ja auf .net aufbauen wird und es auch ausschließlich verwenden wird

    Wo hast Du denn den Blödsinn her??? Das ist natürlich vollkommen falsch!
    Vista/Longhorn baut weder auf dem .NET-Framework aufg, noch wird es im OS irgendwo verwendet!

    Die Schnittstelle zum OS bleibt auch im Vista/Longhorn komplett umanaged.

    Der Aufsatz .NET-Framework wird aber trotzdem mitgeliefert. Aber es ist ein Aufsatz auf das OS!



  • net schrieb:

    Leon++ schrieb:

    Es kann doch nicht sein, dass Windows Vista ("Longhorn") keine WinApi-Programme mehr akzeptiert. Dann würden ja Office und Co. auch nicht mehr laufen, oder?

    die bauen bestimmt so'n kompatibilitätsmodus ein, so dass winapi nur noch emuliert wird. das hamse ja mit dos auch so gemacht als winnt rauskam. wahrscheinlich sind dann auch alle ehemals schnellen winapi-programme so superlahm weil sie unter der .NET vm laufen

    Ich weiss echt nicht woher Ihr diese Gerüchte habt, aber das ist ja nicht zum Aushalten...
    Also nochmals: Vista/Longhorn ist ein "natives OS" und enthält nur native Schnittstellen zum OS.



  • Jochen, werden denn auch die neuen Darstellungsmöglichkeiten unter Vista in die uns bekannte WinAPI übernommen? Ich mein, da muss sich ja einiges Ändern, oder nicht? Ich habe da noch so Schlagwörter wie vektorbasierte Dialogdarstellung im Hinterkopf (is schon ne Weile her, und ich habe mich seitdem nicht mehr wirklich damit beschäftigt, vielleicht verhaue ich da auch was.)

    Edit: Danke für die klärenden Worte, zumal es hier eigentlich überhaupt nicht darum geht, ob WinAPI abgelöst wird. Amateur wollte doch nur wissen, was sich mehr lohnt, .Net oder WinAPI.



  • @Jochen

    Und die gute alte WinApi bleibt uns auch unter VISTA als Standardschnittstelle erhalten und "alte" darauf aufsetzende Programme sind weiterhin lauffähig?



  • Vista ist Komplett unmanaged. Auch die Gadets und all das "neue" wird aus einer native-Anwendung anzusperechen sein. Die MFC wird mit Orcas auch diese Dinge direkt unterstützen.
    All die anderen Dinge wie z.B. Avalon sind primär managed, haben aber mit dem OS nichts zu tun, da sie auf DirectX aufbauen und auch noch für XP verfügbar sind (allein daran kann man erkennen, dass es nicht mit dem OS verknüpft ist, da XP ja schon lange ausgeliefert ist und es somit nachgerüstst wird).



  • fragmal schrieb:

    Und die gute alte WinApi bleibt uns auch unter VISTA als Standardschnittstelle erhalten und "alte" darauf aufsetzende Programme sind weiterhin lauffähig?

    Aber selbstverständlich!
    PS: Damit würde sich ja MS selbst das Grab schaufeln, wenn es nicht so wäre!



  • Dein Thread ist müll. lern lieber nicht mehr winapi sonst nervst du mich weiterhin mit solchen threads. geh ins c# oder net forum und nerv da weiter, kthxbye


Anmelden zum Antworten