Jumat, 24 Juli 2020

Pemrograman pyhton (OOP)

Apa itu Object-Oriented Programming (OOP)?
Pemrograman berorientasi objek, atau OOP singkatnya, adalah paradigma
pemrograman yang menyediakan sarana untuk menyusun program sehingga sifat dan perilaku digabungkan menjadi objek individual. Misalnya, objek bisa mewakili seseorang dengan nama properti, umur, alamat, dll, dengan perilaku seperti berjalan, berbicara, bernafas, dan berlari. Atau email dengan properti seperti daftar penerima, subjek, badan, dll., Dan perilaku seperti menambahkan lampiran dan pengiriman.
Dengan kata lain, pemrograman berorientasi obyek adalah sebuah pendekatan untuk pemodelan beton, hal-hal dunia nyata seperti mobil dan juga hubungan antara hal-hal seperti perusahaan dan karyawan, siswa dan guru, dll. Model OOP entitas dunia nyata sebagai objek perangkat lunak, yang memiliki beberapa data yang terkait dengannya dan bisa melakukan fungsi tertentu.
Paradigma pemrograman umum lainnya adalah pemrograman prosedural yang menyusun program seperti resep karena menyediakan seperangkat langkah, dalam bentuk fungsi dan blok kode, yang mengalir secara berurutan untuk menyelesaikan tugas. Mengambil kunci adalah objek berada di pusat paradigma pemrograman berorientasi objek, tidak hanya mewakili data, seperti dalam pemrograman prosedural, namun juga dalam keseluruhan struktur program.
class dengan Python
Berfokus pertama pada data, masing-masing benda atau benda merupakan turunan dari beberapa class. Struktur data primitif yang tersedia dengan Python, seperti angka, string, dan daftar dirancang untuk mewakili hal-hal sederhana seperti biaya sesuatu, nama sebuah puisi, dan warna favorit Anda masing-masing.
Objek Python (Contoh)
Sementara class adalah cetak biru, sebuah contoh adalah salinan class dengan nilai sebenarnya , secara harfiah merupakan objek milik class tertentu. Ini bukan ide lagi; Ini adalah hewan yang sebenarnya, seperti seekor Dog bernama Roger yang berusia delapan tahun.
Cara Menentukan class dengan Python
Mendefinisikan sebuah class sederhana dengan Python:



Anda memulai dengan classkata kunci untuk menunjukkan bahwa Anda menciptakan sebuah class, maka Anda menambahkan nama class (menggunakan notasi CamelCase , dimulai dengan huruf kapital.)
Selain itu, kami menggunakan kata kunci Python di passsini. Ini sangat sering digunakan sebagai tempat pemegang kode dimana akhirnya akan pergi. Hal ini memungkinkan kita untuk menjalankan kode ini tanpa membuang kesalahan.

Atribut Instance
Semua class membuat objek, dan semua objek mengandung karakteristik yang disebut atribut (disebut sebagai properti pada paragraf pembuka). Gunakan __init__()metode untuk menginisialisasi (misalnya, tentukan) atribut awal objek dengan memberi mereka nilai default (atau side state). Metode ini harus memiliki setidaknya satu argumen dan juga selfvariabel, yang mengacu pada objek itu sendiri (misalnya, Dog).

class dog:
# Initializer / Instance Attributes
def_init_(self, name, age):
self.name = name
self.age = age

Dalam kasus classDog(), setiap Dog memiliki nama dan usia tertentu, yang jelas penting untuk diketahui saat Anda mulai benar-benar menciptakan Dog yang berbeda. Ingat: class hanya untuk mendefinisikan Dog, sebenarnya tidak menciptakan contoh Dog individu dengan nama dan usia tertentu; kita akan segera melakukannya.

class dog:
pass

Demikian pula, self variabel juga merupakan instance dari class. Karena contoh class memiliki nilai yang berbeda, kita dapat menyatakannya Dog.name = namedaripada self.name = name. Tapi karena tidak semua Dog memiliki nama yang sama, kita harus dapat menetapkan nilai yang berbeda untuk berbagai kejadian. Oleh karena itu kebutuhan akan selfvariabel khusus , yang akan membantu untuk melacak masing-masing instance dari masing-masing class.

Atribut class
Sementara atribut instance spesifik untuk setiap objek, atribut class sama untuk semua contoh — yang dalam hal ini adalah semua Dog.

class dog:
# class attribute
species = 'mammal'
# Initializer / Instance attributes
def_init_(self, name, age):
self.name = name
self.age = age

Jadi sementara setiap Dog memiliki nama dan umur yang unik, setiap Dog akan menjadi mamalia.

Instantiating Objek

Instansiasi adalah istilah bagus untuk menciptakan instance class baru yang unik.

>>> class Dog:
... pass
...
>>> Dog()
<_main_.Dog object at 0x1004ccc50>
>>> Dog()
<_main_.Dog object at 0x1004ccc90>
>>> a = Dog ()
>>> b = Dog ()
>>> a == b
False

memulai dengan menentukan classDog() baru , lalu menciptakan dua Dog baru, masing-masing ditugaskan ke benda yang berbeda. Jadi, untuk membuat sebuah instance dari sebuah class, Anda menggunakan nama class, diikuti dengan tanda kurung. Kemudian untuk menunjukkan bahwa setiap instance sebenarnya berbeda, kita menginstruksikan dua Dog lagi, menugaskan masing-masing variabel, kemudian diuji jika variabel tersebut sama.

Instance Methods

Metode Instance didefinisikan di dalam class dan digunakan untuk mendapatkan isi sebuah instance. Mereka juga bisa digunakan untuk melakukan operasi dengan atribut objek kita. Seperti __init__metodenya, argumen pertama selalu self:

class dog:
# class attribute
species = 'mammal'
# Initializer / Instance attributes
def_init_(self, name, age):
self.name = name
self.age = age
# Instance method
def description (self):
return "{} is {} years old".format(self.name, self.age)
# Instance method
def speak(self, sound):
return "{} says {}".format(self.name, sound)
mikey = dog("mikey", 6)
# call our instance methods
print(mikey.description() )
print(mikey.speak("group group")


Dalam metode yang terakhir speak(), kita mendefinisikan perilaku. Perilaku lain apa yang bisa Anda berikan kepada seekor Dog? Lihatlah kembali paragraf awal untuk melihat beberapa contoh perilaku untuk benda lain.
Obyek Warisan Python
Warisan adalah proses dimana satu class mengambil atribut dan metode yang lain. class yang baru terbentuk disebut class anak , dan class class anak diturunkan dari class orang tua disebut .
Mengesampingkan Fungsi class Parrent
Ingat bahwa class anak juga bisa menggantikan atribut dan perilaku dari class orang tua. Sebagai contoh:

>>> class dog:
... species = 'mammal'
...
>>> class SomeBreed (dog):
... pass
...
>>>  class SomeOtherBreed (dog):
... species = 'reptile'
...
>>> frank = SomeBreed ()
>>> frank.species
'mammal'
>>> beans = SomeBreed ()
>>> beans.species
'reptile'



SomeBreed()class mewarisi speciesdari class induk, sedangkan SomeOtherBreed()class menimpa species, pengaturan untuk reptile.

Pemrograman pyhton (OOP)

Apa itu Object-Oriented Programming (OOP)? Pemrograman berorientasi objek, atau OOP singkatnya, adalah paradigma pemrograman yang menyediaka...