Menulis aplikasi iPhone menggunakan perangkat lunak sumber terbuka

Ini memanfaatkan fasilitas canggih dalam HTML 5 yang memungkinkan aplikasi web menggunakan penyimpanan sisi klien dalam bentuk database SQL, yang disediakan oleh mesin SQLite. Hal ini memungkinkan jembatan dibangun antara aplikasi yang sepenuhnya berbasis web dan aplikasi yang berjalan di telepon itu sendiri, dengan menyediakan aplikasi web dengan penyimpanan sisi klien yang jauh lebih besar daripada yang dapat dicapai hanya dengan menggunakan kue.

Menulis aplikasi iPhone menggunakan perangkat lunak sumber terbuka

Jaipho, di sisi lain, menunjukkan dengan tepat apa yang dapat Anda lakukan jika Anda bertekad untuk melakukannya. Mungkin elemen antarmuka pengguna yang paling rapi di iPhone adalah “gerakan layar” yang memungkinkan Anda melakukannya menelusuri item dengan menggeser tampilan saat ini dengan jari Anda dari kiri ke kanan atau kanan ke kiri.

Ini digunakan pada desktop utama iPhone untuk membagi aplikasi menjadi beberapa halaman, dan ini digunakan dengan sangat baik di aplikasi Foto tempat Anda dapat menelusuri album foto dengan cara yang hampir sama seperti saat Anda membuka buku catatan. Hal ini juga mulai muncul di beberapa aplikasi pihak ketiga, seperti aplikasi pencari resep Epicurous.

Jaipho mengimplementasikan elemen antarmuka tersebut di Mobile Safari, memungkinkan Anda membuat situs yang berfungsi seperti aplikasi Foto. Ada demo bagus di situs web, dan dengan sedikit pemikiran Anda dapat membuatnya berfungsi dengan perpustakaan iUI yang disebutkan di atas.

Menuju aplikasi asli
Dimungkinkan untuk membuat aplikasi web yang menarik menggunakan pustaka di atas, atau sendiri: misalnya, Situs web iPlayer BBC adalah contoh bagus tentang apa yang dapat dilakukan hanya dengan menggunakan kemampuan web peramban. Namun, banyak orang beralih untuk membuat aplikasi asli, untuk mendapatkan akses yang lebih baik ke fasilitas OS iPhone, yang paling penting ke antarmuka pengguna.

Saya tidak bisa mengatakan bahwa pemrograman asli iPhone itu mudah: dibandingkan dengan pengembangan web, hal ini sulit dilakukan karena alasan sederhana bahwa kesalahan apa pun menyebabkan Anda mengalami kerusakan pada ponsel itu sendiri. Namun, ada berbagai perpustakaan sumber terbuka dan contoh yang dapat membuat hidup lebih mudah.
Untuk sebagian besar, aplikasi web membuat antarmuka yang terlihat seperti antarmuka iPhone asli, namun itu hanya faksimili dari antarmuka sebenarnya, dan detail halusnya tidak ada. Untuk sebagian besar, aplikasi web membuat antarmuka yang terlihat seperti antarmuka iPhone asli, namun itu hanya faksimili dari antarmuka sebenarnya, dan detail halusnya tidak ada. Meskipun mungkin untuk menerapkan beberapa rincian ini, upaya yang diperlukan mungkin tidak sepadan. Pustaka Jaipho yang disebutkan di atas sangat mengesankan, namun menambahkan fungsionalitas ke dalamnya untuk mengimplementasikan aplikasi lengkap mungkin sebenarnya lebih sulit daripada mengimplementasikan aplikasi asli.

Ada fasilitas yang tersedia bagi pengembang aplikasi yang tidak tersedia bagi pengembang aplikasi web, salah satunya salah satu yang paling jelas adalah kemampuan untuk bekerja secara offline – aplikasi web harus selalu terhubung ke server web agar dapat bekerja secara offline bekerja. Aplikasi iPhone akan memiliki sebagian besar sumber daya yang terpasang di memori, sehingga tidak perlu mengunduhnya setiap kali diperlukan. Aplikasi yang ditulis dengan baik bahkan dapat menyimpan sumber daya yang mungkin diperlukan setelah diinstal, misalnya dengan mengunduh dan menyimpan gambar.

Aplikasi iPhone bahkan dapat mendeteksi apakah ada akses jaringan, dan bekerja secara berbeda jika ada. Selain itu, ada fasilitas yang tersedia untuk pengembang aplikasi asli yang tidak tersedia di Mobile Safari, mulai dari elemen sederhana seperti itu sebagai kemampuan mengirim email dari dalam aplikasi tanpa beralih ke aplikasi Mail, hingga fasilitas yang lebih kompleks seperti integrasi dengan itunes. Misalnya, sekarang aplikasi dapat memulai transaksi keuangan dan menjual fasilitas atau konten tambahan.