Home Blog Page 3

Polimorfisme C#: Konsep Sederhana yang Meningkatkan Fleksibilitas Kode

0

Dalam dunia pemrograman, polimorfisme adalah salah satu konsep penting yang digunakan untuk meningkatkan fleksibilitas dan modularitas kode. Dalam bahasa pemrograman C#, polimorfisme memungkinkan objek memiliki banyak bentuk, yang memungkinkan kita untuk menggunakan objek dengan cara yang berbeda tanpa harus mengubah kode yang ada.

Polimorfisme berasal dari kata bahasa Yunani “poly” yang berarti banyak, dan “morphos” yang berarti bentuk. Dalam konteks pemrograman, polimorfisme mengacu pada kemampuan objek untuk memiliki banyak bentuk atau tampilan yang berbeda.

Mari kita lihat contoh sederhana tentang bagaimana polimorfisme dapat diterapkan dalam bahasa pemrograman C#:

using System;

class Bentuk
{
public virtual void Gambar()
{
Console.WriteLine("Ini adalah bentuk umum.");
}
}

class Lingkaran : Bentuk
{
public override void Gambar()
{
Console.WriteLine("Ini adalah lingkaran.");
}
}

class Segitiga : Bentuk
{
public override void Gambar()
{
Console.WriteLine("Ini adalah segitiga.");
}
}

class Program
{
static void Main(string[] args)
{
Bentuk bentuk = new Bentuk();
Bentuk lingkaran = new Lingkaran();
Bentuk segitiga = new Segitiga();

bentuk.Gambar(); // Output: Ini adalah bentuk umum.
lingkaran.Gambar(); // Output: Ini adalah lingkaran.
segitiga.Gambar(); // Output: Ini adalah segitiga.
}
}

Dalam contoh di atas, kita memiliki kelas Bentuk sebagai kelas dasar. Kemudian kita memiliki kelas turunan Lingkaran dan Segitiga yang mewarisi dari kelas Bentuk. Kita menggunakan keyword override untuk mengganti implementasi metode Gambar() dari kelas Bentuk di kelas turunan.

Ketika kita membuat objek Lingkaran dan Segitiga, kita dapat memanggil metode Gambar() dari objek-objek tersebut. Hasilnya, metode yang dipanggil akan berdasarkan tipe objek yang digunakan. Ini adalah contoh polimorfisme run-time dalam C#.

Manfaat Polimorfisme dalam C#

  • Fleksibilitas: Polimorfisme memungkinkan kita untuk mengubah perilaku objek tanpa merusak kode yang ada. Ini membuat kode lebih fleksibel dan mudah untuk diperluas di masa depan.
  • Modularitas: Dengan menggunakan polimorfisme, kita dapat membagi kode ke dalam komponen yang independen. Ini memungkinkan pengembangan dalam tim yang lebih mudah dan memudahkan pemeliharaan kode.
  • Mengurangi Duplikasi Kode: Dengan menggunakan polimorfisme, kita dapat menggunakan kembali kode yang ada untuk berbagai objek dengan perilaku yang serupa. Ini mengurangi duplikasi kode dan meningkatkan efisiensi pengembangan.

Dalam contoh sederhana yang telah kita lihat, kita dapat melihat bagaimana polimorfisme dapat diterapkan dalam bahasa pemrograman C# dengan menggunakan inheritance dan overriding. Dengan memahami dan menggunakan polimorfisme dengan baik, kita dapat meningkatkan kualitas dan efisiensi kode yang kita tulis.

Pranala Luar : Polymorphism at w3school

Mengapa Isra’ Mi’raj Terjadi pada Malam Hari?

0

