sangat masuk akal, relate banget pak :D hanya opini saya aja, kalo ternyata bahasa pemrograman yang dipilih juga sangat berpengaruh. ingat ya ini hanya pengalaman pribadi, boleh sepakat boleh tidak hehe. 5 tahun pakai PHP dan JS untuk membuat banyak project tapi masih belum paham apa itu OOP. Yap, karena bahasa-bahasa tersebut tidak strict untuk urusan paradigma. Bahkan kita sudah bisa buat aplikasi super canggih hanya dengan gaya prosedural. Framework-framework nya pun sangat memanjakan para pengguna nya. Banyak class-class yang telah disediakan, bahkan sampai ada fitur generator untuk membuat class (Artisan di laravel misal nya) sehingga untuk bisa membuat aplikasi yang keren, tanpa pemahaman OOP pun bisa dilakukan. hmm bukan salah framework nya sih, emang tujuan framework kan untuk memudahkan para developer nya. Namun dibahasa yang strict akan OOP seperti di Java, mau tidak mau, suka tidak suka, kita dituntut wajib memahami OOP. Bagaimana dengan framework nya seperti spring? walaupun banyak fitur magic yang serba instant, tetep kita dituntut memahami OOP. So ya, setelah 5 tahun ngga paham OOP, setelah pindah ke Java rasa nya justru merepotkan membuat aplikasi tanpa class :) Dan saat ini saya sudah berada pada fase dimana membuat aplikasi bukan hanya sekedar jadi, tapi juga mudah untuk dimaintain, dibaca dan dipelajari.
@belajaridn5 ай бұрын
Terima kasih sudah berbagi insight di sini. Saya juga yang termasuk banyak belajar seputar OOP sewaktu menggunakan Java, dan Java adalah bahasa pemrograman yang selalu saya rekomendasikan untuk serius belajar OOP 😊☕ Dan saya juga sangat sependapat bahwa menulis kode program itu bukan sekadar jalan dan solve current problem tapi juga harus maintainable dan bisa dengan mudah mengakomodir future requrements/problems 💪😊
@tarunawahyudi46255 ай бұрын
@@belajaridn bukan berarti bahasa lain under juga ya sama oop nya. Contoh nya sekarang PHP versi 8 ke atas udah sangat bagus ko buat belajar OOP. Di javascript modern juga syntatic sugar untuk OOP udah mulai lengkap, atau kalo kurang lengkap bisa geser sedikit ke typescript. Tapi ya sekali lgi saya bilang, bahasa2 di atas ngasih kelonggaran buat para pengguna nya. Sehingga orang yang baru belajar akan berfikir “udahlah, tanpa oop juga masih bisa buat aplikasi” di java, Bahkan cuma sekedar bikin hello world aja mesti ada class 🤣 Kita seolah olah dipecut untuk dipaksa memahami OOP. Makanya banyak yg ga sedikit orang putus asa ketika belajar pemrograman dasar, karena langsung ketemu nya Java 😂 saya sendiri termasuk orang yg nyerah. dan mulai belajar lgi semenjak tau ada bahasa lain yg lebih manusiawi kaya PHP wkwk ya kalo kata orang dulu sih, sepait pait nya obat, pasti sangat bermanfaat. Setuju bgt sih sama yg divideo ini, belajar OOP itu ga instant. Mesti punya jam terbang ✈️
@moh.yusrilmaqoshidana96795 ай бұрын
Seperti biasa penjelasannya sangat mudah dipahami, lanjutkan terus pak.
@belajaridn5 ай бұрын
Semoga bisa bermanfaat ya. Materi selanjutnya akan membahas 4 pilars dalam OOP.
@adaf22karina5 ай бұрын
Terima kasih insight nya pak
@belajaridn5 ай бұрын
Sama-sama, semoga bisa bermanfaat ya 😊🙏
@jokoadianto2395 ай бұрын
Mas2 dan mbak2 pprogrammer dan para pengajar - BACALAH POLA TINGKAH LAKU, STRUKTURAL, DAN PEMBUATAN OBJEK.dalam design pattern. Sebaiknya strategi pembelajaran dan pmrograman berorientasi objek berputar di sekitar pola2 tersebut.
@jordyf33604 ай бұрын
Iya, saat kita paham dengan class, misalnya kita sendiri yang desain class itu dari awal, itu memang terasa membantu. Tapi saat class di buat oleh orang lain, justru sering bikin kita tersesat dan membingungkan. Debugnya justru jadi sangat lama dan buang2 waktu. Karena dengan class, alur program jadi lebih sulit untuk di telusuri atau diprediksi karena sering loncat2 (bikin kita pusing dan lupa, sudah berada dimana). Bagaimana menurut anda, solusi yang ter-enak lah... karena kalau yang terbaik, pasti bakal beda2 pendapat setiap orang...hehe. Kadang2 sebuah data, ternyata berasal dari beberapa fungsi yang berlapis-lapis dan loncat2. Dulunya yang buat kan sudah tau arahnya, jadi walau loncat2, dia pasti ingat, tapi posisi orang berikutnya yang mendapat codingnya, bisa mabok dan tersesat😅
@belajaridn4 ай бұрын
Ketika kita bekerja dalam tim, standarisasi sangatlah dibutuhkan. Nah di sinilah peran dari design principles yang umum digunakan seperti Clean Code, SOLID Principles, Design Patterns. Fokusnya bukan lagi sekadar membangun code base yang bisa solve problem, melainkan membangun code base yang maintainable 😊☕
@jordyf33604 ай бұрын
@@belajaridn siippp 😁
@yolutobadi682016 күн бұрын
Intinya harus paham dulu oop. Kalau ga paham nanti ngawur bikin class nya. Misalnya satu class itu hanya boleh memikiki properti dab method yang berhububgab dengan nama class itu. Dan nanti untuk logika membandingkan dua class harus dibuatkan class baru... pendaptku sih. Kalau ga setuju gpp
@allofabout70645 ай бұрын
cukup jelas, namun akan lebih baik jika di ilustrasikan dalam diagram atau divisualkan apa itu OOP yang di dalamnya ada variable, function kemudian menjadi class, dan menjadi sempurna saat diimplementasikan ke bahasa pemrogramanya. anyway saya ucapkan terima kasih atas penjelasannya
@belajaridn5 ай бұрын
Untuk ilustrasi terkait class dan object sudah disampaikan di video sebelumnya 😊🙏 Pengenalan Class dan Object: kzbin.info/www/bejne/lX3HaaqDp5mCkJY 4 pilars dalam OOP: kzbin.info/www/bejne/i33RgZmAeK2We80
@chandragunawan41055 ай бұрын
saya sebagai mahasiswa akhir teknik informatika yang mendalami paradigma data oriented design (DOD) sebagai topik skripsi punya pandangan berbeda mengenai OOP. OOP sebenarnya hanyalah salah satu pendekatan dalam menyelesaikan sebuah masalah pemrograman. OOP yang mana mengedepankan abstraksi dan inheritence (turunan) menyebabkan kompleksitas yang tidak diperlukan. contohnya dalam kasus membuat pembuatan Kursi dan Meja. Dalam OOP, pendekatannya adalah pembuatan kelas abstrak dari Kursi dan Meja. Lalu untuk membuat Kursi atau Meja yang lebih spesifik seperti KursiKayu atau MejaMakan tentunya tinggal mewarisi dari abstrak kelas tadi (inheritence). Namun, akan sulit nantinya jika kita ingin membuat KursiKuliah yang kursi tersebut memiliki meja. Dari sini pendekatan OOP menjadi ambigu. Apakah KursiKuliah merupakan turunan dari Kursi atau Meja atau keduanya ? Lalu untuk kasus pembuatan game yang sering terjadi perubahan desain, tentunya hal ini menjadi makin sulit OOP memperlambat iterasi. Karena jika ingin menambahkan sesuatu yang baru pada abstrak class, maka semua turunannya juga akan terpengaruh. Hal ini menyebabkan codebase menjadi tidak modular. Selain itu OOP juga memberikan efek pada performance, karena inheritance dan abstraksi itu bukan black magic (butuh banyak compute power). Solusinya adalah dengan menggunakan DOP. DOD memisahkan data dengan implementasi, sehingga programmer dapat dengan mudah memanipulasi implementasi dan dapat dengan mudah mengetahui state dari data yang diproses. Kemudian DOD juga cukup membantu dalam performance karena tidak berlayer-layer seperti OOP (dan salah satunya menghindari cache miss). jadi, take away dari penjelasan diatas adalah OOP itu bukan satu-satunya cara menulis dan mengorganisir kode. dalam dunia software engineer, semuanya adalah trade, programmer perlu paham apa yang ingin dia tuju dan solusi terbaiknya apa. dann, software tetap bisa dibangun hanya dengan metode/fungsi dan structs, tanpa fitur yang OOP sediakan. (atau simple-nya the good old way C does). NB: ini hanya sekedar tambahan POV tentang pemrograman itu sendiri (agak OOT sebenarnya haha). mungkin yang baca bisa terbuka pengetahuannya tentang pemrograman dan (hopefully) paham bahwa at the end of the day, tugas programmer hanyalah solving problems :D
@belajaridn5 ай бұрын
Terima kasih sudah berbagi POV 🙂🙏
@penyepongNASA5 ай бұрын
halo pak budiiiiii
@belajaridn5 ай бұрын
Hallo juga 😊🙏
@ramabookstroremalang91315 ай бұрын
Kalau terbiasa baca buku logika tradisional yang di dalamnya mencakup jenus, spesies, pembeda, maka OOP cocok untuk dirinya. Setiap objek adalah individualisasi dari class. Akan tetapi saya bersyukur bisa Node js (functional) dan Java.
@belajaridn5 ай бұрын
Wah saya malah baru tahu kalau Node js itu termasuk functional programming.
@ramabookstroremalang91315 ай бұрын
@@belajaridn Ya, memang ini kesimpulan dangkal saya. wkwkwk Banyak yang kerap membandingkan node js sebagai representasi fp (padahal ia runtime env) dengan bahasa-bahasa yang merepresentasikan OOP.
@Empaty785 ай бұрын
Justru mlh bingung kalo pake bahasa fungsional daripada Bahasa oop
@belajaridn5 ай бұрын
Yup yup, dan juga OOP memang lebih widely accepted sih ketimbang functional. CMIIW 😊🙏