dex
dosyası, Dalvik VM'de yürütülen bir dosyadır.
Dalvik VM, performans optimizasyonu, doğrulaması ve izlenmesi için bir tanesi Dalvik Yürütülebilir (DEX) özelliklerine sahiptir .
Java kaynak kodu Java derleyicisi tarafından .class
dosyalara derlenir . Ardından, dx
Android SDK'nın bir parçası olan (dexer) aracı, .class
dosyaları DEX
Dalvik bayt kodunu içeren bir dosya biçiminde işler . dx
Araç, tüm sınıflarda mevcut olan gereksiz bilgi ortadan kaldırır. Uygulamanın DEX
tüm sınıflarında tek bir dosyada paketlenmiştir. Aşağıdaki tabloda, JVM jar dosyaları için kod boyutları ile dex
araç tarafından işlenen dosyalar arasında karşılaştırma sağlanmaktadır .
Tablo, sistem kitaplıkları, web tarayıcı uygulamaları ve genel amaçlı bir uygulama (çalar saat uygulaması) için kod boyutlarını karşılaştırır. Her durumda dex aracı kodun boyutunu% 50'den fazla azalttı.
Standart Java ortamlarında, Java kodundaki her sınıf bir .class
dosyayla sonuçlanır . Bu, Java kaynak kodu dosyasının bir ortak sınıfı ve iki anonim sınıfı varsa, olay işleme için diyelim, java derleyici toplam üç .class
dosya oluşturacaktır .
Derleme adımı Android platformunda aynıdır, bu nedenle birden fazla .class
dosyaya neden olur. Ancak .class
dosyalar oluşturulduktan sonra , “dx” aracı tüm .class
dosyaları tek bir .dex
dosyaya veya Dalvik Yürütülebilir dosyaya dönüştürmek için kullanılır . Öyle .dex
Dalvik VM yürütülür dosyası. .dex
Dosya bellek kullanımı için optimize edilmiştir ve tasarım öncelikle verilerin paylaşımı ile tahrik edilmektedir.