Welcome To Agus Prasetyo SMK TJP TUBAN                                                 Blog ini berisi Tugas-tugas Sekolah

Minggu, 13 November 2016

Konsep Dasar Pemrograman Berorientasi Objek (OOP)


Jika anda telah biasa membuat program secara prosedural, yakni menulis program-program dari baris pertama sampai dengan baris terakhir secara berurutan, konsep pemrograman berbasis objek mungkin sedikit susah dipahami. Dalam tutorial pertama tentang OOP ini, kita akan membahas dulu pengertian pemrograman berbasis objek.

Pengertian Pemrograman Berorientasi Objek

Pemrograman Berorientasi Objek atau Object Oriented Programming (OOP) adalah sebuah tata cara pembuatan program (programming paradigm) dengan menggunakan konsep “objek” yang memiliki data (atribut yang menjelaskan tentang objek) dan prosedur (function) yang dikenal dengan method. (http://en.wikipedia.org/wiki/Object-oriented_programming)
Dalam pengertian sederhananya, OOP adalah konsep pembuatan program dengan memecah permasalahan program dengan menggunakan objekObjek dapat diumpamakan dengan ‘fungsi khusus’ yang bisa berdiri sendiri. Untuk membuat sebuah aplikasi, berbagai objek akan saling bertukar data untuk mencapai hasil akhir.
Berbeda dengan konsep fungsi atau ‘function’ di dalam pemrograman, sebuah objek bisa memiliki data dan function tersendiri. Setiap objek ditujukan untuk mengerjakan sebuah tugas, dan menghasilkan nilai akhir untuk selanjutnya dapat ditampilkan atau digunakan oleh objek lain.

Fungsi Pemrograman Berorientasi Objek dalam PHP

PHP bukan bahasa pemrograman yang ‘murni’ berbasis objek seperti Java. Bahkan, konsep OOP dalam PHP baru hadir dalam PHP versi 4, dan disempurnakan oleh PHP versi 5. Dengan kata lain,OOP di PHP merupakan ‘fitur tambahan’. Anda bisa membuat situs web dengan PHP tanpa menggunakan objek sama sekali.
Dalam studi pemrograman, pembuatan program dalam PHP tanpa menggunakan objek disebut juga dengan pemrograman prosedural atau pemrograman fungsional. Dikenal dengan pemrograman prosedural, karena kita memecah kode program menjadi bagian-bagian atau fungsi-fungsi kecil, kemudian menyatukannya untuk menghasilkan nilai akhir.
Dengan membuat program secara prosedural, aplikasi bisa dibuat dengan cepat dan mudah dipelajari jika dibandingkan dengan pemrograman berbasis objek (bagi anda yang pernah mempelajari Java, tentu telah ‘melewati’ hal ini). Keuntungan pemrograman berbasis objek baru terasa ketika program tersebut telah ‘besar’ atau kita bekerja dengan tim untuk membagi tugas. Konsep ‘objek’ untuk memisahkan program menjadi bagian-bagian yang berdiri sendiri akan memudahkan dalam membuat program.
Saya tidak akan panjang lebar menjelaskan tentang keuntungan atau kerugian menggunakan OOP. Sebagai programmer web, OOP adalah salah satu makanan wajib. Pembuatan website modern saat ini akan lebih mudah jika menggunakan template kode program yang dikenal dengan framework. Daripada kita membuat situs mulai dari awal, menggunakan framework akan mempercepat proses kerja. Dan framework PHP hampir semuanya dibuat menggunakan OOP.


Pemrograman berbasis objek tidak hanya berisi ‘object’. Selanjutnya kita akan belajar OOP PHP, dan pertama kita akan membahas tentang pengertian class, object, property dan method. Keempat ‘keyword’ inilah yang menjadi pondasi dasar dari Pemrograman Berorientasi Objek. Selain pengertian, kita juga akan mempelajari cara penulisannya dengan PHP.
Untuk memudahkan pemahaman dan agar sejalan dengan istilah aslinya, saya tetap menggunakan istilah bahasa inggris untuk kata kunci PHP, seperti: class, object, property dan method.

Pengertian Class dalam Pemrograman Berbasis Objek

Class adalah ‘cetak biru’ atau ‘blueprint’ dari object. Class digunakan hanya untuk membuat kerangka dasar. Yang akan kita pakai nantinya adalah hasil cetakan dari class, yakni object.
Sebagai analogi, class bisa diibaratkan dengan laptop atau notebook. Kita tahu bahwa laptop memiliki ciri-ciri seperti merk, memiliki keyboard, memiliki processor, dan beberapa ciri khas lain yang menyatakan sebuah benda tersebut adalah laptop. Selain memiliki ciri-ciri, sebuah laptop juga bisa dikenakan tindakan, seperti: menghidupkan laptop atau mematikan laptop.
Class dalam analogi ini adalah gambaran umum tentang sebuah benda. Di dalam pemrograman nantinya, contoh class seperti: koneksi_database dan profile_user.
Di dalam PHP, penulisan class diawali dengan keyword class, kemudian diikuti dengan nama dari class. Aturan penulisan nama class sama seperti aturan penulisan variabel dalam PHP, yakni diawali dengan huruf atau underscore untuk karakter pertama, kemudian boleh diikuti dengan huruf, underscore atau angka untuk karakter kedua dan selanjutnya. Isi dari class berada dalam tanda kurung kurawal.
Berikut adalah contoh penulisan class dalam PHP :

Pengertian Property dalam Pemrograman Berorientasi Objek

Property (atau disebut juga dengan atribut) adalah data yang terdapat dalam sebuah class. Melanjutkan analogi tentang laptopproperty dari laptop bisa berupa merk, warna, jenis processor, ukuran layar, dan lain-lain.
Jika anda sudah terbiasa dengan program PHP, property ini sebenarnya hanyalah variabel yang terletak di dalam class. Seluruh aturan dan tipe data yang biasa diinput kedalam variabel, bisa juga diinput kedalam property. Aturan tata cara penamaan property sama dengan aturan penamaan variabel.

Berikut adalah contoh penulisan class dengan penambahan property :
Dari contoh diatas, $merk, $ukuran_layar dan $jenis_processor adalah property dari class laptop. Seperti yang kita lihat, penulisan property di dalam PHP sama dengan cara penulisan variabel, yakni menggunakan tanda dollar ($). Sebuah class tidak harus memiliki property.

Pengertian Method dalam Pemrograman Berorientasi Objek

Method adalah tindakan yang bisa dilakukan didalam class. Jika menggunakan analogi class laptop kita, maka contoh method adalah: menghidupkan laptopmematikan laptopmengganti cover laptop, dan berbagai tindakan lain.
Method pada dasarnya adalah function yang berada di dalam class. Seluruh fungsi dan sifat function bisa diterapkan kedalam method, seperti argumen/parameter, mengembalikan nilai (dengan keyword return), dan lain-lain.

Berikut adalah contoh penulisan class dengan penambahan method :
Dari contoh diatas, function hidupkan_laptop() dan function matikan_laptop() adalah method dari class laptop. Seperti yang kita lihat, bahwa penulisan method di dalam PHP sama dengan cara penulisan function. Sebuah class tidak harus memiliki method.

Pengertian Object dalam Pemrograman Berbasis Objek

Object atau Objek adalah hasil cetak dari class, atau hasil ‘konkrit’ dari class. Jika menggunakan analogi class laptop, maka objek dari class laptop bisa berupa: laptop_andi, laptop_anto, laptop_yukcoding, dan lain-lain. Objek dari class laptop akan memiliki seluruh ciri-ciri laptop, yaitu property dan method-nya.
Proses ‘mencetak’ objek dari class ini disebut dengan ‘instansiasi’ (atau instantiation dalam bahasa inggris). Pada PHP, proses instansiasi dilakukan dengan menggunakan keyword ‘new’. Hasil cetakan class akan disimpan dalam variabel untuk selanjutnya digunakan dalam proses program.

Sebagai contoh, berikut adalah cara membuat objek laptop_andi dan laptop_anto yang dibuat dari class laptop :
Dari contoh diatas, $laptop_andi dan $laptop_anto merupakan objek dari class laptop. Kedua objek ini akan memiliki seluruh property dan method yang telah dirancang dari class laptop.

 Konsep OOP (Object Oriented Programming) 

a. Kelas Abstrak (Class Abstraksi)
b. Enkapsulasi (encapsulation)
c. Pewarisan (Inheritance)
d. Polimorfisme (polymorphism)

1. Kelas Abstrak (Class Abstraksi)
    • Kelas merupakan deskripsi abstrak informasi dan tingkah laku dari sekumpulan data.
    • Kelas dapat diilustrasikan sebagai suatu cetak biru(blueprint) atau prototipe yang digunakan untuk menciptakan objek.
    • Kelas merupakan tipe data bagi objek yang mengenkapsulasi data dan operasi pada data dalam suatu unit tunggal.
    • Kelas mendefinisikan suatu struktur yang terdiri atas data kelas (data field), prosedur atau fungsi (method), dan sifat kelas (property).
2. Enkapsulasi (encapsulation)
    • Istilah enkapsulasi sebenarnya adalah kombinasi data dan fungsionalitas dalam sebuah unit tunggal sebagai bentuk untuk menyembunyikan detail informasi.
    • Proses enkapsulasi memudahkan kita untuk menggunakan sebuah objek dari suatu kelas karena kita tidak perlu mengetahui segala hal secara rinci.
    • Enkapsulasi menekankan pada antarmuka suatu kelas, atau dengan kata lain bagaimana menggunakan objek kelas tertentu.
    • Contoh: kelas mobil menyediakan antarmuka fungsi untuk menjalankan mobil tersebut, tanpa kita perlu tahu komposisi bahan bakar, udara dan kalor yang diperlukan untuk proses tersebut.
3. Pewarisan (Inheritance)
    • Kita dapat mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang sudah ada.
    • Penurunan sifat ini bisa dilakukan secara bertingkattingkat, sehingga semakin ke bawah kelas tersebut menjadi semakin spesifik.
    • Sub kelas memungkinkan kita untuk melakukan spesifikasi detail dan perilaku khusus dari kelas supernya.
    • Dengan konsep pewarisan, seorang programmer dapat menggunakan kode yang telah ditulisnya pada kelas super berulang kali pada kelas-kelas turunannya tanpa harus menulis ulang semua kodekode itu.
4. Polimorfisme (polymorphism)
    • Polimorfisme merupakan kemampuan objekobjek yang berbeda kelas namun terkait dalam pewarisan untuk merespon secara berbeda terhadap suatu pesan yang sama.
    • Polimorfisme juga dapat dikatakan kemampuan sebuah objek untuk memutuskan method mana yang akan diterapkan padanya, tergantung letak objek tersebut pada jenjang pewarisan.
    • Method overriding.
    • Method name overloading.
C. Karakteristik OOP (Object Oriented Programming) 
  • Semua adalah objek.
  • Komputasi dilakukan dengan komunikasi antar objek. Setiap objek berkomunikasi dengan objek yang lain melalui pengiriman dan penerimaan pesan.
  • Sebuah pesan merupakan permintaan atas sekumpulan aksi dengan semua argumen yang diperlukan untuk menyelesaikan suatu tugas tertentu.
  • Setiap objek memiliki memori sendiri, yang dapat terdiri dari objek-objek lainnya.
  • Setiap objek adalah wakil atau representasi dari suatu kelas. Sebuah kelas dapat mewakili sekelompok objek yang sama.
  • Kelas merupakan kumpulan tingkah laku yang berkaitan dengan suatu objek. Jadi, semua objek yang merupakan wakil dari kelas yang sama dapat melakukan aksi yang sama pula.
  • Kelas-kelas diorganisasikan ke dalam struktur pohon yang berakar tunggal, yang dinamakan dengan jenjang pewarisan (inheritance hierarchy).
  • Setiap objek pada umumnya memiliki tiga sifat, yaitu keadaan, operasi dan identitas objek.
  • Operasi merupakan tindakan yang dapat dilakukan oleh sebuah objek.
  • Keadaan objek merupakan koleksi dari seluruh informasi yang dimiliki oleh objek pada suatu saat.
  • Informasi yang terkandung pada objek tersebut pada akhirnya memberikan identitas khusus yang membedakan suatu objek dengan objek lainnya.
Sekian dari saya, Wassalam :)
FORZA MILAN

