01.技术准备
1.1 c语言
检查学习程度:c Primer习题集
1.2 c++
检查学习程度:c++ Primer/ c++ Primer plus习题集
1.3 数据库
要求不高
1.4 应用框架
MFC已经out,最新的QT,对QT基本掌握QT的一个模板类、基础空间、布局、对话框、主窗体、绘图,还有比较新的一个图形视图框架,还有qt的文件编程、qt的网络编程、qt数据库、事件处理、多线程、QML以及最后的一个移植
1.5 Linux编程
非常重要。一是Linux系统基本命令的使用,二是能进行一个基础的Shell编程,很多企业大的项目要求用Shell脚本进行一个部署,特别是嵌入式互联网这一块;三是Linux的文件编程;四是多进程、多线程的使用,常用的六种通讯机制;还有多线程、多线程之间的同步;五是网络编程。
1.6 开发工具
专业开发者的一个标志,以及开发者的一个必备的技能。
版本管理用Git/ svn;编译的管理用makefile,能够写makefile以及cmake的使用;UML的建模;内存检测工具,有静态动态;还有TCP的调试助手,在网络开发当中经常使用,可以检测你到底有没有开发经验;还有串口调试助手,在嵌入式应用开发里必备的;最后一个日志系统的使用,LOG4 cpp系统
02.算法准备
算法无上限,几个标准1:力扣101习题集独立刷完(就业推荐)
03.开发能力准备
3.1 需求分析能力:给定一个设备的通信协议手册,开发一个上位机系统,实现基础的监控功能
3.2 代码构建能力:给你一个JPG图片格式的说明文档,实现图片任意位置的裁剪功能
3.3 错误调试能力:给一套源码,含有多个错误(代码错误,项目配置错误,修改错误,直到成功编译
3.4 代码阅读能力:纯C开源库: libevent 3万行;C++服务器: workflow 3万行
04.八股文准备
就业之前,四大件的八股文,还有一个c/ c++语言本身的八股文
05.简历中的项目准备
方式1:找企业级的开源项目
方式2:跟Rock手把手学习企业级项目