قال ابنُ المنيرِ: إنما كان الإسراءُ ليلاً لأنه وقتُ الخلوةِ والإختصاصِ عرفًا، ولأنه وقتُ الصلاةِ التى كانت مفروضةً عليه في قوله تعالى: قُمِ اللَّيْلَ. وليكونَ أبلغَ للمؤمنِ في الإيمانِ بالغيبِ وفتنةً للكافرِ، ولأن الليلَ محلُّ الإجتماعِ بالأحبابِ. قال ابنُ دحيةَ: ولإبطالِ قولِ الفلاسفةِ: إن الظلمةَ من شأنِها الإهانةُ والشرُّ، وكيف يقولُ ذلك مع أن اللهَ تعالى أكرَمَ أقوامًا في الليلِ بأنواعِ الكراماتِ كقولِه تعالى في قصةِ إبراهيمَ: فَلَمَّا جَنَّ عَلَيْهِ اللَّيْلُ إلى آخره، وفي لوط: فَأَسْرِ بِأَهْلِكَ بِقِطْعٍ مِّنَ اللَّيْلِ، وفي موسى: وَوَاعَدْنَا مُوسَى ثَلاثِينَ لَيْلَةً، وناجَاه ليلاً وأمرَه بإخراجِ قومِه ليلاً في قولِه: فَأَسْرِ بِعِبَادِي لَيْلًا، واستجابةِ دعاءِ يعقوبَ فيه وهو المرادُ في قولِه: سَوْفَ أَسْتَغْفِرُ لَكُمْ رَبِّي

Ibn al-Munir berkata: “Peristiwa isra hanya terjadi pada malam hari, karena pada umumnya malam adalah waktu yang tepat untuk melakukan khalwah (menyepi) dan pengkhususan. Dan karena malam adalah waktu menjalankan shalat yang diwajibkan kepada beliau (Nabi Muhammad shallallahu ‘alaihi wasallam). Hal ini didasarkan pada firman Allah ta’ala:

قُمِ اللَّيْلَ

“Dirikanlah shalat di malam hari” (QS. al-Muzammil: 2). Dan sebagai sarana menguatkan keimanan orang mukmin terhadap hal-hal yang ghaib (hal-hal yang tidak dapat dicerna oleh akal), serta sebagai ujian bagi orang-orang kafir, (apakah ia tetap ingkar dengan risalah Nabi Muhammad shallallahu ‘alaihi wasallam) atau akan beriman. Dan karena malam merupakan tempat berkumpul bersama para kekasih.

Ibn Dihyah mengatakan: “Dan karena untuk menolak pandangan para filsuf; bahwa kegelapan itu identik dengan hina dan keburukan. Bagaimana mereka bisa mengatakan demikian, padahal Allah ta’ala menganugerahkan banyak kemuliaan kepada ummat pada malam hari, sebagaimana firman-Nya tentang kisah Nabi Ibrahim As:

فَلَمَّا جَنَّ عَلَيْهِ اللَّيْلُ …

“Ketika malam telah gelap, ia melihat sebuah bintang (lalu) ia berkata, “Inilah Tuhanku”, tetapi tatkala bintang itu tenggelam ia berkata, “Saya tidak suka kepada yang tenggelam”. (QS. al-An’am: 76).

Dan dalam kisah Nabi Luth As:

فَأَسْرِ بِأَهْلِكَ بِقِطْعٍ مِّنَ اللَّيْلِ

“Maka pergilah beserta keluargamu pada akhir malam”. (QS. Hud: 81).

Dan dalam kisah Nabi Musa As:

وَوَاعَدْنَا مُوسَى ثَلاثِينَ لَيْلَةً

“Dan Kami telah menjanjikan kepada Musa (memberikan Taurat) tiga puluh malam”. (QS. al-A’raf: 142).

Dan Nabi Musa As bermunajad kepada Allah pada malam hari serta diperintah oleh Allah mengeluarkan kaumnya pada malam hari, sebagaimana tercatat dalam firman Allah:

فَأَسْرِ بِعِبَادِي لَيْلًا

“Oleh karena itu, berjalanlah dengan hamba-hamba-Ku pada malam hari”. (QS. ad-Dukhan: 23).

Selain itu, malam juga menjadi waktu dikabulkannya doa Nabi Ya’qub As, itulah yang dikehendaki dalam firman Allah:

سَوْفَ أَسْتَغْفِرُ لَكُمْ رَبِّي

“Aku akan memohonkan ampunan bagimu kepada Tuhanku”. (QS. Yusuf: 98).

Wallahu a’lam bisshawab.