Senin, 05 Oktober 2015

Game tebak angka di Visual basic


Yang di atas adalah tampilan awal dari progam Game tebak kata kali ini


Dan ini adalah nama" dari semua objek yang di buat

Dim angka As String
Dim PJangka As Integer
Dim soal(50) As String
Private Sub setsoal()
soal(0) = "345"
soal(1) = "354"
soal(2) = "348"
soal(3) = "458453"
soal(4) = "3685"
soal(5) = "46764643"
soal(6) = "4567"
soal(7) = "5645"
soal(8) = "345675"
soal(9) = "7556"
soal(10) = "586636"
soal(11) = "5678"
soal(12) = "4887576"
soal(13) = "56646484"
soal(14) = "8765"
soal(15) = "886465"
soal(16) = "7655"
soal(17) = "644343578"
soal(18) = "5886"
soal(19) = "5864668"
soal(20) = "5678"
soal(21) = "3665355"
soal(22) = "57363546"
soal(23) = "34435356"
soal(24) = "5465"
soal(25) = "886536353"
soal(26) = "3566"
soal(27) = "5775755"
soal(28) = "45646446"
soal(29) = "486"
soal(30) = "388687"
soal(31) = "3464"
soal(32) = "7465357"
soal(33) = "359696768"
soal(34) = "3456"
soal(35) = "7746465"
soal(36) = "4456"
soal(37) = "64757834"
soal(38) = "365645"
soal(39) = "4575576"
soal(40) = "56646445"
soal(41) = "6734"
soal(42) = "653"
soal(43) = "3574476"
soal(44) = "476676"
soal(45) = "3335"
soal(46) = "444855"
soal(47) = "875787"
soal(48) = "8787778"
soal(49) = "7878"
End Sub
Private Sub AcakAngka()
angka = soal(Round(Rnd() * UBound(soal)))
PJangka = Len(angka)
For i = 1 To 8
If i <= PJangka Then
lblbenar(i).Visible = True
Line1(i).Visible = True
lblsalah(i).Visible = True
Else
lblbenar(i).Visible = False
Line1(i).Visible = False
lblsalah(i).Visible = False
End If
lblbenar(i).Caption = ""
lblsalah(i).Caption = ""
Next i
End Sub

