Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx ·...

24
TUGAS DASAR PEMOGRAMAN Tentang object oriented programing (OOP) Disusun oleh kelompok 06 Nama : 1. Eva Novita Sari ( 115100700111015 ) 2. Tutikl Lipriati ( 115100700111021 ) 3. Eunike Melody ( 115100700111005 ) 4. Fahrulis Udzualita ( 115100700111019 ) 5. Aniska Hidayana ( 115100700111007 ) 6. Ika Cahyani ( 115100701111001 ) 7. Gabriella Ruth ( 115100700111013 ) 8. Roudhotul Jannah ( 115100301111051 ) 9. Afika Ismawati ( 115100300111029)

Transcript of Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx ·...

Page 1: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

TUGAS DASAR PEMOGRAMANTentang object oriented programing (OOP)

Disusun oleh kelompok 06

Nama : 1. Eva Novita Sari ( 115100700111015 )

2. Tutikl Lipriati ( 115100700111021 )

3. Eunike Melody ( 115100700111005 )

4. Fahrulis Udzualita ( 115100700111019 )

5. Aniska Hidayana ( 115100700111007 )

6. Ika Cahyani ( 115100701111001 )

7. Gabriella Ruth ( 115100700111013 )

8. Roudhotul Jannah ( 115100301111051 )

9. Afika Ismawati ( 115100300111029)

10. Firda

JURUSAN TEKNOLOGI INDUSTRI PERTANIAN

FAKULTAS TEKNOLOGI PERTANIAN

UNIVERSITAS BRAWIJAYA

MALANG

2012

Page 2: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

BAB I

PENDAHULUAN

1.1 Latar Belakang

Pemrograman visual menerapkan konsep event-driven yaitu suatu program

yang pengeksekusiannya didasarkan atas kejadian (event) tertentu. Kejadian-

kejadian itu sendiri, mempunyai kode program sendiri yang disimpan dalam

sebuah fungsi.

Pada dasarnya, konsep pemrograman visual ini sama dengan

pemrograman procedural, yaitu pemrograman yang memiliki input, proses dan

output. Namun, ada satu penambahan yang berbeda, yaitu konsep pemilihan untuk

mengeksekusi proses programnya. Konsep inilah yang digunakan untuk

menjalankan eventnya.

C++ Builder, merupakan bahasa pemrograman yang berkemampuan luas

dan sangat canggih yang didukung oleh object-object yang sangat kuat, canggih

dan lengkap. Hal itu dimaksudkan agar pengguna dapat lebih mudah dalam

merancang, membuat dan menyelesaikan aplikasi yang diinginkan.

1.2 Manfaat Tentang object oriented programing (OOP)

Hemat dalam penulisan

Dalam pemrograman prosedural, penggunaan kode2 untuk operasi

yang sama bisa sangat melelahkan tetapi jika dengan oop, operasi-operasi

yang sama tersebut bisa dikurangi dengan menggunakan fungsi-fungsi.

Jadi, dengan membuat satu fungsi.

Deteksi eror

jika di prosedural, kita harus mendeteksi error ini berdasarkan

error line tetapi yang menjadi adalah error terjadi mungkin bisa karena

konflik antar operasi, alur yang salah, dll di prosedural, hal ini berarti kita

harus menceknya satu persatu. Jika line errornya di line 40 bisa saja kita

harus mencek line 30-39 atau mungkin lebih.  Dengan oop, dimana

operasi-operasi dibedakan berdasarkan class dan fungsi, kita hanya

Page 3: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

mencari fungsi-fungsi yang saling berkaitan, dan tentunya hal ini akan

jauh lebih menghemat waktu.

Update

Mungkin suatu saat kita ingin mengupdate aplikasi kita, dengan

prosedural ganti aja semua kode selesai masalah. Dengan oop, kita bisa

melakukannya dengan mengganti beberapa class atau mungkin bisa hanya

dengan mengganti satu class. Jika kita menggunakan sistem pemrograman

dengan menggunakan inheritance (pewarisan), kita hanya perlu mengganti

class induk, contoh: class b,c,d semuanya merupakan turunan dari class a,

jadi jika kita ingin mengupdate program kita, kita hanya perlu merubah

