准备 抽象思维,计算机组成,学习心态方法,学习阶段导读,工作经验引导
语法 VC基本操作、C语言基础、逻辑运算和控制语句、数组、函数、指针、结构体、链表、类与对象、静态成员友元、运算符重载、继承、多态虚函数和模板等等 篮子苹果练习, ATM模拟自动取款机练习(300行合理设计类)
中级 本阶段以国外专业培训用的英文教材为基础,把教材里的英语翻译成中文进行讲学,注重语言形式和Linux下基本API的使用,注意教材里带的复杂例子讲解,使各类学员迅速掌握C语言基础点的结合使用和Linux操作系统的API的使用,开窍,进阶,使学习者培养到具备可以从事Linux下C++语言中小模块编程的工作的能力。
要点:Linux安装,gcc编译操作,codeblocks的IDE使用,STL,Bash(外壳),Compilers编译,Libraries库,Make,Version Control版本控制,PRM, 压缩工具,Debugging, 调试,System Calls,系统调用,File I/O,文件I/O ,Advanced File Operations, 高级文件操作 ,Processes进程 ,PIPES and FIFO’s管道和队列,Signals信号 ,Threads线程,Networking and Sockets网络和Sockets,地址和主机,端口和协议,Sockets-Clients客户端Socket,Sockets-Servers 服务器端Socket,Sockets 输入输出操作,Sockets-Options Socket的选项,Netlink Sockets,Sockets 多路复用和并发服务器,System V IPC ,Shared memory 共享内存,Semaphores信号量,Message Queues消息队列。 1、文件内容查找和替换
2、字符串查找和变换
3、组播局域网聊天
4、宾馆房间调度(C/S模式,共享内存)
5、多人翻牌游戏(多进程,进程间消息,共享内存)
6、小型Web服务器
7、集群服务器管理
8、目录遍历和文件拷贝
9、hash_map和线程结合
设计思路和中级实践 通过UML图形设计和复杂流程图设计学习,掌握设计思路。基本的多模块架构和多模块接口锻炼。5个项目练习,培养复杂逻辑思路能力。我们强调系统和现实的结合,强调系统模块间的模块关联理解,引导学员的思考能力,不是灌输式机械式的引导。 1、ini文件访问
2、结合epoll和哈希表的大型并发服务器
3、网络授时客户端
4、md5加密算法的调用
5 mysql数据管理类
6 sqlite数据管理类
7 父子进程管理和socket通信结合
高级 目的:通过精典开源代码的学习,掌握大型软件开发能力。注重多文件形成工程,编制make文件;注重面向过程下怎样组织模块及模块如何协调工作。要点有:ini文件处理、哈希表、Mint、网络授时、fork和线程条件变量、apache父子进程管理、组播管理项目、mysql、sqlite、内核及嵌入式引导、魔兽世界私服服务器和人脸识别系统malic、tinyxml开源库、Crypto++ 、UDT、QT和Boost等等。 1、ini和XML互相转换
2、密码类使用
3、UDT通信机制模拟
4、QT界面
5、Boost类练习
6、ini文件访问
7、结合epoll和哈希表的大型并发服务器
8、网络授时客户端
9、md5加密算法的调用
10 mysql数据管理
11 sqlite数据管理
12 父子进程管理和socket通信结合
软件工程
和高级实践 编码规范和软件工程。复杂的多模块架构和多模块接口锻炼。模块内多种技术疑难融合锻炼。 1、XML文件内容转INI
2、XML文件内容加解密
3、仿wireshark的QT界面设计
4、以Boost多线程对多文件进行内容加密
5、以Boost正规解析库建立语法分析程序
6、Boost序列化应用于复杂格式文件 7 http协议的分析和实现
8 多人在线QQ农场终端模拟
9 自定义协议实现主从授时管理
10 网络游戏服务器模拟
11 sock5代理的分析和实现
|