Private Sub Cmdangka_Click(Index As Integer)
Dim i As Integer
Dim jawaban As String

Cmdangka(Index).Visible = False

jawaban = ""
If InStr(1, angka, Cmdangka(Index).Caption) Then
For i = 1 To PJangka
If Cmdangka(Index).Caption = Mid(angka, i, 1) Then
lblbenar(i).Caption = Cmdangka(Index).Caption
End If
jawaban = jawaban & lblbenar(i)
Next
If jawaban = angka Then
For i = 1 To 9
Cmdangka(i).Enabled = False
Next i
st = MsgBox("Luarrr Biasaa ,Bagus !!!" & vbClrLf & " Mau Main Lagi??", 
vbYesNo + vbQuestion, "TEBAK ANGKA")
If st = vbYes Then cmdcobalagi_Click
End If
Else
i = 1
Do While lblsalah(i).Caption <> "" And i <= PJangka
i = i + 1
Loop
lblsalah(i).Caption = Cmdangka(Index).Caption
If i >= PJangka Then
For i = 1 To 9
Cmdangka(i).Enabled = False
Next i
st = MsgBox("haahaahaha gitu aja gak bisa !!!" 
& vbCrLf & "Mau coba Lagi ??", vbYesNo, _"TEBAK KATA")
If st = vbYes Then cmdcobalagi_Click
End If
End Sub
Private Sub cmdcobalagi_Click()
For i = 1 To 9
Cmdangka(i).Enabled = True
Cmdangka(i).Visible = True 
 