class a ini, sedangkan class b,c,d pasti akan langsung mengikuti perubahan

tersebut.

Loading

Dengan adanya konsep oop ini, tentunya hal ini tidak mustahil

dilakukan, yaitu dengan cara membagi2nya berdasarkan class dan fungsi.

Page 4: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

BAB II

OBJECT ORIENTED PROGRAMMING (OOP)

2.1 Pengertian Pemrograman Berorientasi Objek (Object Oriented

Programming)

Object Oriented Programming (OOP) adalah suatu metode dalam

pembuatan program, dengan tujuan untuk menyelesaikan kompleksnya berbagai

masalah program yang terus meningkat. Ada dua bagian penting dalam Object

Oriented Programming yaitu properties dan event. Properties memiliki nama dan

nilai, sementara event hanya memiliki nama dan biasanya berhubungan dengan

method, behavior, function dan action.

Dalam melakukan pemecahan masalah Object Oriented Programming

tidak memandang bagaimana cara memecahkan suatu masalah secara terstruktur,

melainakn bagaimana suatu masalah itu dapat diselesaikan dengan menentukan

objek-objek apa saja yang dapat memecahkan masalah tersebut.

2.2 Konsep Dasar Pemrograman Berorientasi Objek

Konsep dasar Object Oriented Programming lebih menekankan pada konsep-

konsep berikut ini:

2.2.1 Kelas

Merupakan kumpulan atas definisi data dan fungsi-fungsi

dalam suatu unit untuk suatu tujuan tertentu. Misalnya kelas rumah

yang menunjuk pada berbagai macam objek yang lebih umum dari

rumah itu sendiri (gambaran secara umum).

2.2.2 Objek

Merupakan dasar dari sebuah modul dan struktur dalam

sebuah program komputer yang berorientasi objek. Misalnya dari

kelas rumah tadi yang dapat kita definisikan secara lebih spesifik dan

mendetail, sesuai dengan ciri fisik yang nyata dari objek tersebut.

2.2.3 Abstraksi

Merupakan kemampuan sebuah program untuk melewati

aspek informasi yang diproses olehnya atau kemampuan untuk

mefokus pada inti. Setiap objek dalam sistem melayani sebagai

Page 5: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

model dari pelaku abstrak yang dapat melakukan kerja, laporan dan

perubahan keadaannya, dan berkomunikasi dengan objek lainnya

dalam sistem.

2.2.4 Enkapsulasi

Merupakan sebuah metode yang memastikan pengguna

tidak dapat mengubah sebuah objek secara leluasa, hanya metode

dalam objek tersebut yang diizinkan untuk mengakses keadaannya.

Dalam kata lain mengontrol hak akses pengguna dalam melakukan

perubahan pada suatu objek. Karena antara objek yang satu dengan

yang lainnya itu saling berinteraksi.

Page 6: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

BAB III

OBJECT ORIENTED PROGRAMMING (OOP) DALAM

PEMROGRAMAN VISUAL DENGAN C++ BUILDER

3.1 Macam macam object pemograman

Bahasa pemrograman yang mendukung OOP antara lain:

Visual Foxpro

Visual FoxPro adalah bahasa pemrograman berorientasi objek dan

prosedural dari Microsoft. Awalnya bahasa pemrograman ini dikenal dengan

nama FoxBASE yang diluncurkan oleh Fox Software pada awal 1984. Fox

Technologies kemudian bergabung dengan Microsoft pada 1992 sehingga di

depan nama FoxBASE ditambahkan awalan "Visual".

Versi terakhir FoxPro (9.0) dapat berjalan pada sistem operasi Mac OS,

DOS, Windows, dan Unix. Visual FoxPro 3.0, versi "Visual" pertama,

akhirnya tersingkir karena hanya mendukung Mac OS dan Windows, dan

versi berikutnya hanya mendukung Windows saja. Versi terkini Visual FoxPro

adalah berdasarkan teknologi COM dan Microsoft telah menyatakan bahwa

mereka tidak berniat untuk menciptakan versi Microsoft .NET.

Java

Java adalah bahasa pemrograman yang dapat dijalankan di berbagai

komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James

Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian

dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis

