本2硕9电子科学专业,想走linux或是嵌入式,要具体学哪些技术

news/2025/2/21 8:38:00

​今天给大家分享的是一位粉丝的提问,本2硕9电子科学专业,想走linux或是嵌入式,要具体学哪些技术

接下来把粉丝的具体提问和我的回复分享给大家,希望也能给一些类似情况的小伙伴一些启发和帮助。

同学提问:

你好,我本2硕9,,电子科学专业,9月入学,会c,会51/32开发,做过几个小项目,不会linux和C++,以后想走linux或者嵌入式软件,请问研究生期间可以做些什么?

Yt回答:

其实你可以看到这个,一个本科211啊,研究生是985,你看这典型的本科毕业完之后就会点51和STM32,几乎写的代码,就是没有做过一些可能大的工程是没有的,就是这种很小的项目。

首先我们在这点评的这个过程中,其实你的现象应该不止你一个人,应该是有很多的朋友也会有类似的情况,特别是以电子通信包括自动化,在本科毕业的时候就会点51或者STM32,或者说会焊点板,那其实我认为他很难后面去适配到开发岗位,因为他离开发很远,远到什么程度,一个在南极一个在北极,就这样情况,因为这里面你会点c,首先不是说c不行,也不是说c找不到工作也不是,但是你应用的场景是不对的。首先51和STM 32这种东西毕竟啊它有自己使用场景,但是确确实实它很难做一些很大的项目。

那这里面不会linux和c/c++以后想走linux和走嵌入式,请问研究生可以做什么,请注意抓住linux这一点,如果你后面想去一个好的企业,或者说你后面想去一个这种薪资比较高的,你可以以linux为核心,如果你后面不想走软开发这条路,你比如想走点这种MCU,那很有可能有个岗位就是FAE。也就是说如果你想走开发的岗位请以linux为核心,linuxc和c++。

那有人就问Windows行不行,Windows不是不行,Windows做的就是桌面开发,因为Windows主要就是做桌面开发,比如像这种包括QQ的客户端啊,包括像微信的客户端,或者是像这种OBS录屏啊这种,包括WPS啊这种桌面软件,那其实这种方向你发现,做的时候他是很难满足一个人对技术有追求的人他的欲望的,因为这种纯桌面开发他不是说没有技术,他而是说它慢慢做着让你感觉到没有意思,让你感觉到没有想象空间,他很难给你一个很大的想象空间,那其实为什么很多人做后端也是这样的,因为他能够满足很多人对于技术的一种想象,有研究的空间也就是在这个阶段的时候请走linux,以linux c和c++,就是这个语言我认为到不是关键。

你不用说比如说很多朋友在学c++的时候,很多人想以c和c++语言,以c++入门的时候,以c++开始,首先学语言怎么学呢,就拿一本c++primer然后开始看,从前面的私有变量、私有成员变量、公有成员变量、保护变量在到什么成员类什么意思,多态继承什么意思,包括什么模板怎么怎么用,你再研究的就是STL,STL你比如说vector、list、set、map、hash,然后再到什么c++新特性、什么lambda函数、智能指针等等,其实各位朋友你不要这样,这样你学不明白的,并且他的时间会花费的很长,你就是把这些东西看完以后,其实首先不论你能不能看会,首先你看完以后时间很久,而且你肯定看不会,为什么我能够这么肯定呢,因为c++那个东西我也学过呀,你要发现到头来是什么,我是认为核心是以项目为主,你能够去多写代码,用你所学的东西去做一些东西出来不断去迭代,自然而然你就发现对语言的理解你是不一样的。

就比如说你看完c++primer看完STL再看c++新特性,看完之后你会发现还有操作系统啊还有数据结构还有网络,你要发现408看完之后发现还是个大黑框,看完之后你做点界面结果还是才QT,为什么不直接从QT开始,不懂的语法你去查反过来去查,以项目为核心,不懂得呢去查其他的书籍也行。

其实来说可能每个人他接受知识和内化知识的情况是不一样的,但是我认为计算机作为一门实践性很强的科学啊,他还是主要以实践,你能够做出东西来不断的去使用,自然而然你就会有一套自己的体会,会形成一种自己的本能。如果你比如带着去一种考试的心态,能不能给我一些八股文我背一背就可以了,大家你会发现那个你是学不明白的,你姿势不对。包括有些女生在学编程的时候靠背啊,就跟学英语一样if  if  for  for,这个学法来说我认为他可能比较极端,不适合。

总结:

一、核心方向选择:Linux C/C++开发

  1. 放弃单片机/桌面开发

    • 单片机局限:51/STM32项目规模小,技术天花板低,难以匹配大厂岗位需求。
    • 桌面开发瓶颈:Windows客户端开发(如QQ、WPS)技术迭代慢,职业成长空间有限。
  2. 聚焦Linux开发

    • 岗位优势:Linux是嵌入式/云计算/服务器开发的核心,薪资高(应届20-40W),技术壁垒强。
    • 技术栈组合:Linux系统编程 + C++(高性能场景) + 嵌入式框架(如ROS)。