Next
AcakAngka
End Sub

Private Sub cmdkeluar_Click()
End
End Sub

Private Sub Form_Load()
Randomize
setsoal
AcakAngka
End Sub

Yang Di atas adalah kode dari progam tersebut

Jawaban Benar
 Pada gambar di atas itu jika kotak yang putih sudah terisi maka jawaban'nya BENAR seperti yang di gambar


Tapi sebaliknya kalau kotak yang warna merah sudah penuh berarti itu SALAH



 
PERHATIAN 
#Yang Kotak warna putih berarti "BENAR" dan yang merah berarti "SALAH"
#Cara mengisi/menebak angkanya dengan cara mengklik/memilih angka yang ada
 
Dan Ini adalah progamnya yang saya sudah jadikan videooo
Ada di bawahhh
Cekidoott !!

Selasa, 29 September 2015

Program Check barang menggunakan Visual basic (Belum selesai)

Nama Objek

Gambar di atas adalah nama" objek yang di gunakan pada progam ini

Dan kode dari Progam tersebut jika di klik "txtkode" maka terdapat kode yang ada di bawah ini !!


Private Sub txtkode_KeyPress(KeyAscii As Integer)
Dim s As String
If KeyAscii = 13 Then
    s = txtkode.Text

If s = "21400018" Then
lblhasil.Caption = "Isi Staples kecil" & vbLf & "Rp.2500"
Set Image1.Picture = LoadPicture(App.Path & "/isi staples kecil.jpg")

