三个月,我将这款记账app带到了这个世界

WeChat Image_20170930191449 (1)

今年六月的时候,萌生了开发一个记账 app 的想法,想去用自己的 app 记账,管理收支。那时正好在英国是考试周,放假后,我回到了国内,准备去实现我的计划。没想到这暑假很快就结束了,在这个暑假中经历的太多的事,准备了要去美国读研的考试,遇到了生命中的另一半,同时,也将 Costuary for iPhone 带到了这个世界。

说道为什么要开发这样一个 app ,因为笔者在UK读书,市面上很少有记账 app 能够实现实时汇率的换算,带有这个功能的 app 也是操作繁杂。所以要自己开发一个,功能并没有那么复杂的,并且能够满足自己在国外和国内生活需求的App,所以自己编写了 iPhone 的客户端,为了获取汇率和 Excel 导出,又用 Java 设计和编写了 Costuary 的后端服务器。

比起今年年初开发的 Flat Weather,这个项目的代码量大约是他的十倍,需要实现众多的功能和模块。

这篇文章将会介绍一下 Costuary 的功能与我开发过程中的一些心得。

设计

说到设计,两年前,我还是一个 Android 开发者,Google 的 Material Design 是我的最爱,所以,Costuary 采用了 Android 5.0 之后采用的 Material Design 设计。其中掺杂了一些我自己的设计,因为 Material Design 的控件有时候操作繁琐。

早在5月份的时候已经零零总总的用 Sketch 画出了这个产品的 UI 和图标,之后开始了漫长开发的过程。

交互

与去年开发的Android版不同,iPhone版的Costuary采用了底部导航栏的设计,相比于Android通常使用的Navigation Drawer的抽屉布局,底部导航栏的设计即使在右手操作iPhone的时候都不会太费力。

功能

  • 多币种记账

Costuary 支持世界上主要货币的实时汇率转换,所有外汇在统计时会转换成主货币的数目,方便查看花销。

  • 日历视图

日历视图能够很直观的反映出哪一天有消费和收入。

  • 图表

说到记账软件,量化消费的图表无疑是重要的一环,Costuary提供了饼状图来视觉化一段时间的花销。

  • 多账户

可以建立多个账户来表示自己的银行卡,支付宝,现金等等。

  • 月预算

可以看出本月的预算还有多少。

  • 导出到Excel

如果想要进行更加详细的分析,可以使用导出功能将账本导出到Excel。

  • 备份与还原

允许备份账本内容到iCloud。

开发

去把一纸设计变成真正的产品,这是一个独立开发者应该具有的能力。只会写代码不只是我唯一掌握的,能够去设计出来自己想要的应用并且将他实现才是我在做的事情。

这款应用的开发并没有想象中的简单,需要自己去实现大量 Android UI 控件,很多圆角,阴影,字体,要慢慢的去调整,让控件适合 iPhone 的屏幕。整个应用的背后有3个关系型数据库来储存账户,账本与各种汇率。与以前开发的Flat Weather不同,Costuary会产生大量的用户数据,所以整个软件架构的稳定性变得异常重要,需要设计一些机制来防止数据丢失与损坏。

为了实现 App 获取每日的汇率,并且在 iPhone 上能够实现账本导出到 Excel ,我设计了一个服务器后端来处理这些繁杂的实物。每次 App 启动后会与我的服务器来更新最新的汇率。当用户选择导出时,账本会被发送到服务器上并处理为 Excel 发送到用户的邮箱里。

说到服务器,就不得不提到用户隐私了,因为导出到Excel功能需要将账本传到我的服务器上做进一步处理,很多人会觉得我侵犯了他的个人隐私。对此,为了保护我的权益与用户的权益,我撰写了Costuary 软件许可及服务协议Costuary 隐私政策,这是我作为独立开发者这么多年后第一次去写许可协议。

资费

与我的其他产品一样,这款App依旧是免费供大家使用的,作为独立开发者,我们都知道,绝大多数用户不会去珍惜一个免费的产品。就像 Flat Weather 一样,虽然获得了很多人的支持,但是也收到了很多人的吐槽。在 Costuary 中依然设计了一个的捐助按钮,如果大家使用之后喜欢这个应用,请支持我将他维护下去。

尾巴

Costuary for iPhone是我开发出来过最大的软件体系。我相信,能够独立开发出来产品的人懂得不只是编程。一个人要去经历项目的全部生命周期:规划,设计,开发,运营,维护,营销,这些是我开发这么多产品所学会的。

现在的 Costuary 只是第一个版本,还有很多 iPhone 的特性没有来得及开发,以后会跟上的,比如iPhone X的适配,3D Touch, Today Widget,Touch ID等等。

以前在少数派撰稿的时候,很多读者会来问我如何学习开发,我也特地去写过如何去学习编程,但我相信,真正想去学习的,想去为这个生态贡献出自己的一份力的人,自己都会找到学习的方法。我的专业是电子电器而不是软件工程,但是我不后悔当年去学习编程。

最后,还是感谢在背后默默支持我的人,我会不断地改进与提升,如果 Costuary 真的在记账方面给予了你便利,这是我莫大的荣幸。

 

 

打赏