二、研究生阶段学习规划

1. 基础能力补齐(3-6个月)
  • Linux系统编程
    • 重点:进程/线程、信号、文件IO、Socket网络编程。
    • 书籍:《Unix环境高级编程》《Linux系统编程手册》。
  • C++实战速成
    • 不推荐死磕语法:跳过C++ Primer理论,直接通过项目学(如STL容器、智能指针)。
    • 项目驱动:用C++实现高并发服务器(参考Nginx)、参与开源项目(如Redis)。
2. 项目实战(6-12个月)
  • 方向1:嵌入式Linux开发
    • 核心内容:Bootloader移植、驱动开发(如SPI/I2C)、Yocto构建系统。
    • 项目示例
      • 移植Linux到树莓派/IMX6ULL开发板,实现传感器数据采集(温湿度+图像)。
      • 开发物联网网关:基于MQTT协议同步数据至云端(阿里云IoT)。
  • 方向2:高性能服务开发
    • 核心内容:分布式架构、协程框架、内存池优化。
    • 项目示例
      • 实现简易版Redis(支持持久化、集群通信)。
      • 开发流媒体服务器(支持RTMP/HLS协议)。

三、避坑指南

  1. 勿沉迷语法:C++以能用为目标,非研究标准细节(如右值引用模板推导)。
  2. 慎选纯学术方向:除非导师课题与工业界强相关(如实时操作系统),否则以就业技能优先。

计算机相关专业就业求职学习路线/offer选择/职业规划建议
工种浩:程序员yt (学习就业困惑?我们来为你答疑解惑!)免费投稿 投稿必回


http://www.niftyadmin.cn/n/5860546.html

相关文章

Windows 快速搭建C++开发环境,安装C++、CMake、QT、Visual Studio、Setup Factory

安装C 简介 Windows 版的 GCC 有三个选择: CygwinMinGWmingw-w64 Cygwin、MinGW 和 mingw-w64 都是在 Windows 操作系统上运行的工具集,用于在 Windows 环境下进行开发和编译。 Cygwin 是一个在 Windows 上运行的开源项目,旨在提供类Uni…

嵌入式工业级显示器在环保垃圾柜设备中发挥着至关重要的作用

嵌入式工业级显示器在环保垃圾柜设备中发挥着至关重要的作用。以下是其具体作用的分析: 一、提供交互界面 嵌入式工业级显示器为环保垃圾柜设备提供了一个直观、易用的交互界面。用户可以通过触摸屏幕进行操作,如选择垃圾分类类别、查看投放指南、查询…

第4章 信息系统架构(四)

4.6 网络架构 网络是信息技术架构中的基础,不仅是用户请求和获取IT信息资源服务的通道,同时也是 信息系统架构中各类资源融合和调度的枢纽。特别是云计算、大数据和移动互联网技术飞速发 展的今天,网络更加成为实现这些技术跨越的重要环节。…

Hadoop-HA(高可用)机制

首先:在每个NAMENODE上都会有一个zkfc(zookeeper failover colltroller) ,负责这两个的状态管理。哪个是(active和standby)然后写入zk集群里面。同时监控自己所在的机器是否正常。一旦active上zkfc的发现异…

【零基础实战】用STM32玩转DRV8313电机驱动:从原理到无人机/机器人控制

系列文章目录 1.元件基础 2.电路设计 3.PCB设计 4.元件焊接 5.板子调试 6.程序设计 7.算法学习 8.编写exe 9.检测标准 10.项目举例 11.职业规划 文章目录 一、为什么选择STM32DRV8313?1.1 硬件组合优势 二、硬件连接全图解2.1 核心引脚连接(图示描述…

Rust 未来会成为主流的编程语言吗?

Rust是由Mozilla团队主导开发的编程语言,首次亮相是在2010年。自发布以来,Rust凭借其内存安全性、出色的性能和对并发操作的支持,逐渐吸引了众多开发者的关注。据Stack Overflow的2021年调查数据显示,Rust连续多年被开发者评为最喜…

缓存-算法

缓存算法详解 缓存算法用于在缓存容量不足时决定哪些数据应被淘汰,以最大化缓存命中率。以下是常见算法的深入解析、实现细节及优化策略。 一、常见缓存算法概览 算法名称核心思想适用场景复杂度优缺点FIFO淘汰最早进入缓存的数据顺序访问模式O(1)实现简单&#x…

深入了解XML:初学者的全面指南

深入了解XML:初学者的全面指南 在当今数字化的世界中,数据的存储和传输至关重要。XML,即可扩展标记语言(eXtensible Markup Language),作为一种强大的工具,在这方面发挥着重要作用。本文将为初…