Sumber: Al-Ayat al-Kubra fi Syarh Qisshah al-Isra karya al-Imam al-Hafidh Jalal al-Din Abd. al-Rahman al-Suyuthi, w. 911 H, Damaskus: al-Maktabah al-‘Arabiyyah, 1350 H, hal. 39-40.

(KH. Bagus Ahmadi, PP. MIA Putra – Pacet – Moyoketen – Boyolangu – Tulungagung. Sabtu, 3 Februari 2024)

Framework Django dalam Web Development

0

Dalam dunia pengembangan web, Django adalah salah satu kerangka kerja yang populer dan powerful. Django ditulis dalam bahasa pemrograman Python dan mengikuti pola desain Model-View-Template (MVT). Dengan banyak fitur dan kemudahan penggunaan, Django telah digunakan oleh banyak pengembang untuk membangun aplikasi web yang kompleks dan skalabel.

Ada beberapa alasan khusus mengapa para developer tertarik untuk mengembangkan web dengan Django, di antaranya :

1. Efisiensi Waktu
Django dijuluki sebagai “web framework for perfectionists with deadlines” karena memungkinkan pengembang untuk membangun aplikasi web kompleks dalam waktu yang relatif singkat. Hal ini dilandasi dengan alasan, Django menyediakan banyak komponen siap pakai yang bisa langsung digunakan.

2. Batteries Included
Django mengikuti filosofi “batteries included”. Artinya, Django datang dengan banyak fitur bawaan, seperti sistem otentikasi pengguna, sistem template, dan Object-Relational Mapping (ORM) yang membuat bekerja dengan database menjadi lebih mudah.

3. Keamanan
Django membantu pengembang menghindari banyak kesalahan keamanan umum dengan menyediakan sistem proteksi secara default terhadap serangan seperti Cross Site Scripting (XSS), Cross Site Request Forgery (CSRF), dan SQL Injection.

4. Skalabilitas
Django dirancang untuk bisa menangani aplikasi dengan tingkat trafik yang tinggi. Beberapa situs web terbesar di dunia, seperti Instagram dan Pinterest, dibangun menggunakan Django.

Untuk diketahui, Django bekerja dengan prinsip mengikuti pola desain Model-View-Template (MVT). Pola ini adalah varian dari pola Model-View-Controller (MVC) yang umum digunakan dalam pengembangan web.
a. Model mencakup bidang dan perilaku data yang akan disimpan dalam database.
b. View bertanggung jawab untuk mendefinisikan apa yang harus ditampilkan di halaman web.
c. Template adalah cara Django menghasilkan HTML dinamis dari view dan model.

Pranala Luar :
Django at w3schools
Django at tutorialspoint
Django at geeksforgeeks

FastAPI: Framework Python Pendatang Baru yang Cepat dan Mudah

0

K

etika berbicara tentang pembuatan aplikasi web dalam bahasa pemrograman Python, dua nama yang sering muncul adalah Flask dan Django. Namun, ada pemain baru yang sedang naik daun, dan namanya adalah FastAPI.

FastAPI adalah framework modern, cepat , berbasis standar Python 3.6, berbasis Starlette untuk bagian web, dan Pydantic untuk bagian data. FastAPI sangat cepat. Bahkan, menurut dokumentasinya, FastAPI lebih cepat daripada NodeJS dan hanya sedikit lebih lambat daripada Go.

FastAPI memiliki beberapa kelebihan yang membuatnya menjadi pilihan yang menarik untuk pengembangan aplikasi web, antara lain:

1. Kecepatan Tinggi: FastAPI sangat cepat. Hal ini karena FastAPI berjalan pada Starlette untuk penanganan web dan Pydantic untuk penanganan data. Kedua teknologi ini memungkinkan FastAPI untuk berjalan sangat cepat dan efisien.

2. Mudah Digunakan: FastAPI mengikuti pendekatan deklaratif untuk routing, yang berarti kita bisa mendefinisikan rute melalui fungsi dan decorator. Pendekatan ini membuat kode lebih mudah dibaca dan ditulis, serta memungkinkan FastAPI untuk secara otomatis membuat dokumentasi API untuk kita.

