Szerző: Gálffy Csaba

2017. március 1. 12:44

Forradalmat ígér az új androidos Gradle-plugin

Viszonylag korai stádiumban megvillantotta az Android Gradle Plugin forradalminak ígérkező kiadását a Google. A 2.5-ös kiadás korai előnézeti verziója tényleg látványos gyorsulást hoz, de ezt a visszafelé kompatibilitás kárára teszi.

Rendkívüli változásokat kap a hivatalos androidos fejlesztői környezet, illetve annak egyik kritikus komponense, az Android Gradle Plugin - jelentették be a fejlesztői eszköz készítői. A változások az androidos alkalmazások lefordításához (build) szükséges idő lecsökkentését célozzák, ez ugyanis a nagyobb androidos projektek esetében elviselhetetlenül nagyra nőtt már, sok modul használata esetén néhány percre is nyúlik a feldolgozás, még kódfordítás nélkül is.

A Gradle és az AGP előző kiadásai is igyekeztek optimalizálni ezen, de a várt áttörés elmaradt, a Gradle-alrendszer lassúsága továbbra is a fejlesztői eszköztár egyik legproblémásabb része. A készítők ezért most az eddigieknél lényegesen nagyobb lépésre szánták el magukat, a gyorsaság érdekében az AGP 2.5-ös kiadása nem lesz visszafelé kompatibilis, a verzióváltáshoz szükség lesz a build fájlok és a Gradle pluginok átírására is.

A migráció azonban kifizetődő lesz - ígérik az első teljesítményadatok. Egy, mintegy 130 modult és rengeteg külső függőséget tartalmazó, de egyébként üres projekt elkészítése 2 percről mintegy 2,5 másodpercre esett, ami már szabad szemmel is igen jól látható különbség lesz. A kódváltozás után a 2:15-ös futási idő 6,4 másodpercig esett az AGP 2.2 és Gradle 2.14.1 kombinációját az AGP 2.5 + Gradle 3.5-tel összevetve.

Mindent vivő munkahelyek

Mindig voltak olyan informatikai munkahelyek, melyek nagyon jól fekszenek az önéletrajzban.

Mindent vivő munkahelyek Mindig voltak olyan informatikai munkahelyek, melyek nagyon jól fekszenek az önéletrajzban.

Az egyik fontos változás a függőségek (dependency) feloldása, ezt egyrészt időben eltolja a rendszer, másrészt csak olyan projektek és variánsok esetében hajtja végre, amikor arra tényleg szükség van. Inkrementális lesz a dex fájlok előállítása, jobban párhuzamosított a sokmodulos projektek elkészítése, köszönhetően a finomhangolt munkagráfnak, és végre odafigyel az AGP, hogy az épp készített variánshoz szükséges függőségeket dolgozza csak fel. Ezek egyébként csak az első körös optimalizációk, a 2.5-ös végleges kiadásáig még jönnek gyorsulások, és a következő alverziókhoz is ígérnek további javításokat a készítők, elsősorban a skálázódást és a párhuzamosságot illetően.

Ahogy említettük, a változások azt is jelentik, hogy az új verzió nem kompatibilis visszafelé, változtatásokra lesz szükség a pluginok és a build fájlok szintjén is. Épp ez indokolja, hogy a készítők ilyen korai előnézeti verziót tesznek elérhetővé, így a fejlesztők fel tudnak készülni a változásokra és tesztelni tudják azt a friss szoftverrel - és persze még időben tudnak visszajelzést (hibajelentést vagy egyéb módosítási kérelmet) küldeni.

A rövid leírás itt érhető el az AGP 2.5 Early Preview-ről, ha pedig valaki ki szeretné próbálni, ahhoz itt találja meg a lépéseket.

a címlapról