Android 架构随想之配置文件

       开发过程中不禁对于android的架构设计会有一点点想法,但是总是纳闷匆匆一想,思考的广度深度都十分有限,所以,纪录一下,看能不能梳理出人家的思路,一家之言,难免才疏学浅,望大家指正。

       先聊聊他的配置文件,主要是视图相关的配置,在res目录下。

       1、解耦:视图作为配置文件独立处理,和代码完全解耦,可以独立应对复杂的界面布局。

       2、解析:xml书写的布局文件最终还是要转化成代码来运行,怎么转化呢,在layoutinflate中,我们发现,是通过反射来做的。是啊,一个纯文本的东西要new出一个对象,不                        通过反射,你还想怎样,貌似也可以通过编号来解决,一个类型的view一个编号,找到编号就new对应的activity,编号如果由使用的人指定,难免使用起来麻烦,如                        果在内部指定,内部需要维护一个已知view类型标签的列表,这无疑对扩展性有些要求。所以,通过直接反射是最好的,但是反射效率不高,系统内部不是做了优化                        么,我看有了缓存的处理。另外,关于各种各样的view有不同的属性,android采用了使用数据结构直接保存属性,构造的时候,一次传入,由各界面自己来解析。

       3、扩展性:对于新添加的view,或者属性,怎么办呢,原来layoutinflate是唯一的,只能通过congtxt的getService来获取,里面提供了注入接口,可以外部注入。android后续                            版本都是通过这样的方式兼容,比如appcompat-v7

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值