Algoritma Pemrograman Python 5

Object Oriented Programming I

Object Oriented Programming atau Pemrograman Berorientasi objek merupakan sebuah paradigma pemrograman yang didasarkan dan dibuat berdasarkan sebuah objek. Contohnya seperti kita memiliki sebuah mainan radio control dimana mobil radio control tersebut merupakan objeknya dan remote controlnya merupakan sebuah alat kendalinya. Mobil RCnya dapat kita kendalikan maju, mundur, kekanan dan kekiri melalui remote controlnya, hal tersebut merupakan contoh konsep dasar dari pemrograman berorientasi objek. Bahasa Pemrograman Python sudah mendukung adanya Object Oriented Programming, yaitu dengan adanya fitur definition (fuungsi) dan class (kelas).

Definition (Fungsi)

Sebelum mengenal sebuah fungsi ada baiknya kita kembali ke materi sebelumnya yaitu pengertian tentang variable. Fungsi kegunaannya hampir mirip dengan variable, jika variable digunakan untuk menyimpan sebuah nilai, maka fungsi digunakan untuk menyimpan sebuah potongan blok program. Fungsi atau Definition dalam Python merupakan suatu bagian (blok program) dari program yang dimaksudkan untuk mengerjakan suatu tugas tertentu dan letaknya terpisah dari program yang memanggilnya. Pada pembuatan program yang kompleks dan memiliki banyak fitur, kita diharuskan menggunakan fungsi. Fungsi diperlukan agar mempermudah kita dalam membaca sebuah kode program dan mempermudah untuk merawatnya. Dengan adanya sebuah fungsi kita tidak perlu menulis kode sepanjang gerbong kereta api di program utama dan kita dapat memecah atau membaginya lalu tinggal memanggil fungsinya saja didalam program utama. Dan itu juga akan mempersingkat penulisan dari program utama tersebut nantinya.

Fungsi memiliki parameter yang dapat dipergunakan untuk memasukkan atau menampung variabel kedalam sebuah fungsi. Dalam pendeklarasian parameter pada sebuah fungsi kita juga dapat memasukkan default argument/parameter.

Fungsi juga dapat mengembalikan nilai dengan cara menggunakan keyword return yang di taruh didalam blok program fungsi itu sendiri untuk mengembalikan nilai yang ingin kita kembalikan kedalam program utama.

Tujuan utama sebuah fungsi adalah bertujuan untuk menghindari terjadinya duplikasi kode. Tujuannya tak lain agar kode tersebut bisa digunakan kembali, hanya dengan memanggil nama fungsinya saja.

Dalam Python terdapat beberapa hal yang perlu diperhatikan dalam mendeklarasikan sebuah fungsi

  1. Menggunakan keyword “def” untuk mendeklarasikan fungsi
  2. Menggunakan keyword return (Fungsi yang mengembalikan nilai)
  3. Terdapat parameter/argument fungsi
  4. Fungsi di python mendukung parameter yang memiliki initial value/default parameter(nilai awal)

Umumnya fungsi dibedakan menjadi 2 kategori

  1. Fungsi yang tidak mengembalikan Nilai
  2. Fungsi yang mengembalikan Nilai

Fungsi yang tidak mengembalikan nilai (Fungsi Void)

Merupakan sebuah fungsi yang berguna untuk menampung sebuah blok program dengan tujuan untuk memperpendek baris program saja, biasanya fungsi ini dipanggil secara independen dalam blok program seperti contoh dibawah ini:

# Contoh Fungsi Void/Fungsi yang tidak mengembalikan nilai
# Tujuannya untuk mengeluarkan sebuah potongan blok program saja
def iniFungsi(): # Deklarasinya
    print("Ini adalah sebuah fungsi void dalam python") # Didalam Blok Program FUngsi
    
iniFungsi() # Memanggil Fungsi secara independen | Blok Program Utama (Blok Program File Dasar)

Fungsi yang mengembalikan Nilai

Merupakan sebuah fungsi yang akan mengembalikan nilai tertentu. dan biasanya fungsi ini dipanggil lalu disimpan kedalam sebuah variable seperti contoh dibawah ini:

# Contoh Fungsi yang mengembalikan nilai
def fg_str_fungsiKembalian(): # Deklarasinya
    return "Ini adalah sebuah fungsi kembalian dalam python"

x = fg_str_fungsiKembalian() # Memanggil fungsi lalu nilai kembaliannya disimpan ekdalam variabel x

print(x)

Blok Program di Dalam Fungsi

