本2硕9电子科学专业,想走linux或是嵌入式,要具体学哪些技术
今天给大家分享的是一位粉丝的提问,本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++开发
-
放弃单片机/桌面开发:
- 单片机局限:51/STM32项目规模小,技术天花板低,难以匹配大厂岗位需求。
- 桌面开发瓶颈:Windows客户端开发(如QQ、WPS)技术迭代慢,职业成长空间有限。
-
聚焦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协议)。
三、避坑指南
- 勿沉迷语法:C++以能用为目标,非研究标准细节(如右值引用模板推导)。
- 慎选纯学术方向:除非导师课题与工业界强相关(如实时操作系统),否则以就业技能优先。
计算机相关专业就业求职学习路线/offer选择/职业规划建议
工种浩:程序员yt (学习就业困惑?我们来为你答疑解惑!)免费投稿 投稿必回
相关文章:
本2硕9电子科学专业,想走linux或是嵌入式,要具体学哪些技术
今天给大家分享的是一位粉丝的提问,本2硕9电子科学专业,想走linux或是嵌入式,要具体学哪些技术 接下来把粉丝的具体提问和我的回复分享给大家,希望也能给一些类似情况的小伙伴一些启发和帮助。 同学提问: 你好&…...

从混沌到有序:一个数据血缘分析的进化故事
从混沌到有序:一个数据血缘分析的进化故事 从混沌到有序的数据治理之路数据血缘的建设方法和实践路径数据血缘的实践场景和未来趋势。 数据就像流淌在企业血管中的血液,它的每一次流动、每一次转化都留下独特的印记。 作为数据工程师,我曾困惑…...

从猜想终结到算法革新,弹性哈希开启数据存储新篇章
目录 哈希表的前世今生基本原理从传统到现代:哈希表的演变历程 安德鲁 克拉皮文及其团队的创作历程弹性哈希详解基本原理优点技术细节 漏斗哈希解析基本原理优点技术细节 新算法的实际应用案例电子商务推荐系统金融交易监控系统社交媒体内容过滤物联网设备管理 结论…...
先进制造aps专题三十 用免费生产排程软件isuperaps进行长期生产计划制定
isuperaps是生产排产软件,同时也可以用来制定长期生产计划 通过isuperaps制定长期生产计划,一个指导原则就是大bom, 单工序,大bom的意思是bom中只包含主要的半成品和原料,单工序的意思是半成品/产品生产以工厂或车间为基本生产单…...

实验-安装Proteus
Ver V0.0 250222:安装Proteus8.17SP4 说明 (1)如果有找到Proteus8.17最后版本SP5,再更新了; (2)8.17是8X最后一个大版本,后面是Proteus9。 内容 下载: 链接:https…...

最新版DeepSeek保姆级安装教程:本地部署+避坑指南
大家好,我是冰河~~ 本文旨在提供一个全面且详细的DeepSeek本地部署指南,帮助大家在自己的设备上成功运行DeepSeek模型。无论你是AI领域的初学者还是经验丰富的开发者,都能通过本文的指导,轻松完成DeepSeek的本地部署。 一、本地…...

【学习笔记】Cadence电子设计全流程(三)Capture CIS 原理图绘制(1-8)
【学习笔记】Cadence电子设计全流程(三)Capture CIS 原理图绘制(1) 3.1 原理图设计思路3.2 Cadence 原理图的新建3.3 在原理图中添加元器件3.4 元器件对齐3.5 原理图元器件信号联通(走线)3.6 OrCAD Capture…...

