Tugas 3 Object Oriented vs Structure Design


Arief Ryan Risbaya

1202160269

SI-40-02

Tugas Algoritma dan Pemrograman

1.1 Definisi Pemrograman

Pemrograman adalah proses menulis, menguji, memperbaiki (debug), dan memlihara kode yang membangun sebuah program. Biasanya ditulis oleh pemrogram (programer) yaitu berupa kode-kode yang menggunkan sebuah bahasa pemrograman sampai menghasilkan program yang bisa digunakan atau bermanfaat bagi pengguna (user).

1.2 Definisi OOP (Object Oriented Programming)

OOP (Object Oriented Programming) adalah suatu metode pemrograman yang berorientasi kepada objek untuk mempermudah pengembangan program dengan cara mengikuti model yang telah ada di kehidupan sehari-hari. Setiap bagian dari suatu permasalahan adalah objek, objek itu sendiri merupakan gabungan dari beberapa objek yang lebih kecil lagi.

Jadi OOP adalah konsep pembuatan program dengan memecah permasalahan program dengan menggunakan objek. Objek dapat diumpamakan dengan “fungsi khusus” yang bisa berdiri sendiri. Untuk membuat sebuah aplikasi, berbagai objek akan saling bertukar data untuk mencapai hasil akhir.

1.3 Structure

Sedangkan untuk Structural Programming adalah sebuah cara pemrosesan data yang terstruktur dalam analisa, cara dan penulisan pemrograman. Dikarenakan harus terstruktur sehingga dalam pembuatannya antara satu line pemrograman dengan yang lainnya berhubungan.

Jadi terstruktur adalah suatu aktifitas pemrograman dengan memperhatikan urutan langkah-langkah perintah secara sistematis, logis, dan tersusun berdasarkan algoritma yang sederhana dan mudah dipahami. Prinsip dari pemrograman terstruktur adalah, jika suatu proses telah sampai pada suatu titik atau langkah tertentu, maka proses selanjutnya tidak boleh mengeksekusi langkah sebelumnya atau kembali lagi ke baris sebelumnya, kecuali pada langkah-langkah untuk proses berulang (Loop).

1.4 Kelebihan dan Kekurangan OOP

A. Kelebihan

  1. Natural

OOP dapat melakukan pendekatan terhadap objek yang menggambarkan segala sesuatu yang nyata, seperti sifat suatu benda maupun kegunaan dari benda tersebut.

  1. Modular

Objek yang sudah dibentuk dapat dikelompokkan kembali dengan objek-objek yang lain, seperti kelompok alat tulis yang dapat dikelompokkan kembali dengan kelompok pensil, kelompok buku dan lain-lain.

  1. Mudah diperbaharui

Dikarenakan sifat jangkauan dari objek memiliki bagian private dan public, maka jika bagian private ingin digunakan pada objek-objek lain dapat diperbaharui dengan menempatkan objek lain tersebut di bagian public.

  1. Dapat didaur ulang

Suatu objek yang telah didefinisikan baik jenis, bentuk, ciri maupun perilaku dapat didefinisikan kembali dengan objek yang lain. Misalkan objek rumah yang memiliki ciri umum ada pintunya, jendelanya, atapnya, temboknya dan lian-lain, dapat didefinisikan kembali ciri-ciri tersebut dengan menyebutkan cirinya masingmasing seperti temboknya yang memiliki ciri jenisnya, ketebalannya, warna catnya dan lain-lain.

B. Sedangkan beberapa kelemahan OOP antara lain adalah sebagai berikut:

  1. Tidak memperbolehkan implementasi yang kuat pada reuse.
  2. Properti software tidak terikat dalam satu unit fungsional, sehingga harus crosscut di antara komponennya.

  3. Crosscut tersebut mengakibatkan sulitnya pengembangan dan pemeliharaan.

1.5 Kelebihan dan Kekurangan Structure

