Anda di halaman 1dari 14

LAPORAN

PRAKTIKUM IMPLEMENTASI
PERANCANGAN PERANGKT LUNAK

MODUL 7
DESIGN PATTERN MVC

Disusun Oleh :
Rival Muhamad Saepuloh || 3411171152

PROGRAM STUDI INFORMATIKA


FAKULTAS SAINS DAN INFORMATIKA
UNIVERSITAS JENDERAL ACHMAD YANI
2019
ABSTRACT

MVC adalah singkatan dari Model – View – Controller. Pola ini digunakan
untuk memisahkan focus pada aplikasi. Model – model mewakili suatu objek yang
membawa data. Model juga dapat memiliki logika untuk memperbaharui Controller
jika datanya berubah. View mewakili visualisasi data yang ada pada Model. Controller
bekerja pada model dan tampilan. Controller bekerja pada model dan tampilan,
Controller mengontrol aliran data dan objek mdel dan memperbaharui tampilan setiap
kali data berubah, membuat tampilan dan model terpisah

i
DAFTAR ISI

ABSTRACT ................................................................................................................... i

DAFTAR ISI ................................................................................................................. ii

BAB I HASIL PRAKTIKUM...................................................................................... 1

1.1 Latihan MVC .................................................................................................. 1

1.2 Model : Student.Java ...................................................................................... 2

1.3 View : StudentView.Java ............................................................................... 2

1.4 Controller : StudentController.Java ................................................................ 3

1.5 Main Program : MVCPatternDemo.Java ....................................................... 4

BAB II TUGAS AKHIR .............................................................................................. 5

2.1 Tugas MVC .................................................................................................... 5

2.2 Model : Course.Java ....................................................................................... 6

2.3 View : CourseView.Java ................................................................................ 6

2.4 Controller : StudentController.Java ................................................................ 7

2.5 Main Program : MVCPatternDemo.Java ....................................................... 8

BAB III KESIMPULAN ............................................................................................ 10

DAFTAR PUSTAKA ................................................................................................. 11

ii
BAB I
HASIL PRAKTIKUM

1.1 Latihan MVC


Dalam praktikum ini, akan dilakukan menggunakan Java. Contoh kasus
yang digunakan adalah Class Student. Class tersebut akan dipisahkan menjadi
Class Student untuk Model, StudentView untuk View dan StudentController
sebagai Controller dan MVCPatternDemo sebagai class utama untuk menjalankan
Class tersebut. Class Diagram ada dibawah ini.

Gambar 1. 1 Class Diagram Student MVC

1
2

1.2 Model : Student.Java


Dari diagram sebelumnya kita akan implementasikan class student, dimana
classs ini akan berfungsi sebagai model datanya, isi dari class tesebut adalah
variabel rollNo dan name serta membuat method Setter dan Getter agar dapat
mengakses variable dengan modifier bertipe private.
 Source Code
public class Student {
private String rollNo;
private String name;
public String getRollNo(){
return rollNo;
}
public void setRollNo(String rollNo){
this.rollNo = rollNo;
}
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}
}

1.3 View : StudentView.Java


Dari diagram sebelumnya kita akan implementasikan class student view,
dimana classs ini akan berfungsi sebagai view atau tampilan, isi dari class ini adalah
1 method yang akan menampilkan name dan rollno sesuai dengan parameter
method ini..
 Source Code
public class StudentView {
3

public void printStudentDetails(String studentName, String


StudentROllNo){
System.out.println("Student");
System.out.println("Name : "+studentName);
System.out.println("Roll no : "+StudentROllNo);
}
}

1.4 Controller : StudentController.Java


Dari diagram sebelumnya kita akan implementasikan class student
controller, dimana classs ini akan berfungsi sebagai controller atau pengontrol, isi
dari class ini adalah variable – variable dan method – method yang sama pada class
Student dan class StudentView, class berfungsi untuk menyatukan atau mengatur
Model dan View.
 Source Code
public class StudentController {
private Student model = new Student();
private StudentView View = new StudentView();
public StudentController(Student model, StudentView view) {
this.model = model;
this.View = view;
}public String getStudentName(){
return model.getName();
}public void setStudentName(String name){
model.setName(name);
}private String getStudentRollNo(){
return model.getRollNo();
}public void setStudentRollNo(String rollNo){
model.setRollNo(rollNo);
} public StudentController() {
} public void updateView(){
View.printStudentDetails(model.getName(),
model.getRollNo()); }}
4

1.5 Main Program : MVCPatternDemo.Java


Dari diagram sebelumnya kita akan implementasikan class
MVCPatternDemo, dimana classs ini akan berfungsi program utama, isi dari class
ini adalah 1 method main dan juga method pemanggilan data dari model, dan
method tersebut memanggil atau menggunakan semua MVC (Student,
StudentView, Student Controller).
 Source Code
