ฉันพบว่าการเขียนโปรแกรม Windowsยังคงมีประโยชน์ ขอบคุณที่ Microsoft ให้ความสำคัญกับความเข้ากันได้แบบย้อนหลังสิ่งสำคัญทั้งหมด (หน้าต่างจับข้อความ GDI ฯลฯ ) ดูเหมือนจะยังคงมีความเกี่ยวข้องและครอบคลุมใน Petzold (หากมีการเปลี่ยนแปลงอย่างรุนแรงเกินไปมันจะทำลายโปรแกรม Windows ที่มีอยู่มากเกินไปและโปรแกรม Windows ที่มีอยู่จำนวนมากเป็นข้อได้เปรียบส่วนใหญ่ของ Windows ในตลาด)
มี API ใหม่เฉพาะเช่นSetup API , Thread Pool APIและGDI +และมีหัวข้อใหม่เช่นทำงานภายในบริบทของ UAC ของ Vista และ 7 นอกจากนี้ยังมีฟังก์ชั่นใหม่หลายอย่างที่ Petzold ไม่ครอบคลุม แต่มันง่ายพอที่จะค้นหาหัวข้อใหม่ ๆ บน MSDN ได้ตามต้องการ การเขียนโปรแกรม Windowsยังไม่ครอบคลุม COM ซึ่งเป็นส่วนสำคัญของการเขียนโปรแกรม Windows
โปรดทราบว่า API ที่ครอบคลุม Petzold นั้นอยู่ในระดับต่ำและใช้ C (มี API ที่ใหม่กว่าสองสามตัวเช่น GDI + และ COM บางอย่างที่เป็นเชิงวัตถุ) การพัฒนาที่ทันสมัยใด ๆ ในปัจจุบันจะเป็นเชิงวัตถุและมักจะใช้เฟรมเวิร์กเช่น. NET หรือ Qt หรือ Delphi ของ VCL ดังนั้น จะไม่ค่อยเขียนแอปพลิเคชันที่สมบูรณ์ที่ดูเหมือนรหัสตัวอย่างในการเขียนโปรแกรม Windows ; อย่างไรก็ตามมันก็ยังดีสำหรับการอธิบายสิ่งที่เกิดขึ้นภายใต้ประทุน
ฉันมองไปรอบ ๆ มาแล้วและไม่พบการอ้างอิง API ใหม่ใด ๆ ฉันสงสัยว่านี่เป็นเพราะขนาดที่แท้จริงของ Windows APIs ปัจจุบัน การเขียนโปรแกรม Windows รุ่นที่ 5มีความยาวเกือบ 1,500 หน้าหนังสือที่ครอบคลุมทุกสิ่งใหม่จะใหญ่เกินไป ฉันหาข้อมูลเพิ่มเติมที่น่าสนใจสองประการเกี่ยวกับการเขียนโปรแกรม Windowsถึงแม้ว่าฉันยังไม่ได้อ่าน:
- Essential COM , by Don Box - API ใหม่ของ Vista หลายตัวเป็นแบบ COM และ Petzold ไม่ครอบคลุม COM
- การเขียนโปรแกรมระบบ Windowsโดย Johnson M. Hart - ดูเหมือนจะข้ามสิ่ง GUI และ GDI ทั้งหมดที่ Petzold ครอบคลุมเป็นอย่างดี แต่มีรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการที่ทันสมัยบนมัลติเธรด IPC และอื่น ๆ
- Windows Internalsโดย Russonovich, Solomon และ Ionescu - น้อยกว่าเกี่ยวกับ API และอื่น ๆ เกี่ยวกับวิธีการทำงานของ Windows ภายใต้ฮูด Russonovich อาจรู้เรื่องนี้มากกว่าใครก็ตามที่อยู่ภายในหรือภายนอก Microsoft