架构设计

高质量App的架构设计与思考!

无人久伴 提交于 2019-11-25 21:57:31
最近在做一功能不大、业务也不复杂的小众App,以往做App是发现自己从来没有考虑过一些架构方面的问题,只是按照自己以往的习惯去写代码,忽略了App的设计。本次分享主要包含一些开发App的小经验和技巧,来一次App开发与设计的分享。 先和分享下一下 实体类的设计与组织形式 实体类的组织 在做App开发的时候有很多的实体类,项目越复杂实体类就会越多,经过我的一番思考大致这可以将实体分为以下几大数: 面向数据库的 服务端返回的数据实体 用于渲染View的实体(使用Databinding) 一般情况下实体类的操作会经过以下步骤: App请求服务器获取数据 将数据存入数据库(可选) 渲染页面展示数据 现在的实体的产生只用在请求服务器数据的时候才需要新建,后续的数据库、页面渲染其实是可以使用一套实体: 先不说这样做的行不行,首先三个地方使用同一实体就会引起字段歧义比如服务器数据有Id、本地数据也有Id,那两个id字段就有冲突了不得不改字段名。 另一种情况渲染和数据本身并不会一一对应,有时候后端数据给的是一个纯数字而前端页面显示的是字符串两个都对应不上,强行放在一起会起来更多的问题。 所为实体类的的正确组织形式应该是: 相互隔离、互不干扰 : 数据实体的在渲染之前都需要准备好,比如在ViewModel中将int型的数据转换成文本型的数据然后再使用Databinding+页面渲染实体来渲染页面。