Sejarah OOP :
Tahun 1960, ditemukan suatu pembuatan program yang terstuktur (structured programming). Metode ini dikembangkan dari bahasa C dan Pascal.
Dengan program yang terstruktur inilah untuk pertama kalinya kita mampu menulis program yang begitu sulit dengan lebih mudah.
Definisi OOP :
suatu metode dalam pembuatan program
bertujuan untuk menyelesaikan kompleksnya berbagai masalah program yang terus meningkat.
Austin Dental Sciences is an open access, peer reviewed, scholarly journal dedicated to publish articles covering all areas of Dental & Oral Sciences.
The journal aims to promote research communications and provide a forum for dentists, researchers, physicians and healthcare professionals to find most recent advances in all areas of dental & oral sciences. Austin Dental Sciences accepts original research articles, reviews, mini reviews, case reports and rapid communication covering all aspects of dental & oral sciences.
Austin Dental Sciences strongly supports the scientific up gradation and fortification in related scientific research community by enhancing access to peer reviewed scientific literary works. Austin Publishing Group also brings universally peer reviewed journals under one roof thereby promoting knowledge sharing, mutual promotion of multidisciplinary science.
Austin Dental Sciences is an open access, peer reviewed, scholarly journal dedicated to publish articles covering all areas of Dental & Oral Sciences.
The journal aims to promote research communications and provide a forum for dentists, researchers, physicians and healthcare professionals to find most recent advances in all areas of dental & oral sciences. Austin Dental Sciences accepts original research articles, reviews, mini reviews, case reports and rapid communication covering all aspects of dental & oral sciences.
Austin Dental Sciences strongly supports the scientific up gradation and fortification in related scientific research community by enhancing access to peer reviewed scientific literary works. Austin Publishing Group also brings universally peer reviewed journals under one roof thereby promoting knowledge sharing, mutual promotion of multidisciplinary science.
Materi yang ada pada slide ini berisi :
Perkenalan Diri
SuperHero
Contoh tugas besar
Rockstar Developers
Value Proposition Canvas
Rekayasa Kebutuhan
SAD vs OOAD
PBO
UML
Softwrae private vs public
Penjelasan Daftar Alat Bantu untuk Rekayasa Perangkat Lunak II
Buku Referensi
Penilaian perkuliahan
Silabus Perkuliahan
Informasi Tugas besar
----------------------------------------------------------------------
Keep in touch with me in :
Twitter : https://twitter.com/rizkiadam_1991
Email : rizkiadamunikom@gmail.com
IG : @rizkiadamkurniawan
Apa Itu Efisiensi Algoritma ?
Algoritma yang dapat dikatakan sebagai algoritma yang efisien, merupakan algoritma yang dimana pada saat pemrosesan algoritma tersebut tidak memakan banyak waktu dan juga ditak memakan banyak memori dalam pemrosesannya.
Seperti yang sudah di jelaskan, efisiensi algoritma umumnya di tinjau dari 2 hal, yaitu efisiensi terhadap waktu, dan efisiensi terhadap memori.
Walaupun algoritma yang memberikan keluaran yang benar (paling mendekati kenyataan), tetapi jika harus menunggu berjam-jam atau mungkin berhari-hari untuk mendapatkan outputannya (dalam hal ini yang dimaksudkan adalah efisiensi dalam waktu), algoritma tersebut biasanya tidak akan dipakai. Kebanyakan orang lebih menginignkan algoritma yang memiliki pengeluaran atau hasil outputan yang lebih cepat. Waktu yang diperlukan (running time) oleh sebuah algoritma cenderung tergantung pada jumlah input yang diproses.
Running time dari sebuah algoritma adalah fungsi dari jumlah inputnya. Running time dari suatu algoritma berbeda-beda bergantung pada input yang diberikan. Dengan demikian pengukurannya dihitung sebagai fungsi dari besarnya input yang diberikan.
Pengenalan Algoritma
Mengetahui Pengantar dan Sejarah
Mengetahui Algoritma dan Data
Memahami Bahasa Pemrograman dan Paradigma
Memahami Metode dan Correctness Algoritma
Mengetahui Efisiensi dari Algoritma
Memahami Ketidakefisienan dan Intractability
Memahami Noncomputability dan Undecidability
Mengetahui Algoritma yang Universal dan Kekuatannya
Memahami Parallelism
Array
KELEBIHAN
Struktur Data yang paling mudah
Tipe Data yang mampu menampung lebih dari satu data
Memori ekonomis, bila semua elemen terisi
Waktu akses sama ke setiap elemen
Dapat diakses secara random
KEKURANGAN
Boros memori jika banyak elemen yang tidak digunakan
Struktur Data yang Statis
Fungsi rekursif --> suatu fungsi yang memanggil dirinya sendiri
Fungsi tersebut dipanggil di dalam tubuh fungsi itu sendiri
Sangat berguna bila diimplementasikan untuk pekerjaan pengurutan data atau menghitung nilai factorial suatu bilangan.
Array
struktur data yang mengandung type data yang mempunyai type sama.
Berupa sekelompok memori yang berhubungan (contiguous).
Array mempunyai nama dan type yang sama.
Untuk merujuk lokasi tertentu atau elemen dalam array nama array + indeks
Array
struktur data yang mengandung type data yang mempunyai type sama.
Berupa sekelompok memori yang berhubungan (contiguous).
Array mempunyai nama dan type yang sama.
Untuk merujuk lokasi tertentu atau elemen dalam array nama array + indeks
Sebuah program biasanya tidak terbatas hanya pada intruksi yang terurut saja, tetapi juga memungkinkan terjadinya percabangan, perulangan dan pengambilan keputusan. Untuk mengatasi kebutuhan itu C++ menyediakan struktur kontrol yang dapat menangani hal-hal tersebut.
Identifier
Di dalam program, selalu dibutuhkan suatu tempat untuk menyimpan nilai yang disebut identifier.
Identifier dibagi menjadi 2 jenis, yaitu:
Variabel
Konstanta
1. 1
OBJECT-ORIENTED PROGRAMMING
( O O P )
• Sejarah OOP :
– Tahun 1960, ditemukan suatu pembuatan program yang
terstuktur (structured programming). Metode ini dikembangkan
dari bahasa C dan Pascal.
– Dengan program yang terstruktur inilah untuk pertama kalinya
kita mampu menulis program yang begitu sulit dengan lebih
mudah.
• Definisi OOP :
– suatu metode dalam pembuatan program
– bertujuan untuk menyelesaikan kompleksnya berbagai
masalah program yang terus meningkat.
2. 2
Contoh kasus OOP
• Anggap kita memiliki sebuah departemen yang
memiliki manager, sekretaris, petugas administrasi
data dan lainnya. Misal manager tersebut ingin
memperoleh data dari bag administrasi maka
manager tersebut tidak harus mengambilnya
langsung tetapi dapat memerintahkan petugas bagian
administrasi untuk mengambilnya. Pada kasus
tersebut seorang manager tidak harus mengetahui
bagaimana cara mengambil data tersebut tetapi
manager bisa mendapatkan data tersebut melalui
objek petugas adminiistrasi
3. 3
Object dan Class
• Ide dasar pada OOP :
– Mengkombinasikan data
dan fungsi (atribute &
method) untuk mengakses
data menjadi sebuah
kesatuan unit yang dikenal
dengan nama objek
(Object)
– Class adalah blue-print
yang akan menghasilkan
objek, kumpulan dari
beberapa objek yang
memiliki kesamaan
FUNGSI ANGGOTA
DATA
FUNGSI ANGGOTA
OBJEK
4. 4
Contoh objek :
Dept. penjualan objek 1
Dept. akunting objek 2
Data penjualan
Manajer
Sekretaris
Data
Fungsi anggota1
Fungsi anggota2
Data Personalia
Manajer
Staff
Data
Fungsi anggota1
Fungsi anggota2
5. 5
Konsep dasar OOP :
• Pewarisan (Inheritance)
• Pengkapsulan (Encapsulation)
• Polimorfisme
6. 6
Pengkapsulan (Encapsulation)
• “Penyembunyian Informasi”
• Dapat diartikan juga pengemasan data dan method
dalam wadah bernama objek
• Konsep public dan private akan senantiasa
digunakan dalam pengkapsulan
• Memastikan pengguna sebuah objek tidak dapat
mengganti keadaan dalam dari sebuah objek,
dengan cara yang tidak layak
• Hanya method dalam objek tersebut yang diberi ijin
untuk mengakses keadaannya
7. 7
Pewarisan (Inheritance)
• Merupakan sifat dalam bahasa berorientasi
objek yang memungkinkan sifat-sifat dari suatu
Class diturunkan ke Class lain
• Single Inheritance
– Pewarisan terhadap sebuah Class child yang berasal
dari sebuah Class parent
• Multiple Inheritance
– Pewarisan terhadap sebuah Class child yang berasal
dari lebih dari satu Class parent
8. 8
Polimorfisme
• Istilah ini sendiri berasal dari Bahasa Yunani, yang berarti
“mempunyai banyak bentuk”
• Merupakan suatu konsep yang menyatakan sesuatu yang
sama dapat memiliki berbagai bentuk dan perilaku yang
berbeda
• Contohnya, bila sebuah burung menerima pesan "gerak
cepat", dia akan menggerakan sayapnya dan terbang.
Bila seekor singa menerima pesan yang sama, dia akan
menggerakkan kakinya dan berlari. Keduanya menjawab
sebuah pesan yang sama, namun yang sesuai dengan
kemampuan hewan tersebut.
9. 9
Contoh
1. public class Makhluk{
2. public void bernafas(){
3. }
4. public void bertumbuh(){
5. }
6. public void bereproduksi(){
7. }
8. public void belajar(){
9. }
10. public void bekerja(){
11. }
12. public void berfikir(){
13. }
14. public void istirahat(){
15. }
16. public void bergerak(int kaki){
17. System.out.println("berjalan dengan kaki "+kaki);
18. }
19. public void makan(){
20. }
21. public void minum(){
22. }
23. }
10. 10
Contoh
1. public class MakhlukHidup{
2. public void bernafas(){
3. }
4. public void bertumbuh(){
5. }
6. public void bereproduksi(){
7. }
8. public void bergerak(){
9. }
10. }
11. public class Manusia extends MakhlukHidup{
12. public void belajar(){
13. }
14. public void bekerja(){
15. }
16. public void berfikir(){
17. }
18. public void istirahat(){
19. }
20. public void bergerak(int kaki){
21. System.out.println("Manusia berjalan dengan kaki "+kaki);
22. }
23. }
11. 11
Contoh
1. public class Hewan extends MakhlukHidup{
2. public void bergerak(int kaki){
3. System.out.println("Hewan berjalan dengan kaki "+kaki);
4. }
5. public void bergerak(String bukanKaki){
6. System.out.println("Hewan bergerak dengan menggunakan "+bukanKaki);
7. }
8. public void makan(){
9. }
10. public void minum(){
11. }
12. }
13.
14. public class Utama{
15. public static void main (String arg[]){
16. Manusia m = new Manusia();
17. m.bergerak(2);
18.
19. Hewan h = new Hewan();
20. h.bergerak(4);
21. h.bergerak("sirip");
22. }
23. }
12. 12
Kesimpulan
• Dengan menggunakan OOP maka dalam
melakukan pemecahan suatu masalah kita tidak
melihat bagaimana cara menyelesaikan suatu
masalah tersebut (terstruktur) tetapi objek-objek
apa yang dapat melakukan pemecahan masalah
tersebut.