0
1
/
1
9
IDN Ikhwan Jonggol
(Bobi Wahyu)
0 1 / 1 9
Android
Semester1 Semester 2
Android
Lanj.
Semester 3PKL
Semester 4iOS
Semester 5Web +
IOT
Semester 1
0 1 / 1 9IDN
Bulan Agustus Minggu 1
01. Logika dan Algoritma Pemrogaman
Mengasah logika agar mampu memecahkan masalah dengan menggunakan logika secara tepat dan efisien melalui langkah – langkah yang terstruktur
§ Algoritma dan Flowchart § Pseudocode
§ Pengenalan UX
§ Use Case Diagram (Use Case E-Commerce Sederhana) § Siswa membuat 2 Use Case Diagram App
§ Activity Diagram (Activity Diagram untuk Setiap Usecase dari
Use Case Diagram E-Commerce Sederhana)
§ Siswa membuat activity diagram untuk setiap use case yang
dibuat.
§ Entity Relationship Diagram E-Commerce Sederhana § Siswa membuat 2 ERD aplikasi
0 1 / 1 9
IDN
Bulan Agustus Minggu 2
02. Database
Mempelajari carcara merancang, mengelola, dan
membaca database MySQL sebagai pondasi data dari suatu system.
§ Pengenalan Database
§ Structured Query Language § Pengenalan MySQL
§ Pengenalan PHPMyAdmin § Access Privilage
§ User Accounts
§ Relational Databases
§ DDL (CREATE, DROP, ALTER)
§ DML (INSERT, UPDATE, DELETE, SELECT) § DCL (GRANT, REVOKE) § Simple SELECTs § Advanced SELECTs § Latihan MySql 0 1 / 1 9
IDN
Bulan Agustus Minggu 3-4
03. OOP (Object Oriented Programming dengan Java
Mempelajari pemrograman object oriented dengan bahasa pemrograman java sebagai bekal dalam mempelajari
pemrograman android.
§ Pengenalan dan install Java
§ Install IDE (Intellij IDEA / NetBeans) § Programming Structures in Java
§ Classes and Objects in Java
§ Object Design and Programming with Java § Java Interfaces
§ Java Exception Handling § Inheritance
§ Polymorphism § Abstract classes
§ Encapsulation in Java § Property and Method § Access Modifier
§ Membuat Program dengan Java
0 1 / 1 9
IDN
Bulan September Minggu 1
04. Pemrograman Android Dasar
Mempelajari dasar pemrograman android dengan bahasa pemrograman java.
§ Pengenalan Android § Pengenalan SDK
§ Pengenalan dan Instalasi Android Studio sebagai IDE § Membuat project pada android studio
§ Menjalankan aplikasi dengan Emulator dan Device § Build APK dengan Debug dan Release variant
§ Android Manifest
§ Gradle dan Pengaturannya § Android Studio shortcuts
0 1 / 1 9
IDN
Bulan September
05. User Interface & User Experience
Mempelajari widget view dan viewgroup beserta penggunaannya dan prototyping design untuk perancangan UI UX aplikasi yang baik.
§ Pengenalan Object View § Pengenalan ViewGroup
§ Mengenal Satuan dimensi di Android § Design Prototyping
§ Intent Implicit dan Explicit § android activity lifecycle § Styling dan Theme
§ RecyclerView (LayoutManager, Adapter, dan DataSet) § Activity & Fragment Lifecycle
§ Saving Activity State § Application Repository
§ Pembuatan project Android
0 1 / 1 9
IDN
Bulan Oktober Minggu 1
06. Thread Handling & Bakground Services
Mempelajari bagaimana cara kerja sistem pada android dalam memproses suatu task
• Localization
• Threads, Handler, dan AsyncTask
• Broadcast Receiver
• Alarm Manager
• Job Scheduler
• GCM Network Manager
• Firebase Dispatcher
• Task dan Back Stack
• Graphic Cart 0 1 / 1 9
IDN
Bulan Oktober Minggu 2
07. Integrasi Aplikasi Android dengan API Resource
Siswa belajar membuat API dengan Framework PHP Laravel. Setelah API berhasil dibuat, siswa mengintegrasikan API ke Android.
§ Pembuatan API CRUD dengan Laravel § Pemasangan REST Client API
§ Pengenalan dengan kelas yang Extend application § Implementasi Request POST dan GET
§ Implementasi Request PUT dan DELETE
§ Pengertian tentang RESTFul API dan SOAP API § Pengenalan Struktur JSON dan Struktur XML § Pengenalan Design Pattern (MVP)
§ Mengubah struktur proyek android yang ada sebelumnya menjadi
design pattern MVP 0 1 / 1 9
IDN
Bulan Oktober Minggu 3
08. Testing dan Storage pada android
Siswa mempelajari metode testing dengan skenario Black Box dan WhiteBox testing. Untuk menguji kode, menggunakan Instrumented dan Unit Testing.
§ Pengenalan Black Box Testing § Pengenalan White Box Testing § Membuat Skenario Pengujian § Instrumented Test
§ Local Unit Testing
§ Penyimpanan data pada internal storage § Penyimpanan data pada eksternal storage § Penggunaan Shared Preferences
§ Hawk Lib 0 1 / 1 9
IDN
Bulan Oktober Minggu 4
09. SQLite dan Content Provider
Siswa mempelajari database local android dan mempelajari cara mendapatkan foto dari penyimpanan maupun kamera.
§ SQLite Data Type § Content Value
§ Adding, Updating, Deleting Content § Display the Data
§ SQLite Database + Room DB
§ Membuat CRUD dengan Room DB
§ Accessing SQLite from the command line § Retrieving data with SQLite queries
§ Access SQLite database via Content Provider
§ Sinkronisasi Database Local dengan Server MySQL
0 1 / 1 9
IDN
November MInggu 1
10. Android Push Notification
Mempelajari Push Notification pada Android dengan menggunakan Firebase Cloud Messaging dan OneSignal Notification
• Pengenalan Firebase Cloud Messaging
• Pembuatan akun Google Firebase
• Pembuatan Proyek Firebase
• Integrasi Android Apps dengan Firebase Cloud Messaging
• FCM Payload Structure
• Send Notification payload to the device
• FCM Data Message
• Sending Data message to the Android app
• FCM with OneSignal
• Pembuatan akun OneSignal
• set up OneSignal SDK
• Integrasi OneSignal
• send a Push notification using OneSignal dashboard
0 1 / 1 9
IDN
Bulan November Minggu 2
11. Sistem Keamanan Source Code Android
Mempelajari pengamanan Source code android yang sudah dibuat agar tidak dengan mudah didecompile sehingga bisa dibongkar orang lain
• Memahami kerentanan keamanan pada APK
• Obfuscation and Deobfuscation
• Code Obfuscation
• ProGuard
• Instalasi Android NDK
• Hiding Sensitive String dengan Native Code
0 1 / 1 9
IDN
Bulan November Minggu 1
12. Clean Code
• Siswa akan diajarkan untuk membuat kode yang lebih mudah dipahami dan diubah
§ Penamaan yang baik § Keep It to Simple
§ Don’t Repeat Yourself § Write Everything Twice § Avoid Hasty Abstraction § Formating § Refactoring 0 1 / 1 9
IDN
November Desember
0 1 / 1 9Menyelesaikan Target Pembuatan aplikasi
Semester 2
0 1 / 1 9IDN
Januari Minggu 3
13. Google Maps
Mempelajari penggunaan fitur Google Maps dalam penerapan di android.
• Pengenalan Location
• Pengenalan Google Maps SDK
• Draw Marker
• Get Information from Marker
• Get Longitude Langitude from Marker
• Google Map API Services
• Google Map API key
• Connect to Android Device
• Point of Interest
• Google Maps Android API
• Google Maps Direction API
• Google Places API for Android
• Google Places API Web Services
• Maps Utils
• Retrofit2 & GsonConverter
• Pembuatan aplikasi berbasis google map
Januari Minggu 4
14. Version Control
Mempelajari penggunaan version contol dalam
memanajemen projek dan versi untuk saling berkolaborasi antar programmer. Version control yang digunakan adalah GIT.
§ Installasi Git dan Konfigurasi awal yang harus dilakukan § Membuat repositori baru dalam projek.
§ Membuat revisi dan menyimpannya dengan git commit § Melihat catatan log revisi git
§ Melihat perbandingan revisi git § Membatalkan revisi git
§ Git merge
§ Menggunakan percabangan untuk mencegah konflik § Perbedaan git checkout, git reset, dan git revert
§ Bekerja dengan remote repository
§ Kolaborasi dengan tim pada projek open source § Git tag
Februari Minggu 1
15. Firebase Authentication and Realtime Database
Mempelajari fitur firebase authentication untuk memvalidasi data dan realtime database.
§ Email validation
§ Google dan facebook login
§ Mengimplementasikan insert data pada firebase storage § Chat Apps
§ Final Project
Februari Minggu 2
16. Pemrograman android java dengan Kotlin
Kotlin merupakan bahasa pemrograman modern yang mudah untuk dipelajari, sederhana dan efisien. Kotlin menjadi bahasa resmi Google yang akan terus dikembangkan dibanding
bahasa sebelumnya yaitu java.
• Pengenalan Kotlin
• Perbandingan Android Java dengan Kotlin
• Konversi Java ke kotlin
• Plugin Kotlin Pada Android Studio
• Gradle
• Anko
• Android Layout
• Multiple Screen
• Classes dan Inheritance
• Functions
• Android Manifest
• Recycle View & List View
• Intent
• Menu Item
• Integrasi Firebase
• WebView
• Parsing Data Retrofit
• MySQL & SQLite
• MVP
Februari Minggu 3-4
17. Kotlin Dalam Android.
Bahasa pemrograman Kotlin secara resmi didukung oleh Google. Dalam kotlin, terdapat beberapa fitur spesial yang disediakan khusus untuk
pemrograman android.
• Konversi Java ke Kotlin
• Menampilkan array dalam recyclerview
• Kotlin Android Extension
• Android KTX
• Extension Function dalam KTX
• Anko Layout
• Anko Commons
• Anko SQLite
• Anko Coroutines
• MVP Dalam kotlin
• Pembuatan Aplikasi Football Match Schedule
Maret Minggu 1-2
18. CRUD Dalam Android.
Mempelajari CRUD Create Read Update Delete pada Android
• Pembuatan Database & Table
• Memahami syntax SQL dan konsep dasar SQLite pada Android
• Pembuatan user & access PHPmyAdmin
• Create
• Read
• Update
• Delete
• PHP for Rest API
• Integrasi PHP dan sql pada android
• Penerapan CRUD dengan membuat aplikasi android
April Minggu 3 - 4
19. Fitur Pada Android.
mempelajari fitur-fitur tambahan sebagai pendukung aplikasi android
• Widget • Widget Layout • Widget Class • Configuration Activity • Create Notification • Notification Action • Notification Priorities
• Firebase Cloud Messaging
Mei Minggu 1-4
20. Exam Google AAD
Persiapan Exam Google Associate Android Developer
• Architecture of the Android system
• building blocks of an Android app
• Build & Run
• Toast / Snackbar • Notifications • Localize an App • JobScheduler • User Interface • Layout • App Theme • View • RecyclerView • Navigation • Room Entitles • DAO • Live Data • Repository • Asset • User InputDebugging
• Behaviour & Usability
• System Log
• Breakpoints
• Inspect Variable
• Fundamental Testing
• local JUnit tests
• Espresso UI test framework
• automated Android tests
Juni
0 1 / 1 9 § Membuat CV § Melamar Lowongan § Persiapan PKL§ Ujian Akhir Praktikum § Ujian Akhir Teori
§ Libur Akhir Semester Genap
Semester 3
0 1 / 1 9IDN
PKL/Magang
Semester 4
0 1 / 1 9IDN
Januari Minggu 3
21. Pengenalan iOS, Xcode, dan Swift
Sebelum mempelajari pengembangan aplikasi di platform iOS perlu kita ketahui apa-apa yang terkait tentang iOS tersebut. Kenapa-apa ? Ada baiknya untuk menambah
motivasi belajar kita, memberikan informasi apa saja yang ada pada bidang iOS Development untuk membantu kita membuat rencana kedepannya.
Pengenalan iOS
• Penggunaan iOS
• Device yang menggunakan iOS
• Apple Inc.
• Produk Apple
• Kegunaan Xcode
• Tools di Xcode
• Bahasa Pemrograman di Xcode
• Bahasa Pemrograman Swift
• Kegunaan Swift
• Pengenalan Swift
• Swift Basic
• Tipe Data Swift
• Operator Dasar
• String and Character
• Collection types
• Control Flow
• Functions
• Enum
Januari Minggu 4
22. OOP Swift
Swift Fundamental membantu kita mempermudah pemahaman OOP Swift sebagai dasar
pemrograman.
• OOP (Object Oriented Programming)
• Structure dan Classes
• Properties • Method • Subscripts • Inheritance • Initialization • Type Casting • Generics
IDN
Februari Minggu 1
23. Object Dasar
Dalam pengembangan iOS menggunakan Xcode dikenal istilah Objects pada main.storyboard sebagai komponen dasar untuk desain tampilan feature
aplikasi di platform iOS
• View Controller
• Label & Button
• Image View, TextView
• Segmented Control • Text Field • Slider • Switch • Progress View • Stepper
• Date Picker & Picker View
• StackView (Horizontal dan Vertikal)
• Scroll View
• WebKit View
Februari Minggu 2
24. Objects Dasar
Dalam minggu ke-dua siswa akan mendalami materi Objects, Objects yang akan dipelajari dalam minggu ini adalah mendalami Objects seperti Tab Bar Controller, Navigation Controller dan Objects lainnya.
• Navigation Controller
• Navigation Bar
• Navigation Item
• Table View Controller
• Table View
• Table View Cell
• Collection View Controller
• Collection View
• Tab Bar Controller
• Tab Bar
• Tab Bar Item
• Page View Controller
Februari Minggu 3-4
25. Constraints
Mempelajari AutoLayout pada setiap devices iOS yang berbeda menggunakan Constraints
• IoS Auto Layout
• Auto Layout orientation
• Content Size
• Constraint Autonomy
• Working with constraint in interface builder
• Trailing dan Leading
• Horizontally and Vertically in Container
• Stack View
• Debugging
• Size-Class-Specific Layout
• Changing Constraints
• Super View dan Safe Area
• Constraints to Margin
Maret Minggu 1
26. Storyboards dan Segue
Mempelajari Storyboard Interface Builder pada iOS Swift
• Entry Point (Initial View Controller)
• File Inspector • Help Inspector • Identity Inspector • Attributes Inspector • Size Inspector • Connections Inspector • Segue Show • Show Detail • Present Modally • Present as Popover • Storyboard ID (ViewController.swift)
IDN
Maret Minggu 3
27. Dialog, Media, dan Webview
Mempelajari penggunakan Dialog untuk komunikasi. Serta media dan WebView untuk mensupport fitur aplikasi
Dialog • UIAlertController • UIAlertAction Media • AVPlayer • AVFoundation • AVKit WebView • WebKit View • Web
IDN
Maret Minggu 4
28. CoreData
Mempelajari Core Data framework untuk berinteraksi dengan database, penyimpanan data, pemetaan object
• Create Data
• Retrieve Data
• Update Data
• Delete Data
• Pengenalan Core Data
• Managed Object Model
• Initializing Core Data Stack
• Creating & Saving Managed Objects
• Fetching Objects
• Core Data Integration
• Connecting model to views
• Managing the Object Life Cycle
• Managed Objects & References
• Object Validation
April Minggu 1-2
29. Cocoapods
Mempelajari Cocoapods Dependency Manager
• Introduction to Cocoapods
• Checking Update Gems tool
• Install Cocoapods using RubyGems tool
• pod setup
• Install sebuah library di Xcode project
• Podfile central configuration file
• Alamofire
• SwiftyJSON
• Kingfisher
April Minggu 3-4
30. Mengenal Library
Mempelajari penggunaan Library pada iOS, kumpulan program/fungsi pada compiler interpreter • Alamofire • Alamofire Image • SwiftyJson • Firebase • Google Analytics • Google SignIn • Google-Mobile-Ads-SDK
IDN
Mei Minggu 1-2
31. Get API
Mempelajari Application Programming Interface, untuk mengintegrasikan aplikasi berbeda secara bersamaan.
• JSON
• Android Rest API Client
• Retrofit
• Retrofit API Services
• CRUD Restful API PHP MySQL
• Aplikasi Portal Berita (newsapi.org)
• Aplikasi Berita Bola (thesportsdb.com)
• Aplikasi WIsata
• Aplikasi Makanan
Mei Minggu 3-4
32. Firebase & Google Services
Mempelajari Google Services untuk pengembangan aplikasi.
• Firebase Database Realtime
• Firebase Authentication
• Firebase Analytics
• Firebase Storage
• Firebase Cloud Messaging
• Google SignIn • Google Maps • Google Places • Google Direction • Google Ads
IDN
Juni
0 1 / 1 9 § Membuat Project§ Ujian Akhir Praktikum § Ujian Akhir Teori
§ Libur Akhir Semester Genap
Semester 5
0 1 / 1 9IDN
Bulan Juli Minggu 1
33. Internet Of Things (IOT)
Pemerintah telah meluncurkan Roadmap Making Indonesia 4.0 untuk kesiapan memasuki era revolusi industri ke-4. Internet of Things (IoT) merupakan salah satu andalan roadmap yang
diinisiasi oleh Kementerian Perindustrian tersebut.
§ Arduino UNO
§ Integrating Sensors
§ Arduino IDE
§ Controlling Actuators
§ Serial Communication
§ IOT Smart Home
§ IOT Smart Parking
§ IOT Smart Trash
§ IOT RFID & eKTP
§ IOT Weather Station
§ IOT Fish/Cat Feeder
§ IOT Smart Trash
§ IOT Watering Plant
§ Wireless Connection
Bulan Juli Minggu 2
33. IoT Platform
Materi IoT Lanjutan untuk pengiriman data sensor pada server baik lokal maupun ke cloud menggunakan berbagai macam IoT Platform yang tersedia
§ IoT Cloud Architecture
§ Real time data transfer
§ MQTT Protocol
§ Sending Sensors Data to Lora Server
§ NB-IOT XL
§ NB-IOT Telkomsel
§ Visualizing data on IoT Dashboard
§ Thingspeak
§ Cayenne
§ Thinger
Juli Minggu 3-4
34. OpenCV Raspberry Pi
Mempelajari Image Processing OpenCV menggunakan Raspberry Pi dan bahasa pemrograman Python
§ Dasar Pemrograman Python
§ OpenCV
§ Image Processing
§ Video Processing
§ Penulisan karakter dan bentuk geometri
§ Teknik Mendeteksi warna
§ Pengenalan Objek Geometri
§ Pengenalan Bentuk Kompleks
§ Face & Eye Recognition
§ Moving Object Detection
§ YOLO Object Detection
§ Plate Car Recoqnition
§ Emotion Recognition
§ Semantic Recoqnition
Bulan Agustus
35. Web Framework Bootsrap
Mempelajari Framework Front-End Website Bootstrap 4 untuk membuat web-page responsive / Mobile-first web-page
• Pengenalan Web Framework
• Bootstrap Introduction
• Bootstrap Layouts
• Bootstrap Basic Tags
• Bootstrap Utilities
• Bootstrap Components
Bulan Agustus - September
36. Membangun Web Dinamis dengan Laravel
Mempelajari salah satu framework web yang paling popular yaitu laravel dengan menerapkan MVC Pattern dan bahasa pemrogaman PHP. § Basic Installation § Introduction § Install Composer § Project Structure § Admin Theme § Database Configuration § Create Category § Migration § Model § Routes § View § Revise Review § Create § Store 1, 2, 3 § Show § Edit
§ Update dan Delete § Create Post § Image § Database § View § Create § Store
§ Show dan Edit
§ Update dan Delete
IDN
§ Show Post § Index § View § Category § Search § Pagination § Login § Login User § Login Admin § Change Password § Email § Email § Send Email § Verify EmailBulan Oktober
37. Project Web & Mobile
Mempelajari Framework Front-End Website Bootstrap 4 untuk membuat web-page responsive / Mobile-first web-page
• Pembuatan Web App Kasir Restoran
• Pembuatan Web App Kasir Ticketing
• Pembuatan Web App Inventory
• Pembuatan Web App Pembayaran Listrik
IDN
Prototyping
DB Design
Development
Bulan November
38. Data Sciene
Mempelajari Teknologi Data Science
• Data Scientist
• Deep Learning
• Big Data Analytical
• Artificial Intelegent
• Machine Learning
• Python Programming
Desember
§ Projek Akhir
§ Dokumentasi Projek
§ Presentasi projek
§ Ujian Akhir Praktikum
§ Ujian Akhir Teori