写点什么

用 C++ 手撸雨课堂,清华自动化系大一作业引热议

  • 2020-04-22
  • 本文字数:1480 字

    阅读完需:约 5 分钟

用C++手撸雨课堂,清华自动化系大一作业引热议

事件回溯

近日,知乎上一篇名为《如何看待清华大学自动化系 2020 年大一 c++大作业是写一个功能更强大的雨课堂(雷课堂)》的帖子引来了诸多关注和讨论:


https://www.zhihu.com/question/389457315


注:雨课堂是学堂在线与清华大学在线教育办公室共同研发的智慧教学工具,目的是全面提升课堂教学体验,让师生互动更多、教学更为便捷。教师可以将带有 MOOC 视频、习题、语音的课前预习课件推送到学生手机,师生沟通及时反馈;课堂上实时答题、弹幕互动。


帖文中披露了清华大学自动化系 2020 年大一 C++作业要求的 PDF 文章,从 PDF 中可以看出,之所以会布置这样一份作业,是因为疫情期间学校推延了开学日期,学校采用了以“雨课堂”为主,腾讯会议和 Zoom 等网络会议软件为辅的线上教学模式。在使用这些软件时发现,软件虽然可以实现 PPT 展示、在线答题、随机点名等功能,但却缺乏教学信息的统计功能。在这学期 C++课程开始前的系统测试中,有同学建议自主开发一款集合雨课堂和网络会议优点于一体的网络教学软件任课老师和助教经过多番讨论后,决定采纳这一想法,于是便布置了题为“雷课堂 Thunder Class)的作业安排。


没想到,这份作业安排被曝光之后,引发了各界人士的高度关注,并纷纷表示:实现难度太高了。

实现难度

那么,这个作业到底有多难呢?有人在回复里用了这样一张图来直观地说明:



玩笑归玩笑,在认真看过这一项作业的要求后,很多网友表示:这确实不是大一学生能做到的。


先从功能实现上来说,作业的要求是这样的:


首先要有用户登录功能,要求用户名密码登录,三次密码错误自动退出,账号可根据教师/学生不同身份进行切换,且必须有一个管理员账户,可用于教师及学生帐号的增删改——这一功能似乎没什么异议,毕竟大部分系统都有这样的要求,但是接下来的一些功能恐怕真的不是一般学生能做到的。


除了基础的登录功能外,作业还要求系统实现:语音设备的切换功能、共享屏幕功能、语音直播功能、随机语音提问、在线发题/答题、签到、注意力监控(软件处于焦点窗口的时长与学生在线时长的百分比)、麦克风管制


不知道读者中是否有大神对于这些功能的实现表示不屑,但是在此话题下,各路答主、包括认证显示为清华本校生的答主都表示:大一学生做这个作业,真的是有些过于困难了。抛开完成作业所需的时长不说(有人预计约 200 小时以上),实现上述各项功能所需的技术恐怕也并非大一学生能接触到的。


另外,除了常规的代码规范要求以外,作业还要求:不可使用任何非开源的第三方类库



这一要求也引发了不小的争议,有网友说:本身功能实现就够困难了,还不允许使用库,这就是让徒手造轮子啊?

各方反应

即便是对于清华大学这样门槛很高的院校的大一新生来说,这种作业的难度也十分惊人。此事一出,网友纷纷评论表示:


能遇到需求如此明确的甲方,也是人间值得了,啥也别多说了,我就想问问谁能救救孩子?

现在有理由怀疑纽约原油价格暴跌是清华某个系的作业要求了;

能完成这种大作业的“00 后”真是后生可畏,不说了,我去写代码了,我怕被拍在沙滩上;


但在帖子的回复中,也有网友提供了已经石锤的该课程任课老师的最新回复:


前面肯定不是坦途,但绝对不是悬崖。题目设计初衷上,重点本来就不再数据库、语音、截屏、网络通信,因为 C++就是一门面向对象的语言。


甚至一位从清华大学毕业多年,获得硕士学位的校友表示:


将此内容布置为这门课的大作业,已经达到了教学事故的程度,因此,恳请校领导督促教师整改,并处理责任人。这不是一个普通大一学生在一个学期内能够完成的课程作业。我认为,如果同样的需求交给我公司的同事,需要 3 至 5 人团队几个月的时间才可能做到。


