E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
Object Oriented
Programming
Dosen:
YUSUF WIBISONO
Materi Mata Kuliah
STMIK SPB Airlangga
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityProgramming
• Structured Programming
Pemrograman terstruktur, prosedural
• Console Programming
Pemrograman berbasis teks, biasanya untuk terminal mesin
• Web Programming
Pemrograman berbasis Web
• Object Oriented Programming
Pemrograman berbasis objek
• Visual Programming
Pemrograman secara visual, minimum coding.
• Mobile Programming
Pemrograman untuk perangkat genggam
• SQL
Pemrograman permintaan terstruktur
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityStructured vs OOP
• Pemrograman Terstruktur adalah suatu
aktivitas pemrograman dengan
memperhatikan urutan langkah-langkah
perintah secara sistematis, logis, dan tersusun
berdasarkan algoritma yang sederhana dan
mudah dipahami.
• Pemrograman Berorientasi Objek (Inggris:
object-oriented programming disingkat OOP)
merupakan paradigma pemrograman yang
berorientasikan kepada objek, jadi semua
data dan fungsi di dalam paradigma ini
dibungkus dalam kelas-kelas atau objek-
objek.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityStructured vs OOP
• Perbedaan keduanya adalah pada
pemrograman berorientasi objek setiap
objek dapat menerima pesan, memproses
data, dan mengirim pesan ke objek
lainnya.
• Sedangkan untuk pemrograman
terstruktur fokus cara pemrosesan data
yang terstruktur (sistematis) dalam
analisis, cara, dan penulisan kode program.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityStructured vs OOP
• Pemrograman terstruktur unggul dalam
melakukan pemrograman sederhana karena
lebih efisien dan lebih mudah dalam hal
perawatannya.
• Sementara itu pemrograman berorientasi objek
memiliki beberapa keuntungan seperti:
– Maintenance, program lebih mudah dibaca dan
dipahami, dan pemrograman berorientasi objek
mengontrol kerumitan program hanya dengan
mengijinkan rincian yang dibutuhkan untuk
programmer.
– Pengubahan program (berupa penambahan atau
penghapusan fitur tertentu) disesuaikan dengan
keperluan berdasarkan objeknya.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityWhat is OOP?
• Paradigma pemrograman yang memandang
sistem yang akan dibangun berdasarkan
objek-objek yang terlibat dan interaksinya
dalam sistem.
• Sistem dibangun dengan membuat objek-
objek dan membangun interaksinya untuk
menyelesaikan suatu pekerjaan.
• Fungsi dan data menjadi satu kesatuan yang
disebut sebagai Objek
• Program adalah serangkaian objek yang
berinteraksi untuk menyelesaikan suatu
problem.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityOOP
• OOP berputar pada konsep dari objek yang
merupakan elemen dasar dari program.
• Ilustrasinya adalah
– Objek mobil mempunyai atribut seperti tipe transmisi,
warna dan manufaktur. Mobil juga mempunyai
tingkah laku berbelok, mengerem, dan berakselerasi.
– Cara yang sama pula kita dapat mendefinisikan
perbedaan sifat dan tingkah laku dari singa.
– Pada perangkat lunak, menggunakan atribut sebagai
data dan tingkah laku sebagai method.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityClass
• Kumpulan atas definisi data dan fungsi-fungsi dalam
suatu unit untuk suatu tujuan tertentu. Sebagai
contoh 'class of dog' adalah suatu unit yang terdiri
atas definisi-definisi data dan fungsi-fungsi yang
menunjuk pada berbagai macam perilaku/turunan
dari anjing.
• Class adalah suatu struktur dalam program yang berisi
satu atau beberapa metode yang dapat berupa fungsi
atau prosedur, dan atribut atau properti yang dapat
berupa data ataupun variabel yang akan dioperasikan
dalam metode.
• Dengan demikian atribut atau properti merupakan
anggota kelas yang bersifat statis, sedangkan metode
merupakan anggota kelas yang bersifat dinamis.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityObject
• Setiap objek dibangun dari sekumpulan
atribut atau properti untuk menjabarkan
karakteristik khusus dari objek, dan juga
terdiri dari sekumpulan method yang
menjabarkan tingkah laku dari objek.
• Bisa dikatakan bahwa objek adalah sebuah
perangkat lunak yang berisi sekumpulan
property dan method yg berhubungan.
• Sebuah objek adalah sebuah instance
(keturunan) dari class.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityClass vs Object
• Misal, kita memiliki sebuah class mobil yang dapat
digunakan untuk mendefinisikan beberapa objek mobil.
Pada tabel di bawah, mobil A dan mobil B adalah objek
dari class mobil. Class memiliki field nomor, plat, warna,
manufaktur dan kecepatan yang diisi dengan nilai pada
objek mobil A dan mobil B. Mobil juga dapat
berakselerasi, berbelok, dan melakukan pengereman.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityClass vs Object
• Ketika diinisiasi, setiap objek mendapat satu set
variabel yang baru. Bagaimanapun,
implementasi dari method dibagi di antara objek
pada class yang sama. Class menyediakan
keuntungan dari reusability. Programmer
perangkat lunak dapat menggunakan sebuah
kelas beberapa kali untuk membuat banyak
objek.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
• Dalam pohon proses inheritance, sebuah descendant
(subclass) mewujudkan abstraksi yang lebih spesifik
dari ancestor (superclass).
Descendant = Ancestor + fitur-fitur baru
– Descendant dapat menambahkan fields dan methods baru
– Descendant dapat mengambil alih (override) method milik
ancestor dan mengubah implementasi method tersebut
• Manfaat inheritance:
– Pemanfaatan kembali (reuse) attribut dan method
ancestor
– Menyediakan model yang bersifat generik (abstract class);
implementasi spesifiknya bisa dilakukan kemudian
(mungkin oleh pemrogram yang berbeda)
• Dalam pohon proses inheritance, sebuah descendant
(subclass) mewujudkan abstraksi yang lebih spesifik
dari ancestor (superclass).
Descendant = Ancestor + fitur-fitur baru
– Descendant dapat menambahkan fields dan methods baru
– Descendant dapat mengambil alih (override) method milik
ancestor dan mengubah implementasi method tersebut
• Manfaat inheritance:
– Pemanfaatan kembali (reuse) attribut dan method
ancestor
– Menyediakan model yang bersifat generik (abstract class);
implementasi spesifiknya bisa dilakukan kemudian
(mungkin oleh pemrogram yang berbeda)
Inheritance
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
Contoh :
• Dulu mobil remote kontrol tanpa kabel hanya ada
satu tombol untuk maju mundur, sekarang bisa
bergerak sesuai keinginan kita.
• Dulu fungsi jam tangan hanya sebagai penunjuk
waktu saja, sekarang fungsinya sudah bertambah,
bisa menampilkan tanggal hingga kalender.
• Dulu perseneling mobil hanya manual sekarang
sudah ada yang otomatis.
• Jadi, dengan inheritance semua perubahan itu tidak
sepenuhnya mengubah objek yang ada, tetapi
hanya menambah dan memodifikasi dengan
mempertahankan objek (class) awalnya.
Inheritance
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
• Enkapsulasi menyembunyikan property dan
behaviour objek dari pihak luar (object yang lain).
Object lain melihat objek ini sebagai “black box” saja
• Intinya adalah kita tidak perlu mengetahui apa sih
yang ada dalam objek itu, yang kita butuhkan adalah
apa kegunaan, bagaimana cara memakainya dan
apa yang akan terjadi.
• Ilustrasinya adalah motor. Bagaimana cara
menghidupkan motor?
• Masukkan kunci, tekan tombol starter dan gas atau
kalau tidak ada, gunakan kick starter.
Encapsulation
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
• Kita tidak perlu tahu apa yang terjadi sebenarnya waktu kita
menekan starter atau kick starter. Yang penting motor hidup
dan bisa dijalankan.
• Ilustrasi lainnya adalah remote control tanpa kabel pada
mobil-mobilan.
• Kita tidak perduli kerja remote control itu yang sebenarnya,
yang penting begitu dihidupkan dan dan stick-nya digerakkan
ke atas dia akan maju. Begitu digerakkan ke kanan, dia akan
belok, dst.
• Contoh terakhir adalah jam tangan.
• Waktu membeli jam tangan, kita hanya memilih tampilan dan
kualitas yang bagus, itu yang terpenting. Tidak peduli cara
mesin rangkaian digital yang bekerja di dalam jam itu.
Encapsulation
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
• Poly: banyak; morphism: bentuk  sebuah fitur (generik)
bisa diimplementasikan dengan berbagai cara
• Polymorphism diimplementasikan dengan mekanisme
inheritance
hewan
anjing
“menggonggong”
kucing
“mengeong”
kuda
“meringkik”
“bersuara”
method
Polymorphism
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
• Dengan satu baris perintah kita bisa
menggunakannya untuk berbagai keperluan, fungsi
itu akan menyesuaikan sendiri ke pemanggilnya.
• Ilustrasinya adalah tombol play. Di manapun tombol
play fungsinya sama, untuk menjalankan. Padahal
beda cara kerja tombol play di vcd dan radio.
• Inti polymorphism adalah objek yang kita gunakan
ini bisa berubah sesuai dengan kondisi yang terjadi.
Jadi kita tidak perlu menulis kode program yang
panjang.
Polymorphism
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
Object Oriented
Programming
Dosen:
YUSUF WIBISONO
Materi Mata Kuliah
STMIK SPB Airlangga
Introduction to
PowerBuilder
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityPowerBuilder Files
• Workspace (PBW= PowerBuilder
Workspace)
• Target (PBT= PowerBuilder Target)
• Library (PBL= PowerBuilder Library)
Dalam file library inilah disimpan
semua object-object yang digunakan
dalam project PowerBuilder.
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer Community
Toolbar
Properties
Window,
tempat
meletakkan
objek
program
Library, untuk
melihat daftar objek
yang sudah dibuat
Pengatur display:
layout, current event (method), event
list, function list, instance variable
PowerBuilder IDE
Painter bar, daftar
objek yang bisa
dipasang di window
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityDatawindow
• DWO (Datawindow Object)
Sebuah objek datawindow yang langsung
terhubung dengan table (bisa 1 atau lebih table)
dari suatu database
• DWC (Datawindow Control)
Sebuah objek yang berguna untuk menempelkan
DWO ke dalam Window. Sebuah DWC memiliki
property dan event khusus untuk pengaturan
datawindow
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityDWO Type
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityDWO Rules
• Jika datawindow dimaksudkan untuk membuat form
pengisian data, maka yang perlu diperhatikan:
– Tab Order harus bernilai bukan 0 (nol) untuk kolom-kolom yang
perlu diisi oleh user
– Update properties harus sudah dilengkapi.
– Umumnya menggunakan DW Type: Free Form, Tabular, Grid
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityDWO Rules
• Jika datawindow dimaksudkan untuk membuat
desain laporan, maka yang harus dipastikan
adalah:
– Tab Order harus bernilai 0 (nol) agar user tidak
mempunyai akses untuk mengubah data pada laporan
– Update Properties tidak perlu dilengkapi, karena
dalam laporan tidak ada kegiatan mengisi data ke
table melalui datawindow
– Secara prinsip, semua DW Type bisa digunakan
sebagai model desain laporan:
Composite, CrossTab, Freeform, Graph, Grid, Group,
Label, N-Up, OLE 2.0, RichText, Tabular
E-Business & New Media SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia
PowerBuilder
Developer CommunityDWC Command
Command Description
dw_1.ScrollToRow(dw_1.InsertRow(0))
*kombinasi dari
ScrollToRow dan InsertRow()
Mengisi data baru; menyiapkan 1
barus kosong yang siap diisi di
urutan terbawah
dw_1.DeleteRow(0) Menghapus 1 record data pada
posisi pointer
dw_1.Update() Menyimpan data
dw_1.ScrollToRow(1) Menuju ke data pertama
dw_1.ScrollPriorRow() Menuju ke data sebelumnya
dw_1.ScrollNextRow() Menuju ke data berikutnya
dw_1.ScrollToRow(dw_1.RowCount()) Menuju ke data terakhir
dw_1.RowCount() Menghitung jumlah data
COMMIT; Final update ke table, biasanya untuk
melengkapi perintah penghapusan
dan penyimpanan

