Course Description
This course teaches platform-based programming concepts and techniques. In teaching this concept, the Java programming language will be used because Java uses the concepts of objects and classes in making programs. Teaching materials include an introduction to OOP concepts, Java Virtual Machine (JVM), objects, classes, methods, constructors, I/O, inheritance, encapsulation, polymorphism, overloading, UML, files, AWT, Swing, applets and exceptions.
Program Objectives (PO)
- Mampu membandingkan arsitektur, keunggulan, dan keterbatasan platform pengembangan aplikasi Web, Desktop, dan Mobile untuk pemilihan teknologi yang tepat dalam penyelesaian masalah komputasi
- Mampu merancang antarmuka pengguna (UI) dan pengalaman pengguna (UX) yang responsif dan adaptif untuk aplikasi pada platform Web menggunakan HTML, CSS, dan kerangka kerja JavaScript
- Mampu mengembangkan aplikasi front-end web yang dinamis dan interaktif menggunakan kerangka kerja berbasis komponen
- Mampu mengembangkan aplikasi desktop event-driven dengan antarmuka grafis (GUI) untuk kebutuhan offline menggunakan JavaFX atau C#.NET
- Mampu mengembangkan aplikasi mobile native (Android) yang terstruktur, mengelola state dan siklus hidup komponen, serta melakukan persistensi data lokal
- Mampu mengintegrasikan aplikasi pada platform yang berbeda melalui konsumsi API dan mendemonstrasikan solusi perangkat lunak multi-platform secara kolaboratif dalam sebuah proyek akhir