求知 文章 文库 Lib 视频 Code iProcess 课程 认证 咨询 工具 火云堂 讲座吧   成长之路  
会员   
 
 
 
全部课程 | 技术学院 | 管理学院 | 嵌入式学院 | 在线学院  
成功案例   品质保证  电话 English
追随技术信仰

随时听讲座
每天看新闻
 
   
成功案例
某轨道交 C/C++设计模式
华为 C++高级编程
丹佛斯 C++高级编程
北大方正 C语言单元测试实践
罗克韦尔 C++单元测试+重
罗克韦尔 C++单元测试+重
中国石油 C++单元测试

相关课程  
C++并发处理+单元测试
C++程序开发
C++高级编程
C/C++开发
C++设计模式
C/C++单元测试
 

嵌入式C高质量编程         
   
特邀讲师:讲师为国内知名嵌入式系统开发专家,曾担任全球著名芯片企业研发中心Driver/OS部门技术经理
时间地点:北京、上海、深圳根据报名开班
课程费用:5000元/人 (学生3折),详见 公开课学习手册
企业内训:可以根据企业需求,定制内训,详见 内训学习手册

《开发工程师》  认证方式  
1.知识:权威知识考试;
2.技能:真实案例实践考评;
3.经验:工作经验审核;
4.素养:未来发展潜力的评估。
 

 本课程围绕嵌入式编程,详细解析C语言的有关嵌入式的关键特性,结合嵌入式软件特点,讲解如何实现代码功能的同时,关注代码的质量:高性能、可靠、可测试,通过相关技能和编程范式建立代码质量,通过不断的评审、不断地评审、测试识别代码缺陷,通过重构改善设计质量。

 
培训目标:

通过本课程,学员可以:

  • 了解C语言的嵌入式开发特性
  • 了解和性能有关的编码要素
  • 了解嵌入式C程序的常见组织风格
  • 了解如何采用C进行面向编程
  • 掌握如何建立程序的性能
  • 掌握如何进行可靠性设计、监测并处理可靠性问题
  • 掌握如何建立可测试性,
  • 掌握如何进行嵌入式C白盒测试
  • 掌握如何进行嵌入式C代码评审,
  • 掌握如何定位嵌入式C质量缺陷并进行代码重构
培训对象:嵌入式开发工程师,C程序员
培训对象:嵌入式开发工程师,C程序员
授课方式: 定制课程 + 案例讲解 + 小组讨论,60%案例讲解,40%实践演练
培训内容:2天
嵌入式C关键特性
嵌入式C编程基础
  • 变量与内存分配机制
  • 函数与调用原理
  • 条件控制语句
  • 常量和变量
  • 指针和函数指针
  • 设计中断函数
  • 关键字static,extern,volatile,inline
  • 位操作的应用
  • 结构体中的位域
嵌入式C编码风格
  • 变量、函数、宏的命名
  • 代码排版与布局
  • 注释的策略
  • indent工具
  • 为代码编写文档
嵌入式C性能优化
  • 使用宏和inline
  • 使用寄存器变量
  • 内嵌汇编
  • 利用硬件特性
  • 循环展开
  • 使用查找表
  • 紧凑的C代码并不能保证得到高效的机器代码
  • 编译优化
嵌入式C软件结构
嵌入式C软件模块与模块划分
  • 模块划分原则
  • 源代码文件和目录的组织
  • 硬件驱动模块
  • 软件功能模块
  • 提供API
  • 头文件
  • 全局变量
  • 主循环与中断
  • 软件的分层结构
嵌入式C函数
  • 一个函数只做一件事,不要编写多种功能集于一身的函数
  • 明确地定义函数的参数
  • 避免比尔类型参数
  • 编写函数使其在给定有效的输入情况下不会失败
  • 函数不依赖于另一个函数的内部细节
  • 函数要小且容易测试
  • 函数内部代码块
嵌入式C的面向对象
  • 用struct来模拟class
  • 封装
  • 继承
  • 重载
  • 数据结构的抽象
代码质量
嵌入式C防御性编程
  • 防御性代码的风格
  • 编译警告开关的使用
  • 预计所有可能的异常
  • 检查所有的返回值
  • 审慎处理内存资源
  • 变量声明策略
  • 审慎地进行强制转换
  • 尽量用可移植的数据类型
  • 使用lint来查出编译程序漏掉的错误
  • 使用断言
嵌入式C白盒测试
  • TDD与单元测试
  • 单元测试与Debug
  • 单元测试用例设计
  • 即使测试代码会影响进度,也要坚持测试代码
  • 测试代码的责任不在测试员身上,而是程序员自己的责任
嵌入式C代码评审
  • 代码评审的规范
  • 代码评审的组织方式
  • 代码评审的内容
  • 结合配置管理强制代码评审
嵌入式C代码重构
  • 代码重构的原则
  • 重新命名函数
  • 提炼函数
  • 提炼判断条件
  • 简化函数参数
  • 解除全局变量的噩梦
  • 避免函数传递中的隐形bug
  • 调整函数位置
如果课程内容不符合您的期望,可以定制内训
 
 
其他人还看了课程
数据分析与挖掘  
红帽认证  
企业战略与变革管理  
软件架构设计方法  
定制内训



最新活动计划
C++高级编程 12-25 [线上]
白盒测试技术与工具实践 12-24[线上]
LLM大模型应用与项目构建 12-26[特惠]
需求分析最佳实践与沙盘演练 1-6[线上]
SysML建模专家 1-16[北京]
UAF架构体系与实践 1-22[北京]