dasar program berorientasi objek pada power builder

  • 1.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community Object Oriented Programming Dosen: YUSUF WIBISONO Materi Mata Kuliah STMIK SPB Airlangga
  • 2.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityProgramming • Structured Programming Pemrograman terstruktur, prosedural • Console Programming Pemrograman berbasis teks, biasanya untuk terminal mesin • Web Programming Pemrograman berbasis Web • Object Oriented Programming Pemrograman berbasis objek • Visual Programming Pemrograman secara visual, minimum coding. • Mobile Programming Pemrograman untuk perangkat genggam • SQL Pemrograman permintaan terstruktur
  • 3.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityStructured vs OOP • Pemrograman Terstruktur adalah suatu aktivitas pemrograman dengan memperhatikan urutan langkah-langkah perintah secara sistematis, logis, dan tersusun berdasarkan algoritma yang sederhana dan mudah dipahami. • Pemrograman Berorientasi Objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek, jadi semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek- objek.
  • 4.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityStructured vs OOP • Perbedaan keduanya adalah pada pemrograman berorientasi objek setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya. • Sedangkan untuk pemrograman terstruktur fokus cara pemrosesan data yang terstruktur (sistematis) dalam analisis, cara, dan penulisan kode program.
  • 5.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityStructured vs OOP • Pemrograman terstruktur unggul dalam melakukan pemrograman sederhana karena lebih efisien dan lebih mudah dalam hal perawatannya. • Sementara itu pemrograman berorientasi objek memiliki beberapa keuntungan seperti: – Maintenance, program lebih mudah dibaca dan dipahami, dan pemrograman berorientasi objek mengontrol kerumitan program hanya dengan mengijinkan rincian yang dibutuhkan untuk programmer. – Pengubahan program (berupa penambahan atau penghapusan fitur tertentu) disesuaikan dengan keperluan berdasarkan objeknya.
  • 6.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityWhat is OOP? • Paradigma pemrograman yang memandang sistem yang akan dibangun berdasarkan objek-objek yang terlibat dan interaksinya dalam sistem. • Sistem dibangun dengan membuat objek- objek dan membangun interaksinya untuk menyelesaikan suatu pekerjaan. • Fungsi dan data menjadi satu kesatuan yang disebut sebagai Objek • Program adalah serangkaian objek yang berinteraksi untuk menyelesaikan suatu problem.
  • 7.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityOOP • OOP berputar pada konsep dari objek yang merupakan elemen dasar dari program. • Ilustrasinya adalah – Objek mobil mempunyai atribut seperti tipe transmisi, warna dan manufaktur. Mobil juga mempunyai tingkah laku berbelok, mengerem, dan berakselerasi. – Cara yang sama pula kita dapat mendefinisikan perbedaan sifat dan tingkah laku dari singa. – Pada perangkat lunak, menggunakan atribut sebagai data dan tingkah laku sebagai method.
  • 8.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityClass • Kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. • Class adalah suatu struktur dalam program yang berisi satu atau beberapa metode yang dapat berupa fungsi atau prosedur, dan atribut atau properti yang dapat berupa data ataupun variabel yang akan dioperasikan dalam metode. • Dengan demikian atribut atau properti merupakan anggota kelas yang bersifat statis, sedangkan metode merupakan anggota kelas yang bersifat dinamis.
  • 9.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityObject • Setiap objek dibangun dari sekumpulan atribut atau properti untuk menjabarkan karakteristik khusus dari objek, dan juga terdiri dari sekumpulan method yang menjabarkan tingkah laku dari objek. • Bisa dikatakan bahwa objek adalah sebuah perangkat lunak yang berisi sekumpulan property dan method yg berhubungan. • Sebuah objek adalah sebuah instance (keturunan) dari class.
  • 10.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityClass vs Object • Misal, kita memiliki sebuah class mobil yang dapat digunakan untuk mendefinisikan beberapa objek mobil. Pada tabel di bawah, mobil A dan mobil B adalah objek dari class mobil. Class memiliki field nomor, plat, warna, manufaktur dan kecepatan yang diisi dengan nilai pada objek mobil A dan mobil B. Mobil juga dapat berakselerasi, berbelok, dan melakukan pengereman.
  • 11.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityClass vs Object • Ketika diinisiasi, setiap objek mendapat satu set variabel yang baru. Bagaimanapun, implementasi dari method dibagi di antara objek pada class yang sama. Class menyediakan keuntungan dari reusability. Programmer perangkat lunak dapat menggunakan sebuah kelas beberapa kali untuk membuat banyak objek.
  • 12.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community
  • 13.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community • Dalam pohon proses inheritance, sebuah descendant (subclass) mewujudkan abstraksi yang lebih spesifik dari ancestor (superclass). Descendant = Ancestor + fitur-fitur baru – Descendant dapat menambahkan fields dan methods baru – Descendant dapat mengambil alih (override) method milik ancestor dan mengubah implementasi method tersebut • Manfaat inheritance: – Pemanfaatan kembali (reuse) attribut dan method ancestor – Menyediakan model yang bersifat generik (abstract class); implementasi spesifiknya bisa dilakukan kemudian (mungkin oleh pemrogram yang berbeda) • Dalam pohon proses inheritance, sebuah descendant (subclass) mewujudkan abstraksi yang lebih spesifik dari ancestor (superclass). Descendant = Ancestor + fitur-fitur baru – Descendant dapat menambahkan fields dan methods baru – Descendant dapat mengambil alih (override) method milik ancestor dan mengubah implementasi method tersebut • Manfaat inheritance: – Pemanfaatan kembali (reuse) attribut dan method ancestor – Menyediakan model yang bersifat generik (abstract class); implementasi spesifiknya bisa dilakukan kemudian (mungkin oleh pemrogram yang berbeda) Inheritance
  • 14.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community Contoh : • Dulu mobil remote kontrol tanpa kabel hanya ada satu tombol untuk maju mundur, sekarang bisa bergerak sesuai keinginan kita. • Dulu fungsi jam tangan hanya sebagai penunjuk waktu saja, sekarang fungsinya sudah bertambah, bisa menampilkan tanggal hingga kalender. • Dulu perseneling mobil hanya manual sekarang sudah ada yang otomatis. • Jadi, dengan inheritance semua perubahan itu tidak sepenuhnya mengubah objek yang ada, tetapi hanya menambah dan memodifikasi dengan mempertahankan objek (class) awalnya. Inheritance
  • 15.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community • Enkapsulasi menyembunyikan property dan behaviour objek dari pihak luar (object yang lain). Object lain melihat objek ini sebagai “black box” saja • Intinya adalah kita tidak perlu mengetahui apa sih yang ada dalam objek itu, yang kita butuhkan adalah apa kegunaan, bagaimana cara memakainya dan apa yang akan terjadi. • Ilustrasinya adalah motor. Bagaimana cara menghidupkan motor? • Masukkan kunci, tekan tombol starter dan gas atau kalau tidak ada, gunakan kick starter. Encapsulation
  • 16.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community • Kita tidak perlu tahu apa yang terjadi sebenarnya waktu kita menekan starter atau kick starter. Yang penting motor hidup dan bisa dijalankan. • Ilustrasi lainnya adalah remote control tanpa kabel pada mobil-mobilan. • Kita tidak perduli kerja remote control itu yang sebenarnya, yang penting begitu dihidupkan dan dan stick-nya digerakkan ke atas dia akan maju. Begitu digerakkan ke kanan, dia akan belok, dst. • Contoh terakhir adalah jam tangan. • Waktu membeli jam tangan, kita hanya memilih tampilan dan kualitas yang bagus, itu yang terpenting. Tidak peduli cara mesin rangkaian digital yang bekerja di dalam jam itu. Encapsulation
  • 17.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community • Poly: banyak; morphism: bentuk  sebuah fitur (generik) bisa diimplementasikan dengan berbagai cara • Polymorphism diimplementasikan dengan mekanisme inheritance hewan anjing “menggonggong” kucing “mengeong” kuda “meringkik” “bersuara” method Polymorphism
  • 18.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community • Dengan satu baris perintah kita bisa menggunakannya untuk berbagai keperluan, fungsi itu akan menyesuaikan sendiri ke pemanggilnya. • Ilustrasinya adalah tombol play. Di manapun tombol play fungsinya sama, untuk menjalankan. Padahal beda cara kerja tombol play di vcd dan radio. • Inti polymorphism adalah objek yang kita gunakan ini bisa berubah sesuai dengan kondisi yang terjadi. Jadi kita tidak perlu menulis kode program yang panjang. Polymorphism
  • 19.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community Object Oriented Programming Dosen: YUSUF WIBISONO Materi Mata Kuliah STMIK SPB Airlangga Introduction to PowerBuilder
  • 20.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityPowerBuilder Files • Workspace (PBW= PowerBuilder Workspace) • Target (PBT= PowerBuilder Target) • Library (PBL= PowerBuilder Library) Dalam file library inilah disimpan semua object-object yang digunakan dalam project PowerBuilder.
  • 21.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer Community Toolbar Properties Window, tempat meletakkan objek program Library, untuk melihat daftar objek yang sudah dibuat Pengatur display: layout, current event (method), event list, function list, instance variable PowerBuilder IDE Painter bar, daftar objek yang bisa dipasang di window
  • 22.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityDatawindow • DWO (Datawindow Object) Sebuah objek datawindow yang langsung terhubung dengan table (bisa 1 atau lebih table) dari suatu database • DWC (Datawindow Control) Sebuah objek yang berguna untuk menempelkan DWO ke dalam Window. Sebuah DWC memiliki property dan event khusus untuk pengaturan datawindow
  • 23.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityDWO Type
  • 24.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityDWO Rules • Jika datawindow dimaksudkan untuk membuat form pengisian data, maka yang perlu diperhatikan: – Tab Order harus bernilai bukan 0 (nol) untuk kolom-kolom yang perlu diisi oleh user – Update properties harus sudah dilengkapi. – Umumnya menggunakan DW Type: Free Form, Tabular, Grid
  • 25.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityDWO Rules • Jika datawindow dimaksudkan untuk membuat desain laporan, maka yang harus dipastikan adalah: – Tab Order harus bernilai 0 (nol) agar user tidak mempunyai akses untuk mengubah data pada laporan – Update Properties tidak perlu dilengkapi, karena dalam laporan tidak ada kegiatan mengisi data ke table melalui datawindow – Secara prinsip, semua DW Type bisa digunakan sebagai model desain laporan: Composite, CrossTab, Freeform, Graph, Grid, Group, Label, N-Up, OLE 2.0, RichText, Tabular
  • 26.
    E-Business & NewMedia SI Perusahaan SI Pendidikan Informasi Perkantoran Industri Kreatif Multimedia PowerBuilder Developer CommunityDWC Command Command Description dw_1.ScrollToRow(dw_1.InsertRow(0)) *kombinasi dari ScrollToRow dan InsertRow() Mengisi data baru; menyiapkan 1 barus kosong yang siap diisi di urutan terbawah dw_1.DeleteRow(0) Menghapus 1 record data pada posisi pointer dw_1.Update() Menyimpan data dw_1.ScrollToRow(1) Menuju ke data pertama dw_1.ScrollPriorRow() Menuju ke data sebelumnya dw_1.ScrollNextRow() Menuju ke data berikutnya dw_1.ScrollToRow(dw_1.RowCount()) Menuju ke data terakhir dw_1.RowCount() Menghitung jumlah data COMMIT; Final update ke table, biasanya untuk melengkapi perintah penghapusan dan penyimpanan