ch_linghu
2012-01-06 10:13:38 +08:00
一门实用的语言其实是由两部分组成的(BTW 这话其实不太准确):语言规则(包括语法和语意等)和库。基本上绝大部分的语言教科书会把重点放在前者。但是要做实际的事情,后者是非常重要的。
再说程序。基本上一个程序总是由三部分组成:输入、处理和输出。其中处理部分是相对固定的,而输入和输出可以根据不同的需求变化:用鼠标点击是一种输入方式,在命令行输入一串命令是一种输入方式,从文件读取也是一种输入方式,从网络获取也是一种输入方式。输出可以是命令行的字符串,可以是一个图形,也可以是一个文件,甚至可以是一个硬件设备的操作指令……
所以,如果你要做一个实际的程序,基本上就是这样:先搞清楚语言的语法规则,这可以让你写出“正确的”程序。然后去找合适的库帮你完成输入、输出,以及一些常规功能。然后你自己把他们组合起来,再写上需要的处理逻辑。就完成了。
对于一些常见的任务,因为有比较固定的模式可循,所以还可以使用框架来帮你自动完成一些固定工作,你只要集中精力去处理逻辑部分就可以了。比如上面提到的QT就是一套GUI框架,另外还有一套Windows专用的GUI框架叫MFC,也曾经非常有名。Boost里有一套异步网络框架Asio,可以帮你完成网络程序开发。
世界上有各种各样不同的框架或库,列也列不完。这个还是要针对具体的任务再做选择了。