Slide 1 / 25
๐Ÿ“ฑ
๐Ÿค–
๐ŸŽ
โšก
๐Ÿ”ง
๐Ÿ’ป
๐Ÿ“˜ SEMESTER 1 ยท KELAS 11

BAB 1

PENGENALAN MOBILE DEVELOPMENT

Dari Smartphone ke Code โ€” Perjalananmu Dimulai Di Sini ๐Ÿš€

ยฉ 2024 ยท MateriSahil ยท Front-End Master Class

๐ŸŽฏ TUJUAN PEMBELAJARAN

Setelah mempelajari BAB 1, kamu mampu:

๐Ÿ•’ Estimasi waktu belajar: 2 ร— 45 menit
SLIDE 3

Apa itu Mobile Development?

Bayangkan kamu seorang ARSITEK yang membangun rumah. Mobile Developer itu seperti arsitek yang membangun "rumah digital" di dalam smartphone-mu.

Definisi: Mobile Development adalah proses merancang, membangun, dan menguji aplikasi yang berjalan di perangkat mobile (smartphone & tablet).

0.00

Miliar+ Pengguna Smartphone di Dunia (2024)

๐Ÿ’ฌ ๐Ÿ“ท ๐Ÿ›ต ๐ŸŽต ๐Ÿ›’ ๐ŸŽฎ

App bermunculan dari dalam smartphone

๐Ÿ”„ Alur Pembuatan Aplikasi (SDLC)

Setiap aplikasi โ€” dari TikTok sampai Gojek โ€” lahir melalui 6 tahap berurutan berikut:

๐Ÿ’กIde
โžœ
๐ŸŽจDesain
โžœ
๐Ÿ’ปKoding
โžœ
๐ŸงชTesting
โžœ
๐Ÿš€Deploy
โžœ
๐Ÿ“ฑApp Store
๐Ÿ’ก Ide โ†’ ๐ŸŽจ Desain

Menentukan masalah yang ingin dipecahkan, lalu merancang tampilan (UI/UX) โ€” misalnya di Figma.

๐Ÿ’ป Koding โ†’ ๐Ÿงช Testing

Menulis baris kode menjadi aplikasi nyata, lalu mengujinya agar bebas bug di berbagai HP.

๐Ÿš€ Deploy โ†’ ๐Ÿ“ฑ Store

Aplikasi dirilis ke Play Store / App Store sehingga bisa diunduh jutaan pengguna.

SLIDE 4

Ekosistem Mobile: Android vs iOS

Seperti di dunia laptop ada Windows vs MacOS, di dunia mobile ada Android vs iOS.

โ–  Android 72%   โ–  iOS 28%

๐Ÿค–

Android

Google

Digunakan 1000+ merek HP

72%

๐ŸŽ

iOS

Apple

Eksklusif iPhone & iPad

28%

Merek Android di Indonesia: Samsung ยท Xiaomi ยท OPPO ยท Vivo ยท Realme

SLIDE 5

Android Platform

๐Ÿค–
  • ๐Ÿ“Œ Dibuat oleh: Google (2008)
  • ๐Ÿ“Œ Bahasa: Java โ†’ Kotlin
  • ๐Ÿ“Œ IDE Resmi: Android Studio
  • ๐Ÿ“Œ Open Source: โœ… Ya
  • ๐Ÿ“Œ Market Share Dunia: ~72%
  • ๐Ÿ“Œ Market Share Indonesia: ~90%+
Android itu seperti resep masakan yang dibagikan gratis. Samsung, Xiaomi, OPPO semua bisa "memasak" (membuat HP) dengan resep yang sama, lalu menambahkan bumbu rahasianya sendiri.

๐Ÿ“œ โ†’ ๐Ÿค– โ†’ ๐Ÿ“ฑ๐Ÿ“ฑ๐Ÿ“ฑ

Satu resep, banyak merek HP

SLIDE 6

iOS Platform

๐ŸŽ
  • ๐Ÿ“Œ Dibuat oleh: Apple Inc. (2007)
  • ๐Ÿ“Œ Bahasa: Objective-C โ†’ Swift
  • ๐Ÿ“Œ IDE Resmi: Xcode (hanya di MacOS!)
  • ๐Ÿ“Œ Closed Source: โœ… Tertutup
  • ๐Ÿ“Œ Eksklusif: iPhone, iPad, iPod
  • ๐Ÿ“Œ Keunggulan: Keamanan & stabilitas tinggi
