J'ai trouvé que la programmation de Windows était toujours utile. Grâce à l'accent mis par Microsoft sur la compatibilité descendante, tous les éléments essentiels (poignées de fenêtre, messages, GDI, etc.) semblent toujours pertinents et sont bien couverts dans Petzold. (Si quelque chose changeait trop radicalement, cela casserait trop de programmes Windows existants, et le grand nombre de programmes Windows existants est une grande partie de l'avantage de Windows sur le marché.)
Il existe de nouvelles API spécifiques, telles que l' API de configuration , l' API Thread Pool et GDI + , ainsi que de nouveaux sujets tels que le travail dans le contexte de l'UAC de Vista et 7. Il existe également plusieurs nouvelles fonctions individuelles que Petzold ne couvre pas, mais il est assez facile de rechercher des sujets plus récents sur MSDN selon les besoins. La programmation de Windows ne couvre pas non plus COM, qui peut être une grande partie de la programmation de Windows.
Gardez à l'esprit que l'API que Petzold couvre est de bas niveau et basée sur C. (Il existe quelques API plus récentes, comme GDI + et certains éléments COM, qui sont orientées objet.) Pratiquement tout développement moderne sera orienté objet et utilisera souvent un cadre comme .NET ou Qt ou la VCL de Delphi, donc vous vais rarement écrire des applications complètes qui ressemblent à l'exemple de code dans la programmation Windows ; cependant, c'est toujours bien pour expliquer ce qui se passe sous le capot.
J'ai regardé autour il y a quelque temps et je n'ai pas trouvé de références d'API plus récentes. Je soupçonne que cela est dû à la taille des API Windows actuelles; La programmation de Windows, 5e édition fait déjà près de 1500 pages, un livre qui couvrirait quelque chose de nouveau serait trop énorme. J'ai trouvé quelques suppléments intéressants à la programmation de Windows , bien que je ne les ai pas encore lus:
- COM essentiel , par Don Box - Plusieurs des nouvelles API de Vista sont basées sur COM, et Petzold ne couvre pas COM.
- La programmation système Windows , par Johnson M. Hart - semble ignorer entièrement les éléments GUI et GDI que Petzold couvre si bien, mais il contient beaucoup plus de détails sur les approches modernes: le multithreading, l'IPC, etc.
- Windows Internals , par Russonovich, Solomon et Ionescu - moins sur les API et plus sur le fonctionnement de Windows sous le capot. Russonovich en sait peut-être plus à ce sujet que quiconque à l'intérieur ou à l'extérieur de Microsoft.
Le Planificateur de tâches est également nouveau, de nombreux nouveaux objets et interfaces ont été ajoutés. Avant Task Scheduler 2.0, il y avait environ 5 objets impliqués dans la planification des tâches. En 2.0 (introduit lors de la sortie de Vista), il y en a 20, sans blague, 20. C'est l'un des aspects les moins intéressants de la programmation Win32 mais ce n'est pas si mal.
J'adore la programmation dans Win32, vous en apprendrez tellement sur le fonctionnement de Windows et d'autres systèmes d'exploitation à un niveau inférieur et cela fait de vous un meilleur programmeur, je crois. Si vous programmez en python, vous ne savez pas comment les répertoires sont organisés, utilisez simplement
os.listdir("")
. Mais lorsque vous utilisezFindFirstFile()
&FindNextFile
dans win32, vous découvrez comment les répertoires sont organisés, découvrez les ".." & "." Cachés. répertoires et à partir de cela peuvent proposer des moyens plus efficaces pour cataloguer et rechercher des répertoires.Pour les ressources win32, accédez à http://groups.google.com/group/comp.os.ms-windows.programmer.win32/topics
la source