Duke ECE 院系介绍 + 生活介绍 + 选课攻略

28208
29
院系介绍
总的来说Duke ECE是个转软件的好地方,不限制cs选课(只要你能选上,cs课稍微有些偏理论,但是讲得很深入),ECE本身也有很多好的实用的软件课程,肯下功夫的话学到的东西非常多!!!但是没有cs基础不建议来,没有太基础的课程,都是有些难度的。零基础cs建议去USC cs37.老师大部分比较负责,选课不踩坑的话课程质量还是很高的!!缺点就是学费贵。

选课介绍第一学期

1.ECE 551:讲C++和算法和数据结构,duke ECE 研究生第一学期必选课,,workload正常偏大(楼主本科有c++编程基础)。主要是自学,是flip-classroom,也就是上课老师只负责答疑不讲课,课下学生自己看书,看video学习。看书是电子书,想看的话可以google "all of programming",需要掏钱买。如果想要pdf版....你懂的.....作业非常多,大概有90+个小作业和4个assignment,小作业是提交之后能pass就行,assignment是individual work,类似于测试,规定时间内完成题目中所描述的功能,然后提交之后会评分,计入总成绩。小作业有很多是选择题,大家也不用太担心。最后有个final project,可选两个项目,linux command shell和numerical calculator。如果c++基础好的话这门课workload不算大,没有编程基础的话就可能比较吃力了。如果想来duke但是又没有c++基础的同学,可以提前自学一下这部分内容。
2. ECE 550:architecture and computer engineering, 楼主上课老师是John Board,一个非常负责并且有趣的老师,课程涉及范围很广,有数电(逻辑电路,状态机),OSI 7层网络协议,os(file system,cache,virtal memory),汇编(MIPS),CPU architecture。虽然是这个课讲很多硬件,但是楼主仍然感觉这个课挺使实用的,当然对于铁了心要只学前端的同学没啥用,对于general的SDE来说的话还有用的,因为会讲很多os知识。2018入学的学生上的这门课老师和我不一样,据说上课老师不太好,下届应该会换老师。
3. Compsci 531: Introduction to Algorithm 按理说ECE没发选cs的课,但是可以找老师要permission code,所以楼主选上了。上课会讲很多算法,但是更注重算法复杂度分析,偏理论,作业题是算法题+复杂度分析。workload较大(楼主算法基础不是很好,这个课讲得算法比较advanced),需要课下花时间预习复习,但是上完这个课之后算法绝对提高一个层次。还有个ECE 590也有个算法课,楼主当时入学时没有这个课,听说老师讲得非常好(Compsci 531老师讲得不咋样。。。。),但是算法讲得没有Compsci 531难和深入。如果有很强的算法基础,建议选compsci 531,没有基础选 ECE 590.
4. ECE 590 vector space:楼主没上过,有同学上过,听说特别难(平均分是B+),给分会curve。课主要是讲线性数学。这个课是machine learning的先修课,如果不上的话cs的machine learning的课上起来就会很吃力了。
5. IOS development:楼主研究生二年级选的。第一学期想选就找老师要permssion code,作业挺多的,workload很大,用swift做,有5个小作业(5个小app),主要难在网上swift4资源太少,老师上课讲得一般,挺无聊的,不过都是干货,相当于给你念了一遍工具书。会给很多sample code,作业会用到。final是自己选题,3人组队。
6. Compsci 516:Database System,按理说ECE又没法选cs的课,但是又可以找老师要permission code。楼主研究生二年级选的,干货满满!!!DB讲得非常深入透彻,老师讲得非常好,就是难度挺大的,课下要花很多功夫,作业也是主要靠自学,但是作业难度没有robust server那么大,project都是well designed(有page rank之类的),final自己选题,可以做big data analysis相关的,做的这些项目感觉对找工作挺有用的。
7. Parallel Programming:楼主研究生二年级选的。讲并行计算,老师讲得还可以,workload不大,有一些c++编程作业。一门中规中矩的课


第二学期

1. ECE 590 Robust server: 挺好的课,主要是full stack,web相关,workload非常大,3个大作业(Django,web proxy,scalable transaction system)两人组队,1个final project(Mini Amazon and UPS System)。project含金量挺高的,就是很难。按照同学的评价是”上课教你拧螺丝,作业让你造火箭”,我觉得说的很对,主要靠自学。推荐上

2. ECE 650:讲os和database基础知识,感觉讲得很好,推荐上,workload有点大,4次作业(malloc implementation,thread-safe malloc,sql,socket programming),没有final project
3. ECE 651:software engineering development,不推荐上,跟管理课差不多,老师不会安卓编程,但是作业要写安卓程序。课上学不到什么东西,破事还特多,不过愿意自学安卓做项目的可以选这个课,这个课的project都是和公司或者学校合作的,比较有含金量。
4. Cloud computing:水课,不过想做项目可以选,楼主没上过,上课就是同学讲论文,老师不讲课,自己也有一次讲论文的机会。相当于学生组织一堂课。

楼主辛苦码字,求一波大米啊啊啊啊~~生活上或者学习上有问题可以问我哈~~欢迎来杜克上学~~
  • 119
29条回复