【Go 之旅】VI 项目实战:一起看飞机 - 客户端

前面我们搭建好了后台(虽然实际开发中我是客户端后台一起写的),这次来看看如何做一个配套的客户端(虽然从各种角度看都非常『简约』),小归小,还是有一点意思的。


还记得系列第一篇中的设计稿吗?我把它捣鼓出来了:


(感谢上镜的各位名人名言)

具体实现

因为早早确定了接口,其实 iOS 部分的实现比后端还要简单粗暴,即使如此,具体开发过程中的坑有很多,比如(大家看一下源代码应该就知道了)

  • 时隔太久我忘了 Objective-C 要咋写,花了十分钟才摆脱了 C++ 写法
  • iOS9 新增的强制 Https 需要改一下描述文件才能走 Http(毕竟只是一个测试)
  • 为了调试方便所有的网络都走的是同步请求(理论上都得用异步来着)
  • 为了测试方便,所有的信息会统一输出到中间的文本框中,我干脆直接叫它 consoleTextView
  • 为了测试方便,采用类似终端输出,快速对接接口
  • 为了每次生成不一样的数据,随机生成用户 id,并利用手机本身的定位来获取位置
  • 没有做缓存(服务器端也没有),所以速度还是比较慢。上线不到 1ms,但是涉及数据库操作的『位置』和『附近』功能,基本就需要 200ms 了,这部分还有很大的优化空间
  • 天气部分使用 Yahoo 的 API,弄清楚格式即可
  • 航线部分没找到免费的,暂时先不考虑(也没时间自己写爬虫嘛)

总结

本来想着把这个项目撸完整一点的,不过因为工作压力和个人事务缠身,不得不仓促结尾。在可以预见的将来应该也不会继续填坑了,只有开源的代码可能能给大家一点帮助(至少服务端是可以的,客户端用了很多过分省事儿的方法,不太好)。

但是,但是。

这里预告一下,之后会用 Go 把我之前的毕业设计重新开发一次,并以开源服务的形式共享给大家。相信对于喜欢做笔记的同学来说,是一个非常好用的工具。这里是项目简介。

参考链接

捧个钱场?