Apakah itu Pengaturcaraan Berorientasikan Objek?

apakah pengaturcaraan berorientasikan objek?

Apakah Pengaturcaraan Berorientasikan Objek?

Pengaturcaraan berorientasikan objek ialah cara berfikir tentang masalah. Dengan memikirkan objek, anda boleh menyelesaikan masalah dengan lebih cekap berbanding dengan paradigma lain.

Sebagai contoh, apabila anda berfikir tentang masalah menulis program yang mengira cukai anda ke atas pendapatan anda, anda mungkin tergoda untuk menulis kod seperti ini:

""ular sawa

def hitung_cukai(pendapatan):

pulangan pendapatan * 0.25 + 1

""

Contoh Pengaturcaraan Berorientasikan Objek (OOP).

Terdapat dua cara untuk menyelesaikan masalah yang sama. Satu adalah dengan pendekatan bukan berorientasikan objek, dan satu adalah dengan pendekatan berorientasikan objek. Mari lihat bagaimana mereka berbeza.

Penyelesaian bukan OOP menggunakan pembolehubah seperti indeks, tatasusunan dan itemCount untuk menyimpan nilai atau rujukan kepada data yang diperlukan untuk pernyataan masalah. Indeks pembolehubah menyimpan nilai integer yang mewakili tempat dalam senarai nombor kami yang sedang kami lihat (iaitu, 1 bermaksud "nombor pertama," 2 bermaksud "nombor kedua," dll.). Tatasusunan pembolehubah menyimpan setiap nombor daripada senarai nombor kami sebagai baris berasingan dalam rentetannya: “[1,2]”. Akhir sekali, terdapat satu lagi pembolehubah yang dipanggil itemCount yang memberitahu kita jumlah item yang terdapat secara keseluruhan (iaitu, jika ia memegang 5 maka kita tahu bahawa senarai kita mempunyai 5 item).

Sekarang mari kita lihat bagaimana pengaturcara Berorientasikan Objek akan menangani masalah ini! Seperti yang anda lihat di bawah, mereka telah membahagikan perkara kepada langkah-langkah di mana setiap langkah menerangkan perkara yang perlu dilakukan tanpa mempunyai pengetahuan tentang perkara yang berlaku sebelum atau selepasnya dalam kod program mereka sendiri–mereka menggunakan objek di sini sebaliknya yang menjadikan kehidupan lebih mudah apabila berlaku masalah di kemudian hari kerana kita tahu dengan tepat di mana segala-galanya disimpan!

Objek, Objek Di Mana-mana!

Anda boleh menganggap objek dalam program komputer sebagai seperti benda dalam kehidupan sebenar. Sebagai contoh, objek yang mewakili seseorang mungkin mempunyai sifat (cth, nama dan umur) dan tindakan (cth, berjalan dan berlari).

Anda juga boleh menganggap objek sebagai seperti kotak yang mengandungi kotak lain. Kotak yang mengandungi kotak lain dipanggil induk atau kelas super bagi kanak-kanak atau kotak subkelas tersebut. Kotak kanak-kanak atau subkelas boleh menyimpan item di dalam dirinya sendiri tetapi ia tidak boleh mengakses terus mana-mana item daripada induk atau kotak superclass melainkan anda membenarkannya berbuat demikian menggunakan fungsi seperti "tukar nama" dan "set".

Kelas dan Objek

kelas

Kelas ialah pelan tindakan untuk membuat objek. Ia menerangkan data dan tingkah laku objek, termasuk hubungannya antara satu sama lain. Sebagai contoh, anda boleh mempunyai kelas "manusia" dengan sifat seperti umur dan ketinggian; dan kaedah seperti makan () atau tidur().

Kelas membolehkan anda mentakrifkan sifat yang biasa kepada pelbagai jenis objek (seperti manusia), sementara masih membenarkan kebolehubahan merentas jenis tersebut (contohnya, sesetengah manusia lebih tinggi daripada yang lain). Ini membolehkan anda mencipta berbilang kejadian objek tanpa perlu mengulangi kod atau menulis fungsi yang sama sekali lagi untuk setiap satu!

Encapsulation

Encapsulation ialah teknik yang digunakan untuk menyekat akses kepada kaedah dan pembolehubah kepada kelas lain. Ia digunakan untuk menyembunyikan butiran dalaman kelas dan menjadikannya lebih mudah untuk menukar satu bahagian program tanpa menjejaskan bahagian lain.

Enkapsulasi boleh mengurangkan kerumitan dengan memecahkan kod kompleks kepada kepingan yang lebih kecil yang lebih mudah difahami oleh manusia.

Pusaka

Perkara pertama yang anda perlu tahu tentang warisan ialah semuanya mengenai penggunaan semula. Perkara kedua yang perlu anda ketahui ialah ini semua tentang hubungan antara kelas.

Warisan membolehkan anda mencipta subkelas, yang mewarisi daripada superclass. Superclass ialah kelas yang berasal dari subkelas anda (perkataan "mewarisi" berasal daripada perkataan Latin untuk "mengambil milik sesuatu"). Ia mempunyai semua sifat yang sama seperti kelas induknya, tetapi selalunya fungsi tambahan. Di samping mempunyai semua sifat kelas induknya, subkelas juga mungkin mempunyai beberapa yang tambahan—ia mungkin menambah atau menukar takrifan untuk kaedah sedia ada dan pembolehubah contoh, contohnya.

Polimorfisme

  • Polimorfisme ialah keupayaan untuk menggunakan kod yang sama dengan jenis data yang berbeza dan mendapatkan hasil yang berbeza.
  • Cara polimorfisme berfungsi dalam bahasa OOP:
  • Kaedah yang sama boleh digunakan untuk berbilang kelas, selagi mereka mempunyai kelas induk yang sama. Dengan cara ini, anda boleh menulis kod generik yang akan berfungsi merentas berbilang kelas tanpa perlu menulis semula.
  • Contoh: Sebagai contoh, katakan anda mahu permainan kapal angkasa anda (permainan angkasa lepas) dapat mengesan perlanggaran antara dua objek. Anda boleh menulis kaedah yang dipanggil collide(), yang akan mengambil dua GameObjects sebagai parameter, tetapi anda mungkin perasan bahawa ini tidak masuk akal untuk semua GameObjects—jika anda menggunakan kelas Asteroid dalam permainan anda dan bukannya kelas Ship, di sana tidak ada gunanya untuk berlanggar () kerana Asteroid tidak banyak bergerak atau berinteraksi antara satu sama lain!

OOP ialah cara biasa untuk berfikir tentang pengaturcaraan komputer.

Pengaturcaraan berorientasikan objek (OOP) ialah cara berfikir tentang pengaturcaraan komputer. Ia digunakan dalam banyak bahasa pengaturcaraan yang berbeza, jadi anda mungkin pernah mendengar istilah itu sebelum ini.

Cuba memahami OOP boleh menjadi sangat mengelirukan pada mulanya dan juga mengecewakan jika anda tidak pasti apa sebenarnya maksudnya. Walau bagaimanapun, kanak-kanak mesti belajar cara menggunakan jenis logik ini apabila mereka belajar cara memprogram kerana ia memudahkan mereka menggunakan semula kod dan menjejaki ralat apabila berlaku masalah dengan program.