Fokus bergeser dari WebApps ke Native ketika App Store diluncurkan dengan rilis iPhone 3G dengan iOS 2.0.1, yang diperkenalkan pada 9 Juni 2008 di WWDC.
Awalnya Aplikasi Web dimaksudkan untuk digunakan dengan iphone pertama, tetapi pergeseran besar terjadi dengan rilis iOS khusus (atau iPhone OS seperti yang disebut saat itu) Kit Pengembangan Perangkat Lunak diumumkan pada acara Roadmap Perangkat Lunak iPhone pada 6 Maret, 2008. SDK memungkinkan pengembang untuk membuat aplikasi menggunakan Xcode yang secara native akan berjalan di iPhone, iPod Touch dan iPad. Bahkan sebelum itu, aplikasi yang disertakan ditulis secara asli meskipun Steve Jobs pernah berkomentar:
Mesin Safari lengkap ada di dalam iPhone. Jadi, Anda dapat menulis Web yang luar biasa
Aplikasi 2.0 dan Ajax yang terlihat persis dan berperilaku tepat
suka aplikasi di iPhone. Dan aplikasi ini dapat diintegrasikan dengan sempurna
Layanan iPhone. Mereka dapat melakukan panggilan, mereka dapat mengirim email, mereka
dapat mencari lokasi di Google Maps.
Dan coba tebak? Tidak ada SDK yang Anda butuhkan! Anda sudah mendapatkan semua yang Anda butuhkan
jika Anda tahu cara menulis aplikasi menggunakan paling banyak
standar web modern untuk menulis aplikasi luar biasa untuk iPhone saat ini. Begitu
pengembang, kami pikir kami punya cerita yang sangat manis untuk Anda. Kamu bisa
mulailah membangun aplikasi iPhone Anda hari ini.
Perbedaannya sesederhana perbedaan lama antara aplikasi yang "ditafsirkan" dan "dikompilasi".
Aplikasi asli ditulis menggunakan bahasa tingkat lebih rendah (Objective C, C, C ++ menggunakan lingkungan pengembangan Xcode) dan dikompilasi dengan API yang dirancang untuk mengekstraksi kecepatan dan efisiensi maksimum menggunakan algoritma dan fungsi yang ditulis khusus terhadap perangkat keras yang dimaksudkan untuk menjadi jalankan. Mengkompilasi kode menjadi kode mesin yang langsung dieksekusi hampir selalu merupakan metode eksekusi tercepat untuk tugas perangkat lunak yang diberikan.
WebApps adalah bagian umum dari kode yang tidak dikompilasi yang tidak dapat menggunakan API ini dan harus membuatnya kembali atau tidak menggunakannya. Mereka ditulis dalam bahasa tingkat yang lebih rendah seperti Javascript, Python, atau Perl dan mereka ditafsirkan melalui lingkungan runtime pada titik eksekusi, yang memungkinkan fleksibilitas tertentu dengan mengorbankan kecepatan mentah. Fungsi gulir adalah salah satu contoh di mana aplikasi asli memiliki akses ke rutinitas yang sangat optimal untuk memungkinkan pengguliran yang sangat licin, tetapi aplikasi web tidak karena tidak memiliki pengetahuan atau akses ke API yang relevan. Banyak aplikasi web yang dikompilasi dengan cepat menggunakan teknik kompilasi 'tepat pada waktunya', tetapi sementara ini dapat memperoleh beberapa peningkatan kecepatan, ia tidak dapat memenuhi kekurangan platform API yang dioptimalkan dengan tepat pada bahasa tingkat yang lebih tinggi daripada Javascript (yang merupakan satu-satunya runtime sisi klien yang benar-benar didukung iOS, meskipun OS lain, seluler, dan desktop mungkin memiliki akses ke yang lain) tempat aplikasi web iOS ditulis. Runtime lain tersedia untuk digunakan selama mereka menjalankan sisi server, yang memberikan kinerja lebih lanjut.
Dalam kasus spesifik Twitter, aplikasi twitter sama sekali tidak menggunakan webkit, itu menggunakan rutinitas lain yang ditulis dalam tujuan C yang lagi-lagi (kata kunci yang saya kira) dioptimalkan untuk hasil terbaik dengan cara yang tidak dapat dicapai oleh apa pun di browser. Anehnya, saya pikir aplikasi asli Facebook aku s sebenarnya pembungkus terselubung di sekitar webkit UI.