项目规划生命之旅其一
摘要
ios第一个开发企划,目标是记录一天的生活细节,目前看来稍微有点操作不便,未完待续;
想法出处
工作期间有一次出差杭绍台,因为要汇报每日工作,写总结有的时候会漏掉一些事情的细节,可能按照大致阶段去写,领导也许会质疑为什么一天只做了这几件事情。但是从我角度出发,每件事可能需要很多的细节来填充。如果我不表达,领导肯定是不知道的,误会就这样产生。期间也有听过市场部的同事有所抱怨要回忆之类的;
后来渐渐有了总结日志的习惯,最初承载平台为有道云笔记,但总归太原始了,在想有没有类似日志框架的app来记录我的日行程动作;
发现大部分都是书写日记类型app又或者设立与完成目标类型app;
借鉴他人项目
期间发现一款名《Progress进度管理》的app。功能挺简洁的,超级轻量,售价记得是3元,给我了很大的启发。他的主要功能点大致分为三个部分:
- 新建任务,用于设置一个目标;
- 打卡任务,设立好的任务被添加到首页,点击card天数+1;
- 任务归档,打卡完毕任务归档,用户历史检索;
同质化app极多,为什么他的app可以脱颖而出?
- 价格便宜,此为决定项;
- 功能很简洁,界面美观,此为优势;
- 操作便捷,学习成本低,此为优势;
- 在初始状态时有设立默认card,可以让用户第一时间知道如何操作,此为加分项;
- 功能切入要点及其准确,知道用户需要什么,任何产品上都适用,此为核心;
《Progress进度管理》截图
1.0.1
功能设计
根据《progress进度管理》修改:
- 修改
- 打卡任务页,更名为首页,将card含义改为标签;
- 新建任务页,更名为新建标签页,改为新建标签;
- 任务归档页,更名为足迹,保持归档含义,改为自动每日一归档;
- 添加
- 首页添加脚印,页面分为上下两部分,上半部为标签与新建标签,下半部为脚印;
- 添加脚印详情页,内容为细节(开始时间,结束时间,描述信息 可为空,等等);
- 添加足迹详情页,内容为脚印;
- 添加统计模块;
功能解释
用户创建的标签代表一个动作,例如新建三个标签:<娱乐>、<工作>、<生活>、<学习>;
- 标签
- 计划每天6点背单词,起床时点击一下<学习>,此刻首页下半部分添加一条脚印,状态为进行中(标签=学习,开始时间=CURRENTTIME,结束时间=nil,描述=mil);
- 8点开始早餐,再次点击学习,状态更新为已结束(结束时间=UPDATETIME);
- 10点开始写ios,点击工作,此刻首页下半部分添加一条脚印(标签=工作,开始时间=CURRENTTIME,结束时间=nil,描述=mil);
- 以此类推…;
- 脚印
- 夜间,躺在床上浏览一遍今日脚印,只能看到各类型标签开始与结束时间;
- 如果愿意,此时可以修改脚印详情,比如补充详情描述,这个标签时间段做了哪些事情,再比如微调下时间的误差等;
- 甚至为今日足迹添加一段总结日志;
- 足迹
- 每日归档的脚印列表称为足迹;
- 统计
- 目前只有想到时间维度的标签占比饼状图
模型
1 | { |
1 | { |
1 | { |
总结
其实吧,分析下来感觉并不会有人用,也不会有人尝试:
- 原因是操作相对的麻烦,需要打开应用,开始,相应的解决方式,可以通过桌面组件或者配合applewatch使用;
- 至于功能嘛,真的有人需要精确到时分秒吗,适用场景并不是很多,就算有,可能在真正做起事情来之后也就忘记app的事情;
- 当初我需要这样的功能是出于两种情况:
- 其一,监督自己的学习时间;
- 其二,想用于工作汇报;
- 但自从开始写博客之后对这方面的需求就为0了;
- 怎么说,自己第一个独立项目不期望做的多么完美,甚至有一些其他的想法,比如亲子绑定之类的。但先不想那么多了,做一个完成度60的及格项目,只要是有自己的想法即可,毕竟我对自己的要求是越做越好,调起得太高我怕到后面缺氧;
工期安排
- 7号规划文档;
- 8号界面设计;
- 9号tabbar页面;
- 10号首页;
- 11号足迹页面;
- 13号至15号发布appstore;
目标
- 售出50份
- 评价4✨
- 不出现bug/解决掉所有用户提出bug
工作进程
2021-06-08
- 完成首页基本框架设计
今日截图
1 | 曲率 .cornerRadius(3.0); |
- 意外情况
本来想要使用timer控制进行中label表盘转动,如果过多会导致生活标签section出现拖影分离,越多timer越明显,虽然观看cpu占用,内存占用并无大区别,但依然放弃使用了,毕竟我还是个门外汉;
- 明日计划
- 将首页界面细节稍微调整一下,并不涉及动画效果;
- 完成FootmarkDetailHomeView;
- 完成trackView;
- 完成trackDetailView;
2021-06-09
- 调整首页布局;
- 添加脚印详情页;
- 添加添加标签页;
今日截图
- 14日计划
- 完成trackView;
- 完成trackDetailView;
2021-06-14
- 确定好并完成trackView布局形式
完成截图
- 15日计划
- 开始了解coredata并完成demo(CURD);
- 制定module格式;
2021-06-15
- 完成昨日目标,开始与coredata联动,存在穿透bug,小问题
16日计划
- 因为去看房子,随缘写
2021-06-17
- 修改标签部分调试完毕
遇到coredata删除,因封装不到位删除异常;
修改页面绑定数据策略需要修改;
2021-06-19
- 在尝试用最优解让子视图绑定NSManagedObject对象
2021-06-20
- 重构并完成标签的修改/删除/添加,数据传递模块
2021-06-21
- 按照java思想封装core data service模块
- 标签的开始结束,已经添加到脚印,并且控制开始与结束
2021-06-23
- 完成footmark模块
2021-06-24
- 调整下界面
- 完成饼状图统计
- 记录用户第一次登陆时间,用于加载track
- trackView添加数据源,时间筛选
- 记录一个问题:foreach要加id否则会出现奇奇怪怪的bug
2021-06-30
测试修复bugf
- label开始添加新label error 原因为 labelEntity == labelEntity 按照java思想判断两个对象是不是一致
,写法不太对,正好逻辑改了,就给注释了 - 兼容暗黑模式
- track 但是颜色改双色
- 微调样式细节
2021-07-01
- 跨天结束按照start时间23点59分59秒
- 修改track颜色bug
2021-07-02
- 基本已完成,明日开始编写新手引导页
2021-07-03
- 放弃新手引导页,还要p图太麻烦
- trackView必须要重新开启页面才能重载颜色,我很不爽,换一种渲染模式
回顾
- 延期分析
自6月3日策划开始到现在已经一个月了,原本计划一周最慢两周完成,结果因为上个月各种琐事所干扰。
主要延长进度的节点为:大黑来杭、菊花工作事件、618事件、找房事件、搬家事件。
还有因为技术所拖延的情况:coredata、codata数据模型各页面同步、属性初始化、传值等
接下来应该就会稳定了
- 项目分析
理想流程为:创建标签 -> 标签开始 —> 记录脚印开始 -> 标签结束 -> 记录脚印结束 -> 浏览今日脚印 -> 编辑脚印详情 -> 浏览足迹
标签页
标签页
本来想做个引导页面,精力有限不想搞了