3. Validasi Data Otomatis: FastAPI menggunakan Pydantic untuk validasi data. Dalam prosesnya, kita dapat mendefinisikan model data sebagai kelas Python. FastAPI akan secara otomatis memvalidasi data input untuk memastikan bahwa data tersebut sesuai dengan model yang kita kehendaki. Hal ini sangat berguna untuk memastikan integritas data.

4. Dukungan Asynchronous: FastAPI mendukung pendekatan asynchronous, yang berarti kita dapat menggunakan Python async dan await di aplikasi FastAPI. Hal ini memungkinkan FastAPI untuk menangani banyak permintaan secara simultan.

5. Dukungan WebSocket: FastAPI mendukung komunikasi WebSocket yang memungkinkan komunikasi dua arah antara klien dan server. Dengannya, kita bisa dengan mudah mengembangkan aplikasi real-time semacam chat atau game online.

Secara garis besar, dapat disimpulkan, FastAPI adalah kerangka kerja yang menarik dengan banyak fitur kuat. Dengan kecepatan, kemudahan penggunaan, validasi data otomatis, dukungan asynchronous, dan WebSocket, FastAPI adalah pilihan yang sangat baik untuk proyek Python yang kita kerjakan.

Mencintai Fakir Miskin, Meraih Kunci Surga

0

O

rang-orang miskin (masakin) merupakan golongan orang yang sangat dicintai oleh Baginda Rasulullah Shallallahu ‘alaihi wa sallam. Segala keterbatasan dan ketidakmampuan dalam hidup mereka membuat Baginda Nabi begitu memuliakan mereka. Bahkan, dengan rasa cinta beliau, sampai-sampai Rasulullah pun sangat menginginkan kehidupan yang dimiliki oleh para masakin. Sebagaimana dalam suatu hadist, Rasulullah Shallallahu ‘alaihi wa sallam bersabda:

اللَّهُمَّ أَحْيِنِي مِسْكِينًا وَأَمِتْنِي مِسْكِينًا وَاحْشُرْنِي فِي زُمْرَةِ الْمَسَاكِينِ يَوْمَ القِيَامَةِ

“Ya Allah hidupkanlah aku sebagai seorang miskin, matikanlah aku sebagai seorang miskin, dan giringlah aku pada hari kiamat bersama kelompoknya orang-orang miskin”. (HR. At – Tirmidzi: 2352)

Kita pun, sebagai umat Rasulullah Shallallahu ‘alaihi wa sallam diajarkan untuk mencintai fuqoro dan masakin. Dalam kitab Lubabul Hadist disebutkan :

حُبُّ الْفُقَرَاءِ مِنْ أَخْلَاقِ الْأَنْبِيَاءِ وَبُغْضُ الْفُقَرَاءِ مِنْ أَخْلَاقِ الْفَرَاعِنَةِ

“Mencintai orang-orang fakir adalah akhlak para nabi, dan membenci orang-orang fakir adalah akhlaq para fir’aun”

Lebih lanjut, Baginda Nabi Muhammad Shallallahu ‘alaihi wa sallam bersabda :

لِكُلِّ شَيْءٍ مِفْتَاحٌ وَمِفْتَاحُ الْجَنَّةِ حُبُّ الْمَسَاكِيْنِ وَالْفُقَرَاءِ لِصَبْرِهِمْ هُمْ جُلَسَاءُ اللهِ تَعَالٰى يَوْمَ الْقِيَامَةِ

“Setiap sesuatu memiliki kunci, dan kunci surga adalah mencintai orang-orang miskin dan orang-orang fakir karena kesabaran mereka, mereka adalah orang-orang yang duduk bersama Allah yang Maha Luhur pada hari kiamat”

Dalam kondisi bagaimanapun keadaan kita, baik kaya atau tidak, semoga kita senantiasa diberikan pertolongan untuk mencintai faqir miskin karena itu adalah kunci masuk surga dan bahkan itu termasuk akhlak Rosulullah Shallallahu ‘alaihi wa sallam.

Inheritance – C#

0