2020-04-22 12:438007

评论 3 条评论

发布
用户头像
虽然项目比较有争议,但是写文章还是中肯一点的好,”不可使用任何非开源的第三方类库“,跟”还不允许使用库“,这能是一回事么?实际上这个作业里面绝大多数功能都不需要学生自己去实现,有各种开源项目提供了类似的功能可以集成,这也是老师所推荐和要求的做法。
2020-05-17 05:26
回复
用户头像
看来此作业已获得A轮风险投资
2020-04-26 09:23
回复
用户头像
原来咱们大学的水平都那么高了,很是欣慰
2020-04-22 12:58
回复
没有更多了
发现更多内容

Flutter Slidable 列表侧滑菜单 列表侧滑删除

早起的年轻人

flutter

流程引擎介绍

上海派拉基础研发

流程

【论文分享】Presto: SQL on Everything(一)

小舰

4月日更

王霸雄图荣华敝屣,谈笑间尽归尘土|基于Python3双队列数据结构搭建股票/外汇交易匹配撮合系统

刘悦的技术博客

数据结构 算法 Python3 匹配 股票系统

中国脑科学的十年行旅

脑极体

不要给自己留后路

小天同学

人生 个人感悟 成功 4月日更

借力云原生,预见医学影像“云阅片”和电子胶片的未来 | 精选案例

亚马逊云科技 (Amazon Web Services)

悟透前端:JavaScript ES6模块的导入导出

devpoint

ES6 export export default

连续三年入围 Gartner 容器竞争格局,阿里云容器服务新布局首次公开

阿里巴巴中间件

Oracle LogMiner 数据迁移实战

yintianwen

Java 数据库 后端 数据迁移 LogMiner

Python OOP-1

若尘

面向对象 oop 面向对象编程 Python编程

一个码砖的码农,在InfoQ写一年博客,出书了?

小傅哥

Java 设计模式 小傅哥 架构设计 码农出书

什么是产品思维和产品意识?——课程总结

Deborah

NumPy之:数据类型

程序那些事

Python 数据分析 Numpy 程序那些事

重读《重构2》- 搬移函数

顿晓

重构 4月日更

websocket简析

风翱

websocket 4月日更

架构训练营——作业 2

架构实战营

对话亚马逊云科技 WWSO 团队四位大咖,给你讲讲他们的职场故事~

亚马逊云科技 (Amazon Web Services)

Ansible 命令行工具

耳东@Erdong

4月日更

rrxjava原理,手持4个大厂offer的我,吊打面试官系列!

欢喜学安卓

android 程序员 面试 移动开发

Ask Me Anything #1 我是新晋CNCF TOC张磊,你有什么想问我的?

阿里巴巴云原生

容器 开发者 运维 云原生 k8s

Android Camera开发系列:设置对焦模式模式

小驰笔记

Camera; Android;

什么情况下要招人?

石云升

团队建设 28天写作 职场经验 管理经验 4月日更

网络协议学习笔记Day1

穿过生命散发芬芳

网络协议 4月日更

你不一定全知道的四种Python装饰器实现详解

老猿Python

Python 编程语言 装饰器 程序开发

自从有了他,再也没有担心过环境部署~

MY

部署与维护

阿里开发7年大牛:只需一篇文章吃透Android多线程技术,好文推荐

欢喜学安卓

android 程序员 面试 移动开发

免费开源增强版 Elasticsearch 分支 OpenSearch 项目上线!现邀您加入开源社区!

亚马逊云科技 (Amazon Web Services)

算法题目解析:从一道题目看动态规划

程序员架构进阶

算法 动态规划 28天写作 4月日更

10 亿数据量只需要 100MB 内存,Redis 的位存储为什么这么牛?

Java小咖秀

redis 原理 位运算 bit 高级特性

IPFS云算力挖矿系统开发|Filecoin算力挖矿搭建

薇電13242772558

区块链 存储

用C++手撸雨课堂,清华自动化系大一作业引热议_文化 & 方法_李冬梅_InfoQ精选文章