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 .classdosyalara derlenir . Ardından, dxAndroid SDK'nın bir parçası olan (dexer) aracı, .classdosyaları DEXDalvik bayt kodunu içeren bir dosya biçiminde işler . dxAraç, tüm sınıflarda mevcut olan gereksiz bilgi ortadan kaldırır. Uygulamanın DEXtüm sınıflarında tek bir dosyada paketlenmiştir. Aşağıdaki tabloda, JVM jar dosyaları için kod boyutları ile dexaraç 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 .classdosyayla 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 üç .classdosya oluşturacaktır .
Derleme adımı Android platformunda aynıdır, bu nedenle birden fazla .classdosyaya neden olur. Ancak .classdosyalar oluşturulduktan sonra , “dx” aracı tüm .classdosyaları tek bir .dexdosyaya veya Dalvik Yürütülebilir dosyaya dönüştürmek için kullanılır . Öyle .dexDalvik VM yürütülür dosyası. .dexDosya bellek kullanımı için optimize edilmiştir ve tasarım öncelikle verilerin paylaşımı ile tahrik edilmektedir.