ElseIf s = "4970129727514" Then
lblhasil.Caption = "Spidol Snowman" & vbLf & "Rp.6500"
Set Image1.Picture = LoadPicture(App.Path & "/spidol snowman.jpg")

ElseIf s = "02110097" Then
lblhasil.Caption = "Tinta Blueprint 100" & vbLf & "Rp.30000"
Set Image1.Picture = LoadPicture(App.Path & "/tinta.jpg")

ElseIf s = "091163224457" Then
lblhasil.Caption = "Mouse Genius USB" & vbLf & "Rp.35000"
Set Image1.Picture = LoadPicture(App.Path & "/Mouse genius.jpg")

ElseIf s = "6RX84CXX." Then
lblhasil.Caption = "Hardisk Maxtor 80GB" & vbLf & "Rp.250000"
Set Image1.Picture = LoadPicture(App.Path & "/hardisk maxtor.jpg")
Else
lblhasil.Caption = "sepuntene barangnipun dereng terdaftar"
Set Image1.Picture = LoadPicture(App.Path & "/No image.jpg")
End If

txtkode.Text = ""
txtkode.SetFocus
End If
End Sub

DAN jika "txtkode" diberikan kode atau nomer di bawah ini


Maka efeknya akan seperti di bawah ini

1. 21400018
Kode

Kode diatas di masukan ke progam lalu di ENTER

Hasil

Dan Hasilnya Seperti di atas !!

2. 4970129727514
Kode
Kalau sudah di masukan lalu klik "ENTER"


Dan setelah di "ENTER" hasilnya akan seperti di atas

3. 02110097

Nomer di tulis dulu pertama-tama ,lalu klik "ENTER" seperti di atas


Dan setelah di "ENTER" Hasilnya ada seperti di atas

4. 091163224457

Senin, 14 September 2015

Membuat duplikat WinRAR dari Visual Basic


Gambar di atas adalah apa aja yang di gunakan pada duplikat WinRAR ini



Dan yang di atas itu Nama" objek yang saya gunakan pada duplikat ini !!

Okeyyy dibawah ini adalah penjelasan dari setiap objek di atas tadii


Di atas Ini adalah tampilan drive dari Laptop saya
#Jangan kaget secara namanya saya ganti semuaaa

Toolbar

Itu tollbarnya dalam posisi di tekann itu di bagian test ..
kalau gak tau di bawah ada videonya !!

Dan di bawah ini sekarang adalah penjelasan dari tampilan MENU BAR
                   1. FILE


 
Ini adalah Menu Editor dari menu FILE, tapi itu belum semuanya




Dan ini tampilan menu FILE secara lengkap dalam bentuk tabel
Menu
Sub Menu
Sub Sub menu
File
Open archive


