写的程序越来越多的时候,发现其实大部分的程序都是比较类似的,而且多数的逻辑其实都是比较简单的,很多的时候都是主要简单的组合一下原来有的东西就可以搞定。所以一些常用的库就很关键了。
库不在多,有用就行。
1。正则表达式
只要你的程序里需要解析字符串,那么这个就应该是必备的库了。用了他之后,你就会发现有规律的文本文件是那么可爱。
2。xml解析器以及操作库
在涉及到数据交互的时候使用xml格式的数据是一种非常好的选择,数据格式灵活,易于扩展,有许多第三放的工具支持等都是我们选择它的很好的理由。但是,在我们的程序里,其实不需要用到它的全部,只要用到它的思想就可以了。所以我们需要的xml库不是一个大而全的库,而是一个精简的,易于使用的库。所以,自己使用的是自己写的一个xml解析器,以及一个xml数据的操作类,虽然很多功能都没有实现,但是平时用用已经够了。这样的实现很小,就6个文件,包括头文件,整个源文件不过40KB,如果使用其他的xml库,动辄上M。
3。多线程的处理方式
大多数程序都是需要多线程处理的,其实这部分是不需要自己写库的,因为操作系统都支持,而且调用也是比较简单的。
4。异步网络通讯
现在的程序一般都是需要和其他程序交互的,网络连接是必不可少的东西。windows下的异步通讯比较容易实现,但是使用纯C++的实现我现在还不会,也没有找到相关的东西,听说boost或是ACE有,不过那个东西太庞大,不是很感兴趣。(我这个人天生对比较小的实现有兴趣)
5。常用的数据结构
A)动态数组
B)映射表
C)动态数据分配
D)二维表格控制
有了这些东西之后,我相信一个程序的主框架,以及主要实现的部分就会比较容易了,其他的部分就是和你的具体应用相关。那就是你自己的事情了。