iOS itu seperti restoran bintang 5 yang eksklusif โ€” kamu HARUS punya iPhone untuk masuk. Tidak bisa masuk pakai Android, seberapa canggih pun HP-nya.

๐Ÿšชโœจ โ†’ ๐ŸŽ only

Gerbang eksklusif hanya untuk perangkat Apple

SLIDE 7 ยท FLOWCHART UTAMA

Native vs Cross-Platform

Mau buat aplikasi mobile? Hanya target 1 platform? YES โ†™ NO โ†˜ NATIVE CROSS-PLATFORM Android โ†’ Kotlin iOS โ†’ Swift Flutter / React Native Android + iOS + Web + Desktop
NATIVE

Satu bahasa untuk satu platform. Performa terbaik.

CROSS-PLATFORM

Satu bahasa untuk semua platform. Efisiensi tinggi.

SLIDE 8

Native Development

๐Ÿค– Android Native โ€” Kotlin/Java

  • Performa: โ˜…โ˜…โ˜…โ˜…โ˜…
  • Hardware access: Full (kamera, GPS, sensor)
  • Update OS: Langsung dapat fitur baru
  • Tim: Khusus Android developer

๐ŸŽ iOS Native โ€” Swift

  • Performa: โ˜…โ˜…โ˜…โ˜…โ˜…
  • Hardware access: Full (Face ID, haptic)
  • Update OS: Langsung dapat fitur baru
  • Syarat: Harus punya Mac + Xcode
Native itu seperti memiliki 2 dapur terpisah โ€” dapur Android dan dapur iOS. Masakannya sempurna, tapi butuh 2 koki dan 2 tempat!
SLIDE 9 ยท NATIVE ANDROID

Kotlin ๐ŸŸฃ

Dibuat oleh JetBrains (2016), lalu diadopsi Google sebagai bahasa resmi Android (2017). Lebih modern & ringkas dari Java, lebih aman dari error null, dan 100% kompatibel dengan kode Java lama.

๐Ÿ“– Bedah Kode
  • fun main() titik awal program dijalankan
  • val nama variabel konstan (nilainya tetap)
  • $nama menyisipkan nilai variabel ke dalam teks
  • println() menampilkan teks ke layar/konsol
// Output akan muncul di sini setelah kode dijalankan...
SLIDE 10 ยท NATIVE iOS

Swift ๐Ÿฆ

Dibuat oleh Apple (2014) sebagai pengganti Objective-C. Sintaksnya elegan & mudah dibaca, sangat cepat (mendekati bahasa C), dan punya keamanan tipe data yang ketat.

๐Ÿ“– Bedah Kode
  • let nama variabel konstan (mirip val di Kotlin)
  • \(nama) menyisipkan variabel ke dalam teks (interpolation)
  • print() menampilkan teks ke layar/konsol
// Output akan muncul di sini setelah kode dijalankan...
AspekKotlinSwift
PlatformAndroidiOS
Dibuat olehJetBrains/GoogleApple
SintaksModern & ringkasElegan & aman
SLIDE 11

Cross-Platform Overview

๐Ÿ“ฑ ๐ŸŽ ๐ŸŒ ๐Ÿ’ป
๐Ÿ‘จโ€๐Ÿณ
main.dart

Satu koki memasak, 4 meja platform terlayani

โœ… Keuntungan

  • โœ… Satu codebase untuk semua platform
  • โœ… Hemat waktu 50โ€“70%
  • โœ… Tim lebih kecil = biaya hemat
  • โœ… Update fitur serentak

โŒ Kekurangan

  • โŒ Performa sedikit di bawah Native
  • โŒ Akses hardware eksklusif kadang terbatas
  • โŒ Bergantung pada update framework
SLIDE 12

Flutter

UI toolkit open source dari Google untuk membangun aplikasi cantik & berkinerja tinggi dari satu codebase โ€” Mobile, Web & Desktop.

๐Ÿข Dibuat: Google
๐Ÿ’ป Bahasa: Dart
๐Ÿ“… Stable: Des 2018
โญ Stars: 160.000+
๐ŸŒ Open Source
๐Ÿ†“ Gratis

Dipakai oleh: Google Pay ยท eBay ยท BMW ยท Alibaba ยท iRobot

"Flutter is Google's portable UI toolkit for crafting beautiful, natively compiled applications." โ€” flutter.dev
SLIDE 13

React Native

Framework dari Meta (Facebook) untuk membuat aplikasi mobile menggunakan JavaScript โ€” bahasa yang sudah dikenal banyak web developer.