Save archive copy as


Change Drive
Local Disk (C:)


MILANISTI (D:)


AC MILAN (E:)


Kandar DVD RW (F:)

Set default Password


-


Copy files to clipboard


Paste files to clipboard


-


Select all


Select group


Deselect group


Invert selection


-


Exit

 
2.Command
Ini adalah Menu Editor dari menu COMMAND, tapi itu belum semuanya

Dan ini tampilan menu COMMAND secara lengkap dalam bentuk tabel
Menu
Sub Menu
Sub Sub menu
Command
Add file to archive


Extract to the specified folder


Test archived files


-


View file


Delete File


Rename file


Print file


-


Extract without comfirmation


Add archive comment


Protect archive from damage


Lock archive


 
 3. Tools
Ini adalah Menu Editor dari menu TOOLS, tapi itu belum semuanya
 

 Dan ini tampilan menu TOOLS secara lengkap dalam bentuk tabel

Menu
Sub Menu
Sub Sub menu
Tools
Wizard


-


Scan archive for virus


Convert archives


Repair archives


Convert archive to SFX


-


Find files


Show information


Generate report


Benchmark




4. Favorites
Ini adalah Menu Editor dari menu FAVORITES

 
Dan ini tampilan menu FAVORITES secara lengkap dalam bentuk tabel
Menu
Sub Menu
Sub Sub menu
Favorites
Add to favorite...


Organize favorite...


5. OPTION
Ini adalah Menu Editor dari menu OPTION, tapi itu belum semuanya


Yang di atas adalah tampilan dari menu OPTION beserta Sub-subnya


Dan ini tampilan menu OPTION secara lengkap dalam bentuk tabel
Menu
Sub Menu
Sub Sub menu
Option
Settings...


Import/Export
Import settings from file


Export settings to file

-


File list
Flat folders view


-


List view


Details

Folder tree
Show disk folders


Show archive folders

Themes
Organize themes...


Get more themes...


-


Default theme

-


View log


Clear log


6. HELP
Ini adalah Menu Editor dari menu HELP, tapi itu belum semuanya

Dan ini tampilan menu HELP secara lengkap dalam bentuk tabel

Yang perlu di perhatikan :
  • Kalau tidak ada titik di tulisannya berarti itu "Menu" atau menu utama
  • kalau ada titik  "...." berarti "SUB MENU" yang  terletak di belakang tulisan dan berada di bawah "MENU" , dan sub menu adalah isi dari MENU tersebut
  • kalau ada titik "........" berati "SUB SUB MENU" yang terletak di belakang tulisan dan penulisannya berada di bawah "SUB MENU", dan Sub sub menu adalah  isi dari Sub Menu
Perhatian 
#Jangan Lupa setelah menulis tulisan menu jangan lupa klik NEXT , dan jika mau buat "SUB MENU", setelah klik Next lalu di klik juga tanda panah arah "KANAN" (seperti di gambar 1) untuk membuat titik maupun membuat SUB-SUB lainnya . #Untuk menambah titik klik lagi tanda tersebut
#Tanda-tanda lainnya seperti tanda "KIRI", "ATAS", "BAWAH" ,"KIRI" untuk mengurangi titik. "ATAS" untuk memindahkan tulisan yang di buat ke atas , dan "BAWAH" untuk memindahkan tulisan yang di buat ke bawah.
#Dan terdapat juga tanda Checked, Enabled ,Visible dll
         *Checked fungsingya = Untuk menambahkan tanda Centang pada menu seperti di Gambar Option/File list /Detailist
         *Enabled fungsinya = untuk mematikan dan menghidupkan efek menu yang terdapat di gambar option/file list/Flat folders view
         *Visible fungsinya = untuk menghilangkan dan menampilkan menu
#Untuk memilih "shortcut" dapat dipilih Sesuka hati kalian

Dan di bawah ini adalah duplikat projek saya dalam bentuk Video
Cekidott !!
Video di bawah menggunakan Microsoft Windows Common control 5.0





Kritik dan saran atau pertanyan silahkan tulis di bawah inii !!