6 thoughts on “三个月,我将这款记账app带到了这个世界

  1. hi,本该说些鼓励的话吧。但是我想你花了很多时间和精力,来做这个APP,还是希望使用的人提些中肯的建议吧。一.这个APP对于真正的手机记账来说,可以说是没有实际用途的。1.没有真正的记账的人会把帐目上传到你的服务器上的,实话说,我连iCloud都不会用,担心泄密呀。国内的iCloud和dropbox都不好使。2.汇率实时转换,不知道有几个人需要精确到每日每时每分每角,很多人只需要记个大概汇率即可。真的要购汇换汇,银行自然会帮你算好的。3.预算没啥用。最少我手机记账N年,没有预算这个概念。4.多币种,只要帐户设立自己添加多个即可,比如招商银行人民币,招行美元,招行欧元这样就有三个同一账户下的多种币种了。4.导出Excel?电脑上有专门的财务格式,这个格式真的合适吗?5.账户前的图标真的不用做或是要做的小小的,手机就这么大的屏幕,很多设计都不会把后面帐户的金额设计的很长,知道吗,账户8位数的人,也是需要记账的,而8位数根本放不下,包括小数点后面还有两位数呀。6.增加本地电脑备份恢复吧。7.一款好的记账软件,大家会一直使用的,时间长达N年。也会出钱购买的。而且,我告诉你一个我的发现,因为iPhone只让安装APP一次,所以说要记录多本账本的人,会需要多次购买同一个的APP。即你可以开发好了,分成多个版本来卖,或是起名叫账本1、账本2、账本3.。。。(比如说我是专业会计,帮15家公司记账,每家公司又有多个帐户。这样就需要多个同一个APP,但是又需要能安装在一部手机上)现在银行短信很方便,账户变化后,会短信通知你,手机记账及时、方便、好查询。

    1. 我是这个App的一个普通用户,我就觉得挺好用啊。

      这款app的定位本身就是位普通用户提供一些便利,你自称专业会计,还想着用这款app给公司记账??那你怕是不太专业吧兄弟。

      另外,关于你说的隐私论,麻烦你仔细阅读一下作者的隐私条款好吧,你要是怕你别用,windows系统mac系统iOS系统还会默默上传用户的使用情况呢,你咋不说隐私问题了??

      至于导出到excel,你说格式不专业??抱歉,普通用户不需要专业,专业的看不懂谢谢,而且我们也不需要看懂专业的格式。普通用户需要的是什么?是简单,清晰,能懂,我们不需要你这种专业会计来说三道四指点我们普通用户需要怎么记账,你怕是没弄明白公司帐单和普通群众账单的区别吧??

      再来看看你说的分成好几个版本卖的事,你到底有没有深入使用过这款app??你是不是不知道账户那一页是可以添加的??另外,你有没有考虑过按照你说的那样做的话,app store里面突然出现了十几二十个同名app,然后后面加了1, 2, 3, …,会给普通用户带来多少的不便利??普通用户怎么知道要下哪个?就为了你一个15家公司记账就要给你开发15个?想什么呢??

      至于你后面那条评论里的东西,还汉化其他app,你怕是不懂软件的知识产权??

      最后说几句话,作为一款刚起步的app,我觉得是已经很可以了,当然肯定会有不少bug,以及功能上的缺失,独立开发者都非常的不容易,我自身作为一个开发人员我也知道这其中的心酸。作者加油吧,听听普通用户的心声,其他人的不用管他,又不是做的企业级App。

    2. Hi Baitian,

      感谢您使用Costuary并提出建议,然而,就像你说的那样,你的评论,可以说是没有实际用途的。请明确你的定位,你是一个用户,不是产品经理,所以,请不要以自我为中心来对产品提出建议。并且,在提出建议前请确认产品定位。世界上不是所有的人都像你这种会计专业的人一样使用所谓的专业软件记录每天买早饭买衣服用了多少钱的。

      以下是我对你建议的回复:

      1. “你连iCloud都不用“,请不要给我吐槽,请写邮件给Apple,告诉他们,iCloud并没有实际用途,你们会计专业的人根本不会用。
      2. 关于隐私保护,请查阅 Costuary 隐私政策 http://costuary.top/policy/ ,上面阐述了我如何收集并管理,保存,保护您的私人信息。
      3. Excel导出,电脑上有专门的财务格式,请你说的详细一些,看看Office普及还是你那个什么财务格式普及。
      4. 你所说的你发现的App只能安装一次,让我分成多个版本来卖,作为开发者,我很清楚Apple的应用提交策略,也知道正常人不会这样玩。请问你为什么不去多买几个手机?这样岂不是更方便?
      5. 增加电脑恢复备份?你都说Excel导出没意义了还和电脑扯什么关系?
      6. 实时汇率,多币种,预算没意义,那你为什么不去用自带的记事本记账。
      7. 直接汉化其他优秀的App,请问你们会计专业的人是不懂英语吗?
      并且,《Costuary 软件许可及服务协议》的九条,知识产权申明提出。
      本软件的一切著作权、商标权、专利权、商业秘密等知识产权,以及与本软件相关的所有信息内容(包括但不限于文字、图片、音频、视频、图表、界面设计、版本框架、有关数据或电子文档等)均受中华人民共和国法律法规和相应的国际条约保护,本软件开发者享有上述知识产权,但相关权利人依照法律规定应享有的权利除外。
      我想其他开发团队也应当懂得保护自己软件的知识产权,请您懂得基本的法律并尊重他人的劳动成果。

      最后,希望您在学习会计的路上一帆风顺。如果您有钱,希望您可以选择企业级金融App来帮你记那15个公司的帐。

  2. 二、国内外已经有了很多的记账APP了,但总有改进的地方吧。你要是试用几个,长时间记录帐目,自然会知道,那些需要改进或增加功能的。在你自己的APP里去添加。
    三、或者直接汉化其它地方优秀的记账APP,增加新的功能或是适应国内的实际情况,例如,云端不好用不稳定。增加加密功能。
    希望你的下个版本更好更使实用。

Leave a Reply

Your email address will not be published. Required fields are marked *