AspekFlutterReact Native
BahasaDartJavaScript
Performaโ˜…โ˜…โ˜…โ˜…โ˜…โ˜…โ˜…โ˜…โ˜…
UI Kustomโ˜…โ˜…โ˜…โ˜…โ˜…โ˜…โ˜…โ˜…
Web Supportโœ… Nativeโœ… Terbatas
Desktopโœ… Nativeโš ๏ธ Terbatas
KomunitasBesarSangat Besar
SLIDE 14

 

๐Ÿ”ฅ KINERJA TINGGI

Compile ke native ARM machine code. Tanpa JavaScript bridge = tanpa bottleneck!

๐ŸŽจ UI KUSTOM BEBAS

Widget lengkap, UI sesuai desain apapun, persis sama di Android & iOS.

๐Ÿ“ฑ๐Ÿ’ป๐ŸŒ SATU KODE SEMUA PLATFORM

Mobile + Web + Desktop dari satu file kode yang sama!

๐Ÿ†“ GRATIS & OPEN SOURCE

Tanpa biaya lisensi. Ribuan package gratis di pub.dev.

๐Ÿข BACKED BY GOOGLE

Update rutin, dokumentasi lengkap, ecosystem berkembang.

SLIDE 15 ยท HIGHLIGHT

Satu Codebase, Banyak Platform

main.dart
๐ŸŽ iOS IPA
๐Ÿค– Android APK
๐Ÿ’ป Desktop App
๐ŸŒ Web App

โฌ† Satu file main.dart "meledak" menjadi 4 aplikasi di 4 platform berbeda

Seperti seorang penyanyi yang merekam 1 lagu, lalu dirilis serentak di Spotify, Apple Music, YouTube Music & JOOX โ€” tanpa merekam ulang!
๐Ÿค– Android APK

File instalasi untuk semua HP Android.

๐ŸŽ iOS IPA

Aplikasi untuk iPhone & iPad.

๐ŸŒ Web App

Website yang bisa dibuka di browser.

๐Ÿ’ป Desktop App

Program untuk Windows, Mac & Linux.

Flutter + 1 file Dart = Android APK + iOS IPA + Website + Windows App

๐Ÿ“ฆ Step 1 of 3

Instalasi: Flutter SDK

33% โ€” Instalasi Flutter SDK

1
Download SDK

Buka flutter.dev โ†’ pilih OS โ†’ download ZIP Flutter SDK.

2
Extract

Extract ke C:\flutter. JANGAN di Program Files (butuh permission khusus!)

3
Set PATH
# Windows โ€” tambahkan ke System PATH setx PATH "%PATH%;C:\flutter\bin"
4
Verifikasi
$ flutter --version Flutter 3.x.x โ€ข channel stable
๐Ÿ’ก Butuh ruang ~1.5GB untuk Flutter SDK!
๐Ÿค– Step 2 of 3

Instalasi: Android Studio

66% โ€” Android Studio + SDK

1
Download

developer.android.com/studio

2
Install

Pilih "Standard" setup, tunggu SDK (~3โ€“5GB).

3
Plugin

Settings โ†’ Plugins โ†’ cari "Flutter" โ†’ Install โ†’ Restart.

4
Set SDK Path

Settings โ†’ Flutter โ†’ SDK Path: C:\flutter

Simulasi instalasi...

Installing Flutter plugin... Installing Dart plugin... Restarting IDE... [โœ“] Flutter plugin installed! [โœ“] Dart plugin installed!
๐Ÿ’ก Android Studio = IDE + Android Emulator GRATIS sepaket!
๐Ÿ’ป Step 3 of 3

Instalasi: VS Code

100% โ€” Setup Selesai! ๐ŸŽ‰

1
Download

code.visualstudio.com โ†’ versi Stable.

2
Install Extensions

Tekan Ctrl+Shift+X lalu install:

โšก Flutter (WAJIB)

Core Flutter support

๐ŸŽฏ Dart (WAJIB)

Dart language support

๐Ÿ” Error Lens

Error inline (rekomendasi)

๐ŸŒˆ Bracket Colorizer

Bracket warna (rekomendasi)

โšก + ๐Ÿค– + ๐Ÿ’ป = SETUP SELESAI! ๐ŸŽ‰

SLIDE 19

Emulator vs Device Fisik

๐Ÿ–ฅ๏ธ Emulator (Virtual)

Kapan dipakai:

  • โœ… Tidak punya HP spare
  • โœ… Tes berbagai ukuran layar
  • โœ… Tes berbagai versi Android

