WakeUp课程表3.0重构说明

WakeUp课程表 3.0

LOGO

下载地址:酷安市场源

上架情况

  • 酷安[√]
  • 应用宝[√]
  • 魅族应用商店[√]
  • 小米应用商店[√]
  • OPPO应用商店[√]
  • VIVO应用商店[√]
  • 华为应用商店[x]

华为给的驳回理由是没有提供测试账号,我猜测是因为侧栏有个“点击登录”的提示。看来上架华为应用商店要等登录功能做好了hhh。不过不得不说华为应用商店的审核确实比较严格,现在上传的应用涉及敏感权限的都要截图写个文档来证明。

下面是一些截图。

主界面

导入课程

侧栏

重构概况

这是WakeUp课程表的Kotlin重构版本,它重构的地方不仅仅是换了一种语言来编写这么简单。若只是单单地用Kotlin替换Java,那重构的意义其实也不太大🤔。在用户看来,这是一个界面更为友好、启动更为迅速、功能更为强大的版本。对我而言,此次重构的意义更在于设计模式的转变。

旧版从动手到首次发布,仅仅用了一周的时间,编写过程极为匆忙,很多地方都来不及细想,代码写得不甚规范,经常是一个Activity把所有与它有关的代码容纳进去了。后期维护起来看得确实有点头晕,而且需要扩展新功能的时候……嗯无从下手,老是用一些曲线救国的方法。我认为旧版从实现上最令人诟病的一点,应该是数据的存储过分依赖SharePreferences,其实核心的课程数据也是用SP来存储的🤣。旧版第一次引入数据库还是为了管理AppWidget桌面小部件,使用的是GreenDao,这种做法好像是在我设计咩咩时想出来的。咩咩的桌面小部件方面我自认为是做得很完美了。

代码糟糕的旧版在前,重构时我就重视起了框架。MVC、MVP、MVVM……其实我是一直会纠结哪种框架是最佳实现的,也关注Google推荐哪种框架。然后就发现了Android Architecture Components,谷歌在Google I/O 2017发布一套帮助开发者解决Android架构设计的方案,名字有点长……这套框架我这萌新在使用初期真的是各种不爽,但到了后期,写着写着就忍不住感叹这套框架是真的牛逼。不过关于这套框架的大部分中文资料都只是官方文档的翻译,会让人摸不着头脑。我会尝试具体写一下我使用这套框架的情况。

开源相关

使用的开源库

其他

模拟登录和课程解析部分参考了另一个课程表项目,不过我对课程解析部分改动非常大,导入更为准确。

TODO

  • 集成“咩咩”(这意味着咩咩也要用Kotlin重构啦)
  • 完善对方正教务课程的解析
  • 数据备份和恢复
  • 课程分享
  • 增加对夏冬令时的支持
  • 注册登录,小范围的社交,主要是为社团的活动服务
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,462评论 25 708
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AGI阅读 16,017评论 3 119
  • 简书是什么? 我也不知道,在体验中慢慢了解吧。 我是谁? 某奇葩,某坑,具体等别人来定义吧。 我会在这里留下什么?...
    萝卜归来阅读 214评论 1 0
  • 记忆中的爸爸长年不在家,天南海北的打工赚钱。但是那个时候经常活干完拿不到钱…… 记得有一天我和妈妈在晒割来的杂草。...
    柳絮轻舞阅读 283评论 0 1
  • 姓名:董小龙 单位:宁波银行 宁波盛和塾《六项精进》224期利他二组学员 (知~学习) 《六项精进》2遍:共10遍...
    dxlong11阅读 243评论 0 0