yang terdapat pada C dan C++ namun dengan sintaksis model objek yang

lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal.

Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code

(bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM).

Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik

(general purpose), dan secara khusus didisain untuk memanfaatkan

dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang

memungkinkan aplikasi java mampu berjalan di beberapa platform sistem

operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali,

Page 7: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

jalankan di mana pun". Saat ini java merupakan bahasa pemrograman yang

paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan

berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web.

C++

C++ adalah bahasa pemrograman komputer C++ dikembangkan di Bell

Labs (Bjarne Stroustrup) pada awal tahun 1970-an, Bahasa itu diturunkan dari

bahasa sebelumnya, yaitu BCL, Pada awalnya, bahasa tersebut dirancang

sebagai bahasa pemrograman yang dijalankan pada sistem Unix, Pada

perkembangannya, versi ANSI (American National Standart Institute) Bahasa

pemrograman C menjadi versi dominan, Meskipun versi tersebut sekarang

jarang dipakai dalam pengembangan sistem dan jaringan maupun untuk sistem

embedded, Bjarne Stroustrup pada Bel labs pertama kali mengembangkan C+

+ pada awal 1980-an, Untuk mendukung fitur-fitur pada C++, dibangun

efisiensi dan sistem support untuk pemrograman tingkat rendah (low level

coding). Pada C++ ditambahkan konsep-konsep baru seperti class dengan

sifat-sifatnya seperti inheritance dan overloading. Salah satu perbedaan yang

paling mendasar dengan bahasa C adalah dukungan terhadap konsep

pemrograman berorientasi objek

Pascal (bahasa pemrograman)

Pascal adalah bahasa pemrograman yang pertama kali di buat oleh

Profesor Niklaus Wirth, seorang anggota International Federation of

Information Processing (IFIP) pada tahun 1971. Dengan mengambil nama dari

matematikawan Perancis, Blaise Pascal, yang pertama kali menciptakan mesin

penghitung, Profesor Niklaus Wirth membuat bahasa Pascal ini sebagai alat

bantu untuk mengajarkan konsep pemrograman komputer kepada

mahasiswanya. Selain itu, Profesor Niklaus Wirth membuat Pascal juga untuk

melengkapi kekurangan-kekurangan bahasa pemrograman yang ada pada saat

itu.

Page 8: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

Visual Basic.NET

Microsoft Visual Basic (sering disingkat sebagai VB saja) merupakan

sebuah bahasa pemrograman yang menawarkan Integrated Development

Environment (IDE) visual untuk membuat program perangkat lunak berbasis

sistem operasi Microsoft Windows dengan menggunakan model pemrograman

(COM).

Visual Basic merupakan turunan bahasa pemrograman BASIC dan

menawarkan pengembangan perangkat lunak komputer berbasis grafik dengan

cepat.

SIMULA

Simula adalah nama untuk dua bahasa pemrograman simulasi, Simula I

dan Simula 67, dikembangkan pada tahun 1960 di Pusat Komputasi Norwegia

di Oslo, oleh Ole-Johan Dahl dan Kristen Nygaard. Sintaksis, itu merupakan

superset cukup setia ALGOL 60. Simula dianggap sebagai bahasa

pemrograman berorientasi objek pertama. Seperti namanya, Simula dirancang

untuk melakukan simulasi, dan kebutuhan dari domain yang menyediakan

kerangka kerja untuk banyak fitur bahasa berorientasi objek hari ini.

Smalltalk

Smalltalk adalah bahasa pemrograman berorientasi objek yang dikembangkan

oleh Xerox PARC. Ide dasar Smalltalk meliputi :

1. Semua adalah objek.

2. Objek bisa saling berkomunikasi melalui messages atau berita.

3. Semua tersedia untuk dimodifikasi.

Ruby

Ruby adalah Bahasa pemrograman open source dinamis, mudah dimengerti

dan produktif. Sintaks Ruby elegan, natural, mudah dibaca dan ditulis.

Page 9: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

Python

Python merupakan bahasa pemrograman yang memungkinkan Anda

bekerja lebih cepat dan mengintegrasikan sistem Anda lebih efektif. Anda

dapat belajar menggunakan Python dan melihat keuntungan hampir langsung

