Halo teman-teman semua, selamat datang di channel web programming Unpass, channel yang membahas mengenai tutorial web design dan web programming. Perkenalkan, nama saya Sandika Gali, dan di video kali ini, ini merupakan video pertama dari sebuah seri yang namanya adalah Object Oriented PHP atau PHP ya. Jadi di seri ini kita akan belajar mengenai implementasi dari pemrograman berbasis objek menggunakan bahasa pemrograman PHP.
Atau ini juga disebut dengan PHP yang berorientasi objek. Nah di video pertama ini, saya akan menjelaskan mengenai apa yang akan kita pelajari dalam satu seri ke depan ini dan juga apa yang harus kalian siapkan untuk mengikuti seri ini. Nah tapi sebelum kita masuk ke seri ini, ke sana, kita akan pelajari dulu secara singkat apa itu object oriented programming ya jadi object oriented programming ini merupakan gaya pemrograman atau programming style atau ada juga yang menyebutnya dengan paradigma pemrograman ya jadi cara kita menuliskan kode program kita Nah tapi sebelumnya juga kita harus paham dulu mengenai sebuah paradigma pemrograman yang lain yang disebut dengan procedural programming Yaitu pemrograman secara prosedural Nah kalau misalkan kalian sudah pernah mengikuti sebuah seri di channel web programming unpas ini yang namanya belajar PHP untuk pemula Ya teman-teman buat yang belum nonton silahkan nonton dulu Nah disitu kita belajar membuat sebuah website sederhana menggunakan bahasa pemrograman PHP Nah di dalamnya kita sudah menulis Menambahkan banyak sekali Fungsionalitas, seperti CRUD Atau fasilitas untuk Mengelola data, yang menambah, menghapus, mengubah Dan mencari data Intinya, website yang kita buat Atau program yang kita buat pada seri tersebut Itu kita buat dengan Menggunakan gaya pemrograman prosedural Jadi buat teman-teman yang sudah nonton Di situ kita membuatnya Menggunakan gaya pemrograman prosedural Apa itu Pemrograman prosedural Kita lihat karakteristiknya Ya Jadi yang pertama, teman-teman bisa lihat nih, prosedural programming itu pada saat kita membuat programnya, semua baris instruksinya kita buat langkah demi langkah.
Jadi runut dalam satu halaman kita tulis langkah-langkahnya seperti apa. Lalu yang kedua, dengan menggunakan prosedural programming, kita berusaha untuk melakukan modularisasi dengan cara memecah program kita menjadi bagian-bagian yang kecil. Kalau teman-teman ingat, kita punya file function. Nah, di dalam file function tersebut banyak sekali. Sekali fungsi-fungsi yang kita buat untuk mengerjakan tugas tertentu.
Nah, itu cara kita untuk memecah program kita menjadi bagian-bagian yang kecil. Nah, bagian-bagian yang kecil tadi, mungkin di bahasa pemrograman prosedural lainnya, itu disebutnya nggak function, tapi prosedur atau subroutine. Prosedural programming juga disebut dengan linear, di mana program dibaca dari atas ke bawah.
Nah, untuk bahasa-bahasa pemrograman yang menggunakan gaya programming prosedural, itu ada macam-macam ya. Kalian bisa lihat. Ada Fortran, ada Algol, Kobol, Pascal, C, PHP, dan JavaScript.
Nah, ada beberapa dari bahasa ini bisa menggunakan prosedural, bisa menggunakan gaya pemrograman prosedural, atau object-oriented. Nah, seperti kalian lihat, PHP dan JavaScript. Dua bahasa ini kita bisa tulis dengan menggunakan gaya prosedural maupun object-oriented. Kalau yang lain, misalkan C. Nah, C itu nggak bisa object-oriented.
Dia khusus prosedural. Oke, jadi ini beberapa. Beberapa karakteristik dari paradigma pemrograman prosedural.
Nah sekarang selanjutnya. Kenapa sih kita memilih gaya pemrograman yang prosedural? Dibanding dengan objek oriented ya. Saya hanya membandingkan dua ini aja. Kenapa kita pilihnya yang prosedural?
Ada beberapa alasan. Yang pertama, bahasa pengurangan prosedural itu cenderung to the point Jadi kita bisa langsung melakukan apa yang kita mau dengan menuliskan baris-baris tertentu Nah nanti ini agak beda dengan bahasa pengurangan objek oriented Di mana kita harus menuliskan atau mendefinisikan Sesuatu dulu sebelum kita Mau melakukan sesuatu Jadi yang pertama kelebihannya adalah to the point Nah terus yang kedua adalah Dari sisi simplicity nya Kemudahan untuk dibaca dan dikelola Oleh interpreter maupun compiler Jadi dengan dengan simpel misalkan kita menulis echo hello world, nah itu langsung dikerjakan oleh compiler, hasilnya langsung ditampilkan ke layar. Lalu yang selanjutnya, karena dia linear, itu nanti mudah untuk menelusurinya. Kalau ada error, nanti pesan kesalahannya akan langsung mentarget area kesalahannya. Misalkan error di baris berapa begitu.
Selanjutnya, karena dia to the point tadi, maka membutuhkan lebih sedikit memory pada saat proses eksekusinya dibanding dengan menggunakan objek. Object oriented PHP, nah karena nanti Dengan menggunakan object oriented, ada banyak hal Yang harus di load dulu ke memory sebelum Kita bisa mengerjakan sesuatu Begitu Oke, jadi itu kelebihan dan karakteristik dari prosedural programming khususnya di PHP yang sudah kita coba di seri sebelumnya atau di playlist sebelumnya. Sekali lagi buat teman-teman yang belum ngikutin seri itu, saya sarankan ikuti dulu sebelum ngikutin seri ini supaya nanti dapat gambaran mengenai apa sih perbedaan antara prosedural programming dan object-oriented programming. Nah sekarang kita lihat, kalau object-oriented programming itu seperti apa? Kita lihat karakteristiknya dulu Yang pertama, dengan menggunakan object-oriented programming Teman-teman bisa lihat bahwa nanti kita akan menyusun semua kode program kita Kita akan nyusun struktur data, kita akan nyusun programnya itu ke dalam dalam objek-objek.
Jadi nanti semuanya akan kita anggap sebagai sebuah objek. Teman-teman tidak usah khawatir dulu mengenai objek itu apa. Nanti kita bahas lebih lanjut di video berikutnya.
Terus yang kedua, karakteristiknya si objek tadi merupakan unit dasar pembentuk dari programnya. Karena tadi, karena semua dibikin dari objek, maka objeklah yang nanti memiliki peranan penting. Kita lihat nanti. Di dalam objek, itu kita bisa menyimpan data serta perilaku dari program kita.
Jadi nanti kita cenderung tidak punya lagi variable dan function. Kita punya data dan perilaku atau behavior. Yang itu nanti kita sebut dengan property. Dan method.
Ya tapi nanti itu kita lihatnya ya. Karakteristik berikutnya. Objek bisa saling berinteraksi. Jadi nanti kita akan bikin banyak objek. Dan objek itu akan saling berinteraksi.
Oke pokoknya intinya. Setelah kalian nanti belajar objek. Object-oriented programming, itu rasanya paradigma proseduralnya agak dilupakan dulu sedikit ya. Karena sekarang kita akan memandang semuanya sebagai objek-objek-objek.
Dan ini beberapa bahasa pemegaman yang menggunakan paradigma object-oriented. Ada Java, ada Ruby, ada Python, ada PHP ya. Nah, tapi PHP khusus PHP 5 ke atas lah.
Dia baru menerapkan konsep object-oriented. Kalau PHP 4, rasanya belum gitu. Ya?
Nah, sekarang kita lihat kelebihan dari, kenapa sih kok kita pakai object-oriented ya? Apa kelebihannya? Ini kelebihannya. Yang pertama, dengan menggunakan paradigma object-oriented ini, kita akan lebih mudah untuk merepresentasikan sesuatu yang ada di dunia nyata, yang nantinya akan menjadi kebutuhan dari program kalian. Jadi, misalkan kalian ingin mendefinisikan user, nanti kita akan lebih mudah untuk merepresentasikan menggunakan object daripada kita menggunakan prosedural.
Ya, itu yang pertama. Pertama, kelebihan yang kedua adalah, nah ini kekuatan dari objek orientated itu di sini. Ada yang disebut dengan enkapsulasi dan abstraksi data. Nah, enkapsulasi memungkinkan data yang kita buat itu aman. Aman dari sisi tidak bisa diakses oleh bagian lain di program kita.
Dan abstraksi data itu dengan object oriented kita akan mudah untuk menyembunyikan kerumitan dari program kita. Karena nanti akan dibikin menjadi objek-objek tadi. Jadi ada enkapsulasi dan abstraksi data.
Kelebihan selanjutnya adalah konsep reusability. Di mana nanti kita dapat dengan mudah untuk mengguna ulang bagian-bagian dari program yang sudah kita buat. Kelebihan selanjutnya dari sisi skalabilitas.
dan extensibilitas. Dengan menggunakan object-oriented ini, akan memudahkan si pengembang atau programmernya ketika nantinya programnya akan menjadi lebih besar. Kalau kita menggunakan prosedural, itu cenderung lebih susah karena semuanya biasanya disimpan dalam satu tempat. Kelebihan selanjutnya adalah kemudahan pengelolaan. Dan selanjutnya adalah dari sisi kolaborasi.
Kalau misalkan kalian bekerjanya dalam tim, sudah banyak orang yang ngerjain satu proyek, itu rasanya akan lebih mudah ketika kita membuat programnya menggunakan Paradigma. Object oriented Dan selanjutnya ini yang gak kalah penting adalah Konsep object oriented khususnya di PHP ini Digunakan oleh frameworknya Framework PHP Nah ini juga salah satu tujuan kenapa Kita buat dulu seri mengenai Konsep dasar object oriented Sebelum kita langsung masuk nanti ke dalam Pembelajaran framework PHP Misalnya Oke ya teman-teman jadi itu kelebihan dari object oriented Dan juga tadi kita udah bahas Kelebihan dari procedural programming Nah sekarang pertanyaan selanjutnya mungkin adalah bagus mana gitu ya antara prosedural dengan object oriented. Nah ini menurut saya nggak ada yang lebih bagus karena masing-masing punya fokusnya sendiri-sendiri. Kalau misalkan kalian ingin membuat program yang simple dan dikerjakan oleh sendiri, itu rasanya lebih tepat kalau misalkan kalian memilih paradigma pemergaman yang prosedural.
Ketika kalian ingin membuat program yang besar, skalanya apalagi dikerjakannya oleh banyak orang, itu mungkin object-oriented lebih cocok. Jadi kalau misalkan ada yang bilang, oh prosedural itu lebih jelek, lebih nggak aman, dan lain sebagainya, itu sepertinya bukan salah dari paradigmanya. Mungkin kesalahannya dari sisi kita ngodingnya aja. Mungkin kita ngodingnya nggak benar secara prosedural.
Kita ngodingnya nggak benar secara object-oriented. Karena masing-masing memiliki kelebihan dan kekurangan. kekurangannya, masing-masing beda.
Jadi menurut saya tidak ada salahnya kalau kita minimal mengetahui kriteria atau karakteristik dari kedua paradigma pemrograman ini. Jadi harusnya sekarang teman-teman sudah tahu kenapa kita belajar object-oriented. Dan sekarang kita lihat konsep object-oriented programming apa saja yang akan kita pelajari pada seri ini.
Ini khususnya di bahasa penggambaran PHP. Karena konsep ini juga ada di bahasa lainnya seperti Java. Ada penat. Nanti kita akan bahasnya khusus Yang ada di dalam PHP Nah jadi konsepnya akan kita bagi menjadi dua Yang pertama kita akan fokus dulu Di basicnya Atau di konsep object oriented dasarnya Jadi ini adalah landasan kalian Untuk belajar ke depannya Nanti ada lagi bagian yang lanjutannya Nah tapi nanti saya akan coba Gimana caranya Supaya dengan memahami basic aja Kita sudah punya pengetahuan yang cukup Untuk masuk ke framework misalnya Begitu ya Yang pertama jelas mengenai kelas dan objek Nanti kita pelajari dulu Karena di dalam objek oriented PHP ini tidak bisa terpisahkan Kelas dan objek tadi Lalu yang kedua nanti kita akan belajar mengenai property dan method Kalau tadi kita sudah bahas mengenai data dan perilaku Nah ini data dan perilaku yang ada di dalam objek oriented itu property dan method Terus nanti kita juga belajar mengenai constructor. Nah ini juga penting ya.
Gimana caranya supaya objek yang kita buat nanti itu sudah memiliki karakteristik default gitu ya. Atau karakteristik bawaan itu dengan cara menggunakan constructor. Nanti kita bahas.
Lalu kita bahas juga mengenai object type. Dimana kita bisa membuat objek sebagai tipe data sendiri. Nah ini juga penting. Terus kita belajar mengenai inheritance atau pewarisan.
Dimana sebuah kelas atau objek ini bisa saling mewarisi perilaku satu sama lain Lalu kita juga akan bahas mengenai ini Visibility atau disebut juga Access Modifier Nah ini adalah salah satu yang membuat Objek oriented punya karakteristik enkapsulasi tadi Dimana data-datanya itu gak bisa sembarang diakses oleh bagian lain dalam program kita Nanti kalian akan mengenal apa itu public, apa itu private, apa itu protected Di materi mengenai visibility possibility ini ya terus ada lagi mengenai sebuah konsep setter dan getter nah ini juga sama terkait dengan enkapsulasi dimana kita nggak bisa sembarang ubah-ubah sebuah properti atau data kita harus menggunakan sesuatu yang disebut dengan setter dan getter dan lalu ini juga yang gak kalah penting kita belajar mengenai static method hai hai Static method ini banyak digunakan di dalam framework. Jadi nanti kalian harus paham apa itu static method dan gimana cara kerjanya. Jadi ini basicnya yang harus kalian pahami di dalam seri ini.
Nanti saya coba jelaskan sesimple mungkin. Lalu selanjutnya, bagian kedua setelah kita memahami basic ini, ada bagian yang advanced atau yang lanjutannya. Nanti kalian akan belajar mengenai abstract dan interface.
Bagaimana melakukan abstraksi dari... Kelas atau objek yang kalian buat Terus ada juga mengenai interceptor Ya interceptor ini terkait Sebetulnya dengan setter dan getter Tadi kita akan belajar Mengenai magic method ya disini Terus ada lagi mengenai Objek cloning Bagaimana kita menduplikasi objek Sehingga dia memiliki perilaku yang beda Tidak membawa perilaku dari Objek sebelumnya Lalu ada juga mengenai callbacks dan closures Lalu mengenai Namespacing dan Auto loading, nah ini juga penting ya Karena, begitu kita menggunakan Object oriented, itu kita harus paham Bahwa kita harus melakukan loading Semua kelas yang kita buat ke dalam Program kita, nanti kita lihat disini Dan topik-topik lainnya untuk Yang bagian advance ya, ya jadi Sekali lagi, kita gak akan dulu bahas kesini Kita akan fokus di yang Basicnya aja nih, yang ini, nah jadi silahkan Buat kalian yang mau memahami dulu Konsepnya, sebelum nanti kita masuk Ke video berikutnya ya, silahkan Kalian boleh pahami dulu konsepnya sendiri, ini akan lebih memudahkan ketika kalian udah minimal pernah mengetahui istilahnya lah sehingga nanti begitu kita masuk, karena kita mau fokus di prakteknya Jadi kita akan belajar sambil ngoding begitu ya Harapan saya kalian sudah paham dulu mengenai jargon-jargon atau istilah-istilah tadi Sehingga begitu praktik kalian langsung tahu, oh ternyata implementasinya begini Nah buat kalian yang masih bingung mengenai PHP-nya Saran saya jangan dulu ikuti seri ini Ya silahkan akan ikuti dulu seri yang tadi yang saya sebutkan di awal, yang ini. Belajar PHP untuk pemula. Kenapa saya sarankan untuk ikut ini? Karena supaya kalian minimal pernah bikin dulu lah sebuah aplikasi menggunakan PHP.
Jadi kalian dapat gambaran, oh bikin web pakai PHP itu gini walaupun nanti begitu kita masuk ke object oriented, saya minta untuk kalian melupakan konsep procedural programming ini, gitu ya karena cara pandang kita nanti berbeda dengan procedural programming nah, selanjutnya, untuk ngikuti seri ini apa saja yang harus kita siapkan yang harus kita siapkan, ini sebetulnya sama aja dengan kalian ngikutin seri belajar PHP untuk pemula yang harus kalian siapkan, yang pertama kode editor, jelas ya, silahkan kalian buat Boleh gunakan kode editor apapun Boleh gunakan Sublime Text Boleh gunakan VS Code Atau kalian mau spesifik Menggunakan kode editor khusus PHP Itu ada yang namanya PHP Store Atau yang lain lah ya Silahkan kalian pakai kode editor favorit kalian masing-masing Kalian juga butuh web server Kita pakai Apache lagi Kita butuh web browser dan database server Walaupun kayaknya yang database untuk yang basic belum kita pakai Ya intinya kalian tinggal install aja Boleh XAMPP, boleh MAMP, boleh LAMP Ya silahkan Ya dan kalau misalkan semuanya udah kalian siapkan Tinggal nanti kita ketemu di video berikutnya Membahas mengenai konsep-konsep dari object oriented tadi Ya mudah-mudahan teman-teman udah siap mengikuti seri object oriented programming ini Itu aja mungkin untuk pengantarannya di video kali ini Sampai ketemu lagi di video berikutnya Terima kasih teman-teman udah menyaksikan video ini Saya Sandika Ghali pamit Dan satu lagi jangan lupa titik koma Intro Intro