📜 ⬆️ ⬇️

In a section: the news aggregator on Android with backend. Assembly system

Introduction (with links to all articles)

About 10-15 years ago, when the programs consisted of source codes and a small number of binary files with the work of assembling the final programs, all kinds of "? Make" did an excellent job. However, now modern programs and approaches to development have changed a lot - these are:
many different files (I don’t consider source) - styles, templates, resources, configurations, scripts, binary data, etc.;


Moreover, the average developer has to go through several times a day through the stages of assembling the final or intermediate artifacts using the listed tools and techniques. Launching command files with hands (with possible verification of results) is too burdensome in this case: you need a tool that tracks changes in your project data and runs the necessary tools depending on the detected changes.
')
My way of using build systems was incomprehensible_number * make -> ant -> maven -> gradle (the fact that the android Studio under the hood uses gradle pleased me a lot).

Gradle attracted me:


You can familiarize yourself with the features of Gradle on the developers website in the documentation section (you can find out everything!) . For those who want to compare gradle and maven there is an interesting video from JUG .

In my case, the build scripts look like this:

image
,
Where:


In this configuration, all changes to the build script are made in centralized files (not given to each project) and can / should be adjusted centrally by the person responsible for building the project.

Tips


Of the interesting things / tips that I would like to share, when setting up a gradle in my project there are the following:


Running all this rich functionality from the console with one command, which identifies the base fragments of the project, updates the necessary dependencies, performs the necessary checks and generates the required artifacts, let us speak of assembly systems as tools that, if properly configured, can radically change the speed of delivery of your project to the finished consumers.

Thanks for attention!

Source: https://habr.com/ru/post/334592/


All Articles