public class MCCPatternDemo {
public static void main(String[] args) {
Student model = retriveStudent();
StudentView view = new StudentView();
tudentController controller = new StudentController(model, view);
controller.updateView();
controller.setStudentName("John");
controller.updateView();
}public static Student retriveStudent(){
Student student = new Student();
student.setName("Rival");
student.setRollNo("10");
return student;}}

 Screenshot

 Analisa
Dengan adanya konsep MVC ini, kita bias mengatur atau membaca nya
dengan lebih mudah dimana, kita hanya perlu melihat Model sebagai tempat
penyimpanan data (kerangka), View untuk menampilkan Model dan Controller
untuk mengatur Model dan View.
BAB II
TUGAS AKHIR

2.1 Tugas MVC


Dalam praktikum ini, akan dilakukan menggunakan Java. Dalam tugas ini
kita akan menggunakan Class Course. Class tersebut akan dipisahkan menjadi
Class Course untuk Model, CourseView untuk View dan CourseController sebagai
Controller dan MVCPatternDemo sebagai class utama untuk menjalankan Class
tersebut. Class Diagram ada dibawah ini.

Gambar 1. 2 Class Diagram Course MVC

5
6

2.2 Model : Course.Java


Dari diagram sebelumnya kita akan implementasikan class course, sebelum
saya ubah class ini, isi dari method belum di isi yang menyebabkan error.
 Source Code
public class Course {
private String CourseName;
private String CourseId;
private String CourseCategory;
public String getId() {
return CourseId;
}
public void setId(String id) {
CourseId = id;
}
public String getName() {
return CourseName;
}
public void setName(String name) {
CourseName = name;
}
public String getCategory() {
return CourseCategory;
}
public void setCategory(String category) {
CourseCategory = category;
}
}

2.3 View : CourseView.Java


Dari diagram sebelumnya kita akan implementasikan class course view,
dimana classs ini akan berfungsi sebagai view atau tampilan, isi dari class ini adalah
1 method yang akan menampilkan nama, kategori dan id, saya tidak mengubah apa
– apa pada class ini.
7

 Source Code
public class CourseView {
public void printCourseDetails(String CourseName, String
CourseId, String CourseCategory) {
System.out.println("Course Details: ");
System.out.println("Name: " + CourseName);
System.out.println("Course ID: " + CourseId);
System.out.println("Course Category: " + CourseCategory);
}
}

2.4 Controller : StudentController.Java


Dari diagram sebelumnya kita akan implementasikan class course
controller, dimana classs ini akan berfungsi sebagai controller atau pengontrol, isi
dari class ini adalah variable – variable dan method – method yang sama pada class
Student dan class StudentView, class berfungsi untuk menyatukan atau mengatur
Model dan View. Sebelum saya ubah ada 2 class error di class ini, pertama variable
yang belum di deklarasi model dan view belum diberikan tipe data, kedua adalah
belum mengisi parameter dalam konstruktornya
 Source Code
public class CourseController {
private Course model ;
private CourseView view;
public CourseController(Course model, CourseView view) {
this.model = model;
this.view = view;
}
public void setCourseName(String name) {
model.setName(name);
}
public String getCourseName() {
return model.getName();
8

public void setCourseId(String id) {


model.setId(id);
}
public String getCourseId() {
return model.getId();
}
public void setCourseCategory(String category) {
model.setCategory(category);
}
public String getCourseCategory() {
return model.getCategory();
}
public void updateView() {
view.printCourseDetails(model.getName(), model.getId(),
model.getCategory());
}
}

2.5 Main Program : MVCPatternDemo.Java


Dari diagram sebelumnya kita akan implementasikan class
MVCPatternDemo, dimana classs ini akan berfungsi program utama, isi dari class
ini adalah 1 method main dan juga method pemanggilan data dari model, dan
method tersebut memanggil atau menggunakan semua MVC (Student,
StudentView, Student Controller), tidak ada yang diubah dari method ini.
 Source Code
public class MCCPatternDemo {
public static void main(String[] args) {
//fetch student record based on his roll no from the database
Course model = retriveCourseFromDatabase();
//Create a view : to write course details on console
CourseView view = new CourseView();
9

CourseController controller = new CourseController(model,


view);
controller.updateView();
//update model data
controller.setCourseName("RIval");
System.out.println("nAfter updating, Course Details are as
follows");
controller.updateView(); }
private static Course retriveCourseFromDatabase() {
Course course = new Course();
course.setName("Rival The God Of Martial Arts");
course.setId("01");
course.setCategory("Programming");
return course;
}
}

 Screenshot

 Analisa
Program tugas ini sama seperti program latihan, hanya menambahkan
beberapa variable dan method tapi sama menggunakan konsep MVC.
BAB III
KESIMPULAN

Pada praktikum ke-7 kita mempelajari tentang MVC, yaitu konsep pada
pemrograman objek untuk memisahkan model sebagai tempat mengambil dan
membuat data, View untuk menampilkan data dan Controller untuk mengatur Model
dan View.

10
DAFTAR PUSTAKA

Refactoring. (2019). In Implementasi Perangkat Lunak (pp. 45-49). Cimahi:


Laboratorium Jurusan Informatika.

Anda mungkin juga menyukai