DEV Community

sandatya widhi
sandatya widhi

Posted on

01. Pengenalan Pemrograman Mobile

πŸ“± Pengenalan Pemrograman Mobile

Pemrograman mobile adalah proses membuat aplikasi yang berjalan pada perangkat mobile seperti smartphone dan tablet. Saat ini, aplikasi mobile menjadi salah satu bagian penting dalam kehidupan sehari-hari, mulai dari komunikasi, hiburan, edukasi, hingga bisnis.


πŸ”Ή Deskripsi Pemrograman Mobile

Pemrograman mobile mencakup pengembangan aplikasi untuk sistem operasi mobile populer seperti Android dan iOS. Proses ini melibatkan penggunaan bahasa pemrograman, framework, dan tools yang sesuai dengan platform target.

Aplikasi mobile dapat dibagi menjadi:

  • Native App β†’ dibuat khusus untuk platform tertentu (misalnya Android dengan Java/Kotlin, iOS dengan Swift/Objective-C).
  • Cross-platform App β†’ dapat berjalan di lebih dari satu platform dengan basis kode tunggal (misalnya React Native, Flutter).
  • Hybrid/Web View App β†’ aplikasi berbasis web yang dikemas menjadi aplikasi mobile.

πŸ”Ή Sejarah & Evolusi Pemrograman Mobile

  • Era Feature Phone (1990–2000) β†’ aplikasi mobile masih sederhana, berbasis Java ME atau Symbian.
  • Era Smartphone Awal (2007–2010) β†’ munculnya iPhone (iOS) dan Android yang membawa revolusi dengan App Store dan Google Play.
  • Era Modern (2011–sekarang) β†’ muncul berbagai framework cross-platform (React Native, Flutter, Xamarin) yang mempercepat pengembangan aplikasi.
  • Tren Masa Kini β†’ integrasi AI, IoT, Augmented Reality (AR), Virtual Reality (VR), serta Progressive Web Apps (PWA).

πŸ”Ή Perbandingan Pemrograman Mobile dengan Desktop & Web

Aspek Mobile Desktop Web
Perangkat Smartphone, Tablet PC, Laptop Browser (PC & Mobile)
Distribusi App Store, Google Play Installer (exe, dmg) URL (akses via internet)
Akses Hardware Kamera, GPS, Sensor, Accelerometer Hardware PC (GPU, Printer, dll.) Terbatas (via API browser)
Kinerja Optimasi untuk layar kecil & resource terbatas Performa tinggi Bergantung pada koneksi internet
Konektivitas Mobile Data, Wi-Fi Internet/LAN Internet wajib

πŸ”Ή Pengenalan Framework Native

Definisi:

Framework native adalah framework yang digunakan untuk mengembangkan aplikasi khusus pada satu platform tertentu. Misalnya, Android hanya menggunakan Android SDK, sedangkan iOS menggunakan iOS SDK.

Contoh:

  1. Android SDK

    • Bahasa utama: Java / Kotlin
    • Tool utama: Android Studio
    • Fitur: akses penuh hardware Android, performa optimal, dukungan langsung dari Google.
  2. iOS SDK

    • Bahasa utama: Swift / Objective-C
    • Tool utama: Xcode
    • Fitur: integrasi ketat dengan ekosistem Apple, performa tinggi, keamanan terjamin.

πŸ”Ή Pengenalan Framework Multi-Platform & Web View

Definisi:

Framework multi-platform adalah framework yang memungkinkan developer menulis kode sekali lalu menjalankannya di berbagai platform (Android & iOS) tanpa harus membuat kode terpisah untuk masing-masing platform.

Contoh:

  • React Native (Facebook/Meta) β†’ Menggunakan JavaScript + React untuk membuat aplikasi Android & iOS dengan kode tunggal.
  • Flutter (Google) β†’ Menggunakan bahasa Dart, performa tinggi, UI kaya widget.
  • Xamarin (Microsoft) β†’ Menggunakan C#, integrasi dengan ekosistem .NET.
  • Ionic / Cordova β†’ Menggunakan teknologi web (HTML, CSS, JavaScript) dan dikemas dalam WebView untuk dijalankan sebagai aplikasi mobile.

πŸ”Ή Perbedaan Framework Native vs Multi-Platform

Aspek Native Framework Multi-Platform Framework
Platform Hanya untuk satu platform (Android/iOS) Bisa berjalan di Android & iOS dengan satu basis kode
Bahasa Android: Java/Kotlin, iOS: Swift/Objective-C JavaScript (React Native), Dart (Flutter), C# (Xamarin)
Performa Optimal, langsung akses API native Hampir mendekati native, sedikit overhead
Waktu Pengembangan Lebih lama (dua kode berbeda) Lebih cepat (satu kode untuk semua)
Akses Fitur Device Penuh tanpa batasan Kadang butuh plugin/library tambahan
Pemeliharaan Sulit jika target lebih dari 1 platform Mudah, karena kode tunggal

Top comments (0)