Sekitar 2 minggu lalu, saya membaca di milist id-iphone ada rekan yang sharing pendapatnya mengenai alasan android devices dengan spesifikasi tinggi (hardware tinggi) masih kalah smooth dengan apple devices yang spesifikasinya dibawahnya. Saya pribadi sudah mencoba kedua devices tersebut, mulai dari HTC, Samsung, bahkan Apple devices dan memang saya merasakan perbedaannya. Contoh: HTC One X VS iPhone 4 yang saya gunakan, seingat saya HTC ONE X spesifikasi dari hardware masih diatas iPhone 4 akan tetapi setelah kurang lebih 3 bulan saya gunakan, saya berpaling kembali ke iPhone 4 yang sudah setahun sebelumnya saya beli. Ini saya lakukan karena merasa bahwa HTC One X sangat lag dibandingkan dengan iPhone, mulai dari slide from page to page, sampai dengan opening / closing apps.
Dengan adanya sharing yang rekan id-iphone tuliskan, akhirnya terjawab dengan jelas kenapa android devices hardware tinggi masih kalah smooth dengan apple devices dengan hardware dibawahnya. Berikut postingan dari Om Feiry via id-iPhone:
===================================================
Halo Bro/Sis,
Hanya mau sharing, selama ini saya heran kenapa Android device selalu menggunakan spec hardware yang lebih tinggi dari iOS device (dan dijadikan marketing gimmick), itupun tetap dengan kualitas responsiveness-nya kalah dengan iOS.
Karena saya seorang programmer, secara tidak sengaja saya dapat artikel ini saat membaca DaringFireball.net.
http://sealedabstract.com/rants/why-mobile-web-apps-are-slow/
Artikel-nya cukup panjang, tapi sangat worth-it untuk dibaca (terutama bagi developer). Tapi bagi yang tidak tertarik untuk membaca. Kesimpulan yang saya dapatkan setelah membaca artikel diatas kurang lebih seperti ini:
Kesalahan terbesar dari Android OS dan Windows Phone OS adalah mereka menggunakan Bahasa Pemrograman yang dirancang secara mendasar untuk memudahkan programmer dengan tidak perlu memikirkan masalah penggunaan memory (bagi programmer ‘pointer management’). Karena semua masalah penggunaan memory akan diatur secara otomatis oleh service bernama ‘Garbage Collector’.
Pada platform mobile, jumlah memory terbatas dan kecepatan prosesor terbatas. Sehingga setiap kali ‘Garbage Collector’ bekerja di android device, kita akan merasakan ada stutter saat kita bermain game yang butuh performance real time (seperti Temple Run).
Sedangkan di iOS menggunakan bahasa pemrograman objective-c, yang sedikit lebih rumit karena programmer harus mengatur penggunaan memory-nya secara manual dengan cara reference counter. Pada platform Mac OS di PC, objective-c memang memiliki fasilitas garbage collector, tetapi tidak memungkinkan untuk digunakan pada platform mobile dengan resource terbatas (memory dan processor).
Dalam perjalanannya (pada saat iOS 5), akhirnya apple berhasil memecahkan masalah reference counter ini (untuk memudahkan programmer baru di platform iOS) dengan menerapkan ARC (automatic reference counting). ARC ini terjadi saat compile time (pada saat kode teks program di ubah ke bahasa mesin yang dimengerti oleh iOS device). Sehingga tidak ada performance yang terbuang pada saat program dijalankan.
Dan sejak saat itu Apple men-drop supportnya terhadap Garbage Collector di Mac OS X. Jadi bahkan di mesin yang sangat powerful sekalipun, apple tidak lagi menggunakan Garbage Collector, dan hanya support ARC. Untuk meningkatkan performa Mac OS Apps.
Kecuali Android OS (men-drop java language) dan Windows Phone OS (men-drop C#, VB .NET languages), dan melakukan riset dengan membuat bahasa pemrograman baru dengan teknologi ARC, selama itu pula kita akan melihat android dan windows phone devices menggunakan hardware dengan spec yang lebih tinggi dari iOS devices.
Sebuah riset yang pasti saja akan memakan waktu yang sangat lama (dan rasanya hampir mustahil mau dilakukan oleh mereka).
Dengan spec sangat tinggi itupun performance-nya masih terbatuk-batuk. 🙂
Apalagi sekarang ditambah dengan iOS support 64 bit, semakin jauh saja mereka tertinggal. Satu-satunya cara mereka adalah menjual lebih murah, secara otomatis profitnya lebih rendah dari apple. Jadi kalau ada yang percaya apple sebentar lagi bakal mampus, sepertinya harus menunggu sangat lama… hehehe….
Sekian sharing dari saya.
Semoga bermanfaat dan tetap mencintai iOS devices! 😀 :X
2 comments