跳转到帖子

ECE: 和CS/SE区别,求指点


Alex Wang

推荐的帖子

学长学姐好,我是21年入学的新生,现在拿到了Computer Engineering的offer,对软件开发感兴趣,但是不知道ECE有多少软件课以及方向。有点迷茫要不要大一转到CS或者SE,求助...

意见的链接
分享到其他网站

粗浅谈一下对CS, SE, CE的理解吧....我是Comp Eng的,身边不少CS的SE的同学,也有很多大一大二从CE转去SE的大神们,我就简单谈谈CE和CS的区别,因为SE确实不是很了解,不敢瞎说。

首先CE的定位和CS是不一样的,CE的定位是做硬件开发的同学们(虽然现在的technical electives越来越往CS方向靠拢...唉没办法,谁叫CS的工作多工资又高,再加上我loo又是一贯跪舔employer爸爸😀。。。)

------------------------------------------------------------------------ 我是分割线 ------------------------------------------------------------------------

展开聊其他东西之前,先说说我理解的硬件是什么,硬件也分编程和设计两个方向。硬件编程比如FPGA,Assembly,C语言等等对芯片或者一个hardware component的程序编写; 硬件设计由于我自己没做过,不敢瞎说,只是知道同学Coop是去给某个大楼的内部做电路设计,还有大佬在Intel给芯片里面的电路做设计(很多logical gates啥的)

------------------------------------------------------------------------ 我是分割线 ------------------------------------------------------------------------

CS 和 CE的定位不同可以从CE的大一大二的课程上可以看出来,比如ECE 124, ECE 222, ECE224等等都是做硬件的core course,如果以后想走硬件开发的同学们一定要学好这些课,面试经常会从这里出知识点,比如deadlock;

当然CE也会有一些CS课,比如ECE 150 - Fundamental Programming,这课主要是C++教你编程入门和一些debugging常用技巧(如果你的prof是Paul Ward,那恭喜你,这门课基本可以自学了;Alfred Yu和Scott Chen 教的都很不错,吹爆两位);ECE 155是个教你用Java写Android的课,整个课就是一个大Lab,一个学期下来倒也可以学到不少Java的东西,蛮实用的。再来就是ECE 250,Data Structures and Algorithms,跟CS 240差不多,不过250教的更多是data structure的implementation,240有不少数学论证的部分(这里就看出来了工程和数学的差距😀 工程人:“已知 1+1 = 2,那我能算出1 + 2 = 1 + (1+1)=3”;数学家:“我要证明1+1 = 2”);CE大二和大三还有两门软件core course,ECE 254- Operating System和ECE 351 - Compiler,这俩也是非常重要的CS相关的课。相比于CE,CS可以选喜欢的选修课,machine learning啥的,real time 啥的,比CE的课程难度要大一些,也会更深入讲CS的内容。

PS:CS可以选一门OOD的课, CS 246;然而CE并没有OOD的课程....实名羡慕

总而言之一句话....如果你非常确定要走Software Engineering这个方向,招软件相关的工作,建议你刷高GPA,大一争取往CS或者SE转;如果留在CE也是没问题的,多刷刷 Leetcode,夯实编程基础,吃透ECE 250,也没啥大问题。

 

加油工程人,祝你们不要遇到Paul Ward和Peter Levine

  • Like 2
意见的链接
分享到其他网站

  • 2个月后...

创建帐户或登录后发表意见

你需要成为会员才能发表意见

创建帐户

在我们的论坛注册新帐户,只需要几个简单步骤!

注册帐户

登录

已有帐户?请登录。

现在登录
×
×
  • 创建新的...