龙空技术网

不用框架 2 周写一个电商网站,同济软工系前端小作业引热议

InfoQ 9845

前言:

如今我们对“前端作业做一个网站”可能比较关注,我们都需要剖析一些“前端作业做一个网站”的相关知识。那么小编也在网上搜集了一些关于“前端作业做一个网站””的相关知识,希望姐妹们能喜欢,朋友们一起来了解一下吧!

上个月,清华自动化系大一作业在知乎上引发热议;近日,又有网友贴出同济大学软件工程系大三的前端小作业:写一个电商网站,不能使用任何前端框架,时间为两周。有网友惊呼:现在的大学作业都这么硬核吗?

事件回顾

近日,知乎上一篇《如何看待同济大学软件工程系 2020 年大三前端小作业是不用框架 2 周写一个电商网站?》的帖子引起了热议:

帖中附上了同济大学软件工程系大三前端作业的要求:

从贴出的文档中可以看出,老师把原本分为三次的作业合并成了一个作业。从要求上来看,这个作业的实现难度明显小于清华雷课堂,唯一的问题在于时间比较紧迫。有网友晒出了该系去年的作业,在难度上其实没有明显的差距,但去年是三次作业中每次都有两周的时间,时间更加宽裕,而今年把三个作业整合到了一起,也要求在两周内完成,时间比较紧张。这主要是因为受疫情影响一直无法开学,老师只能一股脑把三次作业整合在一起。

并非难出天际

从功能实现上来看,这项作业并没有那么难:实现一个简单的网站,功能方面需要有商品展示、用户注册登陆、添加购物车、登陆状态下结算下单、登陆状态下查询历史订单信息(无需考虑订单状态)。

不过从要求来看就有难度了,不能使用任何框架:

其次就是时间过于紧迫,只有两周的时间且这段时间内还要上课,实际上可用的时间极少。而且在前端工程化的今天,随着各框架逐渐完善,开发效率大幅度提升,用纯 HTML、CSS、JS 写网站意义并不大,而且有网友指出:

不允许使用任何前端框架,那么 webpack 自然也不能用。模块化是编程的一个很基础的思想,为什么不去培养学生的这种思想,反而直接禁用?

该作业的要求是实现一个网页,但需求并不是十分明确,而且评分标准也有些模糊,界面是否美观要看个人喜好;代码是否简洁、易懂也有些主观;操作是否简便也相对主观。不过,布置作业的老师肯定不是想让学生在两周内写出一个淘宝、京东这样的网站。

有网友贴出了去年的两个作业,一个是电影列表 Web 界面,一个是在该界面的基础上增加数据库和服务器接口,总体上来看与此次作业难度相差并不大。

虽然作业文档中表示可以参考豆瓣和 IMDb,但并不是要求学生做到像这两个网站那么复杂的页面。该网友也贴出了他自己当时提交的作业,只要实现一个简易的网页即可。

总而言之,虽然此次作业时间紧迫且不允许使用框架,但仅实现文档中所要求的功能还是可以完成的,并没有那么大的难度。

网友的看法

不同于上个月大家对“雷课堂”近乎一片倒的吐槽,这次网友们众说纷纭。有网友表示:

这个说实话不过分。两周有两周的写法,一个月有一个月的写法。用原生 JS 也是合理要求。有助于打好基础。能力有限的同学写个简单的,大神自己撸个 MVVM 出来也可以。这个跟清华雷课堂是完全不同性质的。大三的同学应该有能力完成。

提出这个问题的同学一开始表示:

我也是你济软院的,我大二小学期用了大概一个月写过一个类似的,当然是用了框架的,前端 Vue+ElementUI,后端 Express。去掉考试周占用的时间,至少有二十天的,而且那段时间的强度不低于 996。对这个项目的难度,我是有体会的。这样的一个项目,在不少学校,是完全可以作为毕业设计来做的。

后来他又补充回答说是自己把这个作业想复杂了,的确只搞出最简单的能用的凑合看的不难。但他强调:

我的想法是,在没有一个明确的标准来评价的前提下,内卷是很难避免的。“简单”的定义因人而异,而我认为那些造出火箭的人在那边攀比是内卷的来源。如果让我来说一个建设性的方案的话,我个人觉得应该提供更明确的标准或是一个例子,而不是这样宽泛的上限极高的要求。

也有网友表示此举没有意义:

要求用纯 HTML、CSS、JS 写这种作业,类似于纠结茴香豆的 4 种写法,意义不大。比如 Ajax,对他的理解作为一个异步发送 HTTP 请求的工具就足够了,不管使用 jQuery 的 Ajax 还是 Axios,在项目中都能达到这个目的,为什么要去研究 XMLHttpRequest 那古老不友好的 API?过度钻研原生除了浪费时间以外真的没什么意义,这一个作业里面也看不到对有意义的比如 this 原型,闭包等原生内容的使用。

同济大学的这个作业,虽然没有“雷课堂”那么硬核,但也的确没那么轻松,你觉得这个作业难吗?使用纯 HTML、CSS、JS 写网站是否有意义?欢迎留下你的观点。

标签: #前端作业做一个网站