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.
Így blokkold a karriered Golden handcuffs és társai: a 49. adásban összeszedtünk pár dolgot, amit IT szakemberként érdemes elkerülni.
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.