惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google Online Security Blog
Google Online Security Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Stack Overflow Blog
Stack Overflow Blog
GbyAI
GbyAI
Microsoft Azure Blog
Microsoft Azure Blog
I
InfoQ
F
Fortinet All Blogs
N
Netflix TechBlog - Medium
Martin Fowler
Martin Fowler
腾讯CDC
C
CERT Recently Published Vulnerability Notes
博客园 - 聂微东
L
LINUX DO - 热门话题
Y
Y Combinator Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Microsoft Security Blog
Microsoft Security Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
WordPress大学
WordPress大学
C
Cisco Blogs
A
Arctic Wolf
Latest news
Latest news
Jina AI
Jina AI
P
Proofpoint News Feed
博客园 - 叶小钗
Vercel News
Vercel News
T
Threat Research - Cisco Blogs
博客园 - 三生石上(FineUI控件)
K
Kaspersky official blog
C
Check Point Blog
H
Heimdal Security Blog
博客园 - Franky
小众软件
小众软件
The Register - Security
The Register - Security
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Google DeepMind News
Google DeepMind News
AWS News Blog
AWS News Blog
The Hacker News
The Hacker News
T
The Exploit Database - CXSecurity.com
aimingoo的专栏
aimingoo的专栏
Project Zero
Project Zero
G
GRAHAM CLULEY
爱范儿
爱范儿
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Scott Helme
Scott Helme
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
NISL@THU
NISL@THU

木土金王可

复盘 2024,年度好物分享 落地 第二十台相机:宝丽来(Polaroid)Impulse AF 第十九台相机:哈苏(Hasselblad)X1D II 第十八台相机:宝丽来(Polaroid)Macro 5 SLR 第十七台相机:康泰时(Contax)S2 稻荷山 Dave Chappelle: The Closer 语言是思想的边界 对街头卖惨表演的看法 《民主森林》 电梯英雄 2023,年度好物分享 《大画幅 4x5》复活 新加坡华侨银行(OCBC)开户指南 第十六台相机:宾得(Pentax)PC35AF-M SEDATE 第十五台相机:沙慕尼(Chamonix)4x5 F2 Xbox 连接 Studio Display Twitter、Apple、Meta 和 Reddit 广告平台使用体验 第十四台相机:康泰时(Contax)S2 你到底什么时候买相机 拍摄胶片的理由 HomePod 不能作为 Mac 音响 男性生来就是残缺的女性 第十三台相机:柯尼卡(Konica)Big Mini 301 三年,十二台相机 恐怖片很好看啊 比残忍更残忍 用 SwiftUI 重构「行动日」 推荐《女生呵护指南》 你是左派还是右派? 驯服内心的猛犸象:为什么你应该停止关心别人对你的想法 想写点什么,但又不知道该写什么 摄影构图 精致的结婚照 中文没死,是有的人死了 上海爆发 COVID-19 疫情以来我收藏的文章(持续更新) 自我审查 25 美元,成为美国计算机学会(ACM)会员 将同事送我的仙人掌转换成 3D 模型 当我们谈论离屏渲染时,我们在谈论什么 如何让 iOS 给你的应用开后门 二零一九年夏秋之交工作生活的异动 一声一世 iOS 限制输入字数与特殊字符的巧妙方法 对于番茄学习法的误解 Swift 中的空字符串 我如何自学 iOS 开发 为什么我不喜欢社交网络 如何与人见面 为什么我不喜欢即时通讯 以配置信息(UserDefaults)的形式存储应用数据 在文件沙盒中读取与写入应用数据 在 iOS 开发中使用键值对监听(KVO)与通知(Notification) 介绍 GCD 中的线程,队列,延迟执行,线程阻断,信号量,任务组与任务对象 iOS 原生 URLSession 网络请求 什么是自动引用计数(ARC)和引用循环 在 iOS 开发中使用代理与协议 为什么我会把 Google Pixel 换成 iPhone SE? 手动进行 Nexus 和 Pixel 系列手机的 OTA 更新 开启 Chromebook 的夜间模式
独立开发的第一个应用:行动日
kinnouka bokudo · 2018-07-18 · via 木土金王可

独立开发的第一个应用:行动日

「行动日」是一款以「日」为基础,包含「不办清单」的,助您效率提升的待办清单类应用。

之所以我会开发这个应用,是因为我那段时间里对效率、时间管理感兴趣,但是现有的待办清单应用总是不能满足我,有的不能重复提醒,有的不能添加子项目,有的太复杂,有的我觉得太丑等等,所以想要开发一个对自己来说得心应手的待办清单类应用。而且马上大四,准备找工作,这样面试时也有能拿出手的作品。那接下来我会简述我是如何打造「行动日」,然后介绍它的独特之处。

简述

在最初设计之时,我设想让用户以最快捷和方便的方式管理待办事项,所以我仔细构思着一些小细节,希望能帮助用户减少点击屏幕的次数,并且以此画出草图,看看大概的布局和控件摆放,以及各部分之间的关联,然后标注上一些可能会用的功能,或相关代码。

