C/C++气象数据中心实战,手把手教你做工业级项目
课程目标通过万行代码的项目毒打,吸收大牛经验,达到职业程序员水平!
从理论过渡到实操,手把手实现你的第一个项目,Get 5年都不会过时的硬实力!
具备职业程序员的素养
全面提升编程能力、学习能力
和解决问题的能力,了解如何
发挥已掌握的知识,寻找和利
用开发框架。
学会技术的实际应用
掌握C/C++应用开发框架,
Linux系统和网络编程技能,
关系型数据库开发及多种实
用工具等,进一步拓展技术
深度。
实打实提升项目经验
以项目需求和功能开发为主
线,系统操盘一个完整项
目,获得可以写进简历的项
目经验,迈出职业化的关键
一步!
课程亮点
带你实际应用核心技术点,让你的能力不局限于理论层面!
对c/c++初学者来说,最大的困惑就是掌握了基础知识后不知道怎么用
C/C++语法实践
1)数据类型
2)数组
3)函数
4)指针
5)目录和文件
6)日期和时间
7)gdb和makefile
8)C++类和对象
9)C++重载
10)C++引用
11)动态内存管理
12)stl标准库
数据结构一览
1)顺序表
2)链表
3)栈
4)队列
5)红黑树
开发框架的应用
1)字符串操作
2)时间操作
3)目录/文件操作
4)日志文件
5)参数文件
6)日xml和json
Linux进程精进
1)信号
2)共享内存
3)信号量
4)多进程
5)守护进程
6)调度进程
剖析Linux线程
1)线程的创建和终止
2)线程参数的传递
3)线程资源的回收
4)线程取消
5)线程与信号
6)线程池
详解线程同步
1)线程安全
2)原子操作/原子类型
3)互斥量
4)自旋锁
5)读写锁
6)信号量
7)条件变量
8)生产/消费者模型
9)高速缓存
网络编程原理
1)Socket通讯
2)粘包/分包
3)封装Socket的API
4)短连接/长连接
5)心跳机制
6)同步/异步通讯
7)I/O复用Select/oll/epoll
8)Ftp协议
9)Http协议
数据库
1)MySQL数据库开发
2)libmysql接口库
3)Federated存储引擎
4)MySQL数据字典
5)PowerDesigner
6)Oracle数据库开发
7)OCI接口库
8)数据链路DBLink
9)Oracle数据字典
10)数据库连接池
一个真实数据中心的精华都在这里,既足够深度,又贴合实际
政府、金融、国企、互联网都用得到的关键项目,模块可广泛复用
文件传输子系统
功能和技术指标
1) 支持ftp和自定义的文件传输协议;
2) 支持文件的上传和下载功能;
3) 采用增量传输文件的方法;
4) 灵活设置文件名的匹配方式;
5) 灵活的故障容错和恢复功能;
6) 采用异步通讯模式,效率极高;
7)通过配置参数实现不同文件的传输
卫星接收站
雷达站
国家基本站
区域气象站
文件下载
文件上传
卫星接收站
雷达站
国家基本站
区域气象站
数据抽取子系统
功能和技术指标
1) 从源数据库中抽取数据,生成xml文件;
2) 支持MySQL、Oracle等主流数据库;
3) 支持按条件抽取数据;
4) 支持增量抽取数据;
5) 支持数据的运算和格式转换;
6) 通过配置参数实现不同种类数据的抽取。
MySQL
Oracle
SQLServer
PostgreSQL
数据抽取
xml文件
数据标准化处理子系统
功能和技术指标
1) 对各种格式和编码的文件进行解码和转
换;
2) 不同种类的数据采用不同的处理程序;
3) 处理程序逻辑简单,高效,稳定性好;
4) 处理程序可用任意编程语言编写。
原始文件
站点观测数据
七天天气预报
……
台风路径
标准化处理
程序1
程序2
……
程序n
XML文件
站点观测数据
七天天气预报
……
台风路径
数据入库子系统
功能和技术指标
1) 把各种数据入库到数据库的表中;
2) 支持MySQL、Oracle等主数据库;
3) 支持多任务、多通道并行入库;
4) MySQL入库的效率在1000条/秒以上;
5) Oracle入库的效率在3000条/秒以上;
6) 通过配置参数实现不同种类数据的入库。
XML文件
站点观测数据
七天天气预报
全国预警信号
台风路径
数据入库
程序1
程序2
……
程序n
数据表
观测数据表
观测数据表
观测数据表
观测数据表
数据同步子系统
功能和技术指标
1) 在集群的数据库之间同步数据;
2) 支持MySQL、Oracle等主流数据库;
3) 支持从MySQL同步到Oracle;
4) 支持带查询条件的同步;
5) 支持增量同步;
6) 支持源表和目的表的表结构不同;
7) 支持对源表数据进行运算和格式转换;
8) 支持批量同步,性能比数据库自带的复制
功能快5倍以上。
Master A
Master B
Master C
Slave A
Slave B
Slave C
数据同步
历史库
实时库
预报库
台风库
接口库
数据服务总线
功能和技术指标
1) 提供基于HTTP协议的数据访问接口;
2) 支持MySQL、Oracle等主流数据库;
3) 功能模块通用化、接口配置参数化;
4) 对数据访问权限有严格的控制;
5) 支持黑名单和白名单功能;
6) 支持1万/秒的业务并发量。
接口库 1
接口库 2
数据服务总线(HPPT协议)
预警发布系统
预报制作系统
公共服务平台
数据共享平台
社会公众
学校、科研机构
课程大纲
第1章课程导学与准备工作
本章节对课程的内容做介绍说明,以及本门课程能为学员带来那些收获。大家认真学习成为职业程序员。
第2章 如何保证服务程序永不停机
服务程序运行在后台,无人守值,故障退出或挂起是不可接受的,后台服务程序除了实现功能,还必须具备稳定性、健壮性和故障恢复的能力。
这一章介绍了信号、多进程、共享内存、信号量的基础知识以及应用的经验,调度进程、守护进程和心跳机制协同工作,保证服务程序7x24小时不间断运行。
第3章开发基于ftp协议的文件传输子系统
ftp是最古老的tcp应用层协议,从1971年诞生至今近半个世纪来,凭借其独特的优势一直是因特网中最重要、最广泛的服务之一。
这一章介绍了ftp协议的封装,隐藏了复杂的底层协议和报文格式,通过简单的函数调用实现ftp客户端全部的功能。基于封装后ftp框架,实现文件的上传和下载功能。
第4章开发基于tcp协议的文件传输子系统
ftp协议虽然功能强大,应用广泛,但性能不足够。
这一章介绍了网络编程的基础知识,对socket的系列函数进行封装,自定义文件传输协议,实现文件的上传和下载功能,采用了异步通讯的机制,效率极高,充分利用了网络带宽。
第5章 轻松搞定MySQL数据库的开发
MySQL提供了C语言访问MySQL数据库的函数库,功能强大,但开发难度很高,接口函数的参数烦锁,代码冗长。
这一章把MySQL的函数库封装成connection和sqlstatement类,简单易用,为MySQL数据库开发奠定基础,神器在手,无往不利。
查看完整目录
每个IT资源网课程,都是一个专业的技术社区
个性化增值服务,学习有保障更高效
答疑专区+技术社区
连百度谷歌都搜不到的问题,在这里讲
师都将耐心详细解答,更有小伙伴一起
交流互动,共同进步。
课程全套代码下载
提供课程全套源代码下载,包含:
全套组件封装镜像、私有仓库、各个服
务的镜像、项目源代码。
独家“动态”教辅材料
丰富的专属教辅资料上传更新,通过
课程教案、原理图解、技术文档、演示案
例等各种教材,保障你的学习效果。
实用电子文档
部分简单内容以图文形式呈现,与视频
相配合,既保障学
习效果,又提高了学习效率。
页:
[1]