软件工程师C++高级培训_第1页
软件工程师C++高级培训_第2页
软件工程师C++高级培训_第3页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 10 / 17第 1 局部:LINUX 操作系统根底入门第123LINUX 操作系统根底 LINUX 根本命令 LINUX 下C 编程根底C/C+编程 第 2 局部 C/C+编程第 4 天 C/C+语言简介、数据类型和操作符 第 5 天 复合类型 第 6天 指针 第 7 天 循环和关系表达式 第 8 天 分支语句和规律操作符第 9 天 函数 第 10111212 天 继承 第13 天 代码重用 第 14 天 友元、特别和类模板数据构造和算法 第 3 局部 数据构造和算法第 15 天 第 16 天 第 17 天 第 181和算法2 数据构造和算法3 阶段考试第 4 局部 嵌入式系统和 ARM

2、介绍第 19 天 嵌入式系统和 ARM 介绍第 5 局部 嵌入式 LINUX 系统编程第 20 天 第 21 天 第 22 天 第 23 天 第 24 天第 25 天 第 26 天第 27 天 嵌入式 LINUX 开发环境的搭建 文件 I/O 编程 进程把握开发 进程间通讯 多线程编程 嵌入式 LINUX 网络编程 嵌入式 LINUXQT 图形编程第 6 局部 WINDOWS 编程第 28 天 第 29 天 第 30 天 第 31 天 第 32 天 第 33 天 第 34天 第 35 天 第 36 天 WINDOWS 程序内部运行机制 MFC 框架 简洁绘图与文本编程 菜单和对话框 绘图把握和

3、文件 网络编程1 网络编程2 多线程1 静态、动态连接库、组件编程第 7 局部 WINCE 编程第 37 天 第 38 天 第 39 天 第 40 天 第 41 天 第 42 天 第 43天 WINDOWS CEWINDOWS CE器的建立和使用 WINCE 操作系统设计 WINDOWS CE 窗口消息机制与屏幕输出 WINCEWINDOWSCE 下 MFC程序的开发第 8 局部 MTK 手机软件第 44 天 第 45 天 第 46 天 第 47 天 第 48 天 第 49 天 手机设计根底理论 MTK 开发环境介绍 MTK 开发工具介绍 MTK 软件编译及工程源程序介绍 由浅入深的手机软件开

4、发 如何在开发板上进展工程实践结业考试 第 9 局部 结业考试第 50 天 结业考试第 10 局部 工程实战 第 51100 天 工程开发C+&嵌入式软件工程师培训教学大纲 C+&嵌入式软件工程师培训教学大纲局部: 第 1 局部:Linux 操作系统根底入门第 1 天 Linux 操作系统根底 1. 介绍 Linux 操作系统的根本学问,包括进展概述,目前应用状况,技术优势和特点等。 2.Linux 系统的安装预备,Linux 文件系统。 3.Linux 操作系统 第2 天 Linux1Linux压缩打包相关命令, 网络相关命令等。 2、 Linux 启动过程详解 3、Linux 系统效劳 4

5、Linux 系统常用命令操作 第 3 天Linux 下 C 编程根底 1. 2. 3. 4. 5. C 语言编程概述 Vi 等编辑工具使用 Gcc 和 GDB 的使用 Make 工程治理器 试验内容:Vi 使用,用GDBMakefileC/C+编程 第 2 局部 C/C+编程C/C+4 天 C/C+符 1.2.c/c+语言起源和历史进展 3.c/c+语言的特点和应用领域 4.c+集成开发环境介绍。讲解 vc+IDE 5. 学习 c/c+程序设计的方法 6. c/c+简洁程序的构造 7.8. c+的根本数据类型的处理 9. 数据溢出的结果和应对方法 10.C+的算术操作符 11. 自动类型转换

