Object Oriented
Programming pada .NET
Menuliskan kode program tidak hanya sekadar mengetikkan
perintah perintah yang menginstruksikan aplikasi untuk mengerjakan sesuatu,
tetapi bisa jadi juga merupakan seni membangun struktur kode program dengan
kaidah tertentu. Konsep yang semakin banyak digunakan adalah Object Oriented
Programming atau Pemrograman Berorientasi Object
Object Oriented Programming OOP bukanlah hal yang baru
dikenal kemarin sore, karena pada tahun 1970 an telah dikenal bahasa
pemrograman Smalltalk yang berorientasi object. Bahasa pemrograman C semakin
mengukuhkan metodologi OOP pada tahun 1980 an. Penggunaannya semakin meluas
dengan dikenalnya bahasa pemrograman Java yang mengimplementasikan virtual
machine yang mengizinkan aplikasi berjalan pada platform yang berbeda tanpa
dilakukan perubahan kode program. Bahkan kemunculan platform .NET dan bahasa
pemrograman yang disertakan dalam Visual Studio Visual Basic, C oleh Microsoft
seakan mengharuskan Anda untuk memahami paradigma OOP agar dapat menggunakan
kemampuan .NET secara optimal. Konsep OOP juga telah didukung dan digunakan
pada bahasa pemrograman scripting, seperti PHP, Perl, Phyton, dan Ruby
OOP pada Visual Basic
.NET
Perdebatan apakah Visual Basic merupakan bahasa pemrograman
berorientasi object ataukah tidak, berakhir pada saat dirilisnya Visual Studio
.NET dan generasi seterusnya. Pada .NET, Visual Basic murni merupakan bahasa
pemrograman berorientasi object. Kegunaan OOP yang utama adalah memaksimalkan
penggunaan kembali kode program code reuse . Saat Anda melakukan drag and drop,
prosesnya dikerjakan oleh control designer sehingga Anda tidak perlu mengetahui
bagaimana object itu bekerja. Bahkan Anda bebas menggunakan sebanyak mungkin
control dan memodifi kasi warna, bentuk, judul, bahkan event handling dari
object.
Dasar dari tipe sistem .NET adalah inheritance, yang tidak
Anda temui dalam Visual Basic sebelumnya. Contoh implementasi inheritance pada
.NET adalah namespace, .NET mengenal enam tipe kategori yang dapat didefi
nisikan pada namespace:
1. Classes. Merupakan tipe referensi yang didefi
nisikan dengan struktur Class .. End Class.
2. Arrays. Merupakan tipe referensi
yang menyimpan object dari tipe yang lain. Class Array didefinisikan pada
namespace System pada .NET Framework Class Library.
3. Structures. Didefi
nisikan dengan struktur Structure … End Structure.
4. Interfaces. Didefi
nisikan dengan struktur Interface .. End Interface.
5. Delegates. Merupakan
tipe referensi yang mengenkapsulasi method dan didefinisikan dengan statement
Delegate.
6. Enumerations. Merupakan kumpulan nilai yang berkaitan, didefi nisikan
dengan struktur Enum .. End Enum.
Generic Class Inovasi
baru generasi .NET
adalah fi tur yang dikenal dengan generics yang menyediakan
sejumlah generic class. Untuk memahami kegunaan dari generic class, bayangkan
Anda ingin membuat berbagai versi sebuah class di mana Anda ingin class
tersebut bekerja pada lebih dari satu tipe data, misalnya class yang dapat
bekerja pada tipe data integer, string, dan lain lain. Dengan generic class,
Anda tidak perlu menentukan tipe data yang diinginkan hingga Anda menciptakan
object nya di dalam program Anda. Anda dapat menemukan generic class pada
namespace System. Collections.Generic pada .NET Framework Class Library. Selain
menggunakan generic class yang tersedia pada .NET Framework, Anda juga dapat
menuliskan sendiri generic class Anda. Dapat disimpulkan keuntungan dari
generic class adalah:
1. Keamanan tipe data. Generic class memeriksa kevalidan
tipe data pada saat compile time dan bukan pada saat run time. Hal ini
mengurangi kemungkinan konfl ik tipe data pada saat run time.
2. Kinerja yang
lebih baik. Karena tipe data yang digunakan pada generic class dikenali pada
saat compiletime, maka tidak diperlukan proses type casting pada saat run time
yang tentunya mempercepat waktu proses.
3. Penggunaan ulang reuse . Anda hanya
perlu menuliskan class satu kali dan dapat menggunakannya dengan tipe data yang
bervariasi.
Partial Class Pada
dot NET versi 20
, dikembangkan partial class atau class yang terpisah, yang
memungkinkan Anda untuk memisahkan defi nisi class pada beberapa fi le. Pada
saat compile time, compiler akan mengelompokkan partial class tersebut dan
memperlakukannya sebagai satu kesatuan. Keuntungan dari partial class adalah
mengelompokkan pada batas yang jelas antara business logic dan user interface.
Dengan partial class, kode program yang merupakan user interface tidak perlu
ditampilkan pada programer, yang pada umumnya tidak perlu mengaksesnya. Partial
class juga mempermudah proses debugging, di mana kode dipartisi ke dalam
beberapa fi le yang berbeda.
Beberapa Fitur Baru
Beberapa fi tur baru adalah penambahan keyword baru, yaitu
Shared dapat digunakan untuk statement property, sub, dim, function, operator,
dan event. Digunakan untuk melakukan sharing members class, Anda dapat
mengakses members yang di share dengan memanggil nama class. Dukungan terhadap
multithreading dan exception handling merupakan keunggulan penting pada .NET.
Teknik multithreading sering diperlukan dalam aplikasi yang memerlukan banyak
proses yang harus berjalan simultan. Dimana Anda dapat menciptakan, menghapus,
menghentikan sementara, atau mengatur prioritas sebuah thread.
Teknik exception handling diperlukan untuk menangani
kesalahan program, pada .NET dikenal structured exception handling dengan
menggunakan perintah try…catch..fi nally. Di mana blok try berisi baris kode,
blok catch merupakan baris yang akan diproses jika terjadi exception, blok fi
nally bersifat optional dan digunakan jika Anda perlu membersihkan resource
yang digunakan. Fitur lain, yaitu My Namespace merupakan contoh implementasi
OOP yang berguna bagi programer untuk mengakses class dan function pada .NET
Framework.
Penutup
Penguasaan OOP merupakan salah satu syarat bagi Anda yang
ingin mendalami .NET dengan baik, karena bahasa pemrograman .NET murni termasuk
dalam kategori bahasa pemrograman berorientasi object sebagaimana yang
sebelumnya kita kenal pada bahasa pemrograman C . Kembali pada perbandingan
antara OOP dengan Procedural Programming, keduanya memiliki struktur yang baik
untuk membuat sebuah aplikasi, di mana OOP menekankan pada penggunaan object
sementara Procedural Programming menekankan pada penggunaan function procedure.
Anda dapat melihat persamaannya, yaitu diperlukan kemampuan untuk menuliskan
kode program secara terstruktur dan rapi, yang mana sangat penting untuk
pembuatan aplikasi yang membutuhkan team work yang baik, ataupun untuk
pengembangan aplikasi di masa yang akan datang.
Referensi : https://softkomputer.wordpress.com/category/apa-itu-dot-net/