Tujuannya untuk mempercepat pekerjaan programmer, tanpa harus membuat fungsi atau class dari awal.
Pekerjaan akan lebih tertata dan terorganisir. Sehingga dalam pencarian kesalahan dalam pembuatan program akan lebih mudah dideteksi.
Framework merupakan pondasi awal kita sebelum menentukan memakai bahasa pemrograman apa yang akan dipakai. Setelah itu baru dibangun programnya di atas framework.
Framework In Platforms :
Android
Android pertama kali dikembangkan pada tahun 2003 oleh perusahaan Android Inc. Google membelinya pada tahun 2005. Dibangun menggunakan kernel Linux.
(Maav, gambar telah terhapus. Silahkan sahabat mencarinya di Google Image)
Pembuatan aplikasi Android secara native (alami) membutuhkan pengetahuan pemrograman Java.
Salah satu tools yang paling populer dan powerfull dalam pembuatan aplikasi Android adalah Eclipse IDE yang dihubungkan dengan Compiler dan Emulator Android SDK.
Blackberry OS
iOS
Firefox OS
Tizen OS
Aplikasi Untuk Framework
Aplikasi mobile yang dijalankan menggunakan browser yang ada di handphone, menggunakan bahasa pemrograman web seperti PHP & HTML5.
Aplikasi yang dibuat dan ditanam (install) langsung didalam device, menggunakan bahasa pemrograman yang selayaknya digunakan untuk membuat aplikasi tersebut.
Native Apps VS Mobile Web
Kelebihan
Aplikasi mobile yang dibuat dan ditanam (install) langsung di dalam device, menggunakan bahasa pemrograman website yang digabung dengan bahasa pemrograman yang selayaknya digunakan untuk membuat aplikasi pada device yang dituju.
- Android
- Blackberry OS
- Firefox OS
- iOS
- Tizen
- Windows Phone
Framework In Platforms :
Android
Android pertama kali dikembangkan pada tahun 2003 oleh perusahaan Android Inc. Google membelinya pada tahun 2005. Dibangun menggunakan kernel Linux.
Android adalah sistem operasi dengan sumber terbuka. Diprogram dalam bahasa C , C++, Java perangkat seluler Android yang pertama pada tahun 2008 yaitu HTC Dream.
Menggunakan Andoroid versi 1.0 Input Touch Interface berupa menggesek (swiping), mengetuk (tapping), dan mencubit (pinching).
Menggunakan Andoroid versi 1.0 Input Touch Interface berupa menggesek (swiping), mengetuk (tapping), dan mencubit (pinching).
Tujuan awal pengembangan Android adalah untuk mengembangkan sebuah sistem operasi canggih yang diperuntukkan bagi kamera digital.
Perkembangan Versi Android
(Maav, gambar telah terhapus. Silahkan sahabat mencarinya di Google Image)
Arsitektur Android
- Linux kernel. Ini adalah kernel dasar Linux. Layer ini berisi semua low-level device driver untuk berbagai komponen hardware perangkat Android.
- Libraries. Berisi semua kode yang menyediakan fitur utama sistem operasi Android. Sebagai contoh, pustaka SQLite menyediakan dukungan database sehingga aplikasi dapat menggunakannya sebagai penyimpan data. Pustaka WebKit menyediakan fungsionalitas web browsing.
- Android runtime. Pada layer yang sama dengan Libraries, Android runtime menyediakan sekumpulan pustaka dasar yang memungkinkan developer untuk menulis aplikasi Android menggunakan bahasa pemrograman Java. Android runtime juga menyertakan Dalvik Virtual Machine, yang memungkinkan setiap aplikasi Android untuk berjalan pada prosesnya sendiri, dengan instance DVM-nya sendiri (aplikasi Android di-compile menjadi Dalvik executables). Dalvik adalah virtual machine yang secara khusus dirancang untuk Android dan dioptimalkan untuk perangkat bergerak bertenaga baterai dengan memori dan CPU terbatas.
- Application framework. Membuka berbagai kemampuan sistem operasi Android pada aplikasi pengembang sehingga dapat menggunakannya pada aplikasi.
- Applications. Pada layer paling atas, akan ditemukan aplikasi yang disediakan dengan perangkat Android (seperti Phone, Contacts, Browser, dll), juga apikasi yang di-download dan di-install dari Android Market. Semua aplikasi yang ditulis terletak pada layer ini.
Development Android
Pembuatan aplikasi Android secara native (alami) membutuhkan pengetahuan pemrograman Java.
Salah satu tools yang paling populer dan powerfull dalam pembuatan aplikasi Android adalah Eclipse IDE yang dihubungkan dengan Compiler dan Emulator Android SDK.
Untuk membuat aplikasi Android, developer dapat menggunakan sistem operasi Windows maupun Linux seperti Ubuntu maupun Mint.
Karena paket Android SDK sangat support juga untuk lingkungan Linux.
Karena paket Android SDK sangat support juga untuk lingkungan Linux.
Framework Android
(Maav, gambar telah terhapus. Silahkan sahabat mencarinya di Google Image)
Blackberry OS
- Dikembangkan oleh Research In Motion
- Diprogram dalam C++
- Bersifat clossed source
- Andalan utama aplikasi BB adalah BBM (Blackberry Messenger)
Development Blackberry
- Untuk pengembangan aplikasi berbasis Blackberry memasang Blackberry Java Plug-in For Eclipse, sehingga memungkinkan Eclipse sebagai lingkungan pemrograman Blackberry.
- Bahasa pemrograman utama adalah Java Programming.
- Tools untuk melakukan desain dapat menggunakan mockupstogo
Framework Blackberry
(Maav, gambar telah terhapus. Silahkan sahabat mencarinya di Google Image)
iOS
- Sistem Operasi ini hanya terdapat pada produk-produk keluaran perusahaan apple.
- Sifatnya clossed source.
- Awalnya dikembangkan untuk iPhone, sesuai dengan perkembangan pasar dan teknologi diperluas pada perangkat apple yang lainnya seperti iPod Touch, iPad dan Apple TV.
Development iOS
- Harus mengetahui secara dasar mengenai XCode IDE untuk pengembangan aplikasi,
- Objective-C atau Cocoa untuk bahasa pemrograman native iOS,
- UIToolkit untuk pembangunan desain awal aplikasi.
- Hal wajib lainnya adalah, pengembangan aplikasi iOS atau iPhone sangat disarankan memakai sistem operasi MacOS. Karena XCode hanya support untuk OS Macintosh
Framework iOS
(Maav, gambar telah terhapus. Silahkan sahabat mencarinya di Google Image)
Firefox OS
- Bersifat Open Source
- Perangkat mobile bernama Firefox OS.
- Dirilis tahun 2013.
- Produsen ZTE dan TCL,
- Dibangun sepenuhnya pada standar web
- Dikembangkan dengan teknologi HTML5.
Framework Firefox OS
(Maav, gambar telah terhapus. Silahkan sahabat mencarinya di Google Image)
Tizen OS
- Sistem operasi gratis dan open source.
- Berbasis linux.
- Dikembangkan oleh Samsung bersama Intel.
- Digunakan di berbagai macam perangkat seperti smartphone, tablet, dab smart watch.
Framework Tizen OS
jQuery Mobile
Windows Phone
- Sebelumnya bernama Phone 7 series
- Merupakan pengganti dari windows mobile.
- Diperkenalkan Pada tanggal 15 Februari 2010
- Windows Phone akan menjadi OS utama pada ponsel Nokia, dan tidak lagi menggunakan symbian.
- Terobosan Nokia untuk bersaing dengan Operating System Android, BB, dan iOS.
Development Windows Phone
- Peralatan dasar adalah Visual Basic 2010 dan Windows Phone Developer Tools.
- Dasar pengetahuan bahasa pemrograman C# (C Hash) sebagai native language.
- Developer dan desainer aplikasi bisa menggunakan Windows Presentation Foundation (WPF) atau Microsoft Silverlight.
- Pengembang game, desainer dapat memanfaatkan XNA Game Studio.
Framework Windows Phone
(Maav, gambar telah terhapus. Silahkan sahabat mencarinya di Google Image)
Aplikasi Untuk Framework
- Mobile WebApp
- Native App
- Hybrid App
Mobile Web Application
Aplikasi mobile yang dijalankan menggunakan browser yang ada di handphone, menggunakan bahasa pemrograman web seperti PHP & HTML5.
Native Application
Aplikasi yang dibuat dan ditanam (install) langsung didalam device, menggunakan bahasa pemrograman yang selayaknya digunakan untuk membuat aplikasi tersebut.
Misalnya, untuk membuat Android apps menggunakan Java dan SDK milik Android, dan iOS menggunakan Objective-C dan SDK iOS.
Perbandingan Native Apps dan Mobile Web
Karakter | Native Apps | Mobile Web |
Biaya | Membutuhkan biaya yang lebih besar dibandingkan mobile web. pengembangan native app tersebut dikembangkan juga pada beberapa platform sekaligus seperti iOS, Android dan Windows Phone | Mobile web yang yang berjalan di atas browser sehingga tidak membutuhkan pengembangan pada platform yang berbeda-beda |
Waktu Pengembangan | Membutuhkan waktu yang lebih lama dibandingkan pengembangan mobile web. Ini disebabkan oleh faktor teknis pengembangan native app lebih rumit daripada mobile web | Tidak lama |
Performa | Performa native app lebih memuaskan daripada mobile web karena memang dikembangkan untuk berjalan khusus di platform devicenya masing-masing | Tergantung koneksi internet |
Bahasa Pemrograman | Native app pada iOS dibuat dengan bahasa pemrograman Objective-C, Android dengan Java dan Windows Phone dengan Visual C++. | Mobile web dibuat dengan HTML5, CSS3, JavaScript dan server-side languages seperti PHP |
Distribusi | Native app membutuhkan distribusi lewat application storenya | Tinggal ketik URL nya |
Kelebihan
- Native app : Yang menonjol dari native app adalah performanya yang cepat, user-friendly, memiliki user experience yang baik, sisi visual yang menarik, terjamin dalam hal kualitas dan securitynya karena dikontrol oleh vendor masing-masing.
- Mobile Web : Dengan prinsip “develop once run everywhere” berarti relatif hemat biaya pengembangan dibandingkan native app yang multiplatform. Bisa didistribusikan secara bebas ke pengguna tanpa harus mendapatkan approval dari pihak tertentu sebagaimana native yang harus mendapat approval dari vendor lewat App Store dan Google Play. Begitu juga sebaliknya pengguna tidak perlu harus mencari dulu di application store untuk mengakses mobile web tersebut.
Kelemahan
- Native app : Biaya pengembangan dan maintenance yang lebih mahal jelas menjadi pertimbangan, biaya tersebut akan otomatis bertambah bila pengembangan dilakukan secara multiplatform. Update yang dilakukan secara periodik pada native app akan menciptakan kondisi dimana terdapat versi yang berbeda-beda yang digunakan oleh pengguna native app tersebut.
- Mobile Web : Performa yang relatif lambat dibandingkan native app. Belum supportnya secara penuh semua browser pada fitur-fitur HTML5 menjadikan mobile web tidak konsisten dalam tampilan di browser yang berbeda. Belum mampunya mobile web mengakses semua fitur yang dimiliki device bersangkutan. Sebaliknya native app dibuat untuk mampu mengakses semua fitur yang dimiliki device.
Hybrid Application
Aplikasi mobile yang dibuat dan ditanam (install) langsung di dalam device, menggunakan bahasa pemrograman website yang digabung dengan bahasa pemrograman yang selayaknya digunakan untuk membuat aplikasi pada device yang dituju.
Maksud dari “Menggabung Bahasa Pemograman” disini adalah, aplikasi inti dibuat dengan menggunakan bahasa pemrograman web, sedangkan untuk beberapa fitur yang tidak bisa dijalankan menggunakan bahasa pemrograman web, akan ditulis dalam bahasa pemrograman yang sesuai dengan device tujuan.
Jadi, intinya hybrid apps itu menggabungkan web apps dengan native apps dan dibundle menjadi 1 package.
Jadi butuh proses instalasi, beda dengan mobile web yang biasanya.
Jadi butuh proses instalasi, beda dengan mobile web yang biasanya.
Bahasa Pemograman Applikasi Mobile
- C++
- C#
- CSS
- HTML
- Java
- Java Script
- PHP
- Visual Editor
Fitur Hardware Support Framework
- Camera
- Capture
- Compass
- Connection
- Contacts
- File
- Geolocation
- Notification
- Storage
- Gestures & Multitouch
- Messages & Telephone
- Bluetooth
- NFC (Near Field Communications)
- Vibration
Lisensi
- Open Source
- Free
Baca Juga :