iOS 图表(charts)源码阅读(一)

如何阅读一个第三方控件

第一,我们会想到我们自己写第三方控件的时候会怎么写?首先,是UI 层面,其次是数据层面。好的第三方会把数据层和UI层独立开来,数据层面又分业务逻辑类的数据和页面配置的数据。当我们将页面配置的数据和业务逻辑类数据分离开来的时候,我们或许就可以实现数据库配置UI界面,换肤的工作了。

第二,就是看别人优秀的第三方的整体的设计架构了。对于层次多的,复杂的第三方,不急着看其实现的细节,先拎清各个类之间的层次关系,是不是继承关系,是不是并列的关系,这样大体框架就出来了。当然大部分会按功能进行划分。

源码GitHub地址:https://github.com/danielgindi/Charts

charts 的阅读

  • 目录结构:
charts folder constructor.png
  • Animation (主要负责动画)
  • Charts (一些图表的的UI类)
  • Components (是一些图表上一些标注,线啊,等等之类的数据模型,暂且归类到数据层)
  • Data (图表所需要的一些主要的数据了)
  • filters(douglas peuker 算法,个人认为也可以叫抽稀算法)
  • Formatters (个人认为应用了OCP 的设计原则,即开放封闭的设计原则,偏属于业务逻辑类(对于Axis 轴数据的))
  • Hightlight(同上)
  • Interfaces(对上面的数据提供数据接口)
  • Jobs 对UI的一些属性的处理
  • renders(具体的绘制工作)
  • Utils(工具集合)

下周会继续更新!

come on !fighting!

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容