    {"id":2623,"date":"2023-08-16T23:12:36","date_gmt":"2023-08-16T16:12:36","guid":{"rendered":"https:\/\/student-activity.binus.ac.id\/himmat\/?p=2623"},"modified":"2023-08-16T23:12:36","modified_gmt":"2023-08-16T16:12:36","slug":"oop-dalam-python","status":"publish","type":"post","link":"https:\/\/student-activity.binus.ac.id\/himmat\/2023\/08\/oop-dalam-python\/","title":{"rendered":"OOP dalam Python"},"content":{"rendered":"<p style=\"text-align: justify\"><span style=\"font-weight: 400\"><a href=\"http:\/\/student-activity.binus.ac.id\/himmat\/wp-content\/uploads\/sites\/14\/2023\/08\/OOPS1-282x300-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2624\" src=\"http:\/\/student-activity.binus.ac.id\/himmat\/wp-content\/uploads\/sites\/14\/2023\/08\/OOPS1-282x300-1.png\" alt=\"\" width=\"282\" height=\"300\" \/><\/a>\u00a0\u00a0<\/span><\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0Di dalam dunia IT, salah satu bahasa pemrograman yang paling sering digunakan adalah Python. Python merupakan salah satu bahasa kelas tinggi yang memiliki konsep OOP (<em>Object Oriented Programming<\/em>). OOP merupakan orientasi pemrograman yang menggunakan konsep objek dan kelas dalam pemrograman. Tujuan utama dari OOP adalah untuk mengikat data dan fungsi yang beroperasi di dalamnya sehingga tidak ada bagian lain dari kode yang dapat mengakses data ini kecuali fungsi tersebut. Bagian bagian dari OOP adalah <em>Class<\/em>, <em>Objects<\/em>, <em>Polymorphism<\/em>, <em>Encapsulation<\/em>,<em> Inheritance<\/em>, dan <em>Abstraction<\/em>.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0Dalam artikel ini, kita hanya akan membahas lebih lanjut tentang kelas. Kelas merupakan sebuah cetak biru bagi objek yang akan dibuat. Isi dari kelas tersebut adalah beberapa atribut dan metode. Contoh dalam Python adalah seperti ini:<\/span><\/p>\n<p><span style=\"font-weight: 400\">class Person:<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0HP =100<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0Attack = 1<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0 Defence = 1<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">def Status(self):<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 print(f\u201cHello, I have {self.HP} health, and my Attack is {self.Attack} and my Defense is {self.Defence}.\u201d)<\/span><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify\"><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0Pada kasus di atas, kata kunci &#8216;class&#8217; diperlukan untuk membuat kelas, dan nama kelasnya adalah &#8216;Person&#8217;. Di kelas &#8216;Person&#8217;, terdapat beberapa atribut yaitu &#8216;HP&#8217;, &#8216;Attack&#8217;, dan &#8216;Defence&#8217;. Selain atribut, ada juga metode &#8216;Status&#8217;. Di fungsi itu, ada kata &#8216;self&#8217;. Apa itu? &#8216;Self&#8217; merupakan fungsi untuk mengakses variabel milik kelas (Namanya boleh tidak &#8216;self&#8217;, namun harus sama dengan yang ada di tanda kurung). Kelas tidak perlu mempunyai isi, namun juga boleh kosong dengan keyword &#8216;pass&#8217;. Contohnya seperti ini:<\/span><\/p>\n<p><span style=\"font-weight: 400\">class Weapon:<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 pass<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0Ada 2 metode yang sangat sering dipakai didalam kelas. Yaitu metode __init__ dan __str__. Metode __init__ merupakan inisialisasi untuk membuat objek dari kelas tersebut. Berikut contohnya:<\/span><\/p>\n<p><span style=\"font-weight: 400\">def __init__ (self, HP, Attack, Defence):<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0self.HP=HP<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0self.Attack=Attack<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0self.Defence=Defence<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0Sedangkan, metode __str__ mengontrol apa yang harus dikembalikan ketika objek kelas direpresentasikan sebagai string. Berikut contohnya:<\/span><\/p>\n<p><span style=\"font-weight: 400\">def __str__ (self):<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0 \u00a0 \u00a0 \u00a0return f\u201dHP: {self.HP}\\nAttack: {self.Attack}\\nDefence: {self.Defence}\u201d<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">Jika kita melakukan print dalam objek tersebut, kita akan mendapatkan return ini, namun jika tidak, representasi string dari objek yang akan dikembalikan.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><strong>Referensi:<\/strong><\/p>\n<p><a href=\"https:\/\/media.geeksforgeeks.org\/wp-content\/uploads\/20220608174843\/OOPS1-282x300.png\"><span style=\"font-weight: 400\">https:\/\/media.geeksforgeeks.org\/wp-content\/uploads\/20220608174843\/OOPS1-282&#215;300.png<\/span><\/a><span style=\"font-weight: 400\"> (Gambar)<\/span><\/p>\n<p><a href=\"https:\/\/www.geeksforgeeks.org\/python-oops-concepts\/\"><span style=\"font-weight: 400\">Python OOPs Concepts &#8211; GeeksforGeeks<\/span><\/a><\/p>\n<p><a href=\"https:\/\/www.w3schools.com\/python\/python_classes.asp\"><span style=\"font-weight: 400\">Python Classes (w3schools.com)<\/span><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00a0\u00a0 \u00a0 \u00a0 \u00a0Di dalam dunia IT, salah satu bahasa pemrograman yang paling sering digunakan adalah Python. Python merupakan salah satu bahasa kelas tinggi yang memiliki konsep OOP (Object Oriented Programming). OOP merupakan orientasi pemrograman yang menggunakan konsep objek dan kelas dalam pemrograman. Tujuan utama dari OOP adalah untuk mengikat data dan fungsi yang beroperasi [&hellip;]<\/p>\n","protected":false},"author":15,"featured_media":2624,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[122,123],"class_list":["post-2623","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-articles","tag-oop","tag-python"],"_links":{"self":[{"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/posts\/2623","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/comments?post=2623"}],"version-history":[{"count":1,"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/posts\/2623\/revisions"}],"predecessor-version":[{"id":2625,"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/posts\/2623\/revisions\/2625"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/media\/2624"}],"wp:attachment":[{"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/media?parent=2623"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/categories?post=2623"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/student-activity.binus.ac.id\/himmat\/wp-json\/wp\/v2\/tags?post=2623"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}