6、12. 强制类型转换 第 5 天 复合类型 1. 2.3. 4. 5. 6. 数组 字符串 string 类 构造 共同体 枚举第 6 天 指针 1. 指针 2. 内存安排3. 4. 5. 6. 7. 8.指针、数组、字符串之间的关系 指针算术 字符串的指针操作。 多维数组和指针访问。 空指针的意义。 指针练习。第 7 天 循环和关系表达式 1. 2. 3. 4. 5. 6. 7. for 循环 关系表达式 while 循环 dowhile 循环 嵌套循环 多维数组 把握台输入输出第 81. 2. 3. 4. 5. 6. 7. 8. 语句 规律表达式 ?:操作符 switch 语句 break

7、 continue return入输出第 9 天 函数 1. 函数原型 2. 函数参数和按值传递 3. 参数为数组一维和多维的函数 4. 参数为指针的函数 5. 参数和返回类型维结构的函数 6. 处理 string 对象的函数 7. 函数指针 8. 内联函数和宏的使用 9. 引用变量 10. 函数重载的机制 11. 函数模板 12.c+程序的内存模型和几种内存的安排方式 13. 构造化程序设计的原则 14.源文件和头文件的物理布局以及对程序模块划分和程序编译的影响 15. 静态变量 16. 名称空间 第 10 天 类1 1.2.3.4.5.6.7.面对过程编程和面对对象编程的区分 面对对象和程

8、序设计语言的关系类的概念和抽象层次 接口的概念和客户/效劳器模型 类的定义和数据this 指针和对象数组第 11 天 类2 1. 2. 3. 4. 5. 6. 7.存的初始化 含指针成员的类的=操作符重载和拷贝构造函数的定义 按成员拷贝(bit-wise copy)和 deep copy 的区分 什么时候需要考虑深拷贝(deepcopy) 操作符重载 友元类和友元函数 类的自动转换和强制类型转换第 12 天 继承 1. 继承和派生的概念 2. 继承的访问把握和继承方式3. 构造函数成员初始化列表 4. 基类和派生类对象的构造挨次 5. 继6. 虚函数的语法和定义 7. 继承和多态的关系 8.

9、静态联编和动态联编 9. 虚析构函数 10. 虚函数表和多态实现的编译器机制 11. 含有虚函数的类的对象模型 第 13 天 代码重用 1. 2. 3. 4. 5. Has-a141. 友元 2. 特别 3. 类模板和具体化第 3 局部 数据构造和算法数据构造和算法 第 15 天 数据构造和算法1 1.2.3.4.5.6.常用的字符串的 c 函数的具体的代码实现 数据构造概论 算法根本概念 时间和空间简单度 单链表的实现及其应用 循环链表的实现及其应用数据构造和算法 第 16 天 数据构造和算法2 1. 双向链表的实现 2. 堆栈实现及其应用 数据构造和算法 第 17 天 数据构造和算法3 1

10、. 2. 3. 4. 5. 6. 7. 8.归算法 二叉排序树的实现及应用 二叉树的前序遍历、中序遍 历、后序遍历。 常见排序方法和二分查找第 18 天 阶段考试第 4 局部 嵌入式系统和 ARM 介绍第 19 天 嵌入式系统和 ARM 介绍 1. 2. 3. 4. 嵌入式系统概述 ARM硬件平台介绍,ARM 处理器体系构造 嵌入式软件开发流程 试验内容:用 JTAGNAND FLASH第 5 局部 嵌入式 Linux 系统编程第 20 天 嵌入式 Linux 开发环境的搭建 1、2、3、4、5、6、嵌入式穿插编译环境的搭建 超级终端的配置和使用 编译嵌入式 linux内核 制作文件系统 Bo

11、otloader 介绍 试验内容:移植 Linux 内核第 21 天 文件 I/O 编程 1、 2、 3、 4、 5、 6、 Linux 系统调用和用户编程接口 Linux 中文件和文件描述符介绍不带缓存的文件I/O 操作 嵌入式 Linux 串口应用开发 标准 I/O 开发 试验内容:文件读写和上锁,串口读写第 22 天 进程把握开发 1234Linux 下进程概述 Linux 进程把握编程 Linux程第 23 天 进程间通讯 12345号通信的发送和捕获 共享内存的实现 消息队列的实现 试验内容:管道通信编写程序,共享内存试验第 24 天 多线程编程 1Linux 下线程概述 2Linu

