Lights to do

本来想安安稳稳的睡觉的。可是我它丫的躺在床上愣是睡不着。
也许是大晚上的还在喝茶的缘故。也有可能是因为想到这个项目有点小激动。算了,本来打算明天才写的需求现在不妨赶出来了吧。顺道喝多一杯茶。

名称:Lights to do

目的

设计出一个todo应用,本来是觉得手头上的那个todo用着感觉不太好用,因为自己很少用手机(即使有,也是为了打发时间,或者有事,也自然而然的不去看这个todo list,即使它安然的放在手机主页上。好吧。我承认这是因为我拖延症而找的借口。)。

由于此,想自己做一个能够有以下功能的todo app:

  • 能够添加todo(即代办事项)
  • 主界面是一个todo list
  • list里面早,中,晚的分隔的显示布局(个人不喜欢目前手头上一个整体的list的布局,毕竟这样方便开发,或许在后面我也可能会傲娇的妥协也说不定)
  • 最最重要的是:每一个todo有个执行时间,app会在你设定的时间内提醒你是时候去『干活』了,当然你也可以先完成。(对于拖延症的我来说这是必须的。)
    那么之后我又想了,这么弄其实也没能提高多少执行力啊,例如我平时定的叫我去洗澡的闹钟也是时不时被我关了,心里想着过几分钟把手头上的处理好再去,结果就是拖了很久。。
    我在想我一个那么喜欢『玩』的人。给这个东西加个奖惩制度吧。一开始设想是如果每天把todo list完成的话,就给奖励。如:『每天完成todo list的内容,当连续完成且天数累计到3,4,6,8,10,11,12…就给自己买最喜欢喝的酸奶,虽然我基本上每天喝,但是如果没坚持的话就失去喝酸奶的机会了。』
    当然。人都会犯错。有时候自己会错误估计todo所需要的时间(可能是高估自己的能力或者说是低估任务的难度,也可能是突然有事要处理,而这个事所占用的时间很多以至于不能完成todo list)所以想增加可以把这个todo置后的操作,不过这个操作是要以一定的积分换取的。
    那么为了获取积分:(暂定每天设计todo的时间为6小时,其实我们能够每天,每天,就是每天。坚持这6小时已经很不容易了。当然。你说6小时太少了。你要多学。这没人阻止。每天剩下的剩余时间随你安排。对我来说。可能会做更多的总结并把内容『输出』到这里。)
  • 一开始有6分。(即一个延迟todo的积分)
  • 我们每完成一个todo可以拿一分(这部分每天上限为6分,假设每个todo为一分,当然你可以按照自己想法细化todo量,但是最高只有6分)
  • 每天的第一个todo完成后可以拿到额外的一分,相当于签到性质的
  • 每当todo list完成天数累加到21天,42天…(21天的倍数)时,加2个延迟todo的积分,即12分
    咦。这时候又来想法了,要玩就玩绝一点,做一个lights成员间交互的,彼此押上赌注的(我的是我每天都喝的酸奶,大家也可以选择一个你每天都要有的东西作为赌注,比如宵夜啊,鸡腿饭啊。。),也来个『彼此炫耀』的地方–朋友圈,然后在每个学期结束后看谁坚持天数(具体是指完成todo list的次数)最少,最少的请大家吃一顿饭。
    想法是有了,就是不知道大家陪不陪我一起颠。。
    其实能把这些需求都完成,也是一个在我水平来看比较大的项目了。按目前的想法,这些要考虑安卓端也要服务器端。

业务需求 (想征求大家的想法)

  • 我之后会在github的lights组织上创建一个项目,然后大家可以的话就在通过git上传到github上来给我提出需求,是时候展示你们git水平了。当然。碍于有的成员不是it界的想提出需求可以直接告诉我。就这样。。
  • github组织地址: https://github.com/LightsGithub/LightsTodo

技术实现

  • 落实MVP设计模式
  • 如果可以,尽量采用Fragment
  • 尽可能使用第三方开源库
  • 如果可以,使用rxJava来处理事件流
  • 使用okhttp作为网络请求库
  • 服务器用python来实现?毕竟要暑假还要带思博入坑。

实施时间

  • 搞定AcParser之后会直接搞这个项目。那时候应该需求完善了,同时软件设计书也差不多了。
  • 我会尽可能在这个暑假发布alpha版本。赌上我在lights的尊严。