首页 > 代码库 > 【Gradle教程】Chapter 1. Introduction

【Gradle教程】Chapter 1. Introduction

        使用AndroidStudio开发Android也有一段时间了,AndroidStudio使用的构建工具还没怎么去学习过,有问题基本上是Google和百度解决,今天突然想好好的去了解gradle,所以先去官网看看官方文档,随便翻译一下,加深理解!

We would like to introduce Gradle to you, a build system that we think is a quantum leap for build technology in the Java (JVM) world.

我们将为你介绍Gradle,一个我们认为在 Java(JVM)的体系构建项目技术来说是一个极大的突破的一款构建工具

Gradle provides:(Gradle提供:)

A very flexible general purpose build tool like Ant.

一款跟Ant一样通用和灵活的工具
Switchable, build-by-convention frameworks a la Maven. But we never lock you in!

一种可切换的,像maven一样的基于约定的构建框架,却又从不锁住你(约定优于配置)
Very powerful support for multi-project builds.

对多项目构建的强大支持
Very powerful dependency management (based on Apache Ivy).

对依赖管理的强力支持(基于Apache Ivy)

 

Full support for your existing Maven or Ivy repository infrastructure.

对已有的Maven和Ivy仓库有着全面的支持

Support for transitive dependency management without the need for remote repositories or pom.xml and ivy.xml files.

支持可传递性的依赖管理,而不需要远程仓库或者pom.xml和ivy.xml配置文件
Ant tasks and builds as first class citizens.

Gradle对Ant任务和构建相当于一等公民对待,即对它们的兼容是非常好的


Groovy build scripts.

支持用Groovy语言编写Gradle的脚本
A rich domain model for describing your build.

拥有丰富的领域模型来构建你的脚本

觉得个人的功力不深,第一章介绍Gradle还是有很对不能理解的地方,有些概念还需了解。


①构建工具

组建自动化(英语:Build automation),又称构建自动化自动化构建,将软件设计师的每日工作,以自动化技术或脚本语言方式,自动加以完成的工具与技术。

其中主要包括了:

  1. 以编译器将源代码编译成二进制码(Binary code)。
  2. 将二进制码打包成软件包。
  3. 执行单元测试。
  4. 部署软件(Software deployment)。
  5. 产生文件与Release notes。

②约定优于配置

http://zh.wikipedia.org/wiki/%E7%BA%A6%E5%AE%9A%E4%BC%98%E4%BA%8E%E9%85%8D%E7%BD%AE

约定优于配置convention over configuration[1],也称作按约定编程[2],是一种软件设计范式,旨在减少软件开发人员需做决定的数量,获得简单的好处,而又不失灵活性。

本质是说,开发人员仅需规定应用中不符约定的部分。例如,如果模型中有个名为Sale的类,那么数据库中对应的表就会默认命名为sales。只有在偏离这一约定时,例如将该表命名为"products_sold",才需写有关这个名字的配置。

如果您所用工具的约定与你的期待相符,便可省去配置;反之,你可以配置来达到你所期待的方式。

【Gradle教程】Chapter 1. Introduction