12、x 线程实现 3、试验内容:“生产者消费者”试验 第 25 天 嵌入式 Linux 网络编程1、 TCP/IP 协议介绍 2、 Socket 根底编程34Ping 源代码分析 5、试验内容:NTP 协议实现第 26 天 嵌入式 Linux 设备驱动开发 123456Linux设备驱动概述 字符设备驱动编写 块设备驱动编写 中断编程 实例介绍:LCD 驱动和键盘驱动的实现 试验内容:Skull 驱动第 27 天 Qt 图形编程 1GUI 概述 2Qt/Embeded 开发入门 3Qt/Embeded 开发环境 4Qt/Embeded 图形界面编程 5、QT 编写“HELLO WORLD”程序第

13、6 局部 Windows 编程第 28 天 Windows 程序内部运行机制 1.2.3.4.5.6.7.API 与 SDK窗口与句柄 消息与消息队列 WinMain 函数 第一个 windows 程序 消第 29 天 MFC 框架 1.MFCAppWizard2. 基于 MFC 的程序框架剖析 3.窗口类、窗口类对象与窗口 第 30 天 简洁绘图与文本编程 1.MFC 消2. 绘制线条 3. 使用画刷绘图4. 5. 6. 7. 8. 9.绘制连续线条 绘制扇形效果线条 插入字符 窗口重绘 路径 字符输入第 31 天 菜单和对话框 1. 菜单命令响应函数 2. 菜单命令的路由 3.根本菜单操作

14、 4. 动态菜单操作 5. 本例如程序 6. 对话框根本学问7. 对话框的创立和显示 8. 动态创立按钮 9. 控件的访问 10. 对话框伸缩功能的实现 11. 输入焦点的传递 12. 默认按钮的进一步说明第 32 天 绘图把握和文件 1. 简洁绘图 2. 设置对话框 3. 颜色对话框 4. 字体对话框 5. 转变对话框和控件的背景和文本颜色 6. 显示位图 7. 坐标空间和转换 8. 图形的保存和重绘 9. 窗口滚动功能的实现 10. 元文件 11. 兼容设备描述表 网络编程 第 33 天 网络编程1 1. 2. 3. 4. 5. 6.OSI 七层模型和 TCP/IP协议栈 客户机/效劳器的

15、通信方式 物理层和数据链路层 传输层 TCP和 UDP网络编 第 34 天 网络编21.2.3.4.5.6.7. 基于 WinAPISOCKET 编程根底 面对无连接的协议和面对连接的协议 流式协议和数据报协议的区分套接字选项的配置网络层相关技术字节挨次(Byte-order) 基于 MFC 的 CSocket 类的网络编程多线程 第 35 天 多线程1 1. 2. 3. 4. 5.函数 Sleep 函数 使用互斥对象实现线程同步 保证应用程序只有一个实例运行361.2.3.4. 5. 6. 7. 大事对象 关键代码段 线程死锁 互斥对象、时间对象与第 7 局部 WinCE 编程第 37 天

16、Windows CE 操作系统的介绍 1、 2、 3、 4、 5、 6、 7、WindowsCE 的构造功能概览 进程、线程与调度 内存治理 存储治理与文件系统 驱动治理与效劳 用户界面与图形系统 WindowsCE 的应用特性第 38 天 建立 Windows CE1. Windows CE2. 应用程序开发流程3. Windows CE4. 开发工具介绍及比照 第 39 天 平台模拟器的建立和使用 1. 建立模拟器环境 2. 建立硬件开发板环境第 40 天 WinCE 操作系统设计 1. 2. 3. 4.PC 机上运行 WindowsCE Platfrom Builder 集成开发环境 定

