跳转到主要内容

周二11点哪个教室空闲?

Editing & conflicts 1 分钟阅读

当有人在走廊里问你问题时,为什么你的课表总是无法直接给出答案。

您正走在去吃午饭的路上,有人拦住了您。

“周二十一点的时候,2号实验室有课吗?我们要接待一位来访的演讲者。”

您知道答案。它就在您制作的课表中。但您无法回答,因为课表是按班级组织的——三十个网格,每个学生组一个,而2号实验室出现在其中每一个网格的某个位置。

于是这变成了“让我查一下再回复您”,接着就是翻阅打印件,或者扫描三十列数据来统计教室。

信息就在那里。只是归档的标题不对。

课表的构建方式与阅读方式不同

这并不是您构建方式的缺陷。课表是按班级编写的,因为约束条件就是这样表达的——该组每周上这门课多少次。

但它是按资源查询的。哪个教室是空的。哪个老师在第三节课没有安排。当我上课时还有谁在教课。

每一位课表管理员最终都在脑海中维护着第二种视图,并成为学校里唯一能回答这些问题的人。

将网格横向旋转

您可以不再使用每个班级一个网格的视图,而是要求每个教室一行,将日期和时间排在顶部。同一份课表,只是进行了透视——无需重新计算,无需重新求解,只是归档在不同的标题下。

2号实验室变成了一行。周二十一点变成了一列。答案就在它们交叉的地方,大约一秒钟就能找到。

这同样适用于老师:每人一行,他们整周的安排都在一条线上。“现在谁有空?”不再是一个需要您去研究的问题。

当您实际安排课程时,它会更好用

阅读只是简单的一半。有用的部分是当您手头有一节课,正在寻找放置它的位置时。

拿起一节需要教室的课并切换到教室视图:网格会标记出哪些教室在当天该时段是真正空闲的——不是看起来空闲,而是确实空闲——以及这节课目前在哪个教室。您不需要对比两个网格并碰运气。“这节课可以放在哪里?”这个问题在您正在查看的屏幕上就能得到解答。

镜头:教室,所有十个教室作为行,一个历史课 · Liam Brennan 的虚影悬停在图书馆 · 周一 10:20,带有虚线放置轮廓。网格实时进行X光透视:绿色 = 这节课可以放在这里,粉色 = 不可以
镜头:教室,所有十个教室作为行,一个历史课 · Liam Brennan 的虚影悬停在图书馆 · 周一 10:20,带有虚线放置轮廓。网格实时进行X光透视:绿色 = 这节课可以放在这里,粉色 = 不可以

然后将其拖动到您想要的行中。课程就更换了教室。您无需打开表单、查找教室字段或输入必须完全匹配的教室名称。

它会在您出错时提醒您

手动移动课程是好的课表悄悄失效的地方。您解决了演讲者的问题,却在下方两行制造了一个没人注意到直到周二才会发现的冲突。

同样的拖动,向下移动一行到艺术工作室 · 周一 11:10 — 标注显示 ⚠ 此处有冲突 · 周一 · 11:10 - 11:55 · 学生组冲突:11B
同样的拖动,向下移动一行到艺术工作室 · 周一 11:10 — 标注显示 ⚠ 此处有冲突 · 周一 · 11:10 - 11:55 · 学生组冲突:11B

因此,网格会在您操作时进行检查。将某项内容移动到无法工作的时段,它会立即提示——不是在保存时,也不是在下次打开时。任何不能移动的内容都可以锁定,这样在错误发生之前,答案就是“不行”,而不是事后才发现。

体育课 · 体育馆上的虚线锁定边框
体育课 · 体育馆上的虚线锁定边框

走廊里的问题,在走廊里回答

这些都不是新信息。在求解器完成工作的那一刻,每一个答案都已经存在于您的 .fet 文件中了。它只是为了生成它的计算机而排列的,而不是为了必须使用它的人而排列的。

将网格横向旋转并不会改变任何一节课。它改变的是谁能回答关于课表的问题——当您是学校里唯一能看懂课表的人时,这占据了工作的大部分。

“周二十一点的时候,2号实验室有课吗?”

有。或者没有。大约一秒钟,就在走廊里回答。

在真实课表上尝试教室视图 →