(Android) Performance Tips

Hey paijo dan makijo.. sudah lama ya kita gak ketemu dan berbincang terkait dengan beberapa hal yang ada di blog ini, bukan ane yang sibuk tapi ane lagi gak dieman sama nih blog, sebab ada dia gak pernah kasih ane lagi masukan dan ide yang bisa di tulis di blog ini.

Sebenarnya sudah lama saya ingin mencurahkan hati saya dengan tulisan yang sedikit memberi beban terhadap saya, so ketika saya mendapatkan beberapa wejangan setelah sekian lama di dunia penuh warna warni ini, ya dibilang banyak sekali ilmu yang saya dapat ketika saya ataupun teman- teman sekalian yang sukanya di depan laptop, dengan layar themes hitam ataupun putih pada android studio.

Semangat untuk melanjutkan perbicangan kita di blog ini, saya akan memeberikan tips dan trik bagaimana process di android programming kita sedikit lancar dan tidak terhalang dengan dunia yang penuh warna ini, saya mendapat referensi ini dari berbagai blog dan pengalaman saya ketika membuat struktur jalannya process. kenapa kita harus memperhatikan process yang berjalan pada program mobile kita, ada beberapa yang harus kita pikirkan :

  1. Processor Mobile tidak besar seperti pada PC kita.
  2. Memory ram tidak sebesar seperti pada PC kita.
  3. Grafik tidak sebesar seperti pada PC kita.
  4. Smartphone di rancang untuk process Micro menjadi Macro.

Setelah kita mendapat beberapa item yang menjadikan acuan gimana process pada android kita berjalan sempurna, sekarang kita akan masuk pada code yang harus di perhatikan.

Gunakan Perulangan (Loop) yang baik dan maksimal


dibawah ini contoh loop yang dapat diterapkan dan yang tidak baik di terapkan

static class Foo {
    int mSplat;
}

Foo[] mArray = ...

public void pertama() {
    int sum = 0;
    for (int i = 0; i < mArray.length; ++i) {
        sum += mArray[i].mSplat;
    }
}

public void kedua() {
    int sum = 0;
    Foo[] localArray = mArray;
    int len = localArray.length;

    for (int i = 0; i < len; ++i) {
        sum += localArray[i].mSplat;
    }
}

public void ketiga() {
    int sum = 0;
    for (Foo a : mArray) {
        sum += a.mSplat;
    }
}

Coba perhatikan method ketiga diatas, setelah di lihat saya akan menjelaskan mana yang baik dan sedikit tidak baik di gunakan pada program.

  • (Method pertama) Process loop yang digunakan simple sama seperti kita diajarkan pada bangku kuliah, tetapi process tersebut akan lambat kenapa ? karena batasan tersebut sangat panjang. dan apa lagi kalau kita tidak mengetahui panjang dari process tersebut
  • (Method kedua) Process loop yag digunakan akan lebih baik karena variabel tersebut berada pada method atau variabel lokal, kenapa ? Karena process tersebut menghindari pencarian yang jauh, kenapa kalau kita menggunakan logika sedikit, Ada seorang pria yang meletakkan dompetnya di meja lemari dan ada pria kedua yang meletakkan dompetnya di saku celana, sehingga yang lebih jauh untuk mengambil dompet yaitu pria pertama, sehingga dari pengalan cerita saya gunakan variabel lokal bila itu memungkinkan.
  • (Method ketiga) Process loop yang dianjurkan oleh Java pada versi 1.5 kenapa variabel berada pada lokal, dan process perulangan dibatasi dengan dua variabel yang saling menjadi titik balik.

Jangan Lakukan Process Lebih dari 2

Cek Monitoring Memory Pada Saat Run Project

http://developer.android.com/training/articles/perf-tips.html

Advertisements