17、制 Windows CE 操作系统的一般流程 Windows CEWindows 第 41 天 WindowsCE 窗口消息机制与屏幕输出 1. 建立一个HelloWorld 程序 6、 添加窗口消息响应函数 7、 编写文字输出程序8、 编写屏幕绘图程序 下多线程编程, 第 42 天 WinCE 下多线程编程,文件操作与串口通信 1. 多线程的实现 2. Windows CE 中的文件操作 3. Windows CE 中的串口通信 第 43 天 Windows CE 下 MFC 程序的开发 1.2.3.4. 建立基于 MFC 框架的 WindowsCE 应用程序 编MFC 中的根本Window

18、s CE 下的串口调试工具第 8 局部 MTK 手机软件第 44 天 手机设计根底理论 1、手机软硬件原理介绍 2、手机重要技45 天 MTK 开发环境介绍1、MTK 手机芯片介绍 2、MTK 软件架构分析 第 46 天 MTK 开发工具介绍 1. 2. 3. 4. 烧写程序下载工具 FlashTools 编译工具和关心工具:ADS1.2 ,ADS1.2 update, Active Perl Trace:catcher 手机工程测试工具: META (Mobile Engineering Testing Architecture) 第 47 天 MTK 软件编译及工程源程序介绍第 48 天

19、由浅入深的手机软件开发 1. 2. 3. 4. 5. 6. 7. 生疏编译过程 转变编译参数/宏定义来实现手机配置的转变或设定 更换资源文件实现的手机界面 利用 MTK 关心工具实现手机功能 修改源程序实现简单的功能更改或增加 修改 NVRAM 数据来转变手机的功能/性能功能模块的开发第 49 天 如何在开发板上进展工程实践第 9 局部 结业考试第 50 天 结业考试第 10 局部 工程实战51 第 51100 天 工程开发工程阶段1 前言 工程实战是让学生参与一个真实完整的软件工程的开发,是培训过程中的 一个重要环节。目的在于通过工程开发实践使学生了解软为学生将来的就业打下坚实的基础。 工程

20、实战过程旨在规定统一的工程开发的方法和流程。它是在参考 RUP、敏 捷、SCRUM、CMMI 多种软件开发过程的根底上,结合我司的具体状况以及培训的 特别规律定制而成的,是我司进展软件开发过程治理的企业标准。 工程周期 2 工程周期 学生教学阶段完毕后的五十天时间。 原则上在工程实战阶段担忧排学生面试,也不允许学生自3 工程选择 工程的选择至关重要。由于工程的规模和简单度不能太大,否则我们的工程 将失去把握。目前我们正在建立统一的工程池,以后原则上学生实战工程都从项 目池中猎取。工程池也会定期更维护。整个工程的规模以 450 人天为宜。 4 工程组织 教师应将进入工程实战的学生划分为假设干个小

21、组, 每个小组由 4 到 5 名学生 组成。 每个小组任命一名小组长。 小组长一般由技术和沟通力量工程开发的总负责人,负责工程打算的制定和监控,给各小组配 置足够的资源。教师应经常与小组进步行沟通,了解各个小组的工程进展状况组的工程开发治理。包括本小组内每个成员的工组安排, 协调组内成要的帮助。 5XXIBMRTCRationalTeamConcertIBM JAZZMicrosoft VSTS Visual Studio Team System平台。 HP 测试平台。 6SCRUM 开发过程 Scrum 是灵敏开发中的一种方Scrum中需要研发、创意、尝试错误,所以没有一种固定的流程可以保证

22、工程成功。Scrum 将软件开发团队比较成橄榄球队,有明确的最高目标,生疏X 与技术,具有高度自主权,严密地沟通合作,以高度弹 性解决各种挑战,确保每天、每个阶段都朝向目Scrum 开发流程通常以 30 天(或者更短的一段时间)为一个阶段, 由客户提 供产品的需求规格开头, 开发团队与客户30 15 分钟开会检查 每个成员的进度与打算,了解所患病的困难并设法排解。7 需求分析 需求分析描述系统的功能,定义了一个工程开发小组要做出角色和用例,画出用例图。 建立需求模型,描述角色和用例之间的交互。 排序用例。将收集的用例依据风险大小依次排列,在迭代开发软件需求规格说明书。教师应具体讲解需求 分析的

