Biasanya, aplikasi tidak diimplementasikan sebagai sebuah modul tunggal karena sistem operasi telah menyediakan library yang sudah memenuhi sebagaian besar kebutuhan dasar dari sebuah aplikasi. Untuk mengembangkan sebuah aplikasi, seorang programmer menghubungkan kode-kode buatan mereka terhadap sebuah library untuk mendapatkan sebuah fitur dasar. Namun, proses menghubungkan ke sebuah library tersebut menghasilkan sebuah file executable yang besar dan mengkonsumsi banyak sumber daya (baca: memori).

Salah satu cara untuk mengurangi ukuran file (executable) dan penggunaan memori adalah dengan mengurangi jumlah kode-kode yang dimuat sewaktu peluncuran aplikasi. Dan Dynamic Library mengatasi kebutuhan ini, kode-kode bisa dimuat hanya ketika dibutuhkan, yaitu sewaktu peluncuran aplikasi maupun selama aplikasi berjalan (runtime).

iOS juga mengimplementasikan penggunaan Dynamic Library ini. Begitupun dengan tweaks yang berasal dari Cydia.

Ada berapa tweaks yang terinstall pada iDevice Anda, dan apa saja fungsinya? Bukan cuma pemula, pengguna iDevice yang advence sekalipun pasti punya kebiasaan gonta-ganti tweaks, baik itu untuk iseng mencari tweaks yang baru dan unik ataupun mencari tweaks yang pas sesuai dengan kebutuhan. Install yang baru, hapus yang jelek, install lagi, dan begitu seterusnya.

Masalahnya adalah, jumlah tweaks yang terinstall akan berpengaruh kepada konsumsi RAM. Mengapa demikian?

Karena setiap tweaks akan memiliki sebuah file library .dylib masing-masing dan menginstall file lain yang dieksekusi di background (bisa dicek di /Library/MobileSubstrate/DynamicLibraries/). File .dylib adalah sebuah dynamic library yang sudah saya jelaskan di atas. Kalau Anda familiar dengan Windows, kira-kira hampir sama dengan file .dll yang bisa Anda temukan di Program files di Windows.

Menginstall 20 tweaks yang berbeda berarti menjalankan 20 .dylib yang berbeda pula. Dan semakin banyak .dylib yang dijalankan oleh sebuah tweak, maka penggunaan memori akan semakin meningkat, dan penggunaan memori yang meningkat bisa berpengaruh terhadap konsumsi beterai pula.

Jadi, bagaimana cara memiliki tweaks keren tetapi konsumsi RAM tetap rendah dan baterai tetap bertahan lama?

Sederhana. Pertama, install tweaks dari developer terpercaya, yang sudah dikenal luas, karena kemampuan programming mereka bisa jadi jaminan bahwa tweaks yang Anda install tidak akan buggy atau sering crash. Sebenarnya, kasus-kasus springboard crash dan sebagainya itu seringkali disebabkan karena tweaks yang tidak diprogram dengan benar. Yang terpenting adalah, bagaimana implementasi kode-kode dari sebuah tweak berefek pada system. Jika kode-kodenya bermasalah entah karena aplikasinya masih prematur atau karena developernya masih belum berpengalaman, bisa saja terjadi konflik antar tweaks yang berujung pada safe mode atau bootloop.

Kedua, jangan install apps/tweaks bajakan. Saya rasa Anda sendiri paham benar, kalau apps/tweaks bajakan itu adalah apps/tweaks yang sudah dimodifikasi. Apanya yang dimodifikasi? Entahlah, yang jelas kode-kode yang sudah dimodifikasi dari yang aslinya (tanpa sepengetahuan pembuatnya) tidak baik untuk diinstall. Mungkin awalnya normal, tapi lama-kelamaan…

Mendeteksi apps atau tweaks Cydia yang bermasalah tidak hanya dengan melihat efek yang muncul setelah instalasi selesai. Mungkin saja secara kasat mata bagus, tapi sebenarnya di background sedang terjadi konflik yang menyebabkan penggunaan sumber daya meningkat. Masalah baru akan kelihatan begitu Anda menginstall apps/tweaks berikutnya yang semakin memperparah keadaan. Dan memang sering kali terjadi, springboard crash atau reboot paksa terjadi setelah sebuah tweaks selesai diinstall. Tweak manakah yang bermasalah? Bisa jadi yang terakhir diinstall, atau justru yang kedua dari terakhir.

Intinya, Anda harus tahu apa yang Anda install. Kalau sebuah tweak bermasalah, jangan lama-lama, langsung saja hapus. Atau kalau mau bereksperimen, hapus tweaks secara acak untuk mengetahui sumber penyebab crash.

By the way, jika free RAM pada iDevice Anda sisa sedikit, dan sebuah aplikasi membutuhkan RAM yang lebih, iOS cukup pintar dan tahu apa yang harus dilakukan untuk mendapatkan free RAM, dengan menutup aplikasi yang tidak aktif. Anda tidak perlu “membantu” iDevice Anda untuk melakukan pekerjaan yang sudah seharusnya ia kerjakan.