课程名称:LINUX环境C/C++/QT应用开发班
第一部分:LINUX环境,C/C++/QT的安装与设置
LINUX环境,C/C++/QT的安装与设置 1、QT概述
2、QT与VC++比较
3、QT在LINUX环境下的安装与设置
4、QT在LINUX环境下,工程中各文件分析
第二部分:LINUX环境搭建和操作
LINUX环境搭建和操作 1、Linux概述
2、LINUX安装和配置
3、Linux系统的一些术语与概念
4、Linux系统结构
5、Linux目录结构
6、系统登录与账户管理
7、基本文件与目录操作
8、Linux基本设置与配置
9、LINUX环境SHELL
10、LINUX环境常用系统命令
11、LINUX窗口环境常用功能操作
12、Linux软件安装与卸载
13、LINUX环境网络环境的搭建及与WINDOWS环境的通讯
14、在PC虚拟机环境安装LINUX
15、在PC虚拟机环境LINUX网络环境搭建和设置
16、在PC虚拟机环境LINUX与本地机通讯
第三部分: C/C++语言基础和强化编程
C/C++语言基础和强化 1、c/c++逻辑,循环,判断等语句流和运算符及其在各种算法中的案例分析
2、函数及其相关深化:指针函数,函数指针,递归函数,函数参元传值类别
3、变量(variable)类型及其声明使用及其内存分配区域
4、地址(address),指针(pointer),多重指针及其使用
5、数组(array)和指针
6、结构(struct),联合(union),枚举(Enum)及其编程及应用案例分析
7、结构体内存分配形式和规则
8、计算机中数据存放的基本原理
9、内存(memory)管理(申请,分配和释放)编程
10、内存分配的代码区(code)、全局/静态数据区(static)、堆区(heap)、栈区(stack)、常量区(const)详解
11、OOP(面向对象程序设计)基本理论
12、OOP特性及其编程(抽象(abstract)、封装(encapsulation)、继承(inheritance)、 派生(deriving)、多态(multimorphrism)等)
13、类(class):无关类,派生类,友元类,构造(construct)函数,析构(deconstruct)函数
14、各种类(无关类,派生类,友元类)交叉互相使用其成员(members)编程技术
15、重载(overload)与覆盖(override)技术
16、内联(online)函数及其编程
17、友元(friend)函数及其编程
18、虚函数(virtual function)及其编程
19、静、动态联编(binding)
20、纯虚函数,抽象类,多态性,及其编程
第四部分:Qt应用开发编程
Qt应用开发编程 一、Qt应用软件的整体结构
1、Qt主要类库结构及其继承关系
2、Qt/OS关系图
3、Qt模块
4、元数据(Meta data)基本概念
5、内省(Introspection)基本概念
6、属性(Properties)基本概念
7、信号(signal)和槽(slot)基本概念
8、Qt内存管理特殊性
二、Qt编译工具
1、Configure
2、Qmake
3、Moc
4、Uic
5、Rcc
三、Qt图形用户界面(GUI)设计开发编程
1、Qt Designer操作使用
2、Qt对话框QDialog开发编程
3、Qt基础窗口部件QWidget开发编程
4、Qt程序主窗口QMainWindow开发编程
5、Qt布局QLayout及其管理开发编程
四、Qt槽(slot)和信号(signal)编程
1、信号和槽深入
2、使用预定义信号和槽
3、创建和使用用户信号和槽
4、认识元对象编译器
5、定位元对象编译器
6、创建用户槽
7、声明用户槽
8、定义用户槽
9、编译使用用户槽程序
9、创建用户信号
10、信号和信号之间的连接
11、信号和槽之间的连接
12、连接的断开
五、Qt事件处理编程
1、事件机制
2、信号和事件的区别
3、事件来源与类型
4、事件处理方法
5、事件处理器
6、事件过滤器
7、加快用户界面响应技术
8、使用processEvents()函数
9、使用定时器(timer)
六、Qt图形图像处理编程
1、QPainter类及其主要方法
2、QPaintDevice类及其派生绘图类
3、QPaintEngine类及其提供的平台相关API
4、Qt坐标系统与坐标变换
5、Qt画笔、画刷与字体控制
6、常用图形、曲线绘制
7、常规图像处理
8、Qt双缓冲图形图像处理技术
七、Qt多线程编程
1、多线程(multithread)概念及其与进程(process)区别
2、Qt线程类QThread的创建与使用
3、Qt线程互斥与同步
4、Qt临界区问题
5、使用QMutex
6、使用QSemaphore
7、使用QWaitConditon
4、Qt线程的优先级处理
5、死锁及优先级反转问题
6、线程间通讯
7、线程与事件循环
8、线程与信号/槽机制
八、Qt与SQLITE数据库编程
1、数据库编程概述
2、SQLITE的特性
3、Qt与SQLITE连接
4、Qt对SQLITE数据库查询编程
5、Qt对SQLITE数据库操作(增加、删除、编辑)编程
6、实际应用案例分析
九、Qt网络编程
1、C/S, B/S模式介绍
2、TCP/IP协议介绍
3、socket介绍
4、Qt UDP与TCP方式的网络编程
5、Qt 基于缓冲区(buffer)数据实时通讯收发技术
6、Qt点对点,一点对多点数据通讯的编程实现
7、Qt 实时、准确、任何数据类型数据通讯的编程实现
8、案例分析
第五部分:项目课题
项目课题 1、LINUX网络游戏服务器程序开发
本课题重点体现以下技术:TCP/IP,多线程,多进程,数据库开发,服务器并发处理能力和负载能力
2、LINUX环境工业控制上位机程序开发
本课题重点体现以下技术:串口通讯,多线程处理,下位机控制,图形图像处理
3、企业物流管理控制系统
本课题重点体现以下技术:跨平台QT开发技术,图形图像处理,数据库开发和管理,C/S架构系统与WEB网站的交互开发