23、内容,使每个开8 工程打算工程打算就是将系统功能安排到工程开发周期中。 在工程打算中规定每个功 能的开头时间点和完毕时间点。在为功能安排时间段时,必需考虑各个功能之间 的依靠关系,被依靠的功能必需先于依靠功能之前完成。 在重要的时间点设置检查点和里程碑。 开发小组长必需每天检查本小组内项 目开发的进展状况,确保任务的按时完成。教师要全面了解各小组工程开发的进 展状况,对工程进度滞后的小组要催促其加班来完成。 假设在工程开发中,觉察工程打算确有不合理的地方,应9分析和设计 分析和设计就是建立系统架构, 将需求转化到将来系统中析设计中,一般承受层次的设 计思想。一个典型的系统由边界层、把握层、实体

24、层组成。边界层对应系统的用 户界面,把握层对应系统的业务流程把握,而实体层与数据库交互。 在分析和设计阶段,必需供给如下制品:类图间的 关系。然后逐步细化分析类得到设计类,设计类是实现的根底。细化分析类之间 的关系得到设计类之间的关系。用例实现类设计完之后,下一步就是要用这些类来完成用例实现,即通过类的实例之 间的交互实现用例的功能。供给各个用例实现的挨次图。数据库设计完成实体类和数据库表之间的映射, 实体类之间的关系和数据库表之通讯设计完成高层通信协议的设计。对 C/S 系统,必需制定客户端和效劳器之间的系 统协议和各模块间的协议。协议应考虑扩展性。对 C+系统,一般承受构造来定 义协议,并

25、通过 TCP 流的形式传递数据。对 JAVATCP 传递序列化对象。框架 承受JAVA 系统, 可选的 WEB 框架 struts,它实现了把握层的功能。对实体层可以选择 hibernate 和 e,它们实现了实体类和数据模型的映射。对业务流程把握可以选择 Spring 框架。 分析和设计由教师完成。教师在的根底上,对系统 进展分析和设计,并撰写。教师应具体讲解分析和设计的内 容,使每个开发人员能够清楚地理解。10 实现完成编码, 从而实现系统的功能。 在此阶段要完成的工作包括: 小组长依据,将实现的内容安排给小组各成员。 搭建开发环境。包括集成开发环境、工具、框架、数据库环境等。在小组长的带

26、着下,各个小组科学规划代码的存放构造,如名目构造、包结 构。 创立数据库,建立数据库对象。 依据分工,小组成员各自完成类的编码主要是方法和函数的实现。 完成单元测试。单元测试由开发小组中的每个成员单独完成,主要是完成方 法和函数的测试。在单元测试中觉察的问题,由小组成员定位并改正。 小组成员协作完成各个用例的实现。一个用例可能涉及到多个层面。如一个 登录用例可能涉及到界面、把握、数据库等局部。 建立版本效劳器,并将正确同步进展实现阶段的编码。在实现过程完毕时,教师应具体讲 解本次11 测系统的全部用例的测试。 在集成测试中觉察的问题,由相关的小组成开发小组长负责组织小组成员集体定位问题, 并由

27、相关的责任人改正。改正后的版本必需经过回归测试。 12 部署 将每次迭代后产生的可运对 JAVA 系统来说,应用效劳器应安装成产品模式。 C+系统 应供给release 13 版本把握 版本把握是指对本工程的文档和代码进展集中治理和维护。 每个开发小组应当建立一个版本效劳器,由小组长治理。每个小组成员应定 期将代码放到版本效劳器中。由于各个小组成员完成的是且在部署阶段合出完整的一个可运 行的版本。14 工程宣讲 工程宣讲就是每个开发小组的成员向本工程组或者本班级成员具体讲解 项 目的开的实现、 数据库设计以及全部的技术细节,并且要答复教师和其他小组成员提出的问题。 通过此环节的训练,不仅可以使小组各成员了解其他成员所开发的模块,达 到各个模块融合的目的,而且熬炼了学生的表达力量,为学生面试打下根底。15 工程评价 教

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论