3damx 发动机活塞运动动画
使用HD解算器绑定:点(绑定的最终目标对象)→曲柄→活塞(子控父,反向解算) 点:绑定到轮子上的连接点...
JAVA 集成 ElasticSearch
目录 ElasticSearch Client Java REST Client Dependencies Initialization RequestOptions 测试 ElasticSearch Client 9300端口 :TCP协议,性能较高,ES集群内部节点之间通过9300进行通讯。 Java Transport Client (7.x 已废…...

AMBA-CHI协议详解(十九)
文章目录 4.6 Silent cache state transitions4.7 Cache state transitions at a Requester4.7.1 Read request transactions4.7.2 Dataless request transactions4.7.3 Write request transactions4.7.4 Atomic transactions4.7.5 Other request transactions 4.6 Silent cach…...
如何把windows机器作为SSH客户端免密登录
要在Windows机器上配置免密SSH登录,你需要生成一个SSH密钥对,并将公钥添加到你要登录的服务器的~/.ssh/authorized_keys文件中。以下是具体步骤: 在Windows上生成SSH密钥对 打开PowerShell或命令提示符: 你可以通过搜索栏输入“P…...

sklearn中的决策树-分类树:重要参数
分类树 sklearn.tree.DecisionTreeClassifier sklearn.tree.DecisionTreeClassifier (criterion’gini’ # 不纯度计算方法, splitter’best’ # best & random, max_depthNone # 树最大深度, min_samples_split2 # 当前节点可划分最少样本数, min_samples_leaf1 # 子节点最…...

25林业研究生复试面试问题汇总 林业专业知识问题很全! 林业复试全流程攻略 林业考研复试真题汇总
25 林业考研复试,专业面试咋准备?学姐来支招! 宝子们,一提到林业考研复试面试,是不是就慌得不行,感觉老师会扔出一堆超难的问题?别怕别怕,其实林业考研复试就那么些套路,…...

DeepSeek最新开源动态:核心技术公布
2月21日午间,DeepSeek在社交平台X发文称,从下周开始,他们将开源5个代码库,以完全透明的方式与全球开发者社区分享他们的研究进展。并将这一计划定义为“Open Source Week”。 DeepSeek表示,即将开源的代码库是他们在线…...

Electron通过ffi-napi调用dll导出接口
electron使用ffi-napi环境搭建 附打包好的ffi-napi可以直接放到项目目录下使用,避免以后麻烦 一、安装node.js Node.js官网:https://nodejs.org/zh-cn/download,选择LTS长期稳定版本即可 需要注意Node.js 区分32和64位,32位版…...

【排序算法】六大比较类排序算法——插入排序、选择排序、冒泡排序、希尔排序、快速排序、归并排序【详解】
文章目录 六大比较类排序算法(插入排序、选择排序、冒泡排序、希尔排序、快速排序、归并排序)前言1. 插入排序算法描述代码示例算法分析 2. 选择排序算法描述优化代码示例算法分析 3. 冒泡排序算法描述代码示例算法分析与插入排序对比 4. 希尔排序算法描…...

计算机毕业设计Hadoop+Spark+DeepSeek-R1大模型民宿推荐系统 hive民宿可视化 民宿爬虫 大数据毕业设计(源码+LW文档+PPT+讲解)
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
【Java学习】抽象类与接口
面向对象系列四 一、抽象方法 二、抽象类 三、意义检查 1.抽象方法的意义 2.意义检查 体现 四、接口 1.级别层次 2.接口变量 3.意义 4.成员 成员变量: 成员方法: 一、抽象方法 没有方法体即没有任何实现的方法是抽象方法,只有在…...
SpringBoot中实现限流和熔断功能
我们将使用Java的ScheduledExecutorService来实现一个简单的令牌桶算法(Token Bucket Algorithm),并结合一个自定义的服务类来处理第三方API调用。 1. 创建限流器 首先,创建一个简单的限流器类: import java.util.concurrent.*;public class SimpleRateLimiter {...

61.旋转链表--字节跳动
你应该比你现在强得多 题目描述 给定单链表,要求返回向右移动K位后的新链表 输入:head [1,2,3,4,5], k 2 输出:[4,5,1,2,3]思路分析 计算链表的长度 计算实际需要移动的步数 找到新的头节点 断开链表并重新连接 完整代码 /*** Defini…...

测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...

vulnyx Blogger writeup
信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面,gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress,说明目标所使用的cms是wordpress,访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...

WPF八大法则:告别模态窗口卡顿
⚙️ 核心问题:阻塞式模态窗口的缺陷 原始代码中ShowDialog()会阻塞UI线程,导致后续逻辑无法执行: var result modalWindow.ShowDialog(); // 线程阻塞 ProcessResult(result); // 必须等待窗口关闭根本问题:…...
Python网页自动化Selenium中文文档
1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API,让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API,你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...