Skip to content

Commit

Permalink
Update: Add 5th semester for Fa23 (#73)
Browse files Browse the repository at this point in the history
  • Loading branch information
FA555 authored Mar 28, 2024
1 parent 3086d5d commit 82213be
Show file tree
Hide file tree
Showing 3 changed files with 77 additions and 0 deletions.
26 changes: 26 additions & 0 deletions Computer-Science-and-Technology/Python-Programming.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,3 +116,29 @@
5. **作业情况**:同评价8
6. **成绩情况**:95+
7. **心得体会**:水课。

---

## 评价 10

1. **开课信息**:皮人杰(2023 秋)
2. **推荐等级**:不重要
3. **授课内容**:不重要
4. **考核方式**:5 次小作业,期末大作业,题目不重要,比例不重要。有点名但不重要,因为点到没到的人最后也没扣分。
5. **作业情况**:不重要
6. **成绩情况**
- 皮皮给分似乎是**全员 95 分**加微小随机扰动。
- 不止这一门课,他其他课也这样。
- 我们一度怀疑他到底打没打开过我们交的作业文件。
7. **心得体会**:不重要
8. **真就没有重要的了吗?**
- 应该没有吧。
- 皮皮上课会发表很多领域的暴论,比如什么 C++ STL 就是垃圾,Qt 真的牛逼,应该取代 STL 成为标准库之类的。
- 别听他的。真要当标准库的也得是 Boost 吧!
- 话说回来这不是 Python 课吗?
9. **作业题目也真的不重要?**
- **真的不重要。** 但是如果你想知道的话——
- 他一直惦记着他那 async,小作业是用各种 async 网络库逐步实现一对天气数据服务器/客户端。
- 大作业祖传题目是实现一对人口数据查询服务器 & 画图客户端,数据量较大(原始文件压缩前 6GB+),要求高效查询任意给出的**凸包**内的人口数量并画热力图。
- 之前几届大作业要求不能将原始数据提前处理,不能将数据完整读入内存。现在没这些条条框框了,亲测认真搞一份工作量也就十来个小时的样子。
- 但是不管弄成什么样最后分数都一样,所以**这真的重要吗?**
Original file line number Diff line number Diff line change
Expand Up @@ -85,3 +85,33 @@
- 吴军老师课上采用的是GNS3,兼容性Dynamips比更好。
- 相对其他课来说,总体工作量和思考难度比较小。
- 大概在大三下的时候会有专业实习,本课学的东西可以用上,相比其他没选本课的同学压力更小。

---

## 评价 7

1. **开课信息**:张海旸(2023 秋)
2. **推荐等级**:推荐
3. **授课内容**
- Literally 配网——和交换机、路由器打交道。大部分时候是在 dynagen / dynamips 或 GNS 这几个软件上配仿真环境。
- 这学期开课仍然开展了进实验室配真家伙(Cisco * 2, H3C * 1, Juniper * 1, PC * at least 8)的环节。不过据张老师所说,主楼重新装修后机房设备会被废弃,以后大概率不会再有这个环节了。
4. **考核方式**
- 2 份实验报告 70%,1 次实验验收 30%(根据课程介绍 ppt)
- 1 次 bonus 实验为验收部分的 30% 的得分增幅至多 10 分。
5. **作业情况**:除上两行提到的部分外没有其他任务。
6. **成绩情况**:张老师在课上说他会支持对分数有各种需求的同学的需求。成绩的决定权在自己手中。(后注:意思是想拿高分就好好干,不是直接跑去跟老师说)
7. **打法指引**
- 张老师脾气很好,对这门课内容的理解也十分深刻。这门课名义上的教材就是他编的,不过用不到,没必要买。
- 实验课平均每 4 周去一次,但整个学期只需要验收一次,你懂的。
- 聪明的你一定发现了实验报告占分数比相当大。实验报告有一个环节是思考题,老师会在理论课上讲答案。
- 说是根据拓扑复杂程度给分,但是老师没有给出拓扑和得分的定量关系。
- 实际上,高分所需的拓扑复杂程度好像并不算很高。
- 成功配出两三台设备和配出十台、一千台在难度上几乎没区别。把拓扑设计好后,成本基本在敲命令的人力上。
- hint: 如果搓个二三十行小脚本自动喂命令的话……
- 配网其实真挺好玩的。
8. **附加信息**:实验环境(软件)相关
- 不要碰 dynamips。这东西太老了,对 win7+ 的支持很差劲,每几分钟就要崩溃一次。尽量不要直接接触 dynagen。
- GNS3 相当好用,提供了 dynamips 的功能的超集和 dynagen 的 GUI 接口,直接用 GNS3 张老师是同意的。
- 用 ARM macOS 的朋友不要尝试开 Windows on ARM 虚拟机跑 GNS3。在历经千辛万苦补全软件和 dll 后 GNS3 能运行但仅限于能运行,稳定性烂得要死。
- 跑在 rosetta 上的 Intel macOS GNS3 听说能用但我没敢试。
- 推荐的打法是直接找台 Windows 设备。
21 changes: 21 additions & 0 deletions Computer-Science-and-Technology/The-Practice-of-Programming.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,3 +87,24 @@
6. **成绩情况**:95+
7. **心得体会**:总体来说这门课在19级发生了比较大的转变,目前来说这门课应该不算是一门水课了,还是比较消耗精力和时间的,大作业建议提早开工,想要做得很好的话其实也还有点费劲的,在卷大作业方面,很多人用了多线程、C/S架构和数据库,还有人卷GUI,可以说是上学期C++内卷的复刻了。不过这门课比起功能可能更看重一些其他的细节,比如说优秀的文档、良好的风格,还有测试脚本等等。
8. **其他方面**:教材为程序设计实践(ISBN:9787111075738)

---

## 评价 8

1. **开课信息**:张海滨(2023 秋)
2. **推荐等级**:见仁见智
3. **授课内容**
- 程序设计中的编程规范,**据课件所说**包含风格、设计与实现、接口、排错、测试、性能、可移植性、记法这些方面。
- 但是实际上讲的东西全都比较过时。课本好像是 2000 年发行的,ppt 似乎是课本的子集,讲的内容也都是二十五年前流行的那一套。
4. **考核方式**
- 三次小作业占 30%,期末大作业占 70%。
- 近几年期末大作业的祖传题目是设计一个领域特定语言并实现其解释器。
5. **作业情况**
6. **成绩情况**
7. **打法指引**
- 期末大作业不限制技术选型,找方便或者想用的用就完事了。
- 最后六周验收,每提前一周给 1 分加分(0\~5 分)。实践证明这个真的是加分,不会引起封顶分数的变化。
- 不用卷那些有的没的功能(e.g. 谁家脚本解释器还给用户变量的值做持久化的?),对准采分点写就 ok。
- 不过自己感觉好玩想写是另一回事()
- 解释器本身完全手搓或者调 antlr 之类的工具都可以。手搓的话写个递归下降分析完事,别跟自己过不去。即使是递归下降分析,这门课也够格⎡编译原理课程设计⎦的称号了。<sub>我给自己的那个语言弄成图灵完备的通用语言了。。验收都不好意思跟老师说我完成了设计一个领域特定语言的任务。。。</sub>

0 comments on commit 82213be

Please sign in to comment.