Inheritance (pewarisan) dalam C# adalah fitur yang memungkinkan kita membuat kelas baru yang dapat menggunakan kembali, memperluas, dan memodifikasi perilaku yang sudah ditentukan di dalam kelas yang sudah ada. Dalam konsep ini, kita memiliki kelas dasar (parent class atau base class) yang menyediakan atribut dan metode. Kemudian, kita dapat membuat kelas turunan (child class) yang mewarisi sifat-sifat dari kelas dasar.

Contohnya, jika kita memiliki kelas “Hewan” sebagai kelas dasar, kita dapat membuat kelas turunan seperti “Kucing” atau “Anjing” yang mewarisi sifat-sifat umum dari kelas “Hewan” tanpa perlu menulis ulang kode yang sama.

Berikut adalah langkah-langkah umum penggunaan warisan dalam C#:

1. Mendefinisikan kelas dasar dengan menggunakan kata kunci class.
2. Membuat kelas turunan dengan menggunakan kata kunci class diikuti dengan nama kelas turunan dan kata kunci :, diikuti dengan nama kelas dasar.

// Contoh kelas dasar
class Hewan
{
    public void Bernapas()
    {
        Console.WriteLine("Hewan ini sedang bernapas");
    }
}

// Contoh kelas turunan
class Kucing : Hewan
{
    public void Bersuara()
    {
        Console.WriteLine("Meow!");
    }
}

Dalam contoh ini, kelas Kucing mewarisi metode Bernapas dari kelas Hewan.

Penggunaan warisan memungkinkan struktur kode yang lebih terstruktur dan memudahkan pengelolaan serta pengembangan program.

3D Stars Ornament Icon Pack

0

A

pakah Anda menghendaki sentuhan kosmis pada proyek, presentasi, atau karya kreatif Anda? Maka, jangan lewatkan sentuhan desain Anda dengan 3D Stars Icon Pack. Dengan 20 aset 3D yang unik, berkas .PNG, .BLEND, .OBJ, dan .FBX, serta gambar PNG beresolusi tinggi (3000 x 3000 px), ikon-ikon ini siap untuk menambahkan nuansa keajaiban kosmik pada desain Anda.

Fitur:
20 Aset 3D yang berbeda
20 berkas .PNG
20 berkas .BLEND
20 berkas .OBJ
20 berkas .FBX
Gambar PNG Beresolusi Tinggi (3000 x 3000 px)

Dengan kemampuan untuk disesuaikan dengan mudah dalam Blender, Anda dapat mengintegrasikan ikon-ikon ini dengan estetika desain Anda secara maksimal. Setiap ikon dalam 3D Stars Icon Pack menangkap esensi keindahan kosmik. Apakah Anda ingin mendesain dengan tema langit atau menambahkan sentuhan magis kosmik pada proyek Anda, paket ikon ini adalah perpaduan brilian antara kreativitas dan keanggunan.

DOWNLOADLINK
DOWNLOADLINK
DOWNLOADLINK

Amalan Bulan Rajab, Sya’ban dan Ramadlan

0

فائدةٌ : عن بعضِ الأفاضِلِ أنَّه قال: مَن قالَ في شهرِ رجب وشعبانَ ورمضانَ كلَّ يومٍ بينَ العَصرِ والمغربِ “أستَغفِرُ اللّٰهَ العظيمَ الَّذي لا إلٰهَ إلاَّ هو الحَيُّ القَيُّومُ غفَّارُ الذُّنُوبِ وستَّارُ العُيُوبِ وأتُوبُ إلَيهِ تَوبَةَ عَبدٍ ظالِمٍ لِنَفسِه لا يَملِكُ ضرًّا ولا نَفْعًا ولا مَوتًا ولاحَياةً ولا نُشُورًا” أوحَى اللّٰهُ تَعالى إلَى المَلَكَينِ المُوَكَّلَينِ به أن خَرَقَا صَحِيفَةَ ذُنُوبِه وخَطايَاهُ

(Faedah) Diriwayatkan dari sebagian manusia utama bahwa beliau berkata: “Barangsiapa setiap hari diwaktu antara ashar dan maghrib pada bulan Rajab, Sya’ban dan Ramadlan mengucapkan:

