第六件:支持Windows 7新特性
微软历史上第二成功的操作系统Windows 7已经发布很久了。新的操作系统,总是带来很多新的特性。而作为Windows平台的开发人员,新操作系统的到来则为我们带来了更多的机会,我们可以借助新的操作系统的各种新特性,让我们的应用程序更加易用,更加强大,更有利于提高用户的生产效率;同时新的操作系统也给我们带来更多的挑战,我们每个开发者都在考虑自己开发的应用程序是不是“Ready for Windows 7”?是否跟新的操作系统兼容?是否能够利用新的操作系统的各种新特性?为Windows 7开发应用程序,成为我们面前的一个新的课题。
Visual Studio 6作为Windows 7之前发布的开发工具,面对Windows 7所带来的各种诱人的系统特性,例如Jump List,任务栏缩略图,UAC等等,只有眼巴巴望着的份儿,而只有伴随着Windows 7共同成长的Visual Studio 2010才有资格享受这份大餐。
在Visual Studio 2010中,MFC被进行了大量的更新和扩展以支持Windows 7的各种新特性。例如,通过MFC应用程序的可视化Riboon界面设计器,我们可以轻松地为应用程序添加上流行而现代的Ribbon界面;利用MFC的扩展,我们可以轻松地使用Windows 7的各种新特性,例如触摸支持(Multi-Touch),重启管理器(restart manager),任务栏缩略图等等。并且,在我们的应用程序中使用这些Windows 7的新特性都非常简单,通过在“MFC应用程序向导”中进行简单的设置,我们就可以轻松拥有这些新特性。为了能够跟上Windows 7这位大哥,利用Windows 7的新特性来为自己的应用程序增光添彩,聪明的程序员当然会选择VS2010啦!
给应用程序添加Jump List特性
第七件:对并行计算的支持
随着Intel和AMD不断推出多核心的CPU,一芯多核,成为越来越普遍的事情。从单核到双核,从双核到四核,再到八核等等,毫无疑问,我们开始进入一个一芯多核的时代。软件是运行在硬件之上的。当硬件发展了,软件也要做相应的变化,才能跟上时代的步伐。面对多核时代的到来,软件世界的并行计算开始兴盛起来。如何更加充分地利用 CPU的多个核心?如何发挥多核的威力,带来软件性能上的提升?如何简便地实现并行计算,使自己开发的应用程序充分地利用硬件升级所带来的性能提升?这些问题,无不困扰着我们这些多核时代的程序员们。
面对并行计算的挑战,Visual Studio 6的应对方式还是老一套——多线程开发。但是,传统的多线程开发不是一件简单的事情,线程的创建,调度,挂起,销毁等等,都在挑战着程序员们的脑力,耐心和细致。稍不留意,就可能犯错,导致线程死锁,线程冲突等等问题,多线程开发成了龙潭虎穴,很多程序员望而却步。
面对并行计算这个站在广大程序员面前的拦路虎,VS2010当然是迎难而上了。VS2010提供了新的库和工具,让程序员们可以轻松简便地开发并行计算应用程序,从而充分利用多核CPU的计算能力。新的并行模式库(Parallel Patterns Library)在一个比操作系统线程更高的高度对并行计算进行了抽象,让程序员们不再直接跟比较危险的线程打交道,而是在另外一个更高的抽象层次,用新的Task来表达我们对可以同时执行的多个任务的封装,使得并行计算的程序更加容易理解和开发。除了PPL之外,VS2010还添加了多个线程安全的容器,这些容器可以应用在并行计算的应用程序中。多线程程序的开发是一件麻烦事,多线程程序的调试更是一件麻烦事。为了解决这个问题,VS2010改进了它的调试器,同时提供了多个专用视图,例如线程视图,通过这些视图,我们可以清楚地看到各个线程的执行情况,从而轻松地完成多线程应用程序的调试。
VS2010中的线程视图