关于Android开发的一些概念问题
来源:互联网 发布:java 图片合成pdf 编辑:程序博客网 时间:2024/05/16 23:56
在阿里实习了一段时间,在真实项目中,遇到从前独立开发的时候没有遇到的一些概念问题,在这里做一个简单的总结。
Gradle
http://www.zhihu.com/question/30432152
Ant和Maven都是基于XML的构建工具,Gradle是用Groovy编写的构建工具,Groovy是JVM衍生的与JAVA语法高度兼容的动态强类型语言。
Gradle通过编写一个名为build.gradle的脚本文件对项目进行设置,再根据这个脚本对项目进行构建(复杂的项目也有其他文件)
Gradle 脚本本质上就是Groovy脚本,只不过高度利用了groovy的语法糖,例如省略方法参数括号和省略句尾分号等,让代码看起来像DSL。
Gradle的构建分两个阶段,第一阶段是设置阶段(configuration phase),分析构建脚本,处理依赖关系和执行顺序等,脚本本身也需要依赖来完成自身的分析。第二阶段是执行阶段(execution phase),此阶段真正构建项目并执行项目下的各个任务。
Ant与Maven对于Gradle,前者编写容易,但功能有限,需要人工操作的过程也多;后者依托于庞大的依赖仓库,因此有着强大的外部依赖管理,但添加本地依赖并不方便,且项目不能灵活修改。而Gradle能很好地结合Ant与Maven各自的优点,可以随意的编写任务并组合成项目,直接利用Maven仓库,并且能很好的支持传递依赖和内部依赖。
AAR
如果你有一个Android Library项目,可以很容易的导出jar文件,然后在其他项目中很方便的引用,aar和jar类似,区别就是一个Android Library项目导出的jar文件不能包含资源文件,比如一些drawable文件、xml资源文件之类的,所以这就有很大的限制,在gradle之前我们要引用带资源文件的Android Library必须要把整个library导入进来进行引用,但是有了gradle之后,Android Library项目可以直接导出成aar,然后其他项目像引用jar的方式直接方便的引用。
- 关于Android开发的一些概念问题
- android开发的一些概念
- 关于并发开发的一些概念
- 关于SOA的一些概念问题
- 关于Android的一些概念有感
- 【Android】关于android开发,环境部署的一些小问题
- Android关于WebService的开发的一些问题
- 关于一些原理概念问题
- android 开发 关于地图的几个概念
- 关于ASP.NET开发的一些专业名称概念
- Android 开发的一些问题
- 关于Socket的一些概念
- 关于RDF的一些概念
- 关于ARM的一些概念
- 关于编程的一些概念
- 关于ARM的一些概念
- 关于ARM的一些概念
- 关于ARM的一些概念
- mvc中实现异步刷新页面
- mysql 修改root密码
- OpenCV的IplImage转bmp
- leetcode: Perfect Squares
- Hadoop 笔记之创建自定义分区---手机流量统计
- 关于Android开发的一些概念问题
- 解析Android崩溃日志(Android ndk-stack tool)
- iOS开发 iOS9适配问题
- 重新启航
- RK
- Maven profile介绍
- OpenCV霍夫变换识别圆
- Romberg
- iOS 警告收录及科学快速的消除方法