أستَغفِرُ اللّٰهَ العظيمَ الَّذي لا إلٰهَ إلاَّ هو الحَيُّ القَيُّومُ غفَّارُ الذُّنُوبِ وستَّارُ العُيُوبِ وأتُوبُ إلَيهِ تَوبَةَ عَبدٍ ظالِمٍ لِنَفسِه لا يَملِكُ ضرًّا ولا نَفْعًا ولا مَوتًا ولاحَياةً ولا نُشُورًا

“Aku memohon ampunan kepada Allah Yang Agung yang tiada Tuhan selain-Nya, Yang Maha Hidup dan Maha Mandiri, Maha Pengampun segala dosa, Maha Penutup segala cela, Aku bertaubat kepada-Nya sebagaimana taubatnya hamba yang menganiaya dirinya sendiri, yang tidak memiliki kemampuan mencelakai dan memberi manfaat, tidak memiliki kematian dan kehidupan dan bangkit dari kubur”.

Maka Allah ta’ala mewahyukan kepada dua malaikat yang ditugasi menjaganya agar keduanya menyobek lembaran catatan dosa-dosa dan kesalahannya”.
Wallahu a’lam bisshawab.

Sumber: Dlau’ al-Siraj fi Fadl Rajab wa Qishshah al-Mi’raj karya al-Syaikh Muhammad Amin al-Kurdi al-Syafi’i al-Naqsyabandi, Al-Maktabah al-Qandaniyyah, hal. 9.

(KH. Bagus Ahmadi, PP. MIA Putra – Pacet – Moyoketen – Boyolangu – Tulungagung)

Properties dalam C#

0

D

alam bahasa pemrograman C#, properti adalah cara untuk mengakses dan memanipulasi nilai dari bidang (field) dalam sebuah kelas. Properti memberikan kontrol atas bagaimana nilai-nilai tersebut diakses, validasi, dan diubah.

Penggunaan Properti:

  • Akses Nilai: Properti memungkinkan kita untuk mengakses nilai bidang (field) dalam sebuah objek. Kita dapat membaca nilainya (get) atau mengubah nilainya (set). Dengan properti, kita dapat membatasi akses langsung ke bidang (field) dan melindungi data dari manipulasi yang tidak diinginkan.
  • Validasi Nilai: Properti memungkinkan kita untuk melakukan validasi terhadap nilai yang diatur atau diubah. Kita dapat menambahkan logika dalam metode get dan set untuk memeriksa apakah nilai yang diberikan sesuai dengan aturan yang ditetapkan.

Pengaturan Akses: Properti memungkinkan kita untuk mengatur tingkat akses ke bidang (field) yang terkait. Dengan menggunakan kata kunci public, private, atau protected, kita dapat mengontrol bagaimana bidang (field) dapat diakses dari luar kelas.

Contoh Penggunaan Properti:

// Contoh kelas dengan properti
class Person
{
private string name;
private int age;

// Properti untuk mengakses dan mengubah nilai name
public string Name
{
get { return name; }
set { name = value; }
}

// Properti untuk mengakses dan mengubah nilai age
public int Age
{
get { return age; }
set { age = value >= 0 ? value : 0; }
}
}

// Membuat objek dan mengakses properti
Person person = new Person();
person.Name = "John Doe"; // Mengubah nilai properti Name
person.Age = -25; // Mengubah nilai properti Age (akan diubah menjadi 0 karena validasi)
string name = person.Name; // Mendapatkan nilai properti Name
int age = person.Age; // Mendapatkan nilai properti Age (akan mengembalikan 0 karena validasi)

Dalam contoh di atas, kita memiliki kelas Person dengan properti Name dan Age. Properti Name memiliki metode get dan set yang memungkinkan kita untuk mengakses dan mengubah nilai name. Properti Age juga memiliki metode get dan set, tetapi juga melakukan validasi untuk memastikan bahwa nilai age selalu non-negatif.

Dengan menggunakan properti, kita dapat mengontrol akses dan manipulasi data dalam kelas. Ini membantu dalam menjaga keamanan dan kekonsistenan data, serta memberikan fleksibilitas dalam validasi nilai.

