大三上平时还是很忙的,对我来说有软件工程应用与实践,OS课设和移动互联网开发这三门课。其中移动互联网开发耗费的时间最长,工作量也最大。数据库课设因为是在暑假做的所以还好,也为我后面学移动互联网开发这门课打下了一些基础。在这学期的理论课里,个人觉得算法和计网还是有些难度的,要好好学,而软件工程基本就是纯背诵了。
这门课不同老师的实验题目不一样,由于我是gxc老师,所以一个有四个大实验,除了第一个之外,剩下的都有一定难度,第三第四个实验最难,第四个实验甚至涉及了很多计网的内容,比如滑动窗口之类的。
这门课的形式是,6人一组,每次检查之前写对应的贡献排名,一般来说只有排名第一的才更有机会拿A,并且还要比较快检查才行。检查的时候,老师会问关于操作系统和实现相关的问题,比如实验四中涉及计网的部分,很多同学觉得是重点,但事实证明老师根本不问计网,他会问这个实验和操作系统有什么关系,所以应该搞清楚重点。除了主讲人之外,老师也会随机提问小组的其他成员,如果问到不会的话会扣分(老师说的),所以说尽量不要给小组拖后腿吧。比较厉害的小组可能有1-2个A,如果每次都是最后检查的小组,基本一个组一个A都没有了,我们当时有的组甚至有3B3C的,老师给分还是比较狠的。
当然,我上面说的所有情况针对的都是gxc老师,如果你是另一个老师,做8个C++写的和OS相关的实验,那就不必太担心。据我了解,另一个老师是两人一组,并且给分良好,虽然有8个实验,但是难度很低,和gxc的四个大实验难度没法比。我们老师看起来4个实验比8个实验少,但实际上每个实验里都有很多子实验,比如实验一中有6个小实验,而另一个老师的8个实验的难度,就类似这6个小实验的难度,因此可以说,他们的难度可能只相当于我们一半甚至更小,并且给分更好,所以有时候能分到什么老师也看运气了。
而且这门课,如果要有比较好的分数,可能还需要额外做一些工作,比如同学在检查的时候,如果只是按部就班地完成实验规定的内容,老师会觉得没有新意,如果能从实验中发散出对操作系统的实现并表现出闪光点,老师会比较满意(当然这非常难)。所以不仅是实验难,老师还会要求在完成实验的基础上,尽量多做一些工作,但大三上普遍任务较重,没有这么多时间。
这门课主要是理论学习+完成5个实验。事实上,我们当时5个实验基本不太需要运行(虽然最后也要提交源码),但实验报告得写好,所以说很多人都直接面向实验报告做实验了。最后平时40分实验分貌似是看实验报告给分。至于最后的考试,我们这届是开卷,下一届开始好像就是闭卷了(太惨了)。不过虽然是开卷,依然要准备很多东西,毕竟考试的时候你找资料也需要时间的。考试的部分参考的东西就不多了,这里不多赘述了。这门课只能说,和数据结构有点像,上课挺难的,但是实验和考试都有所放水,不过有时候还是会搞一点心态。
这门课的形式是,上课+作业+实验+考试。综合来说,考试是这四个环节中难度最大的,有不少要背要记的。作业和实验只需要按时完成并提交即可,实验写实验报告即可,挺简单的(但听说有的班好像挺难的,如果是ll老师貌似严一些,我们当时是zfj老师,就挺好的)。最应该注意的是最后的考试,首先是考试形式是选择+填空+大题。选择和填空题里面就会有一些需要记忆的内容,比如IPV6有多少位,以太网帧有多少位,IP地址的分配之类的。我们当时考试甚至把考研408的真题当做大题来考,因此考试之前甚至可以考虑做一些408真题(大题),小题就没必要做了。至于重点,数据链路层,网络层和传输层肯定是重中之重。
由于是疫情期间,我们当时就在教室或大礼堂里听了一周的讲座,最后写一个还是两个报告就完事了。只要写了,不抄,基本就是A,但如果你抄,被查重查出来了,就是不及格,重修。一开始并没有说会查重,是最后提交的时候才知道查重的,所以总结就是别抄就行。
这门课就是这么简单,只能说上A基本有手就行。不过貌似我们上一级就比较难,拿A还要做PPT答辩啥的,只能说我们这届确实比较水。不过话说回来,这门课就1学分,可能A也不是那么必要。
这门课的形式是上课+作业+一个presentation+考试,很多章节都会布置作业,会组队,最后一个人上去讲一下一个曾经做过的项目如何用软件工程。事实证明这门课基本就是背诵,作业和pre做了之后感觉平时分没啥差别,最后的考试是判断+选择+大题,判断和选择有一点难度,大题的话如果哈哈准备还是没问题的,最后考试前老师会给提纲,具体的答案CSDN上都能找到,所以就直接背就完事了。印象中好像是大概20%的人上了90的样子,也有可能准备了很多没上90。
这门课貌似是我们这届特有的,之前没有,后面几届都没有了。总得老说就是老师给了一堆项目,然后这学期的工作就是分组,一个组3-5人左右,然后读源代码,在CSDN上写13篇博客,每周一篇。
事实证明这门课最后,只要是按时写了13篇的(稍微有点不按时也没事),就全是A,不符合要求的甚至可能不及格。当时还有好多同学(包括我),写了十五六篇甚至20多篇的,后面都被证明没有任何必要,因为13篇就A,甚至时间都没有卡得很死。考虑到后面可能再也没有这个课了,所以这里也只是简单记录一下了。
这门课主要在暑假完成,大致的内容是暑假先确定选题,之后是两次演示+实验报告,评分会参考演示的顺序。两次演示的内容分别是数据库设计+系统演示。虽然系统界面很重要,但是千万要注意,这门课的名字叫数据库设计,因此在演示包括实验报告的部分要体现出数据库设计相关的内容,比如表结构,E-R图之类的。当然,在此基础上追求界面好看才更重要,切记不可只追求界面好看而忽视了数据库相关的内容,老师在提问时也会着重提问数据库相关的内容。
这门课只能说不同老师给分的比例差距比较大,有的老师一个班能有30%左右的人拿A,而有的老师只有10%左右甚至更低。
这门课参考我的博客:山东大学软件学院算法设计与分析期末考试回忆版
值得注意的是本课程没有实验,只有几个作业需要完成,考试类似证明题,有点学离散数学的感觉
这门课的考试部分可以参考我的这篇博客:山东大学软件学院移动互联网开发技术期末考试回忆版
另外,这门课我们当时有两个大作业,首先是一个新闻小程序(包含网页的管理员端和小程序端),另一个是自拟题目的一个小程序(老师推荐的是地图小程序)。这两个大作业工作量都很大,对技术的要求也比较高,时间相对也比较紧张,因此编程能力不强的同学慎选这门课,会很累。