物联网/嵌入式软件工程师
0基础,无需脱产,快速入行高薪热门行业
行业热门,政策风口,人才缺口极大,现在入场时机正好!
上千人检验,数轮迭代的硬核知识体系,助你全能就业!
保姆式教学+简历指导+1V1模拟面试+3次内推,一站直达就业!
22 课程内容
8 个月 教学服务期限
144 小时 视频时长
62 累计学习人数
100% 累计好评度
22 课程内容
8 个月 教学服务期限
70000 手敲代码
2 企业及项目
16+ 实操案例
62 累计学习人数
活动到手价 ¥3099
7天未学可退 ¥4699
点我免费体验
阶段一
阶段二
阶段三
阶段四
阶段五
阶段六
阶段七
阶段八
阶段一:嵌入式开发基础之Linux C语言编程
18门课 /课程总时长:22小时
第1周   嵌入式开发基石-计算机基础与C语言
C语言是嵌入式工程师主流开发语言,它是所有高级语言根基,它决定了一名工程师是否可以在本质上理解开发语言,非常重要,本周带领大家回顾重要计算机基础以及迈进C语言大门,带同学们系统入门。
课程安排:
1、开发环境搭建,在虚拟机中安装ubuntu系统
2、计算机基础知识介绍,了解计算机工作原理,程序如何运行
3、Linux 基础命令,掌握在Linux命令行终端中如何实现文件操作
4、GCC编译器介绍及使用,掌握gcc编译程序的流程,学会使用gcc编译器编译C语言
5、二进制、八进制、十进制、十六进制之间的转换讲解
6、原码、反码、补码,彻底搞清楚数据是如何在计算机中进行存储
7、C语言数据类型,掌握如何使用C语言的数据类型描述实际生活中的各种数据
8、C语言运算符,掌握如何使用C语言的运算符完成实际生活中的各种数据计算
第2周   C语言进阶-编程思想
本周我们重点学习C语言编程思想,掌握模块儿化编程思想,存储、指针操作内存等内容。
课程安排:
1、C语言控制语句,掌握在实际软件开发中如何使用C语言的控制语句做逻辑控制,完成功能需求
2、C语言数组,掌握在多个数据如何在C语言中进行存储
3、C语言函数,掌握模块化编程思想,如何用函数封装功能
4、C语言指针, 掌握C语言的精华,如何使用指针操作内存
第3周   C语言高级进阶
本周进一步是c语言高级内容讲解,彻底掌握C语言函数、指针、结构体、内存管理等进阶内容,为嵌入式工程师打下坚实的语言基础,相信你学完本周,内功也会更加深厚。
课程安排:
1、C语言数组、函数、指针混合运用,重点内容,再次讲解,彻底掌握
2、C语言宏定义,使用宏提高代码的通用性和可读性
3、C语言结构体、联合体、枚举,生活中的复杂对象如人的信息,外卖订单的信息如何用C语言进行描述
4、C语言位域,在运行内存很小的场合,如何节省变量占用的内存空间
5、C语言程序运行内存剖析,彻底搞清楚变量的生命周期,内存的分配和释放
6、C语言static关键字,搞清楚static关键字修饰的全局变量、局部变量、函数的实际场景用法
7、C语言堆区内存管理,掌握在C语言中如何做动态内存管理
第4周   C语言项目实战与《阶段笔试》
本周我们通过项目实践来进一步巩固C语言基础,一来提升学习趣味,二来强化C语言在实际项目中的运用,从而彻底掌握C语言。
课程安排:
项目一:日历系统,通过项目强化C语言的运用,主要功能如下:
1、输入一个年份,显示这一年的日历
2、输入一个年份和月份,显示这一个月的日历
3、输入一个年份,月份,日期,显示这一天是星期几
项目二:俄罗斯方块游戏,通过项目强化C语言的运用,掌握游戏开发编程思想,主要功能如下 :
1、在终端上面显示俄罗斯方块
2、通过按键控制俄罗斯方块变形
3、摞在一起的俄罗斯方块自动消除
4、随机出现俄罗斯方块
5、游戏速度随等级自动加快
6、实时显示玩家的游戏得分
《第一阶段企业笔试》
1、C语言基础语法默写,从企业面试官的角度,考察对C语言语法掌握的情况
2、C语言企业笔试题考试及讲解,从企业的角度考察C语言知识,让同学提前了解企业在人才招聘环节,对C语言的考察点
阶段二:嵌入式开发基础之数据结构
10门课 /课程总时长:15小时
第5周   数据结构-线性结构
在嵌入式开发工程中,任何一个软件系统的开发都离不开数据结构相关的算法,数据结构也是大厂在人才招招聘环节主要考察点,掌握它非常重要,本周我们先从线性结构讲起,用C语言实现,再一次夯实C语言基础。
课程安排:
1、顺序表,使用数组来存放数据,实现数据的增删改查等操作
2、链表,使用动态内存分配节点来存放数据,实现数据的增删改查等操作
3、栈,数据先进后出,实现顺序结构和链式结构的栈,实现出栈和入栈等操作
4、队列,数据先进先出,实现顺序结构和链式结构的队列,实现入队列和出队列等操作
第6周   数据结构-非线性结构
本周我们讲解非线性结构、图数据结构、哈希表等更多数据结构内容,带领同学们0到1实现。
课程安排:
1、二叉树,讲解二叉树的创建、递归遍历算法和非递归遍历算法,以及哈夫曼树编解码算法
2、图,讲解图的创建,深度遍历和广度遍历算法,以及图中最短路径的遍历算法
3、哈希表,讲解使用哈希表进行快速的数据查询,以及哈希算法在冲突的时候解决方法
第7周   排序与复杂度
本周讲解排序与算法的时间、空间复杂度内容,从而学会分析一个算法的好坏。
课程安排:
1、排序,讲解常用的冒泡、选择、快速排序、堆排序等常用排序算法
2、时间复杂度和空间复杂度,分析一个算法的好坏衡量方法
第8周   数据结构项目实战
本周我们安排了一个学生管理系统小型项目进行练手,让同学们再次熟悉和掌握数据结构相关算法的实际场景运用。
课程安排:
1、基于VT100的菜单设计
2、学生信息录入系统
3、学生信息查询
4、学生信息修改
5、学生信息排序
6、学生信息删除
阶段三:嵌入式开发基础之Linux Shell和Makefile
4门课 /课程总时长:6小时
第9周   Shell编程和Makefile工程管理
在实际嵌入式Linux平台项目开发过程中,由于涉及到的开发平台众多,基本都是通过命令行操作,工程师需要掌握Linux下常用命令和shell脚本编写以及Makefile管理工程文件进行自动化编译,这也是我们本周的重点内容。
课程安排:
1、Linux 常用命令,讲解文件管理、用户管理、网络管理、磁盘管理等相关的命令
2、awk和sed命令,强大的数据按列处理和按行处理命令
3、shell脚本编程,胶水融合剂,让固定的流程自动化起来
4、Makefile多文件工程管理,完成代码的自动化编译,掌握Makefile的编写方法是嵌入式工程师必须具备的能力
5、阶段企业笔试-常用命令默写,从企业面试的角度,考察学员对Linux常用命令的掌握
6、阶段企业笔试-从企业笔试的角度考察学员对shell脚本和Makefile的掌握情况,让学员提前了解企业对工程师在shell和Makefile两方面的要求
阶段四:嵌入式软件开发之Linux 文件操作
5门课 /课程总时长:6小时
第10周   Linux文件IO和标准IO
在嵌入式开发过程中,涉及到的主流操作系统是Linux系统,在Linux系统中设计理念是"一切皆文件",所以掌握Linux下文件操作非常重要,本周我们先从文件IO和标准IO讲起。
课程安排:
1、Linux系统调用实现原理讲解,掌握系统调用的工作原理,理解printf函数是如何将字符串输出到屏幕
2、基于文件描述符的文件打开、读写、关闭等操作,掌握Linux下文件的操作API,并熟练使用这些API完成文件操作
3、基于标准C库的文件打开、读写、关闭等操作,理解标准C库函数和系统调用之间的区别和联系,掌握如何使用标准C库API完成文件操作
4、动态库、静态库制作和使用,理解gcc编译器链接库的工作原理和Linux操作系统如何加载动态库,掌握Linux下动态库和静态库的制作和使用
第11周   Linux下文件操作项目实践与阶段评测
实现一个基础的shell程序,能完成ls 和 cp功能,通过实现ls命令和cp命令功能,再次强化学员对Linux下文件操作和常用系统调用API使用
课程安排:
1、输入命令解析命令参数
2、根据输入的ls命令,读取目录下的文件属性信息,并显示
3、根据输入的cp命令,完成文件拷贝和递归目录下的所有文件拷贝
4、笔试安排:常用文件操作函数默写,从企业面试的角度,考察学员对Linux下常用文件操作API函数掌握情况
阶段五:嵌入式软件开发之 Linux 多进程、多线程、IO模型
13门课 /课程总时长:17小时
第12周   Linux 多进程、多线程、IO模型
嵌入式开发的主流操作系统是Linux操作系统,这一阶段由一线12年经验的高级工程师进行授课,主要让学员掌握Linux 下多线程、多进程编程思想和常用的IO模型,让自己开发的软件能充分发挥多核CPU优势,提升软件性能。
课程安排:
1、进程的概念,理解在Linux系统中进程是什么
2、进程相关的命令,掌握Linux系统中进程信息的查看
3、进程创建,掌握Linux系统中如何在一个程序中创建多个进程
4、进程间通信,掌握Linux系统中常用的进程间通信方法,如:管道、信号、5、消息队列、共享内存、信号灯集等
6、进程间同步,理解同步的概念,掌握Linux系统中进程间同步的方式
7、线程的概念,理解在Linux系统中线程是什么
8、线程相关的命令,掌握Linux系统中线程信息的查看
9、线程创建,掌握Linux系统中如何在一个程序中创建多个线程
10、线程间通信,掌握Linux系统中线程间通信的方法
11、线程间同步,掌握Linux系统中线程间同步机制,如:信号量、条件变量、互斥锁等
12、阻塞IO,理解阻塞IO的概念及工作原理
13、非阻塞IO,理解非阻塞IO的概念及工作原理
14、IO多路复用,理解IO多路复用的概念及工作原理,掌握Linux下IO多路复用的方法,如:select,poll,epoll等。
第13周   Linux 项目实战-实现并发服务器模型与企业笔试
通过上周的学习我们掌握了Linux 多进程、多线程、IO模型,本周通过带同学们0到1实现一个并发服务器模型彻底掌握嵌入式中重要的Linux知识实践。
课程安排:
1、基于多进程、多线程实现并发服务器模型,主要功能如下:
2、服务器进程创建线程池,维护线程池中线程创建和销毁,创建子进程反馈3、数据处理结果
4、服务器进程创建消息队列,从消息队列获取其他客服端进程发来的任务数据,并从线程池中取线程处理任务
5、线程池中的任务线程处理完客户端的数据后,通知服务器进程子,由服务器子进程共享内存的方式获取处理的数据,然后反馈给客户端进程
6、客户端进程通过消息队列提交任务请求,通过共享内存获取任务处理结果
7、企业笔试:常用Linux操作系统知识默写,从企业面试的角度,考察学员对Linux操作系统多进程、多线程、IO模型的理解
阶段六:嵌入式软件开发之Linux 网络编程
19门课 /课程总时长:17小时
第14周   网络基础和UDP Socket编程
在物联网的时代,任何一款嵌入式产品都需要具备网络功能进行万物互联,掌握网络知识非常重要,从本周开始我们会从网络的基础知识讲起到带你走进Linux 网络编程的大门。
课程安排:
1、IP地址、子网掩码、默认网关、DNS服务器,掌握网络的基础知识,理解常用网络通信参数的含义
2、数据包内网、外网传输方式,掌握局域网是如何搭建,理解交换机和路由器的工作原理,掌握数据包是如何在网络中进行传输
3、网络模型,理解网络协议栈的设计原理,掌握网络模型的分层含义
4、一帧数据包格式,通过分析网络数据包个格式,掌握网络通信的原理
5、TCP协议,掌握TCP协议的三次握手、四次挥手、数据包传输的原理
6、UDP协议,掌握UDP协议的特点,对比TCP协议的不同,理解TCP和UDP协议的各自优缺点
7、网络通信中常用协议,掌握网络通信中常用的一些通信协议使用场景和特点
8、udp客户端实现,掌握Linux系统中socket在udp客户端的使用及通信方法
9、udp服务器端实现,掌握Linux系统中socket在udp服务器端的使用及通信方法
10、udp并发服务器实现,掌握并发服务器的设计思想和在Linux系统中如何使用多进程、多线程的思想实现udp并发无服务器
11、基于udp协议的局域网聊天室软件开发,掌握多人聊天环境中群聊的实现思想
第15周   TCP Socket编程和WireShark抓包分析
本周继续深入网络编程的TCP Socket编程和WireShark抓包分析内容,让同学们更深层次的理解TCP Socket、TCP和UDP协议。 课程安排:
课程安排:
1、TCP客户端实现, 掌握Linux系统中socket在tcp客户端的使用及通信方法
2、TCP服务器端实现, 掌握Linux系统中socket在tcp服务器端的使用及通信方法
3、TCP粘包分析,理解TCP粘包原理,掌握TCP粘包情况下如何正确解析数据包
4、TCP并发服务器实现,掌握并发服务器的设计思想和在Linux系统中如何使用多进程、多线程的思想实现TCP并发无服务器
5、基于TCP协议的文件传输服务器软件开发,通过文件的上传和下载功能,再次强化tcp socket的使用
6、WireShark抓包工具使用,学会抓包工具的使用,并使用抓包工具详细分析TCP协议和UDP协议的具体内容,让学员深层次理解TCP和UDP协议
第16周   网络编程项目实战-网络视频监控与企业笔试
本周通过实战网络视频监控项目,让学员掌握Linux网络编程知识在实际工程场景中的运用,掌握在Linux系统中如何获取视频流、编解码视频流,传输视频流,并掌握HTTP协议
课程安排:
1、V4L2编程,在Linux系统中获取摄像头数据
2、HTTP协议,掌握HTTP协议工作原理,并通过编程实现HTTP协议数据传输
3、libjpg库使用, 掌握YUYV数据格式如何压缩成jpeg数据格式进行传输
4、远程视频监控,实现具体的远程视频监控功能,并通过浏览器查看视频流
5、企业笔试:常用网络基础知识默写,从企业面试角度,考察学员对网络基础知识掌握情况
阶段七:嵌入式软件开发之Linux C++编程
50门课 /课程总时长:21小时
第17周   从C到C++
嵌入式开发中,C和C++不分家,多掌握一种开发语言就业机会也更多,C++语言是所有编程语言中最复杂的一门语言,掌握的C++语言也就掌握了其他编程语言。本周开始带领同学们从主要从C语言角度剖析C++。
课程安排:
1、C++与C的不同地方,讲解C++在C的基础上扩展了哪些语法
2、命名空间,分析C语言语法的缺点,理解C++为什么要命名空间
3、引用,理解引用的本质,掌握引用和指针的不同
4、函数重载,理解为什么可以进行函数重载,编译器是如何对函数名进行处理的
5、默认值参数,理解默认值参数函数的特点
6、内联,理解内联为什么可以提高程序的运行效率
7、封装,掌握面向对象的编程思想,如何通过封装的思想描述一个对象
8、继承,掌握如何通过继承实现代码的复用,已经继承使用的场合
9、多态,掌握多态的思想,如何做到一个接口多种实现,在运行时决定对象的行为
10、泛型编程,掌握泛型编程的思想,如何写出通用的代码,做到代码的复用
11、STL容器,掌握C++标准STL容器提供的API使用
第18周   软件设计模式与C++11新特性
常用设计模式的思想是必须掌握的,本周带同学们学习C++的设计模式通用思想,通过一线技术总监授课教学更深层次理解设计模式和C++11新特性。
课程安排:
1、智能指针,掌握如何使用智能指针做到内存自动释放,减少内存泄漏的分享
2、lambda表达式,掌握在C++中如何使用匿名函数,实现快捷编程
3、auto自动推导,掌握C++11中提供的自动类型推导含义,避免编码过程中关注复杂的类型,实现快捷编程
4、基于范围for循环,掌握C++11标准的新型for循环,实现快捷编程
5、右值引用,理解左值和右值得概率,掌握右值引用的使用场景
6、move移动语义,掌握如何通过move移动语义,实现代码高效率运行
7、单例,理解单例的设计模式编程思想,掌握饿汉式和懒汉式两种单例的实现方法
8、工厂,理解工厂设计模式编程思想,掌握简单工厂、工厂方法、抽象工厂的实现方法
9、代理,理解代理设计模式的编程思想,掌握代理设计模式的实现方法
10、适配器,理解适配器设计模式的编程思想,掌握适配器设计模式的实现方法
11、观察者,理解观察者模式的编程思想,掌握观察者设计模式的实现方法
12、设计模式遵从原则,理解设计模式遵从的通用思想,更深层次理解设计模式
第19周   项目实战-C++语言实现五子棋游戏与企业笔试
本周带同学们C++语言实现五子棋游戏,融合设计模式的思想,在实战中理解C++语言的使用以及设计模式运用。项目中会运用到网络的知识,再次强化学员对网络编程的知识的掌握,为之后的嵌入式项目开发打下坚实基础。
课程安排:
1、五子棋游戏界面绘制
2、黑白棋子显示
3、五星连珠算法实现
4、本地双人对战实现
5、网络双人对战实现
6、企业笔试:C++常用语法点默写,从企业面试角度,考察学员对C++语言掌握情况
阶段八:嵌入式软件开发之项目实战篇
27门课 /课程总时长:40小时
第20周   嵌入式产品人机交互必备-QT框架
在嵌入式产品中,也会涉及到人机交互界面,QT的免费,开源,夸平台特性,成为了很多嵌入式产品人机交互界面软件开发的不二之选。本周带同学们从0开始讲解QT的各种功能和操作,掌握QT框架开发。
课程安排:
1、信号与槽,掌握信号与槽的实现原理及使用方法,这是QT的精华实现
2、事件,理解事件的含义,掌握常用事件在Qt软件开发中的处理方法
3、Qt界面设计,掌握软件界面布局,掌握QT中的常用软件布局管理的使用
4、QSS界面美化,掌握QT的样式设置,如何通过样式改变QT开发软件的外观
5、Qt 文件操作,掌握QT中文件操作的方式
6、Qt 多线程,掌握QT中创建线程的方法,理解夸线程的信号与槽通信原理
7、Qt 网络编程,掌握QT中网络编程的实现方法,让自己开发的软件具备网络通信的能力
8、Qt 数据库编程,理解数据库概率,掌握在QT中如何实现数据库操作
9、Qt 图形与图像,掌握QT中图形和图像的处理方法
10、QML,掌握在QT中如何使用QML实现界面的快捷开发
第21周   嵌入式项目1-QT开发音乐播放器
本周我们用QT开发一款在线云音乐播放器,从软件界面设计美化到软件功能实现,最后到软件发布。让学员掌握一款软件开发到上线的全流程,同时通过软件开发强化学员对QT知识的掌握,掌握嵌入式人机交互利器。
课程安排:
1、云音乐播放器界面设计及美化
2、在线搜歌显示歌曲信息
3、歌曲专辑图片动画显示
4、歌词解析同步歌曲进度实时显示
5、爱心歌曲下载,数据库存储及本地显示
6、 企业笔试:QT常用类功能默写, 从企业面试角度,考察学员对QT掌握情况
第22周   嵌入式项目2-人脸指纹识别考勤机
实现指纹及人脸考勤功能,包含指纹模块及人脸模块的控制,语音播报提示,数据库考勤管理,考勤数据可视化分析统计及导出。
课程安排:
1、实现指纹模块的控制;
2、指纹模块调试工具的编写;
3、数据库的创建,实现考勤数据的增删改查;
4、考勤数据的可视化图表显示及统计分析;
5、人脸模块的控制;
6、人脸图像的判定及识别;
7、人脸考勤及指纹考勤的统一接口;

学习咨询

选课、学习遇到问题?
扫码添加指导老师 1V1 帮助你!

扫码加顾问老师 立即咨询

意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师