CS¶
大一上¶
计算机导论与程序设计基础¶
某老师在上课时不会用Dev C++ debug的场景依然记忆尤新。。。
所以在上完课你不会编程很正常。学校会通过一个 OJ 定期的布置作业,并且测试(会计入总成绩),一定要把OJ中的每一个题目完全自己的写出来。尝试着加入 ACM 的大家庭,学校的ACM总群:116225686。(本人从ACM竞赛的训练中收获颇丰,极大的锻炼了自己的编程能力)
一些入门级的OJ:百练、PAT等等,善用自己的搜索能力。
多看相关的书籍,多动手敲代码。
自己多敲代码!自己多敲代码!自己多敲代码!不能光听老师讲课,编程语言语法什么的学个大概,关键是实践巩固。 没有基础的同学通常会在这门课上感到吃力,这是很正常的,摆正心态,多刷OJ题就好。
其他公共学科¶
主要是刷题为主,个人感觉大物之类的学过之后就再也没有用到了。。
推荐微信公众号 今日西电
维护者:西电小花坊(校内学生团队,QQ群号 347372179 / 819195739)
公众号里面有西电各种公共学科的电子教材,练习册答案等
大一下¶
Python 、java程序语言学习¶
IDE选择¶
建议使用IDEA(Java)和PyCharm(Python) , 两者都是JetBrains公司的产品,使用西电学生邮箱注册可以免费使用。 @16-larry6799
课程选择¶
根据自己的喜好来进行选择吧。
在2016级是第一次开Python语言课程,李光夏的Python感觉还不错,对刚学习编程语言的同学很友善,课程难度不高,无介绍经验。
教Java的王煦老师人不错,可是我听的课程感觉听的稀里糊涂,直到大三学了C++。
Java中重点在于面向对象编程的思想,建议先花点时间看看C++的面向对象程序设计,这样就能很快适应从C编程到Java编程。
线性代数¶
之后机器学习会用到很多,但是这门课好像学得很浅,而且考察很水,建议找MIT的线性代数课程看一看。中英双语,老师语速很友好,顺便可以练一下听力。
线性代数还有两次考试应该,如果想需要使用matlab但是又不想装(是在太大了),可以使用线上matlab环境。例如免费的 User.me , 相当于一台装了matlab的私人云主机,能满足计科学生学习matlab的基础需求。
大二上¶
数据结构¶
这个时候不知道你有没有参加大一下暑假的ACM集训,养成刷OJ的习惯,如果有的话这门课应该是很轻松的。当初我很划水的过了。
机试占30%,笔试占50%。好好学的话笔试我感觉基本可以考满分。机试一共四个题,两个满分,多做一个总分加五分,所以这门课很多100分的;四个题一定都要看,做不出来也要骗分。
[@20-semikonductor]
概率论¶
这可能是大多数同学的最后一门数学课了。这里面的有些东西很有趣,建议认真听,如果以后往机器学习方向发展,可能会有用到。
非常重要,概率论和线性代数知识在保研面试/考研复试中出现率非常高,好好学,做好笔记,大三的时候能够快速回忆拾起知识。
学校考试很简单,基本都是同一个套路,这门课学好要自己花时间理解,理解了就会豁然贯通。 @20-semikonductor
大二下¶
最难顶的一学期来了
计算机组织与体系结构¶
这个课非常的重要,也主要是理论的讲解,不会涉及到太多的编程,但是与计算机有紧密的联系,比如冯诺依曼结构,数字的表示,内存的映射,磁盘如何存储数据和寻找数据,CPU流水线等等。
上课好好听,认真完成老师布置的作业。
这个课与大三上《微机原理与系统设计》课程紧密联系,偏向于理论上的研究。
在西电学堂上有一套完整的视频讲解,搜索”计算机组织与体系结构”(其实也是上课回放),如果有上课听不懂的地方可以去听。
这门课关键是需要多想,想想为什么要这么设计?与其他方法相比好在哪里?
这门课还有一个重要思想,在很多时候设计中有 A 方案,也有 B 方案,但是他们都不是最完美的方案,就需要取一个折中的 AB 方案,既有 A 和 B 的优点,在某种程度上也克服了 A 和 B 的缺点。
赞刘博老师坚持用板书不用ppt~
考研的核心课程,要好好听,不管是保研还是考研都很重要。
计算机通信与网络¶
这个课我还专门的写过一个帖子吐槽
建议看另外一本书籍《计算机网络:自顶向下方法》。建议关注一个知乎用户:车小胖。学习的时候多去问几个为什么,然后把里面得帖子文章都浏览一遍,还是相对而言比较的通俗易懂。因为教科书里面的话比较的严谨,并且经过了字斟句酌,导致经常不说人话。
另外期末考试的题目直接上考研难度,建议买一本考研相关的计算机网络的书籍,一是这些书比较系统和全面,二是多做做里面的题目。当时一些同学考完直接傻了。。。
也是一门自闭的课程,书都没有上完,最后一节课上完三章,如行云流水。最后考试背书都感觉背不完,但是最后老师捞了我们一手,还行,不用过于担心不及格。
操作系统¶
也是让人自闭的一门课,原因是当时讲的老师自己她就不懂操作系统。。。
建议自己学,推荐6.828课程及里面的实验部分,实在一个人推不动,建议参考JOS。
真是自闭,考的也很难,我是按照b站北大陈向群老师的课程来学习的,老师语速有些慢但是很清楚,可以考虑倍速播放。(ps:中途发现清华的学生这门课的实验是自己做一个小操作系统,orz,具体是什么忘记了。。。)
考试分数贼低,还不到80,不说了,贼自闭,复习的和考的基本没关系。。
信号与系统¶
这个我本来是不想提的,但是建议学好FFT相关原理。
关于《信号与系统》,可以在中国大学 MOOC 上搜索 “郭宝龙 信号与系统”,讲解的比较细致,习题也设置合理。课程本来就很难,但是这门课为后续做图像处理、机器学习打下了很好的数学基础。
学习者需要有电路分析的基础,也是大三开设的数字信号处理的基础课程。
这里推荐一个 西电老师的微信公众号:信号与系统的结构与解释
里面有各种考试,习题等的分析,受益匪浅。
模拟电子技术基础¶
关于《模拟电子技术基础》,可以在中国大学 MOOC 上搜索”孙肖子 模拟电子技术基础”,讲解的比较细致,可以帮助你理解很多基本概念。请按照上课的课程顺序学习。
这门课难度较大,但是学好了可以更好的理解计算机设备的制造上的某些细节问题,例如晶体管。
数理逻辑(拔尖班)¶
20 级是刘西洋老师上的,因为是第一年给本科生开这课所以卷子出的很水而且大作业占比60%(阅读 Trustworthy AI 论文写总结)
网上可以搜到研究生做的笔记和往年题
笔记:https://www.jianshu.com/p/2e3552f1d06a
课程补充知识¶
大二到大三 计科 的大部分的课程的PPT,课后习题答案,考试相关资料等 都可以在QQ群 512043533 (过气课件共享群)里面找到,希望学弟学妹积极扩充资料 QQ 群 创建者:保研P大的朱大佬,现在是18级的学弟在管理
大三上¶
又是一个身心俱疲并且几乎没有自己的周末的学期。。
必修¶
数据库系统¶
关系型数据库。
如果对这个非常的感兴趣的话,可以去做做pingcap社区做的talent plan。
我当时做的大作业:database
好好做一下大作业,团队合作,挺好玩。学好SQL语言(以后有用,和考试倒是关系不太大)。
王小兵老师验收大作业贼严格,他也会叫研究生帮忙验收。但是小兵老师刀子嘴,豆腐心。小兵老师人还是非常好的,现在还记得他的76行sql语句吧。比较建议大家选赵亮老师的课程,因为长的帅,颜值即正义。
微机原理与系统设计¶
这个课还是比较难的,建议直接去旁听车向泉的课。
好像西电学堂上也有录播。
这个课与大二下《计算机组织与体系结构》紧密联系,偏向于具体的实现,例如 8086 、8088。
要与上学期学的课程联想一下,这样有助于理解。
同时也要回忆起《数字电路与逻辑设计》中的各种电路的设计方法,这样有助于理解这学期的一些系统设计。
汇编语言也需要深刻的理解。
推荐一个电院老师讲的《微机原理与系统设计》:去 bilibili 搜索 “周佳社 微机原理与系统设计”。
直接翘课去听车向泉老师的课,如果不放心可以借个账号看回放。回放不是在西电学堂,而是在教务系统,上完这节课后,不到一天就会有录播传上去,所以可以借个车向泉老师班上学生的账号登录教务系统看回放。(看来这个功能推广不够呀,知道的人不算多)另外配套实验做的东西都挺有趣的!
能选车老师的课程就选车老师的,选不了建议借选到的同学的账号看录播,尤其是车老师最后一节课的总结内容,会说考试内容形式,而不会像XX老师。
方向必修¶
计算机视觉(大数据方向必修)¶
苗院长讲了几课中途跑路了,新的老师没有能力把这门课讲好。。。
ppt直接照搬的康奈尔大学的课程,我当时做的大作业:计算机视觉
建议自求多福。考试前把ppt里面的每个原理自己推一遍,实在不会推找大佬帮你推,找不到就死记硬背吧2333
考试点琐碎无比,所以要推理的一定自己手动推一遍,该死记硬背死记硬背。
反正上完这个课我是再也不想去碰计算计视觉了,直接当场劝退。
感觉这个课程其实是按照4个大作业来走的。提前说:大作业都能在网上找到答案,但不建议去抄。 大作业的形式就是让你去补充未填写完成的函数,也就是对前几次知识点的考核,建议自己写。 考试的话,基本死记吧,有一些些线代的东西。
计算机安全导论(网络、大数据方向必修)¶
通识课,考试难得要死,跟学的完全不一样,建议好好做最后的大作业。
当时我在课上做的演示主题:堆栈溢出攻击
演讲ppt:堆栈溢出攻击
会让挑选做两个大作业,可水也可好好做。ps:老师画的重点一个都没考。。。。
考试大部分都是概念性的东西,依稀记得有https和http,加密算法, 防火墙。。。沈院长看完我们考试的试卷可能觉得我们都是垃圾吧,监考的时候走出考场就很生气。
面向对象程序设计(C++, 软件方向必修)¶
这个课比较简单,建议先学这个再学Java。
大作业是一个比较简单的小小的系统设计,比如员工管理系统,数据存储可以写在文件或者数据库中。
最后的考试内容以PPT为准,重点是对封装,继承,多态,虚函数,生命周期等的理解。
算法分析与设计(双语)(软件方向必修)¶
挺水的,感觉之前都学过。
建议没有打过ACM的修读,主要内容是算法复杂度分析,排序,并查集,字符串,堆,图论相关算法知识。
一共有几次大作业,算法实现语言不限,不过建议使用Java语言,因为这本书配套了学习资料,以及官方封装的Jar包,可以在此基础上进行编程。最后一次的大作业是dijskra算法的改造,A*算法相关。
考试需要计算和思考的内容还是非常大的,一定要把课后习题全部弄懂。
数字信号处理(嵌入式方向必修)¶
个人感觉难度大于《信号与系统》。教学上围绕DFT、FFT展开,讨论针对序列的不同方式的傅立叶变换的特性及联系,其次教学内容是针对IIR、FIR滤波器的设计方法。上机作业也是在matlab上设计几种不同的滤波器,现场解释设计方法及对信号的处理结果分析。平时也会布置课后作业。
考试为闭卷考试,占60%以上,不过题目基本源于课后习题。
平时认真对待课后习题,这门课还是很轻松能过的。
学院选修¶
组合数学¶
打ACM的一定要学一下,Polya和burnside自学,而且这门课没有考试是考察,就交一个小paper就行了。
我当年纯自己写的小paper:[Burnside引理和Polya定理之间的联系]
补充:课程最后有个开卷几道题的随堂测试,不是很难,反正这是一门性价比非常高的选修课。
大数据时代的软件开发模式与技术¶
是中途开的课程,请的外教(中国人)
所有作业均为组队,上课之前会点名
中间有几次编程作业,最后是英文PPT答辩展示。
2个学分,只要作业交了就能通过,最低档次的分数由老师的心情来定,
16级最低分好像是70左右,每个组的组长比组员高2分
补充¶
大二到大三 计科 的大部分的课程的PPT,课后习题答案,考试相关资料等 都可以在QQ群 512043533 (过气课件共享群)里面找到,希望学弟学妹积极扩充资料 QQ 群 创建者:保研P大的朱大佬,现在是18级的学弟在管理
大三下¶
必修¶
人工智能¶
水过
比较简单,人工智能的发展史~
有一个遗传算法的实验,验收会给定一个不同位数的基因型,再给不同函数的优化,所以整理成模版以便方便修改各个参数和目标函数F(x,y)。可以参考我的博客:遗传算法求解模版(两元)@18-Vsingeryh
方向必修¶
数据挖掘(双语)(大数据方向必修)¶
水过,不喜欢
我感觉还挺好玩的,做两个实验,不难。马小科老师讲的挺好,上课比较严格。 同学说实验是三选二,但我记得我当时是二选二了,可能因为某些原因没看到题? 选的是电影推荐和聚类技术——复杂网络社团检测。这类型的实验自主性还是比较大的,做完有一丝丝成就感。
媒体数据管理(大数据方向必修)¶
好好做平时的作业,期末考试只占20%,开卷。最后考试全是主观题,相当于当场写小论文。
崔老师讲的还是比较好的。
水过,上课折服于崔院长的颜值。
这节课基本每年实验都会不一样,实验比较混杂,可以说什么方向实验都会来一个,可以部分参考:Media_xdu@18-Vsingeryh
编译原理(软件工程方向必修)¶
这个是我本科写过最硬核的作业了。
老师讲的很一般,建议看SICP。
认真完成大作业,我当时不分昼夜的肝了两个星期:sql parser
这门课张南老师给分还挺高的,个人感觉。老师还会给夏令营的同学签推荐信,爱了爱了❤️
网络应用程序设计 (软件工程方向必修)¶
课程所以的实验都在Linux下完成的,很硬核这个课程。
感觉老师讲课讲的也不是太好,基本到课率在30%左右。
第四次实验是写个手机作为电脑鼠标的程序,老师给的程序我都没有跑通,我枯了,所以只交了前三次实验报告。
考试更是究极纯粹,就四道大题,写思路+代码。
建议非方向必修不要选择这么课程,体验不是很好。
分布式计算(软件/网络方向必修)¶
李龙海老师讲的很仔细认真,但是我当年结课了还是没有入门分布式计算。
建议直接上6.824 2018。
当时的大作业:dis_lab
2016级因为时间的关系,所以实验只进行到hadoop那块,缺少 Paxos 分布式一致性算法的实验,希望2017级以后的同学补充上。
机器学习(大数据方向必修)¶
建议直接搜优质学习教程。。。老师水平有限。。。这个课全程划水。。。(求求未来从事这方面研究的同学可以来补充一些)
建议通过优质公开课自学。
实验都不难,难的都可以调库,当然也有大佬不掉库自己写svm的smo算法等等,如果真的想以后做这方面科研可以深入学习,不然直接水过不香吗?同样实验每年都不完全一样,可以部分参考:mlexp@18-Vsingeryh
嵌入式系统(嵌入式方向必修)¶
我是其他方向选修的,考试轻松水过,平时也有实验。
没有教材,课程和考试全都基于PPT,实验也有对应的实验手册。课程内容则是针对ARM汇编程序、ARM下C编程、uCOS-II操作系统、部分外设等。
大四¶
基本上有下面几种选择:工作、保研、考研、出国。
当然还有最重要的毕业设计。
毕业设计¶
- 本科毕业论文latex模板 @16-babydragon
- 2020本科生论文word排版 @bilibili zl
- 保研的学生要求良好及其以上,保研学生认真务必认真对待毕业设计 @16-larry6799