我算是一个资深的windows程序的开发者及使用者,在win95~win10下都做过开发。从我的开发经验看,windows开发的先进性有如下几点。
各种消息驱动,避免了繁琐的底层开发。windows系统已经有现成的键盘、鼠标、字符接收处理、颜色控制等消息处理。如果要进行特殊处理,可用CALLBACK回调函数,或者直接用protected的系统消息处理函数,把要处理的内容加上,即可完成控制。
数据通讯只须考虑应用层,物理层系统已做好了我们常用的串行通讯、TCP/IP通讯、UDP通讯,在操作时,只须写COM1、TCP PORT,直接用FWrite,FRead进行操作,如同文件的读写一样。而数据通讯过程中的错误,系统直接反馈回来,供你处理。
多任务、多进程、多线程管理;数据临界区critical、互斥量mute的管理开发一个大的系统,可以有效地组织、管理,任务分解到各个TEAM,上层开发管理者只用把各TEAM之间要交换的数据、消息等用临界区critical、互斥量mute等进行传递。实现了高效、保密的开发。
任务栏APP可不用频繁打开、关闭,永保记忆状态。只要硬件系统内存足够大,windows可同时打开几百个APP,并且把各自app的数据能准确记忆,保证电脑系统在每天上电后,都能保持昨天的工作状态,提高工作效率。
先进的虚拟内存管理机制,使得开发不受内存大小的限制开发中内存空间申请不受64kB限制,根据需要随意用new申请。这使得大的APP开发变得容易。
一个APP的多媒体系统定时与线程定时、子对话框有机结合,完美实现多点联动一个APP可以是多个对话框CDiaglog的组合,主要的mutilmediatimer为主线,多子定时器同时处理,实现系统数据动态刷新。