Contoh source code untuk berlatih properties C# :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace _2024_01_23_properties
{
//SOURCE CODE 0056
class Nasabah {
private string nik;
private string nama;

public string Nik {
get { return nik; }
set { nik = value; }
}

public string Nama {
get { return nama; }
set { nama = value; }
}


public void identitas() {
Console.WriteLine("============================================");
Console.WriteLine(" Properties - Elfay ");
Console.WriteLine("============================================");

}

}
class Program
{
static void Main(string[] args)
{

Nasabah pelanggan = new Nasabah();
pelanggan.Nik = "340330280719760004";
pelanggan.Nama = "Darmo Sasono";

pelanggan.identitas();
Console.WriteLine("NIK : " + pelanggan.Nik);
Console.WriteLine("Nama : " + pelanggan.Nama);


Console.ReadKey();

}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace _2024_01_23_AA
{
//SOURCE CODE 0057
class Nasabah
{
private string nik;
private string nama;
private string no_rek;

public string Nik
{
get { return nik; }
set { nik = value; }
}

public string Nama
{
get { return nama; }
set { nama = value; }
}

public string No_rek
{
get { return no_rek; }
set { no_rek = value; }
}

public void identitas()
{
Console.WriteLine("============================================");
Console.WriteLine(" Properties - Elfay ");
Console.WriteLine("============================================");

}

}


class Transaksi {
public double jumlah;
public string status;
private string rek;
private string tanggal;

public string Rek{
get { return rek; }
set { rek = value; }
}

public string Tanggal {
get { return tanggal; }
set { tanggal = value; }

}

}

class Bank {
public string namaBank;
public int kodeBank;

public Bank(string bb, int kk) { //constructor
namaBank = bb;
kodeBank = kk;
}

}



class Program
{
static void Main(string[] args)
{
Bank banknya = new Bank("Bank Sasana", 6974);
Nasabah pelanggan = new Nasabah();
Transaksi kirim01 = new Transaksi();

pelanggan.Nik = "340330280719760004";
pelanggan.Nama = "Darmo Sasono";
pelanggan.No_rek = "78335343432435";

kirim01.jumlah = 5000000;
kirim01.status = "sukses";
kirim01.Rek = "983482364";
kirim01.Tanggal = "22 Januari 2024";

pelanggan.identitas();
Console.WriteLine(banknya.kodeBank + " | " + banknya.namaBank);
Console.WriteLine("NIK : " + pelanggan.Nik);
Console.WriteLine("Nama : " + pelanggan.Nama);
Console.WriteLine("No. Rekening : " + pelanggan.No_rek);

Console.WriteLine("Data Transaksi : ");
Console.WriteLine("Jumlah : " + kirim01.jumlah);
Console.WriteLine("Status : " + kirim01.status);
Console.WriteLine("Rekening Tujuan : " + kirim01.Rek);
Console.WriteLine("Tanggal Transaksi : " + kirim01.Tanggal);

Console.ReadKey();

}
}
}

Konstruktor dalam C#

0

S

aat belajar OOP di C#, kita akan sering bertemu dengan konstruktor. Konstruktor adalah metode khusus yang otomatis dijalankan ketika sebuah objek dari kelas dibuat. Tujuan utamanya adalah menyiapkan objek agar siap digunakan sejak awal.

Anggap saja konstruktor seperti proses persiapan awal sebelum sebuah objek benar-benar dipakai.

Kenapa Konstruktor Penting?

Berikut beberapa kegunaan utama konstruktor dalam C#:

1. Mengatur Nilai Default

Konstruktor sering digunakan untuk memberikan nilai awal pada properti atau variabel dalam sebuah kelas.
Dengan begitu, setiap objek yang dibuat sudah memiliki kondisi awal yang jelas dan tidak kosong.

2. Mengontrol Cara Objek Dibuat

Melalui konstruktor, kita bisa menambahkan aturan saat objek dibuat.
Misalnya, kita bisa mengecek apakah data yang diberikan sudah benar atau belum, lalu menentukan apakah objek boleh dibuat atau perlu disesuaikan.

3. Membuat Kode Lebih Rapi dan Mudah Dipahami

Dengan menggunakan konstruktor, kode menjadi lebih terstruktur dan enak dibaca.
Orang lain (atau bahkan diri kita sendiri di masa depan) akan lebih mudah memahami bagaimana sebuah objek bekerja dan data apa saja yang dibutuhkan sejak awal.

Kesimpulan

Konstruktor membantu kita memastikan bahwa setiap objek:

  • Memiliki nilai awal yang tepat
  • Dibuat dengan aturan yang jelas
  • Mudah dipahami dan dirawat kodenya

Saat mulai memahami konstruktor, konsep OOP di C# akan terasa lebih masuk akal dan menyenangkan untuk dipelajari bersama

Contoh Penggunaan Konstruktor:

// Contoh kelas dengan konstruktor
class Person
{
    private string name;
    private int age;


    // Konstruktor dengan parameter
    public Person(string name, int age)
    {
        this.name = name;
        this.age = age;
    }

    // Metode untuk mendapatkan nama dan usia
    public string GetName()
    {
        return name;
    }

    public int GetAge()
    {
       return age;
    }
}


// Membuat objek menggunakan konstruktor
Person person = new Person("John Doe", 25);
string name = person.GetName(); // Mengembalikan "John Doe"
int age = person.GetAge(); // Mengembalikan 25

Dalam contoh di atas, kita memiliki kelas Person dengan konstruktor yang menerima dua parameter, yaitu name (nama) dan age (usia). Ketika objek Person dibuat menggunakan konstruktor, nilai name dan age diinisialisasi sesuai dengan argumen yang diberikan. Kemudian, kita dapat menggunakan metode GetName() dan GetAge() untuk mendapatkan nilai yang diatur dalam konstruktor.

Konstruktor sangat berguna dalam menginisialisasi objek dan mengatur nilai default. Mereka memungkinkan Anda untuk mengontrol proses pembuatan objek dan memastikan bahwa objek dibuat dengan benar.

Di bawah ini beberapa contoh source code untuk latihan constructor, dibuat dengan Microsoft Visual Studio 2010.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace _2024_01_22_xrpla
{
//SOURCE CODE 0053
class Bank
{
public string bankName; //field

public Bank() { //Constructor
bankName = "BRI"; 
}

public void namaSaya() {
Console.WriteLine(" ELFAY ");
}

static void Main(string[] args)
{
Bank bankAA = new Bank();
bankAA.namaSaya();
Console.Write(bankAA.bankName);

Console.ReadKey();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace _2024_01_22_AA
{
//SOURCE CODE 0054
class Nasabah
{
public string nik;
public string nama;
public string alamat;
public int pin;

public Nasabah() {
nik = "35031023112001004";
nama = "Sandi Arga Sujiwa";
alamat = "Jl. Karangkates, Megahsari, Kutai";
pin = 778102;
}

public void myIndentity() {
Console.WriteLine("===================================");
Console.WriteLine(" CONSTRUCTOR - ELFAY ");
Console.WriteLine("===================================");
}


static void Main(string[] args)
{
Nasabah client01 = new Nasabah();
client01.myIndentity();
Console.WriteLine(client01.nik);
Console.WriteLine(client01.nama);
Console.WriteLine(client01.alamat);
Console.WriteLine(client01.pin);

Console.ReadKey();

}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace _2024_01_22_AB
{
//SOURCE CODE 0055
class Nasabah
{
public string nik;
public string nama;
public string alamat;
public int pin;

//constructor dengan parameter
public Nasabah(string aa, string bb, string cc, int dd)
{
nik = aa;
nama = bb;
alamat = cc;
pin = dd;
}

public void myIndentity()
{
Console.WriteLine("===================================");
Console.WriteLine(" CONSTRUCTOR - ELFAY ");
Console.WriteLine("===================================");
}


static void Main(string[] args)
{
Nasabah client01 = new Nasabah("35031023112001004", "Sandi Arga Sujiwa", "Jl. Karangkates, Megahsari, Kutai", 778102);
client01.myIndentity();
Console.WriteLine(client01.nik);
Console.WriteLine(client01.nama);
Console.WriteLine(client01.alamat);
Console.WriteLine(client01.pin);

Console.ReadKey();

}
}
}
- Advertisement -

Recent Posts