Living life and Make it Better

life, learn, contribute

Endy Muhardin

Software Developer berdomisili di Jabodetabek, berkutat di lingkungan open source, terutama Java dan Linux.

Silabus Kuliah Pemrograman

Melanjutkan rutinitas 2 tahun terakhir, minggu ini musim perkuliahan semester genap di Universitas Pancasila dimulai. Saya kebagian pegang Pemrograman 2 di kelas reguler, dan Pemrograman 4 di kelas karyawan. Buat para fans yang pengen ketemu dipersilahkan cari saya di Fakultas Teknik Universitas Pancasila setiap Kamis jam 18-21 dan Jumat jam 09-11.

Berikut adalah silabus perkuliahan dari Pemrograman 1 sampai Pemrograman 4. Silabus ini akan sering saya update mengikuti perkembangan jaman.

Pemrograman 1 : Java Fundamental

Tujuan

  • Paham dasar-dasar pemrograman dengan Java
  • Paham cara implementasi OOP dengan Java
  • Paham cara menggunakan class-class penting dalam Java SDK

Batasan

  • Hanya menggunakan library standar bawaan Java SDK
  • Tidak membahas konsep OOP (karena ada mata kuliahnya sendiri)

Referensi

Kebutuhan Software Lab

Materi Kuliah

  • Penjelasan Silabus
  • Setup / Instalasi Java
  • Version Control (Git)
  • Github
  • Anatomi Aplikasi Java
  • Classpath
  • Variabel dan Tipe Data
  • Operator
  • Control Flow (if-else, for/while)
  • Class & Object
  • Method
  • Exception
  • Konsep OOP
  • Inheritance
  • Encapsulation
  • Polymorphism
  • Abstract Class & Interface
  • Composition & Aggregation
  • Studi Kasus / Tugas
  • Presentasi Kasus

Pemrograman 2 : Essential Library

Tujuan

  • Mahir menggunakan library tambahan dari dunia open source
  • Mahir menggunakan development tools Java

Batasan

  • Belum membuat user interface

Kebutuhan Software Lab

Materi Kuliah

  • Build Tools
  • Automated Test
  • Date & Time
  • Collections
  • JDBC
  • String
  • Regular Expression
  • Multithreading / Concurrency
  • File I/O
  • Network I/O
  • Popular Network Protocol (HTTP, FTP, SMTP, POP, IMAP)
  • Studi Kasus

Pemrograman 3 : Aplikasi Desktop

Tujuan

  • Bisa membuat aplikasi lengkap dengan UI Desktop

Batasan

  • Aplikasi berjalan lokal
  • Penyimpanan data dilakukan lokal
  • Interaksi dengan server dilakukan dengan menggunakan service yang sudah tersedia (tidak membuat sendiri)

Referensi

Kebutuhan Software Lab

  • Sama seperti Pemrograman 2

Materi Kuliah

  • Arsitektur Aplikasi Desktop

    • Container
    • Simple Widget
    • Event Handling
    • Data backed Widget
  • Hello Swing

  • Container
  • Menu

  • Layout Manager

  • Simple Component

    • Text Field
    • Button
    • Checkbox
    • Radio Button
  • Event Handling

    • ActionEvent
    • MouseEvent
  • Complex Component

    • Combo/Select
    • List
  • Swing Table

    • JTable
    • TableModel
  • Concurrent Execution

    • Swing Worker
    • Progress Bar
  • Internationalization

  • Jasper Report
    • Parameter
    • Variable
    • Report Datasource
  • iReport

  • Studi Kasus

  • Requirement Specification

    • Daftar Fitur
    • Arsitektur
    • Desain UI
    • Desain Database
  • Implementasi Frame dan Menu
  • Implementasi Dummy Screen
  • Implementasi Proses Bisnis
  • Implementasi Akses Database
  • Implementasi Report

Pemrograman 4 : Aplikasi Web

Tujuan

  • Bisa membuat aplikasi web dengan arsitektur REST
  • Bisa menggunakan penyimpanan data non-relasional

Referensi

Kebutuhan Software Lab

Materi Kuliah

  • Java Web Application
  • Servlet, Filter, Listener
  • JSP & JSTL
  • Security
  • REST
  • AngularJS dan Twitter Bootstrap
  • Redis
  • MongoDB
  • Case Study