有了基本雏形之后,我开始在脑海里设计应用界面,我想让「行动日」看起来干净简洁,让用户带着愉悦的心情使用「行动日」。所以我选用鲜艳的橙色作为应用的基调色,而应用大部分界面则是以白色为主。

然后就是具体的开发了,由于我是边自学边开发,所以开发过程很漫长,遇到的问题也多,所以开发过程也可以说是我如何自学的过程,未来我可能会专门写一篇相关文章详细描述。而接下来要说的则是贯穿开发过程的核心理念。

核心理念

我最初的理念是想让用户以最快捷和方便的方式管理待办事项,所以一开始我就砍掉了「标签」功能。因为我认为标签的选择和出现,只会让徒增用户的使用和界面复杂度,而「行动日」则主要是以「日」来区分待办事项。

而后来又有幸得到少数派编辑们向我推荐的一篇马萨诸塞州综合医院战略规划和信息管理的前任高级副总裁 Allison Rimm 所写的关于待办清单的哈佛商业评论文章《Taming the Epic To-Do List》,她的文章中有写道:

大多数人不分青红皂白的在使用时间管理工具,所以成了时间的仆人。

说出这种绝对能够印在少数派公司内部的墙上当醒世恒言的话的人,她做法很值得信服。她为避免她所述的情况发生,用三个清单应对:

  • 重要但不紧急的待办清单。
  • 今日所需完成的待办清单。
  • 不办清单。

于是我开始重新思考,的确现在很多人每天都想着应该做什么,而没有想过不该做什么,甚至每天花许多时间投入在没有意义,也没有意思的事情上。上过电脑玩物站长的讲座课程的朋友,或许在里面听过一个概念:

增加效率最有效的方法就是「不要做」,比起努力把 10 个琐事变得熟练,还不如想办法去掉其中 8 件琐事。如果可以放下、舍弃或自动化这些杂务,那么生活与工作自然多出更多自己可以运用的时间。

所以除只是在交互方式上设计得足够快捷以外,我像这位头衔很长的 Allison Rimm 一样,为「行动日」设计最高效的时间管理模式,并将 Allison Rimm 的理论作为「行动日」的理论背景,再依照此背景开发出最核心的功能。

核心功能

一日

「一日」代表确定的一天,用户创建的带有具体提醒时间的待办事项,将显示在「一日」,并按时间顺序排序。如果时间相同,则按重要性排序。

点击位于「一日」右上角的「三行按钮」,「一日」可分别再细分为「今日」、「重要」与「今日重要」。而通知中心中的「一日」小部件,也会按照主应用的显示方式进行显示,有助于用户专注在真正重要的事情上。

不做

「不做」即是「行动日」中的「不办清单」,当用户添加不办事项时,会默认不做这件事直至当晚 10 点,当然用户可以自定义,不做此事多长时间,两小时,两日,甚至永远。当不办事项未到截止时间时,是不能够点击完成按钮的,但是如果用户在此期间违背自己本来意愿,做了不该做的事,应该删除此不办事项。用户可以启用通知中心的「不做」小部件,这样可以经常看到,从而提醒自己有意识地将精力放在真正值得去做的事情上。

所以「一日」和「不做」这两个页面,实现的是头衔很长的 Allison Rimm 的三个清单的功能,这也是「行动日」最核心的功能。但我没有满足于此,所以我在我最初的理论基础上开发出新的非核心功能,我将它称之为「表面功能」。

表面功能

某日

「某日」代表不确定的一天,不带有提醒时间的待办事项将现实在「某日」中。之所以设计这个页面,是因为我有时候会想做一些事情,但是又没有明确的时间去做,像这样的事情,就可以放入「某日」,既是为不将此事遗忘,也是为未来指明方向。

当用户点击「某日」上的加号按钮,新建待办事项时,在事项的详情页面,将会默认不开启提醒,而从「一日」添加待办事项时,将会默认开启提醒,并默认提醒时间为两小时后。但用户总可以自己设置是否开启提醒。

此外,用户还可以选择事项是否需要重复提醒,是否将其标记为重要等。

完成

从「一日」、「某日」和「不做」中完成的事项,都会在「完成」中显示。在「完成」中,可以查看和搜索已经完成的事项,并且可以根据已完成的事项直接再次生成新的待办事项,省下用户重新添加待办事项的时间。

最后

在未来的版本中,我会陆续增加对 iCloud 的支持,对 Apple Watch 的支持,以及运用其他我的所学知识继续完善「行动日」。无论您对「行动日」有想法、建议或是疑问,还是想与我讨论学习,都欢迎与我联系。希望我这点微不足道的开发能力能助你驯化时间。

「行动日」已登陆 App Store,感兴趣的朋友不妨尝试一下。

2018 年 7 月 18 日