dalam produktivitas dan biaya pemeliharaan yang lebih rendah.

PHP

PHP(Personal Home Page): Hypertext Preprocessor adalah bahasa skrip

yang dapat ditanamkan atau disisipkan ke dalam HTML. PHP banyak dipakai

untuk memrogram situs web dinamis. PHP dapat digunakan untuk

membangun sebuah CMS.

C#

C# (dibaca: C sharp) merupakan sebuah bahasa pemrograman yang

berorientasi objek yang dikembangkan oleh Microsoft sebagai bagian dari

inisiatif kerangka .NET Framework. Bahasa pemrograman ini dibuat

berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek-aspek ataupun

fitur bahasa yang terdapat pada bahasa-bahasa pemrograman lainnya seperti

Java, Delphi, Visual Basic, dan lain-lain) dengan beberapa penyederhanaan.

Menurut standar ECMA-334 C# Language Specification, nama C# terdiri atas

sebuah huruf Latin C (U+0043) yang diikuti oleh tanda pagar yang

menandakan angka # (U+0023). Tanda pagar # yang digunakan memang

bukan tanda kres dalam seni musik (U+266F), dan tanda pagar # (U+0023)

tersebut digunakan karena karakter kres dalam seni musik tidak terdapat di

dalam keyboard standar.Delphi

Eiffel

Eiffel adalah ISO-standar, berorientasi objek bahasa pemrograman yang

dirancang oleh Bertrand Meyer (seorang pendukung objek-orientasi dan

penulis Object-Oriented Software Konstruksi) dan Software Eiffel. Desain

bahasa sangat berhubungan dengan metode pemrograman Eiffel. Keduanya

didasarkan pada seperangkat prinsip, termasuk desain dengan pemisahan

Page 10: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

kontrak, perintah-query, prinsip seragam-akses, prinsip satu pilihan, prinsip

terbuka-tertutup, dan pilihan-operan pemisahan. Banyak konsep awalnya

diperkenalkan oleh Eiffel kemudian menemukan cara mereka ke dalam Java,

C #, dan bahasa lainnya. Ide-ide desain baru bahasa, khususnya melalui proses

standarisasi ECMA / ISO, terus dimasukkan ke dalam bahasa Eiffel.

Perl

Perl adalah bahasa pemrograman untuk segala keperluan, dikembangkan

pertama kali oleh Larry Wall di mesin Unix. Perl dirilis pertama kali pada

tanggal 18 Desember 1987 ditandai dengan keluarnya Perl 1. Pada versi-versi

selanjutnya, Perl tersedia pula untuk berbagai sistem operasi varian Unix

(SunOS, Linux, BSD, HP-UX), juga tersedia untuk sistem operasi seperti

DOS, Windows, PowerPC, BeOS, VMS, EBCDIC, dan PocketPC. Dukungan

terhadap pemrograman berbasis obyek (object oriented programming/OOP)

ditambahkan pada Perl 5, yang pertama kali dirilis pada tanggal 31 Juli 1993.

Proyek pengembangan Perl 6 dimulai pada tahun 2000, dan masih

berlangsung hingga kini tanpa tanggal yang jelas kapan mau dirilis. Ini

dikatakan sendiri oleh Larry Wall dalam satu pidatonya yang dikenal dengan

seri The State of the Onion.

Adobe Flash AS 3.0

AS (ActionScript) 3 adalah sebuah bahasa pemrograman multimedia yang

ada pada Flash versi Adobe (Flash CS3, CS4 dan Versi sekarang CS5),

sedangkan AS 2 ada pada Macromedia tapi dapat juga di jalankan di Flash

versi Adobe.

ActionScript 3.0 memang agak berbeda dengan AS 2 pada macromedia, AS 3

lebih komplek dan juga lebih lumayan rumit ketimbang dengan AS 2

(tergantung familiar yang mana). Pada halaman ini akan membahas beberapa

tutorial singkat dasar mengenai Flash versi Adobe yang memakai AS 3.

Page 11: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

3.2 Konsep Pengembangan Aplikasi Visual Berbasis Object Oriented

Programming

Object Oriented Programming berperan dalam mendefinisikan

