Cara mencapai prinsip-prinsip OOP di Go | Oleh Nikil Vidyar | Juni 2022

Programming

[ad_1]
Hai Sob di suratpembaca.web.id. Siang ini kita akan membicarakan tentang Linux yaitu Cara mencapai prinsip-prinsip OOP di Go | Oleh Nikil Vidyar | Juni 2022

.

Mudah-mudahan postingan tentang Cara mencapai prinsip-prinsip OOP di Go | Oleh Nikil Vidyar | Juni 2022

bisa memberikan faedah untuk Teman-teman semua. Langsung saja baca postingan ini
hingga selesai.

Keakraban dengan konsep OOP di Go dan memahami bagaimana Go mencapai prinsip-prinsip ini dengan cara yang luar biasa

Bulan merah di kegelapan alam semesta
Foto oleh Federico Bacary di Unsplash

Di atas Anda dapat melihat bahwa ada tubuh surga merah dan menarik yang dalam kegelapan dunia dengan jutaan bintang dan planet jauh terlihat dan menggambarkan lebih dari gambar ini. Yah, kita bisa menghubungkan hal yang sama dengan topik hari ini, seolah-olah dunia ini besar Kelas Objek adalah matahari, planet, bulan, asteroid, dan sebagainya benda-benda Dari kelas itu, sebenarnya, bulan juga terlibat Warisan Cahaya bulan yang sebenarnya bergantung pada sinar matahari. Oleh karena itu, kita dapat menghubungkan konsep OOP dengan banyak hal. Jadi, mari belajar lebih banyak tentang Go.

OOP singkatan dari Sistem pemrograman berorientasi objek dan Ini adalah jenis pemrograman di mana kita harus mendefinisikan struktur data untuk tipe data dan operasi tertentu untuk memodulasi struktur program kita. Untuk informasi lebih lanjut Anda dapat mengunjungi tautan ini: https://en.wikipedia.org/wiki/Object-oriented_programming

Ketika kita perlu memodulasi struktur kode kompleks kita, membuatnya lebih andal dan dapat dipelihara, menyediakan kerangka kerja yang baik untuk pustaka kode, kita membutuhkan OOP.

Mari kita pertimbangkan Go sebagai bahasa pemrograman berorientasi objek karena kesederhanaan Go. Gunakan konsep OOP yang sama, tetapi tidak sekaligus. Pertama-tama, Go bukan bahasa OOP dan tidak dirancang seperti itu, karena prinsip-prinsip OOP dirancang untuk menyertakan kelas dan struktur objek untuk memelihara infrastruktur kode dengan mengimplementasikan superclass, kelas abstrak, konstruktor. , Apakah objek. , Kelas turunan, dan perusak, dan seterusnya. Yah, ada banyak hal untuk itu. Berbicara tentang Go, itu hanya mengimplementasikan struktur OOP dengan caranya sendiri. Nah, diskusi ini bisa panjang, tetapi inilah jawaban formal untuk pertanyaan yang sering diajukan di tautan ini: https://go.dev/doc/faq#Is_Go_an_object-oriented_language. Pergi palu

Berikut adalah beberapa konsep OOP yang terkait dengan Go, jadi mari kita coba berkenalan dengan mereka.

Enkapsulasi

Foto oleh Dayne Topkin di Unsplash

Dalam istilah yang lebih sederhana, enkapsulasi berarti bahwa jika kita memiliki satu data inventaris yang ditulis di setiap kelas atau paket, itu disembunyikan untuk kelas lain atau untuk dunia luar, sedangkan abstraksi berarti menyembunyikan informasi yang tidak perlu.

Di Go, kami menggunakan prinsip ini pada level tertutup karena tidak menawarkan pengubah akses seperti pribadi, publik, dan terlindungi. Itu juga memainkan peran dalam variabel, struktur, metode, dan fungsi, jadi jika Anda mengatakan, misalnya, menggunakan huruf besar untuk suatu fungsi, fungsi itu dapat dengan mudah dipanggil dalam paket saat ini dan juga di paket lain, jadi itu Membuat. Dalam struktur kode ini tersedia untuk umum, sedangkan jika Anda mendeklarasikan fungsi dengan huruf kecil, itu hanya akan tersedia untuk paket tertentu, sehingga menjadi lebih pribadi dan sedikit lebih aman.

