开发日记-20190423 关键词 模块化完整方案实现 blog读后感
20190423-开发日记 关键词 模块化完整方案实现 blog读后感
参考并感谢:
Android 模块化完整方案实现
https://blog.csdn.net/yalinfendou/article/details/78822749
Android业务组件化之URL Scheme使用
https://www.cnblogs.com/whoislcj/p/5825333.html
其实说真的,一直想看看别人的项目架构到底是怎么样的,这篇是20171216的架构文章,嘛,勉强可以认为是2018年的架构吧,也不算太过于过时的设计想法。虽说如此,真的不打算照搬照套,因为思想永远应该优于实现。所以就谈谈这篇文章中一些让我感觉眼前一亮的东西吧。
整篇博文总共介绍了如下的特性
单module作为Application编译测试
module在debug&release时对于Application的调用一致
动态注入路由
注解方式注入路由
module间大数据传输
路由引导模块:自动生成module间跳转调用方法
moduleEventBus:自己生成轻量级module观察者模式通信
其中1属于基本常识;2,3,4输入比较个性化的定制;5初步观察时有种让人眼前一亮的感觉;6不明觉厉;7常见操作
5的实现就是静态变量,目测是容器+反射
6的实现是定义接受参数方法+注解标注+apt生成类似lambda的内部类,其实我感觉单就这一块,如果加上构造者模式,编程体验会好的多。
那么看完我学到了什么呢?
模块之间使用URL Scheme+隐式Intent实现跳转Router,学习的博客链接地址已经给出,开源框架ARouter,找个时间仔细看看对应的实现
module之间传递大数据这里是通过静态类+容器+反射的方式实现的
资源名冲突 if(!isDebug){resourcePrefix ‘user__’} //这里主要的实现目的是为不同模块的资源文件设定不同的前缀,这样就不会出现冲突了
开发日记-20190423 关键词 模块化完整方案实现 blog读后感相关推荐
- 开发日记-20190423 关键词 android静态代理类代理方法打断点debug 退出当前activity 闪退
其实以前就已经遇到过这样的问题,但是很遗憾,一直没有找到问题所在,今天下定决心,弄了一个下午,终于发现了问题所在.不妨在你的真机上运行这样的代码,整个页面的布局其实真的很简单,就是在页面的中心有一个可 ...
- 开发日记-20190513 关键词 汇编语言(六)
其实,每次当我写一篇开发日记,并且这篇开发日记并没有关键词,或者我并没有和你扯东扯西的情况下... 这意味着我这天偷懒了= = ;AddTwo.asm --两个32位整数相加.386.model fl ...
- 开发日记-20190328 关键词 利用eolinker一键快速生成API接口文档
今天感觉效率真的很低= =各个层面的,apk发布到现场发现出现了问题,所以一个下午都在忙着解决现场出现的问题,领导一直打电话询问进度,午觉也没有睡所以今天预计的很多计划都处于停滞状态,像昨天规划的今天 ...
- 开发日记-20190915 关键词 汇编语言王爽版 第十章
第十章 CALL和RET指令 call 和ret指令都是转移指令,他们都修改IP,或同时修改CS和IP.他们经常被共同用来实现子程序的设计. 10.1 ret和retf ret指令用栈中的数据,修改I ...
- 开发日记-20190425 关键词 gradle基础学习 7年之约 启动篇
以前,面试过一家外企,面试我的技术主管真的很友善,完全是以一种技术交流的态度和我进行交流.说真的,那时候,我一度以为我已经大半只脚踏入了这家企业的大门,他们的hr和我说,我们一个星期内将会给你答复.但 ...
- 开发日记-20190704 关键词 读书笔记《Linux 系统管理技术手册(第二版)》DAY 10
Preface 额-Perl脚本,为什么题目中还包括特定语言的指定命题啊= =,好吧,玩玩Perl吧 Content 进程是Linux用来表示正在运行的程序的一种抽象概念.程序的内存使用,处理器时间和 ...
- 开发日记-20190516 关键词 MVVM-代码浏览结束
今天生病了呢=+=.其实今天预计将所有的MVVM都做完的,但是就结果而言,并没有想象中来的简单.嘛嘛嘛,不过基本的想法也已经掌握了,感觉Kotlin真的挺不错的,不过仅仅是作为一门开发语言而言.但是作 ...
- 开发日记-20190424 关键词 阶段性开发心得和小结
Android开发学习小结 -图片因为是以前下下来的,所以出处真的记不太清楚了,如果有清楚出处的欢迎指正,我加上去,另外,这只是我的个人学习小结,并不是特地用于分享的,如果观赏有任何的不悦,还请谅解. ...
- 开发日记-20190422 关键词 插件化(1)概述
不知道什么时候,javaer这个名词已经成为了一个很通用的词汇,指代那些只知道使用新技术,在新技术出现之后静观其变,等其成熟之后,再用极短的时间学习其用法,然后宣布已经掌握这门新技术的程序员.所谓缺乏 ...
最新文章
- git init 会不会清空_Git命令:git pull amp; git fetch
- jsf项目启动报:java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet
- innodb和myisam
- java: \uxxxx unicode编码
- [发布]Quartz.NET 示例程序:企业调度器 V0.2 源代码
- Windows server 2008 r2 开启Aero
- linux-命令模式-光标定位-编辑中20.22
- XP停止服务,共建网络安全大环境
- Teamcenter 开发利器组合介绍。 Eclipse + Visual Studio
- etl spring_山寨一个Spring的@Component注解
- 真正的QString转char,utf8编码转gb2312编码
- PS——ps打开webp格式的图片
- Python用win32模块让窗体闪烁!附源码
- vue 在线阅读PDF
- Golang 定时器timer和ticker
- 性能测试工程师面试一定会问的14个面试题型
- Linux目录配置与FHS标准
- gitbook 插件 SEO
- ora-01237 ora-01110 ora-17505 ora-15041
- 蓝牙耳机什么牌子续航能力强?最好用蓝牙耳机排行
热门文章
- Jmeter之控制线程执行到某个结果时退出执行
- fiddler使用AutoResponder更改请求的返回结果
- php网站后台管理反应慢,phpcmsv9 后台操作反应慢的原因
- openwrt安装oracle,Openwrt安装软件的方法-tomcat 随笔小记-install ubuntu 12.04 in virtualbox_169IT.COM...
- 嵌入式linux笔记,嵌入式linux学习笔记(一)----嵌入式操作系统
- golang打包HTML为Android,使用Go开发Web服务,并打包html/js/css等静态资源文件
- android 9.0 https 适配,android9.0适配HTTPS:not permitted by network security policy'
- c语言 增加 删除 修改的功能 不用链表,不用链表,单是结构体写入文件后,是否可以进行修改删除...
- php调用execute,php运行生命周期--脚本执行阶段 php_execute
- 方差分析 球形检验_重复测量数据的方差分析