pemrograman yang rutin dan bersifat terstruktur, sedangkan pemrograman visual

mendefinisikan secara visual bagaimana programmer atau user menjalankan

program tersebut sehingga tampilan nyata yang ada pada program tersebut dapat

kita ketahui. Pemrograman visual memungkinkan pengguna untuk lebih fokus

pada pemecahan masalah daripada cara menangani bahasa pemrograman.

Pemrograman visual dapat menunjukkan objek-objek yang digunakan

dalam mencari solusi atau pemecahan masalah secara grafis atau nyata. Objek-

objek yang digunakan tersebut menggunakan konsep object oriented

programming. Dengan adanya pemrograman visual kita dapat secara real melihat

bagaimana sebuah program dapat dengan mudah dilihat dan dipahami melalui

interface atau penghubung yang berbentuk nyata.

Misal kita ingin membuat sebuah aplikasi sederhana dengan mengunakan

C++ builder. Kita tinggal menggunakan objek-objek yang telah disediakan sesuai

kebutuhan kita. Objek-objek tersebut nantinya akan dapat bekerja sesuai dengan

fungsinya tergantung event yang kita berikan. Objek dalam hal ini adalah form,

lebel, edit, button atau objek lain yang kita tambahkan pada aplikasi yang kita

buat.

3.3 Pengenalan Object Oriented Programming dalam Pemrograman Visual

Menggunakan C++ Builder

Berikut adalah sebuah contoh program yang akan membantu kita untuk

lebih memahami Object Oriented Programming dalam Pemrograman Visual

Menggunakan C++ Builder.

Page 12: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

Dalam pembuatan aplikasi diatas, kita membutuhkan:

1. Form1

a. Properties

- Caption : Form1

- Height : 315

- Name : Form1

- Width : 420

b. Event

- Oncreate

2. Label1

a. Properties

- Caption : Masukkan 1

- Name : Label1

3. Label2

b. Properties

- Caption : Masukkan 2

- Name : Label2

Page 13: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

4. Label3

a. Properties

- Caption : Hasil

- Name : Label3

5. Label4

a. Properties

- Caption : Kalkulator Sederhana

- Name : Label4

6. Edit1

a. Properties

- Name : Edit1

- Text : Edit1

7. Edit2

a. Properties

- Name : Edit2

- Text : Edit2

8. Edit3

a. Properties

- Name : Edit3

- Text : Edit3

9. Button1

a. Properties

- Caption : +

- Name : Button1

Page 14: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

b. Event

- Onclick

10. Button2

a. Properties

- Caption : -

- Name : Button2

b. Event

- Onclick

11. Button3

a. Properties

- Caption : x

Page 15: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

- Name : Button3

b. Event

- Onclick

12. Button4

a. Properties

- Caption : :

- Name : Button4

b. Event

- Onclick

13. Button5

a. Properties

Page 16: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

- Caption : Refresh

- Name : Button5

b. Event

- Onclick

14. Button6

a. Properties

- Caption : Exit

- Name : Button6

b. Event

- Onclick

Page 17: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

Tampilan program pada saat di running:

Pada saat di refresh:

Pada saat data diisi dan ditambahkan (sebagai contoh):

Page 18: Aktifitas | Student Blog - Ruby adalahblog.ub.ac.id/ranc/files/2012/06/makalah-kelompok-61.docx · Web viewJika kita menggunakan sistem pemrograman dengan menggunakan inheritance

Inilah penjabaran singkat mengenai Object Oriented Programming dalam

Pemrograman Visual menggunakan C++ Builder. Dengan contoh program yang

sederhana diatas, dapat kita lihat bagaimana sebuah program divisualisasikan

dalam bentuk objek-objek yang tersaji.

DAFTAR PUSTAKA

Heriyanto, Imam dan Raharjo, Budi. Pemrograman Borland C++ Builder.

Informatika Bandung. 2003.

Fachrurrozi, M dan Gustiawan, Ferry. Konsep Dan Aplikasi Pemrograman

Menggunakan Borland C++ Builder 6”(Modul Visual Revisi). Fakultas Ilmu

Komputer Universitas Sriwijaya. 2006.

http://id.wikipedia.org/wiki/Pemrograman_berorientasi_objek