对于课表软件,实质就是信息的输入再展示,因此解决的需求即方便地「输入课程」和「查看课程」,因此课程表应该更加纯粹

    一个小 App 对自动导入的执着

    有 1000 个学校就有 1000 个教务系统,各个系统间看似差不多,但各有各的脾气。作为一款个人开发的课程表,并没有那么的能力去实现所有学校自动导入功能,工作量实在太庞大。因此具有适配不同学校的能力的「大厂 App」理应更占优势。

    但是开发者并不想放弃自动导入的功能,还是在自动导入方面努力做出了自己的尝试。L!NG 提高的解决方案是Safari Extension,通过在 Safari 中执行 JavaScript 代码来实现自动化的导入。这样,只要有相符合的 JavaScript 文件,L!NG 就能从任何学校导入课表信息。这也有它的缺点,JavaScript 文件需要个人制作,门槛相对于来说较高 ( 包含对教务系统的解析以及 JavaScript 的编写 ) ,但是一劳永逸。

    有兴趣的派友可以参考《导入课程》做出尝试,同时开发者也在继续尝试做出普及化的解决方案。

    当然了,L!NG 手动输入方式也是很符合习惯的。相比较第三方课表中常见的「事件型」课程表设计,L!NG 采用了国内主流 App 的基于课程的设计,相比其他软件手动输入的时候条理更加清晰便捷,符合国内课程布置情况。

    不想打开你手机?抬起手就可以看见课表

    根据我跟开发者的交流,开发者最初的开发重心就是做一款腕上课表,而经过我的体验,L!NG 在手表的 UI 上不及其他大厂 App,但它充分的运用了 watchOS 的新特性,让我爱不释手。


    Vertical Paging

    Vertical Paging 是 watchOS 3 中引入的新特性。在一系列结构相同的课程 Detail 页面中,你可以直接转动数码表冠来显示上下的信息。这一看起来很方便而且实现也不麻烦的特性,在其他同类 App 中却没有人采用 。

    Complication 和 Time Travel

    对于课程表这类时间软件来说,不支持 Complication 可能是最大的一个弊端。通过对 Complication 的支持,极大简化了上课表的交互流程。这也是我下一代智能手表还选择的  WATCH 的理由。要看当前的进度,课程时间,和其他信息,你所要做的就只是抬起手腕。

    而要看之后的课程,只需要转动 Digtal Crown 就行了。L!NG 最多支持两天的预览。

    另外,L!NG 还能够自定义表盘挂件显示的内容。你可以自己选择是否显示图标、进度条显示时间、剩余课程数还是名称.

    在原生里做文章

    L!NG 对 iOS 原生日历进行了单项整合,即添加过的课程可以直接导入系统原生日历中,但是也有一些不足的地方:

    • 不可以添加至已存在的日历
    • 修改课程后,需要删除前一版导入的日历,并重新导入
    • 导入后不会显示教师信息

    开发者在 Widget 这里设置了两个版本,Basic 和 Pro 。Pro 能够查看今明两天的课程信息,并且会把最相关的信息显示在最上面,并且点击课程会跳转至 App 中显示,据了解在后期版本会提供更加丰富的自定义功能。而 Basic 不会显示课程进度和明日课程。( 此为 2.2.6 Widget,版本即将在商店更新)

    L!NG 同时也提供了 URL Scheme ,不过目前只有四条,不过普遍是应用内的使用,对外使用还不支持,后期应该会持续增加。

    • lingapp://
    • lingapp://+json data
    • lingapp://pro/
    • lingapp://lesson/+uuid


    对比


    目前市面上的课程表很多,我尝试过超级课程表、课程格子、iStudiez Pro 以及各大学校自己开发的课程表 App。但是用了这么多 App 后,却并没有给我带来一个很好的体验 ( 除了 iStudiez Pro )。在深度体验了 L!NG 后,我有种不一样体验。

    我选择了以下具有代表性的 3 类 App 进行横向对比:

    • 课程格子 : 老牌课程软件,支持的学校相当多,并且能自动导入,可以区分和保存学期,界面较为简洁,但有少数广告以及无关课表本身的功能,不支持  WATCH 。
    • 超级课程表 : 课程软件,支持的学校比较多,并且能自动导入,界面较为杂乱,广告以及无关功能较多,不支持  WATCH 。
    • 课程时间表: 界面简洁干净,并且支持 iCloud同步,同时也支持 WATCH ,功能过于简单,添加课程不便,属于事件型课表软件。
    • 学校自主研发 App : 和学校教务系统对接程度最高,能够显示普通课程与实验课,并且可以查询考试成绩。部分学校 App 可以自己修改和添加课程,少数支持 Widget 。
    • iStudiez Pro : 国际老牌课程应用,界面完善美观,并且有自己独立云同步系统,功能完善,并且是全平台支持。并且和日历整合,带有联想输入。除了第一次需要手动添加课程学期之外,其余体验都相当不错,具体可见《分分钟,成学霸:iStudiez Pro》一文。

    而对于课表软件,实质就是信息的输入再展示,因此解决的需求即方便地「输入课程」和「查看课程」,因此:

    导入课程 : 

    •  自动导入:在这些软件中,导入最方便的应该是学校 App ,不仅能够很方便的导入常规课程,还能导入实验课。而课程格子,超级课程表只能导入常规课程,实验课还得手动输入。而其他第三方 App 就很惨了,不支持课程导入。前面提到过,L!NG 支持自动导入,不过这是有前提的。
    • 手动导入:课程格子、超级课程表、L!NG 的输入方式都大致相同。而零时性添课,前面两个都能直接在主页面上添加课程,L!NG 则需要在课程管理页面中进行进一步设置。iStudiez pro 的课程设置没有「周的概念」,不太贴合国内课程安排设置。

    显示课程 :

    • UI
      • 课程格子:主界面简洁,能显示当前所在天和时刻。
      • 超级课程表:界面布局混乱,对于大多数情况,周六和周日是空白的,造成空间分配不合理。
      • L!NG:色块显示,能够区分空闲时间
      • 课程时间表 :色块列表显示,需要再进行点击才能显示输入进去的其他信息。
      • iStudiez Pro:列表显示,同时提供了方便的日历视图。
    • Widget :
      • 课程格子:折叠状态下,显示下一节课,展开模式下显示全天课程。并且能够查看其它日期课程,但个人觉得这样设计是误导用户。例如,要查看下周的课程就要手动点击 7 下,远不如打开 App 方便,并且点击课程并不能跳转至 App 显示详情。
      • 课程时间表:只有折叠状态,只显示开始时间与名称,不能显示其他内容。
      • iStudiez Pro:折叠状态下显示下一节课,点击能够跳转至相应的页面。
      • L!NG : 折叠状态下,显示下一节课与当前课程进度.展开时,显示今明两天的课程,点击课程能够跳转至 App 显示详情。


    L!NG 目前依旧不是那么完善,和 iStudiez Pro 这种实力老牌 App 依旧有不足的地方,但是却可以给我不一样的体验,也是课程表 App 中的新生力量。如果你喜欢,你可以在 App Store 下载 L!NG ,免费,有内购。

    开发者说 @Del. : 

    感谢大家可以支持我的 App,目前有些功能不是很完善,例如自动导入还不是很系统,门槛也较高,希望大家可以在评论里提出自己的看法和意见,也可以加入 Telegram 群组!

    福利

    在评论中说说,你现在在用哪些课程表 App,它能满足你的需求吗?你是如何管理课程表的?我们会在 4 月 6 号送出 10 个 L!NG 的兑换码。

    恭喜 YaoTong王wiki维维超人想静静Minority森二danceym阿嘉古逸_格里芬彬dopedonglinli 获得 L!NG 的兑换码一个,稍后我们会通过站内私信和你取得联系。