Setup: Android Studio โ†’ AVD Manager โ†’ Create Virtual Device โ†’ download image (API 30+) โ†’ Launch.

๐Ÿ“ฑ Device Fisik

๐Ÿ’ป๐Ÿ“ฑ

Kapan dipakai:

  • โœ… Tes performa realistis
  • โœ… Tes hardware (kamera, sensor)
  • โœ… Demo ke klien/guru

Setup: Ketuk "Nomor Build" 7x โ†’ USB Debugging ON โ†’ sambungkan USB โ†’ flutter devices

Emulator = driving simulator untuk belajar. Device fisik = nyetir mobil beneran di jalan!
SLIDE 20

โŒจ๏ธ Flutter CLI

CLI itu seperti remote control TV super canggih. Tidak perlu menekan tombol satu per satu โ€” cukup ketik perintah, Flutter langsung eksekusi!
SLIDE 21

๐Ÿฉบ flutter doctor

Fungsi: Memeriksa apakah semua komponen Flutter sudah terinstall & dikonfigurasi dengan benar di komputermu.

[โœ“] Hijau

OK, siap dipakai

[!] Kuning

Peringatan, perlu dicek

[โœ—] Merah

Error, belum terinstall

SLIDE 22

flutter run & build apk

โ–ถ๏ธ flutter run

Menjalankan app di emulator/device terhubung.

$ flutter run # target device spesifik $ flutter run -d emulator-5554

r Hot Reload   R Hot Restart   q Quit

๐Ÿ“ฆ flutter build apk

Membuat file APK yang bisa diinstall di HP Android manapun.

# untuk testing $ flutter build apk --debug # untuk distribusi $ flutter build apk --release

๐Ÿ“ Hasil: build/app/outputs/flutter-apk/app-release.apk ๐ŸŽ

๐Ÿ‹๏ธ LATIHAN 1 ยท Individual ยท โฑ 15 Menit

Detektif Aplikasi

Buka HP Android-mu! Pilih 5 aplikasi favoritmu, lalu tentukan teknologinya: Native atau Cross-Platform?

NoAplikasiNative / CrossAlasan
1TikTok??????
2Shopee??????
3WhatsApp??????
4Gojek??????
5(pilihanmu)??????
  • TikTok โ†’ Native + Flutter (sebagian)
  • Shopee โ†’ React Native
  • WhatsApp โ†’ Native + React Native (beberapa bagian)
  • Gojek โ†’ Flutter (sejak 2021)
๐ŸŒŸ BONUS: Cari tahu teknologi Tokopedia & BCA Mobile!
๐Ÿงฉ LATIHAN 2 ยท Kelompok ยท โฑ 20 Menit

Konsultan Teknologi

Kamu seorang Konsultan IT. 3 klien minta saranmu โ€” Native atau Cross-Platform? Berikan alasanmu!

Kasus 1 โ€” Startup

App kuliner, budget Rp 50jt, Android+iOS, 2 dev junior.

Kasus 2 โ€” Bank Besar

10 juta nasabah, Face ID, keamanan tinggi, budget besar.

Kasus 3 โ€” Game Studio

Game 2D indie, grafis menarik, Android dulu lalu iOS.

  • Kasus 1 โ†’ CROSS-PLATFORM (Flutter) โ€” hemat biaya, satu tim.
  • Kasus 2 โ†’ NATIVE โ€” keamanan & performa maksimal.
  • Kasus 3 โ†’ CROSS-PLATFORM (Flutter) โ€” cocok game 2D, mudah expand ke iOS.
๐Ÿ†

๐Ÿ“ TUGAS BAB 1

Buatlah INFOGRAFIS (A4, berwarna) menggunakan Canva, PowerPoint, atau kertas.

  • โœ… Perbedaan Android vs iOS (min 3)
  • โœ… Kapan Native vs Cross-Platform (min 2 kondisi tiap jenis)
  • โœ… Langkah instalasi Flutter (min 5 langkah berurutan)
  • โœ… Min 3 perintah Flutter CLI + fungsi + contoh output
  • โœ… Bonus: Mengapa kamu memilih Flutter untuk belajar?
๐Ÿ“„ Format: PDF/JPG
๐Ÿ“ง Kirim ke: [email guru]
๐Ÿ“… Deadline: [minggu depan]
โญ Nilai Maks: 100
Konten 40%
Visualisasi 30%
Kreativitas 20%
Ketepatan 10%

Selamat! Kamu menyelesaikan BAB 1. Perjalananmu baru dimulai! ๐Ÿš€
Di BAB 2 kita mulai coding Dart pertamamu!