功能分解——Android下画分时图与k线图有感

时间:2021-10-29 08:37:39

  最近工作极度繁忙,已经好久没有更新博客了,总感觉要是再不抽空总结总结点东西,分分钟就会被懒惰的状态给打到了。同时也希望同学们谨记,如果你已经决定要坚持某些正确的东西,比如背完某章单词,看一完本书抑或是跑完多少公里等等,都要坚持下去,不要轻易被自己的懒惰与懈怠打败……

  今天要讲的是关于怎么解决某些砰然大物般的问题,我回想了一下过去遇到的所有难题,都可以划分成为一个个微不足道的小问题。于是想起了管理学里面有关“拆分”的内容,就是任何复杂的东西都可以拆分成一个个简单得任何人都可以做的地步。

  想到这些问题的背景是,由于目前开发的是一款证劵类软件,所以也就免不了要画相关的K线图以及分时图。而这项艰巨的任务就落在了我的手上。作为一个程序员,正常情况下,都是不知道就问谷歌。我也不例外就去问了……确实有很多画K线图以及各类图形的demo还有github上面的相关源码。刚开始还是挺兴奋的。对于单纯的功能实现来说,在谷歌真的是想拿什么就拿什么!但是当你有了UI稿,一切就得另当别论了……

  你会发现除非你运气真的非常好,刚好碰到一个跟你UI要求差不多的demo,然后跟产品沟通沟通,基本也就完了。而恰恰相反的是,大部分情况下,特别是像绘图这类玩意,完全是不能用的。所以,要么你找到个demo源码,然后慢慢研读,有点感觉了还是要自己修改出来、要么就是自己直接上战场,从零开始慢慢雕琢。这里有个时间问题,不得不关注:到底哪个能更快的开发完成?!

  如果你发现直接读一下demo源码,然后修改一下更快,那你自然应该选择前者,因为快速的完成既定的开发任务比任何事都重要。而我要讲的是,你发现源码真的很难融化为你想要的东西的时候,也许你可以想想通过后者——慢慢分解一下这个看似庞大的任务。

  就好比画K线图,全拆了!你发现其实整个K线图就是由直线,曲线,还有矩形组成的,所以,你的问题就变成了你会画直线、曲线、矩形吗?想到这,其实你已经开始信心满满了,因为你只要随便一搜,就会知道怎么通过Android画直线‘曲线和矩形。而如果你还是没法解决,那么继续拆分,你会发现矩形其实就是由直线组成了,于是问题又缩小成为了,画直线和曲线的问题!

  我不知道你们,看到这个思考的过程会有什么感觉?但是对于我而言,这确实给了我很大的信心,对一个问题的解决,从无从下手进化到了步步为营的状态!也许,你看到这边文章的时候,是想找一份k线图或者分时图的源码,我也确实可以给你这些源码,但是其实你还是看不懂,因为你本质上,想要的是一份完全符合你UI设计的图像,而这无论怎么样都不会如你所愿,所以真的建议你想一下这个问题,然后亲自自己把它们画出来,无论在之后的速度优化还是各种定制化的操作上,你都会体验到无比的*~

  很多人还是喜欢看效果,那就补上——https://github.com/wytings/(因为一些众所周知的原因,已经删除了~)

  效果图,可以直接去应用宝下载有鱼股票,里面所有的分时,K线图就是这么一步一步画出来:http://sj.qq.com/myapp/detail.htm?apkName=com.ruifusoft.finance.app