Setelah mengetahui Fungsi, kategori dan penggunaannya maka yang selanjutnya yang kita pelajari adalah isi didalam blok program fungsinya, sebelum mempelajari isi dari blok program didalam sebuah fungsi ada baiknya anda memahami konsep dasar terkait hal tersebut. Misalkan jika anda memiliki sebuah kartu debit/kredit dengan logo VISA/MASTERCARD maka anda dapat menggunakan kartu tersebut sebagai alat transaksi pembayaran secara nasional ataupun internasional, tetapi jika kartu debit/kredit anda tidak terdapat logo VISA/MASTERCARD, maka anda tidak dapat menggunakan kartu tersebut sebagai alat transaksi pembayaran secara internasional dan hanya berlaku di nasional saja. Dari konsep pembatasan akses dan fitur pada kartu kredit/debit tersebut maka blok program didalam fungsi dan diluar fungsi pun juga memiliki konsep yang sama. Jika sudah memahami konsep tersebut maka selanjutnya kita akan berkenalan dengan variable global dan lokal.

Variable Global

Variable yang dapat digunakan di blok program manapun (didalam blok program definisi fungsi ataupun diluar blok program deklarasi fungsi). karena berlaku secara global, maka variable global dapat dipanggil dan digunakan di manapun entah itu di satu file yang sama ataupun di luar file yang berbeda.

Variable Lokal

Merupakan variable yang hanya dapat digunakan didalam sebuah blok program fungsi/class. karena bersifat terbatas, maka dia hanya dapat digunakan dalam blok program deklarasi fungsi/class dan tidak bisa digunakan diluar blok program fungsi.

Contoh-Contoh Fungsi:

Fungsi dengan parameter yang mengembalikan nilai:

# Contoh fungsi dengan parameter

g_int_hasil = 0 # Mendeklarasikan Variable Global

def fg_int_fungsiTambahBerparameter( nilai1, nilai2 ): # Deklarasi Fungsi Berparameter
    l_int_hasil = nilai1 + nilai2 # Mendeklarasikan Variable lokal
    
    # Mengeluarkan nilai variable lokal dalam sebuah fungsi
    
    # 1. Cara Pertama dengan memindahkannya kedalam variable global (Untuk Bahasa Pemrograman C/C++)
    # g_int_hasil = l_int_hasil
    # print(g_int_hasil)
    
    # 2. Cara Kedua menjadikan fungsi mengembalikan nilai variable lokal tersebut (Berfungsi di Python dan C/C++)
    return l_int_hasil

g_int_hasil = fg_int_fungsiTambahBerparameter(5, 6) # Memanggil fungsi lalu nilai kembaliannya disimpan kedalam variabel g_int_hasil

print(g_int_hasil)

Fungsi dengan default parameter/initial value yang tidak mengembalikan nilai

def fungsiKurangBerparameter( nilai1 = 5, nilai2 = 1 ): # Deklarasi Fungsi dengan Default parameter
    hasil = nilai1 - nilai2
    print(hasil)
    
fungsiKurangBerparameter() # Tanpa diisi dengan nilai, maka si fungsi akan otomatis menggunakan nilai default parameter yaitu nilai1 sebagai 5 dan nilai2 sebagai 1

Recursive Function

Adalah sebuah fungsi yang memanggil dirinya sendiri ketika dideklarasikan, biasanya digunakan sebagai pengganti perulangan, tetapi jarang digunakan karena memakan cukup banyak resource/sumber daya komputer sehingga komputer akan bekerja lebih keras dibandingkan dengan menggunakan konsep perulangan biasa.

Tugas Latihan Fungsi

Buatlah sebuah fungsi yang mengembalikan nilai hasil tambah, kurang, bagi, kali, dan modulus serta memiliki 2 parameter variable dan memiliki initial value (nilainya bebas). lalu buatlah satu fungsi void untuk mencetak nama dan asal kalian di paling atas program. Buatlah program tersebut berulang hingga dihentikan oleh user. berikut adalah contoh outputnya:

OUTPUT:
---------------------
| Azhar Rizki Zulma |
|      Bintaro      |
---------------------
Masukkan Menu(+|-|/|*|%|stop): + (Diinput user)
Masukkan Nilai 1: 5 (Diinput User)
Masukkan Nilai 2: 5 (Diinput User)
Hasil Penjumlahan 5 + 5 adalah 10

Masukkan Menu(+|-|/|*|%|stop): - (Diinput user)
Masukkan Nilai 1: 5 (Diinput User)
Masukkan Nilai 2: 5 (Diinput User)
Hasil Pengurangan 5 - 5 adalah 0

Masukkan Menu(+|-|/|*|%|stop): stop (Diinput user)
Program Berhenti, Terima Kasih telah menggunakan program saya.
Written by

Azhar Rizki Zulma

I'm a Information System, Independent Developer, Publisher, Mountainer, Nature Lovers, Musician, Producer, and Blogger.