Kurikulum IT · 2019. 8. 19. · § Pengenalan UX § Use Case Diagram (Use Case E-Commerce...

53
01 / 19 IDN Ikhwan Jonggol (Bobi Wahyu) Kurikulum IT

Transcript of Kurikulum IT · 2019. 8. 19. · § Pengenalan UX § Use Case Diagram (Use Case E-Commerce...

  • 01

    / 19

    IDN Ikhwan Jonggol(Bobi Wahyu)

    Kurikulum IT

  • 01

    / 19

    AndroidSemester 1Android

    Lanj.Semester

    2 PKLSemester

    3 iOSSemester

    4Web +

    IOTSemester

    5

    IDN

  • Semester 1

    01

    / 19

    IDN

  • Bulan Agustus Minggu 1

    01. Logika dan Algoritma PemrogamanMengasah 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

    01

    / 19

    IDN

  • Bulan Agustus Minggu 2

    02. DatabaseMempelajari 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

    01

    / 19

    IDN

  • Bulan Agustus Minggu 3-4

    03. OOP (Object Oriented Programming dengan JavaMempelajari 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

    01

    / 19

    IDN

  • Bulan September Minggu 1

    04. Pemrograman Android DasarMempelajari 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

    01

    / 19

    IDN

  • Bulan September

    05. User Interface & User ExperienceMempelajari 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

    01

    / 19

    IDN

  • Bulan Oktober Minggu 1

    06. Thread Handling & Bakground ServicesMempelajari 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

    01

    / 19

    IDN

  • Bulan Oktober Minggu 2

    07. Integrasi Aplikasi Android dengan API ResourceSiswa 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

    01

    / 19

    IDN

  • Bulan Oktober Minggu 3

    08. Testing dan Storage pada androidSiswa 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

    01

    / 19

    IDN

  • Bulan Oktober Minggu 4

    09. SQLite dan Content ProviderSiswa 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

    01

    / 19

    IDN

  • November MInggu 1

    10. Android Push NotificationMempelajari 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

    01

    / 19

    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

    01

    / 19

    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

    01

    / 19

    IDN

  • November Desember 0

    1 / 1

    9

    Menyelesaikan Target Pembuatan aplikasi

    IDN

  • Semester 2

    01

    / 19

    IDN

  • Januari Minggu 3

    13. Google MapsMempelajari 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

    IDN

  • Januari Minggu 414. Version ControlMempelajari 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

    IDN

  • Februari Minggu 115. Firebase Authentication and Realtime DatabaseMempelajari 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

    IDN

  • Februari Minggu 216. Pemrograman android java dengan KotlinKotlin 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

    IDN

  • 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

    IDN

  • 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

    IDN

  • 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

    IDN

  • Mei Minggu 1-4

    20. Exam Google AADPersiapan 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

    IDN

  • Juni

    01

    / 19

    § Membuat CV§ Melamar Lowongan§ Persiapan PKL§ Ujian Akhir Praktikum § Ujian Akhir Teori§ Libur Akhir Semester Genap

    IDN

  • Semester 3

    01

    / 19

    IDN

  • PKL/Magang

    IDN

  • Semester 4

    01

    / 19

    IDN

  • Januari Minggu 321. Pengenalan iOS, Xcode, dan SwiftSebelum mempelajari pengembangan aplikasi di platform iOS perlu kita ketahui apa-apa yang terkait tentang iOS tersebut. Kenapa ? 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

    IDN

  • Januari Minggu 4

    22. OOP SwiftSwift 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 123. Object DasarDalam 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

    IDN

  • Februari Minggu 224. Objects DasarDalam 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

    IDN

  • Februari Minggu 3-425. ConstraintsMempelajari 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

    IDN

  • Maret Minggu 1

    26. Storyboards dan SegueMempelajari 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 WebviewMempelajari penggunakan Dialog untuk komunikasi. Serta media dan WebView untuk mensupport fitur aplikasi

    Dialog• UIAlertController• UIAlertActionMedia• AVPlayer• AVFoundation• AVKitWebView• WebKit View• Web

    IDN

  • Maret Minggu 4

    28. CoreDataMempelajari 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

    IDN

  • April Minggu 1-2

    29. CocoapodsMempelajari 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

    IDN

  • April Minggu 3-4

    30. Mengenal LibraryMempelajari 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

    IDN

  • Mei Minggu 3-4

    32. Firebase & Google ServicesMempelajari 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

    01

    / 19

    § Membuat Project § Ujian Akhir Praktikum § Ujian Akhir Teori§ Libur Akhir Semester Genap

    IDN

  • Semester 5

    01

    / 19

    IDN

  • 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

    IDN

  • Bulan Juli Minggu 2

    33. IoT PlatformMateri 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

    IDN

  • Juli Minggu 3-4

    34. OpenCV Raspberry PiMempelajari 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

    IDN

  • Bulan Agustus

    35. Web Framework BootsrapMempelajari 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

    IDN

  • Bulan Agustus - September36. Membangun Web Dinamis dengan LaravelMempelajari 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

    Email

  • Bulan Oktober

    37. Project Web & MobileMempelajari 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 DesignDevelopment

  • Bulan November

    38. Data ScieneMempelajari Teknologi Data Science

    • Data Scientist• Deep Learning• Big Data Analytical • Artificial Intelegent• Machine Learning • Python Programming

    IDN

  • Desember

    § Projek Akhir§ Dokumentasi Projek§ Presentasi projek§ Ujian Akhir Praktikum § Ujian Akhir Teori

    IDN

  • Semester 6

    01

    / 19

    IDN

  • Ujian Nasional

    IDN