Windows编程起初是从Win32 API开始的,你可以响应Windows消息,可以操作内存(自己进程和其他进程的),你可以随意任意控制窗口—只要在正确的时间在屏幕的正确位置绘制像素点就可以了。虽然Windows系统本身的设计是面向对象的,但是你还是只能通过C风格的函数调用来操作这些对象。
另外,起初的Windows程序都是孤立,别说与其他的计算机上的程序进行通信,就连同一台机器上程序间也很少有联系。1993年,微软发明了COM,于是不同程序语言编写的模块之间就可以通过定义好的二进制接口进行通信了。接着DCOM发明了,用于不同进程以及不同机器之间的模块交互。
1993年之后的Windows API基本上都是基于COM接口的,于是要写Windows程序就有了两种的方式,C风格的和COM接口风格的。为了简化这种复杂性,于是就有人发明了各种类库,比如MFC,ATL以及OWL等等。
90年代中期,互联网兴起了,带来了另一种模式编程模式—HTML。使用HTML可以制作出类似杂志一样内容丰富的界面,但是其缺点就是交互的能力太弱,开发和调试也比较困难。
2000年,微软推出了NET平台,希望成为一个整合一切的平台。