Apa itu Diagram Kelas?
UML Diagram kelas adalah notasi grafis yang digunakan untuk membangun dan memvisualisasikan sistem berorientasi objek. Diagram kelas dalam Bahasa Pemodelan Terpadu (UML) adalah jenis diagram struktur statis yang menggambarkan struktur suatu sistem dengan menunjukkan:
- kelas,
- atribut mereka (atau Properti),
- operasi (atau metode),
- dan hubungan antar objek.
Apa itu Kelas?
Sebuah Kelas adalah cetak biru untuk sebuah objek. Objek dan kelas berjalan beriringan. Kita tidak bisa membicarakan satu tanpa membicarakan yang lain. Dan seluruh inti dari Desain Berorientasi Objek bukan tentang objek, tetapi tentang kelas, karena kita menggunakan kelas untuk membuat objek. Jadi, sebuah kelas menggambarkan apa yang akan menjadi sebuah objek, tetapi itu bukan objek itu sendiri.
Faktanya, kelas menggambarkan jenis objek, sementara objek adalah instansi yang dapat digunakan dari kelas. Setiap Objek dibangun dari set cetak biru yang sama dan oleh karena itu mengandung komponen yang sama (properti dan metode). Arti standar adalah bahwa sebuah objek adalah instansi dari sebuah kelas dan objek—Objek memiliki keadaan dan perilaku.
Contoh
Seekor anjing memiliki keadaan—warna, nama, ras serta perilaku—menggoyangkan ekor, menggonggong, makan. Sebuah objek adalah instansi dari sebuah kelas.

Notasi Kelas UML
Sebuah kelas mewakili konsep yang mengenkapsulasi keadaan (atribut) dan perilaku (operasi). Setiap atribut memiliki tipe. Setiap operasi memiliki tanda tangan. Nama kelas adalah satu-satunya informasi wajib.

Nama Kelas:
- Nama kelas muncul di partisi pertama.
Atribut Kelas:
- Atribut ditampilkan di partisi kedua.
- Tipe atribut ditampilkan setelah titik dua.
- Atribut dipetakan ke variabel anggota (anggota data) dalam kode.
Operasi Kelas (Metode):
- Operasi ditampilkan di partisi ketiga. Mereka adalah layanan yang disediakan kelas.
- Tipe pengembalian dari sebuah metode ditampilkan setelah titik dua di akhir tanda tangan metode.
- Tipe pengembalian dari parameter metode ditampilkan setelah titik dua mengikuti nama parameter. Operasi dipetakan ke metode kelas dalam kode

Visibilitas Kelas
Simbol +, — dan # sebelum nama atribut dan operasi dalam sebuah kelas menunjukkan visibilitas atribut dan operasi.

- + menunjukkan atribut atau operasi publik
- – menunjukkan atribut atau operasi privat
- # menunjukkan atribut atau operasi terlindungi
Arah Parameter
Setiap parameter dalam sebuah operasi (metode) dapat ditandai sebagai in, out atau inout yang menentukan arahannya terkait dengan pemanggil. Arah ini ditunjukkan sebelum nama parameter.

Perspektif Diagram Kelas
Pemilihan perspektif tergantung pada seberapa jauh Anda dalam proses pengembangan. Selama perumusan sebuahmodel domain, misalnya, Anda jarang melampauiperspektif konseptual. Model analisis biasanya akan menampilkan campuranperspektif konseptual dan spesifikasiModel desain pengembangan biasanya akan dimulai dengan penekanan besar padaperspektif spesifikasi, dan berkembang menjadiperspektif implementasi.
Sebuah diagram dapat diinterpretasikan dari berbagai perspektif:
- Konseptual: mewakili konsep-konsep dalam domain
- Spesifikasi: fokus pada antarmuka Tipe Data Abstrak (ADT) dalam perangkat lunak
- Implementasi: menggambarkan bagaimana kelas akan mengimplementasikan antarmuka mereka
Perspektif mempengaruhi jumlah detail yang harus disediakan dan jenis hubungan yang layak untuk disajikan. Seperti yang kami sebutkan di atas, nama kelas adalah satu-satunya informasi yang wajib.

Diagram kelas adalah teknik pemodelan pusat yang digunakan dalam hampir semua metode berorientasi objek. Diagram ini menggambarkan jenis objek dalam sistem dan berbagai jenis hubungan statis yang ada di antara mereka.
Hubungan
Ada tiga jenis hubungan utama yang penting:
- Asosiasi — mewakili hubungan antara instansi tipe (seseorang bekerja untuk sebuah perusahaan, sebuah perusahaan memiliki sejumlah kantor.
- Pewarisan — tambahan yang paling jelas untuk diagram ER untuk digunakan dalam OO. Ini memiliki korespondensi langsung dengan pewarisan dalam desain OO.
- Agregasi — Agregasi, suatu bentuk komposisi objek dalam desain berorientasi objek.

Contoh Diagram Kelas: GUI
Diagram kelas juga dapat memiliki catatan yang dilampirkan pada kelas atau hubungan.

Alat Perangkat Lunak UML Gratis
Dalam artikel ini, saya memperkenalkan dua Alat UML:
- Visual Paradigm Community Edition (GRATIS) adalahalat UML desktop dengan kemampuan pemodelan fitur. (kemungkinan pembaruan ke Edisi komersial)
- Visual Paradigm Online untuk menggambar UML umum dan diagram lainnya.
30 Contoh Diagram Kelas
- Contoh dan template Diagram Kelas gratis yang dapat diedit dalam perangkat lunak Diagram Kelas online: Visual Paradigm Online.
- Gunakan template sebagai titik awal untuk membuat Diagram Kelas Anda sendiri.
- (Klik untuk Mengedit Contoh Diagram Kelas Secara Instan)
Untuk kenyamanan Anda, contoh-contoh berikut telah disiapkan di Visual Paradigm Online. Anda dapat mencobanya langsung tanpa konfigurasi atau instalasi, selamat bersenang-senang!




Keluaran File (Penggunaan Generalisasi)











Pola Desain GoF — Metode Pabrik


Pola Desain GoF — Pabrik Abstrak


Pola Desain GoF — Metode Template









Pola Desain GoF — Rantai Tanggung Jawab

Diagram Kelas — Proses Pesanan

Diagram Kelas — Kelas dan Pembatasan Paket

Diagram Kelas — Kelas dalam Paket (Maskapai)



Kelas Asosiasi dan Asosiasi Diri



Bacaan Lain yang Direkomendasikan
- Tutorial Diagram Kelas UML — Visual Paradigm
- Bagaimana Cara Menggambar Diagram Kelas? — Visual Paradigm
This post is also available in Deutsch, English, Español, فارسی, Français, 日本語, Polski, Portuguese, Ру́сский, Việt Nam, 简体中文 and 繁體中文.