Adapun kelebihan pemrograman terstruktur yaitu:

  1. Mengandung teknik pemecahan masalah yang tepat dan benar.
  • Memiliki algoritma pemecahan masalah yanag sederhana, standar dan efektif.

  • Penulisan program memiliki struktur logika yang benar dan mudah dipahami.

  • Program hanya terdiri dari 3(tiga) struktur dasar, yaitu struktur berurutan, struktur seleksi dan struktur perulangan.

  • Menghindari penggunaan pernyataan GOTO, yang akan menjadikan program tidak terstruktur dengan baik.

  • Biaya pengujian yang dibutuhkan rendah.

  • Memliki dokumentasi yang baik.

  • Biaya perawatan dan dokumentasi yang dibutuhkan rendah.

  • Kemudian kekurangan pemrograman terstruktur yaitu:

    1. Programs menjadi lebih susah untuk dimaintain.
  • Fungsi yang tersedia, susah untuk diubah tanpa harus mempengaruhi fungsi sistem secara keseluruhan.

  • Programming tidak baik untuk team development. Programmers harus mengetahui setiap aspek bagaimana program itu bekerja dan tidak menyebabkan terisolasi usaha mereka atas aspek yang lain dari sistem.

  • Butuh usaha yang keras untuk menterjemahkan Business Models dalam programming models.

  • Mungkin dapat bekerja dengan baik pada saat terisolasi tapi tidak pada saat terintegrasi dengan sistem lain.

  • 1.6 Contoh Program OOP


    1.7 Contoh Program Structure

    Bentuk umum structure menggunakan c++:

    struct nama_tipe_struktur

    {

    elemen_struktur;

    …..

    …..

    };

    Atau

    struct

    {

    elemen_struktur;

    …..

    …..

    } nama_tipe_struktur;

    Contoh Deklarasi

    struct mahasiswa

    {

    char nim[5] ;

    char nama[15] ;

    float nilai;

    }

    Atau

    struct

    {

    char nim[5] ;

    char nama[15] ;

    float nilai;

    } mahasiswa;

    Hal yang perlu di perhatikan :

    1. Penulisan nama Structure jika mengikuti bentuk umum pertama, penggunaan nama structure-nya tidak bisa langsung di gunakan, karena secara otomatis menjadi sebuah tipe data. Dan penggunaannya harus menggunakan objek/nama variabel yang menggunakan dari nama structure itu sendiri
  • Penulisan nama Structure dengan mengikuti bentuk umum kedua, maka penggunaan nama structure-nya bisa langsung di aplikasikan.

  • Program Penggunaan structure

    #include<stdio.h>

    #include<conio.h>

    #include<iostream.h>

    main()

    {

    struct

    {

    char nim[5];

    char nama[15];

    int nilai;

    } mahasiswa;

    clrscr();

    cout<<"masukan NIM = ";

    cin>>mahasiswa.nim;

    cout<<"masukan Nama = ";

    cin>>mahasiswa.nama;

    cout<<"masukan Nilai Akhir = ";

    cin>>mahasiswa.nilai;

    cout<<"\n\nData Yang di Inputkan adalah : \n\n";

    cout<<"NIM = "<<mahasiswa.nim<<endl;

    cout<<"Nama = "<<mahasiswa.nama<<endl;

    cout<<"Nilai Akhir = "<<mahasiswa.nilai<<endl;

    getch();

    }

    1.8 Cara Membuat Diagram OOP

    Cara membuat activity diagram hampir sama dengan use case, dan kita akan memakai software yang sama yaitu Umlet. Pertama – tama kita buka umletnya lalu pilih UML Activity di kanan atas.

    Lalu drag bagian kanan dan mulailah berkreasi!

    Berikut adalah contoh activity diagram yang simple

    activity_process_order

    Pada kasus diatas, pertama – tama pegawai menerima pesanan, lalu pegawai bisa langsung mengisi pesanan (fill order) dan mengirimkan tagihan (send invoice) saat pegawai mengisi pesanan, pelanggan bisa memilih prioritas pesanan. Jika iya maka akan masuk ke overnight delivery tetapi jika tidak akan masuk ke regular delivery.Setelah semua selesai maka pesanan akan ditutup dan pelanggan bisa menunggu pesanannya(Close Order). Decision digunakan untuk aktifitas conditional seperti ya atau tidak.


    Leave a Reply