Data disembunyikan di Go

Oleh karena itu, dari contoh di atas, Anda dapat melihat bagaimana fungsi dapat dibuat privat dan publik sehubungan dengan sensitivitas huruf besar/kecil.

Untuk OOP, enkapsulasi dan abstraksi lebih dari sekadar menyembunyikan data dan spesifikasi akses, menghadirkan lebih banyak fitur ke kelas dan antarmuka, tetapi dalam kasus Go, hanya versi yang lebih ringan dari kedua konsep yang digunakan.

Warisan

Singkatnya, pewarisan berarti membuat kelas baru (subkelas atau kelas turunan) dari kelas dasar (induk) yang ada dan mencapai penggunaan kembali kode. Tidak ada yang namanya warisan di Go, tapi ada Komposisi Untuk mencapai pewarisan struktur melalui Menanamkan struktur Ini berarti menanamkan bidang satu struktur dalam struktur lain. Anda dapat mempelajari lebih lanjut tentang struct-embedding dengan tautan ini: https://gobyexample.com/struct-embedding

Dikombinasikan dalam Go

Go hanya mendukung kombinasi jika kita mengatakan turun temurun. Sedangkan pewarisan sebagai orang yang memiliki pengalaman dalam bahasa OOP seperti JAVA, C++, dll, berada di luar komposisi.

polimorfisme

Polimorfisme adalah konsep oop, di mana suatu objek dapat mengambil beberapa bentuk, seperti tiga Spider-Man dalam kasus kami, dari dimensi yang berbeda dengan bentuk yang berbeda, tetapi keberadaan yang sama.

Di Go, kita dapat mencapai polimorfisme melalui implementasi Antarmuka Lanjutkan. Antarmuka bekerja sebagai satu set metode. Mari kita lihat satu contoh lagi.

Polimorf di Go

Oleh karena itu, dalam contoh di atas, seperti yang Anda lihat, struktur Pengembang mengimplementasikan antarmuka Tugas dengan mendefinisikan metode seperti Perbaikan Bug dan Peningkatan. Saya menulis contoh ini karena kami para pengembang saat ini jauh lebih ramah dengan istilah-istilah ini, sementara versi tugas yang berbeda seperti debugging, peningkatan, perbaikan langsung, dll. ditugaskan untuk mereka.

enum

Enum adalah tipe data khusus dengan data enumerasi yang terdiri dari sekumpulan elemen. Sebagian besar data yang dihitung dalam banyak bahasa adalah tetap.
Dalam kasus Go, kita dapat membuat enum dan mendefinisikan variabel tetap berdasarkan itu Utah Untuk variabel pertama dalam serangkaian itu. Kata kunci iota mewakili konstanta bilangan bulat nol.

const (
Java = iota
Go
Javascript
Rust
)
Output: 0 1 2 3

Ada beberapa contoh lain yang dapat digunakan untuk mempelajari lebih lanjut tentang bagaimana iota bekerja secara berbeda dengan beberapa metode inisialisasi.

const (
Java = iota
Go
_
Rust
)
Output: 0 1 3

Di atas, seperti yang Anda lihat, _ menolak nilai di penghitung enum

const (
Java = iota
Go
)
const (
Rust = iota
Javascript
)
Output1: 0 1
Output2: 0 1

Seperti yang Anda lihat di atas, jika Anda menentukan konstanta bernomor yang berbeda, mereka akan memiliki nilai inkremental mulai dari nol.

Jadi, ini tentang OOP di Go. Dalam artikel mendatang, saya akan menulis tentang bagaimana kita dapat mencapai pemrograman aplikasi di Go, serta prinsip-prinsip desain sistem.

Dengarkan alarmnya.

Itu tadi materi mengenai Cara mencapai prinsip-prinsip OOP di Go | Oleh Nikil Vidyar | Juni 2022

, terimakasih sudah mengunjungi website ini, semoga informasinya ada manfaatnya ya.

[ad_2]

Source link

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan.