无论你在哪个C++领域,越早提升高阶能力,职业发展越好
以工程实践驱动教学,全方位提升“内功,思维,设计,技术”能力
简历指导+1V1答疑+直播答疑等专属服务保障,学习无忧
阶段一:C++面向对象编程在工程实战中的应用
从最佳工程角度解析C++面向对象编程的细则,了解C++语法本质。
第1周
课程简介、环境准备及面向对象的精髓
本周介绍本课程的定位、价值和学习本课程需要的准备知识、环境搭建;并通过面试题来介绍面向对象思维的本质及纠正一些对面向对象编程经典错误的理解。
第2周
从工程角度从新审视类的构造,赋值等
通过编写MyString类的3个构造、2个赋值和1个析构,从本上解析C++中比较难以理解但又十分重要的一些概念:隐式转换、左值、右值、左值引用、右值引用及C++11重要的特性move语义。
第3周
深度剖析对象的建立过程及优化
从最佳工程的角度解析C++对象创建的过程、说明构造函数的本质,RVO的返回值优化、const关键词的优化等。
第4周
函数和表达式本质
重点解析函数重载、运算符重载;函数对象、lambda和inline函数的本质及它们的使用场景。
第5周
C++内存分配:堆和栈的详细分析
重点解析C++内存管理的细节,堆和栈及C++推崇的资源分配RAII在实际项目中的运用。
第6周
C++智能指针、异常、new及对象模型
解析在C++中如何实现智能指针、及C++中异常的使用、new运算符的本质及C++对象模型内部真实的结构。
第7周
实现C++跨平台爬虫实战
利用上面所学的知识结合一些QT的库,完成一个跨平台的C++爬虫程序。
阶段二:C++面向对象设计模式精讲
C++关键设计模式系统精讲与C++爬虫应用实践。
第8周
面向对象设计模式初步及创建型模式
介绍面向对象设计模式的本质、详解实际解决的问题及创建型的设计模式在工程中的运用。
第9周
结构型模式和行为型模式
详解结构型的设计模式和行为型模式在实际工程中的使用场景和运用。
第10周
STL和设计模式
通过对C++基础类库STL的架构设计的理解讲述STL的使用和其常见的设计模式。
第11周
QT设计模式和爬虫项目的设计模式版本
通过对QT的架构设计的理解讲述QT常见的设计模式及使用设计模式改进之前的爬虫项目。
阶段三:C++ QT编程
该阶段我们学习QT框架的使用场景、QT的设计思想及QT常见的UI组件如何使用。学会QT的IO和关系数据库的基本使用、多进程多线程、TCP/IP网络架构、并详解在QT中实现网络编程的方法。
第12周
QT的基础和UI组
介绍QT框架的历史、使用场景、QT的设计思想及QT常见的UI组件如何使用。
第13周
QML编程、文件IO和数据库操作
详解QML语言的架构、设计和使用方法、QT的IO和关系数据库的基本使用及在QT中的实战。
第14周
QT正则表达式及多进程多线程编程
介绍正则表达式的基本使用及在QT中的实现、多进程多线程的基础知识及QT中如何使用多进程多线程进行编程。
第15周
QT网络编程和其他高级编程
详解TCP/IP网络架构、并详解在QT中实现网络编程的方法。
阶段四:跨平台浏览器项目实战
本阶段开始实战跨平台浏览器项目,并实现核心kernel部分的代码。手把手讲解跨平台浏览器项目的UI部分代码的开发、DataBase和File System部分的开发、讲解用户登录和加密组件的的开发等
第16周
项目架构及Kernel部分的开发
分析跨平台浏览器项目的详细设计,并实现核心kernel部分的代码。
第17周
UI部分开发
手把手讲解跨平台浏览器项目的UI部分代码的开发。
第18周
浏览器项目DataBase等开发
手把手讲解跨平台浏览器项目DataBase和File System部分的开发。
第19周
用户登录和加密部分组件开发
手把手讲解跨平台浏览器项目Plugins Manger部分和爬虫、截图插件部分的开发;并手把手讲解用户登录和加密组件的的开发。
第20周
自动化测试用例的开发及其他一些特性
手把手讲解跨平台浏览器项目自动化测试用例的开发;并讲解用广告和云端同步的功能户登录和加密组件的的开发。
阶段五:系统层知识进阶
本阶段开始深入剖析计算机内部数据和数学的底层原理、操作系统进程、线程的本质和一些常见误区的解释,详解编译器的实现原理,并结合编译器知识分析对C++代码优化的逻辑和思路。
第21周
数据表达底层原理和操作系统、进程和线程
深入剖析计算机内部数据和数学的底层原理、操作系统进程、线程的本质和一些常见误区的解释。
第22周
网络编程、国际化和数据库操作
详解TCP/IP的一些协议细节、网络数据传递的字节序问题、UTC问题,国际化的处理;详解关系数据库的原理及对未来大数据处理的一些形势分析。
第23周
译系原理解析和C++代码优化
详解编译器的实现原理,并结合编译器知识分析对C++代码优化的逻辑和思路。
阶段六:C++新特性及就业指导
具体分析C++11还有哪些值得关注的新特性并剖析C++17、20等未来C++语言的发展方向和趋势,指导未来技术选择和就业方向。
第24周
C++新特性和就业方向解析
分析C++11还有哪些值得关注的新特性并剖析C++17、20等未来C++语言的发展方向和趋势,指导未来技术和就业方向。