这个学期我过得整体来说还是挺快乐的,主要原因是自己课选得比较少(把大物实验退了),课业压力小一些,也暂时没有科研压力,所以自己心态比较好。此外,女朋友的陪伴、好朋友的相助,也为我这学期保持乐观平稳的心态起到了很大的作用。
我不太能为这学期梳理出一条明确的主线(或许是因为我这学期比较佛吧),所以请允许我用碎片化的方式讲一讲自己这学期都经历了些什么。
Saiblo
如果要概括这一个学期,Saiblo 无疑会成为贯穿始终的主题。
网页播放器开发
在开发日麻网页播放器的过程中,我对 H5 游戏的开发技术获得了较为直接的理解,并结识了 PlayCanvas 框架。这个框架与 Unity 有着相似的核心概念,且开发工具为网页应用,更轻量。它的产物能够更方便地与 Saiblo 对接。总之,这个框架有一系列优点,有潜力成为智能体 3D 网页播放器的首选开发框架。
为了能在测试站对网页播放器进行测试,Papersnake 整了个 WebDAV 共享目录。这一操作完美地解决了开发者在 Saiblo 上测试网页播放器的需求,也同时让我大开眼界,学到了很多。
开发网页播放器还需要处理与 Saiblo 平台对接的相关事宜。接口的设计和消息传递的方式都很好,只是缺个文档。我在摸索的过程中,顺便把它补好了。(这一定很符合奇主席的纲领吧x)
前端新功能施工
我对 Vue 不是那么感兴趣,Saiblo 又恰恰是用 Vue 写的,所以我施工了两个智能体相关的前端需求后就溜了。
一个是,随着多人游戏入驻 Saiblo,多人游戏的快速人机对战也应有所支持。我对着代码一通魔改之后实现了功能,但引入了 bug,后来多亏 Papersnake 及时修好。
另一个是,智能体决赛需要现场抽奖,我施工了一个简单的抽奖页面,也包括一个简单的抽奖服务器。不过我把姓名的输入框放在了页面底部,引来了吐槽。
不过反正我对 Vue 不感兴趣,所以,溜了溜了(x
接手评测端
我个人感觉 Saiblo 现在的评测有点难用,对开发者不够友好。为此,我决定接手评测端,对部分功能进行一些翻新操作。不过这项工作还没正式开始,应该会是我这个暑假的一个主要计划。
技能学习
学习不局限于课内,也不由某个考核指标决定学习的效果。
硬件编程
我这学期选修了数字逻辑设计,通过在 FPGA 上编写代码完成硬件设计,体会了硬件编程的奥秘。我和队友 scpointer 合作完成的是一个混音器的项目,个人感觉还不错,也挺有收获的。这让我对下学期计组大实验有了一些信心。(不过感觉还是经常把硬件描述语言写得像软件串行代码。)
不过有一个地方让我不太理解。既然计组使用的是 Vivado 平台,为什么数字逻辑课程还是用 Quartus 呢?
打破语言隔阂
事情起源于我写日麻播放器的时候,想要在 JavaScript 前端代码中复用 C++ 逻辑代码。经过一番调研,我找到了 emscripten。它能将 C++ 代码编译为某种可在浏览器中执行的 JavaScript 字节码,另一方面也用 C++ 实现了一个 JavaScript 运行时,从而能够实现 C++ 与 JavaScript 代码的互调用。当然,我只用到它在 JavaScript 环境中执行 C++ 代码的部分。
这让我明白了两件事。一个是两个不同语言之间的沟通是完全可行的,大致有预先编译和使用目标语言实现一个运行时两种途径。另一个是,当我想到 React Native 项目也是一个典型的跨语言交互的例子时,当我之后又看到 C++ 与 C#、Python之间相互转译的工具时,我意识到,所有主流语言之间,大概都有途径能够相互连通。这意味着,从理论层面上讲,所有主流语言之间都应当能相互交流。这一想法让我大受震撼。当然,这背后离不开编译理论的支持。
一些想法
尽力而为
互联网本身只能提供尽力而为的服务。上层应用无法突破网络不可靠的现实困境,只能在这一约束下,尽最大努力给出可靠的交付。
这学期的考试安排还是比较折磨的,要想保证每门课都冲着 100 分复习,对于我来说啊,应该是做不到的。不如尽力而为,也算是尽最大努力呈现出自己的最高水平了。
图个乐子
大学生活不仅仅是肝各种作业和锅锅锅,还需要多图乐子。利用每周富余的时间,外出放松,陪一陪自己所珍视的人,或是休闲摸鱼,打一打鱼洋陷役,都是对生活有益的调剂。
听从内心
评估各个选项,做出抉择,有时是件很费神的事。精心权衡做出的选择,最终或许也会事与愿违。在这种情况下,听从直觉里最想要的选项,或者跟随命运的抉择,不要去计较得失,或许是更合适的策略。
迎接挑战
大三秋季学期将是充满挑战的一个学期。
课内学习
我还没有考虑过下学期的选课,不过可以确定的是,我有《信号原理》《编译原理》《计算机组成原理》等课程要修。这些课可以说都不简单。
科协工作
下一年将是智能体大赛转型的重要一年,有很多工作要做。转型的结果会是什么样,我们可谓一无所知。智能体部下一年的工作本身就是不小的挑战。
科研准备
一转眼已经要到大三了,升学成为了不得不纳入考虑的问题。下学期我大概会找个实验室干活,为后续科研做做准备。
杂项
每周主题复盘
周数 | 主题 | 解释 |
---|---|---|
1 | 决战 | 举办鱼洋陷役决赛 |
2 | 速成 | 速成网页游戏开发 |
3 | 新起点 | 为播放器开发引入新模式 |
4 | 小试牛刀 | 尝试使用 PlayCanvas 框架 |
5 | 全力出击 | 集中精力开发日麻播放器 |
6 | 永无止境 | 对前端美观的需求是永无止尽的 |
7 | 点亮数字人生 | 初识硬件描述语言 |
8 | 蓄势待发 | 进行一系列准备工作 |
9 | 测验 | 期中考试 |
10 | 清算 | 清理各类长短期作业 |
11 | 转变 | 从图乐子状态转入肝作业状态 |
12 | 飞越悬岛 | 举办智能体嘉年华 |
13 | 玩转 RIP | 完成网原课程实验二阶段 |
14 | 万马千军 | 完成高性能课程实验 |
15 | 我们联合! | 完成网原课程实验三阶段、数设课程实验 |
16 | 时分复用 | 同时应对多门课程的期末 |
17 | 决战 | 期末考试 |
18 | 新起点 | 科协招新,暑期开始 |
每学期核心收获复盘
学年学期 | 核心收获 | 解释 |
---|---|---|
大一秋 | 适应环境 | 萌新入学,需要适应这个计算机系 |
大一春 | 寻找支点 | 通过 THUInfo 收获了成就感 |
大二秋 | 磨砺意志 | 整个学期挺压抑的,个人感觉挺磨人的 |
大二春 | 转变心态 | 初步见到了更广阔的计算机系生活 |
其它信息
- UNIDY 一直说要给这个网站备案,但一直咕咕咕。这一计划将于近期完成。
- UNIDY 于寒假曾计划实现 UnTeX(但当时咕咕咕了),这一计划因 typora-latex-theme 的推出而终止。
- 至这篇文章之前,UNIDY 的所有博文均不符合在中英文文本之间插入空格的规范。这一问题从本文开始得到解决。
- 至大二春季学期,UNIDY 的所有组队课程作业中,队友主体均为 UNIDY 当时完全不熟悉的同学。这一情形将从下学期开始改变。
本文链接:https://www.unidy.cn/articles/summary-2-2/