C++编程需要掌握的几类技能
来源:互联网 发布:qq农场刷金币软件 编辑:程序博客网 时间:2024/06/09 18:09
本文来自http://blog.csdn.net/wenrenhua08/article/details/40040903
一、网络
网络库必须掌握 ACE 和 libevent, 一个是重量级的网络库, 一个是轻量级的网络库。仔细想想,现在那个程序不用网络啊。不懂网络,你将寸步难行啊。熟悉这两个开源库的 前提是你必须懂socket的原理,给大家推荐的好书就是《UNIX网络编程》,看懂这本书就可以了,其他的什么《windows网络编程》这些都不用看,因为网络编程,你学会了伯克利的套接字,你就可以在任何平台上进行网络编程了,不需要学什么windows下的网络编程,因为windows下的网络也是从伯克利套接字搞过来的,如果你学习《windows网络编程》,那么你那天在linux,unix下进行网络编程,你还得在学习一下。没有那个必要。
二、数据库
数据库嘛,开源的Mysql和开源的PostgreSQL只要懂其中一个就可以了,商业数据库在掌握一个Oracle就可以了,文件数据库掌握 sqlite。不过请大家注意,不要被上面数据库名字给迷惑了,数据库的本质是SQL语句,一定要懂数据库的基本原理,熟练应用SQL语言,懂数据库的优化,存储过程等。数据库的原理搞懂了,拿什么数据库过来都轻松掌握,就不会在乎是Mysql还是Oracle了。
三、日志操作
日志操作推荐大家熟悉 log4cpp这个日志库, 支持多线程, 日志重定向到网络等都有, 反正你能想到的日志的功能都有。日志嘛,一个是方便查找问题,方便记录程序运行的一些情况。这是必须的。
四、管理后台
众所周知,写程序是给其他人用的,不是自己用,所以在程序的易用性上,多给对方提供一些可以直接查看的管理界面,显得分成重要。为程序提供一个web的管理界面,方便用户登录上去查看程序的各种信息,很有必要。
五、读取配置文件
所有的程序都必须有配置文件,方便配置一些项目,为程序提供灵活性。 所以写程序,必须有读取配置文件的封装类。
六、内存池
所有的进程都需要分配内存,对C/C++来说,分配和管理内存是已经很有挑战性的工作。给大家推荐 nedmalloc 这个开源的内存池库。nedmalloc是一个跨平台的高性能多线程内存分配库,很多库都使用它。
七、缓存库
众所周知,缓存库用得最多的就是memcache了。在做数据库开发的时候特别有用。
八、脚本
脚本是一个很有意思的东西,很多功能,其实我们只要写个脚本就可以完成,代码量少,开发速度快。必须掌握的脚本,比较通用的要算 perl 了,很古老的语言,但是功能太强大了。我可以保证的说,.net,java能干的工作,肯定可以让perl来干。C能干的, perl不一定能干。perl作为linux,unix的系统集成的脚本语言,必须学会。
lua 语言,在游戏行业用得比较多。
python 脚本,功能很强大,推荐学。
上面这些是所有程序都会用到的比较通用的功能。
在不同的应用领域,需要掌握不同开源库,比如搞游戏开发的,可能需要掌握开源的UI库CEGUI、duilib, 开源的3D引擎OGRE等。- C++编程需要掌握的几类技能
- 掌握基本的Objective-C编程技能
- 需要掌握的web技能
- 学习J2ME编程需要掌握的几种技术
- 学习J2ME编程需要掌握的几种技术
- .net程序员需要掌握的技能
- 需要抓紧掌握的一些技能
- Web开发者最好需要掌握的技能
- 前端工程师需要掌握的技能
- 前端工程师需要掌握的技能
- .Net WEB 程序员需要掌握的技能
- Unity3D工程师需要掌握的技能
- DBA需要掌握的技能和经验
- 学习python需要掌握的技能
- Android需要掌握的相关技能
- 作为Unity程序员需要掌握的技能
- 需要掌握的技能有哪些
- java中级工程师需要掌握的技能
- MyBatis学习总结(13)——Mybatis查询之resultMap和resultType区别
- DEMO12-2 alpha混合
- IdHTTP代理设置
- linux增加虚拟内存
- .NET中DataReader与DataSet访问SqlServer数据库(C#)
- C++编程需要掌握的几类技能
- Mac OS X El Capitan 全新安装记录
- CSS背景设置
- log4j日志
- 01串排序
- jdbc,关闭连接工具类
- ArcGIS教程:样条函数法的工作原理
- Python IDLE 清屏
- Context相关的内存泄露