Mohon tunggu...
Hendra
Hendra Mohon Tunggu... Human Resources - Co Founder of Nothing

Mengenal dunia pemrograman komputer dimulai dari bahasa C++, kemudian besar bersama bahasa PHP dengan database tradisional SQL. Sempat iseng belajar sedikit tentang Apache Cordova, F7, Bootstrap. Namun saat ini fokus mendalami bahasa Python untuk keperluan Karya Ilmiah di S2

Selanjutnya

Tutup

Inovasi

Menerapkan Higher Order Function Menggunakan Bahasa Pemrograman Python

13 November 2019   15:24 Diperbarui: 13 November 2019   15:27 255
+
Laporkan Konten
Laporkan Akun
Kompasiana adalah platform blog. Konten ini menjadi tanggung jawab bloger dan tidak mewakili pandangan redaksi Kompas.
Lihat foto
Sumber: nateeco.com

Dalam dunia pemrograman, terkadang aktivitas coding merupakan hal yang cukup membuat penat dan menguras tenaga yang cukup tinggi. Ini dikarenakan seorang prorgammer harus menulis ribuan baris code program yang harus sesuai dengan algoritma tujuan dari program tersebut. 

Untuk meminimalisir jumlah baris code program, biasanya baris program yang sering muncul di tulis dalam bentuk fungsi (function), sehingga jika ada baris program yang sama ingin ditulis lagi, programmer tidak perlu menulis ulang keseluruhan code, namun cukup memanggil fungsi dengan parameter yang telah ditentukan.

Selain dalam bentuk fungsi, bisa juga ditulis dalam bentuk methods. Sehingga dengan cara yang sama tidak perlu menuliskan kembali baris code yang dibutuhkan, cukup memanggil methods beserta parameter didalamnya. 

Namun antara fungsi dan methods itu seperti saudara kembar beda kelamin. Dua-duanya sama, Cuma yang membedakan adalah di bagian bawah. Dimana fungsi selalu memiliki nilai balik (return value) sedangkan methods tidak perlu nilai balik.

Dalam bahasa pemrograman python, fungsi bisa ditulis sebagai berikut (contoh mencari bilangan terbesar)

def terbesar(x, y):

    if x > y:

        maks = x

    else:

        maks = y

return maks

Fungsi diatas adalah gambaran fungsi sederhana yang hanya membandingkan dua nilai (parameter) untuk mencari nilai terbesar.

Higher Order Function

Setelah mengetahui secara singkat tentang fungsi, cara penggunaan fungsi dan perbedaan antara fungsi dengan argumen, maka tahap selanjutnya adalah mengenal "Higher Order Function". Higher order function adalah fungsi yang menggunakan fungsi lain sebagai parameter atau sebagai hasil return.

Mari kita lihat script sederhana dibawah ini : 

def foo(f):

    f()

def bar():

    print ("Hello bar")

foo(bar)

Dari script sederhana diatas dapat dilihat bahwa : 

  • Baris pertama kita mendefinisikan sebuah fungsi bernama foo dengan isi berupa fungsi tanpa nilai balik
  • Kemudian pada baris ke 3 kita mendefinisikan ulang sebuah fungsi bernama bar() yang juga tidak memiliki nilai balik, namun memiliki tujuan menampilkan tulisan "Hello bar"
  • Pada baris akhir, barulah kita memanggil fungsi foo() dengan parameter didalamnya berupa fungsi bar() dengan baris code : foo(bar)
  • Maka hasil dari tampilan itu adalah "Hello bar"

Fungsi dan methods adalah objek yang sangat penting dalam bahasa pemrograman  python, sehingga jika kita ingin meneruskan fungsi sebagai argumen ke fungsi lain, tentu kita bisa menerapkannya sebagai objek lain.

Hal yang perlu diperhatikan adalah dalam beberapa bahasa fungsi dan objek itu berbeda, tetapi dalam fungsi python diimplementasikan sebagai objek (memiliki atribut).

Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H

HALAMAN :
  1. 1
  2. 2
  3. 3
Mohon tunggu...

Lihat Konten Inovasi Selengkapnya
Lihat Inovasi Selengkapnya
Beri Komentar
Berkomentarlah secara bijaksana dan bertanggung jawab. Komentar sepenuhnya menjadi tanggung jawab komentator seperti diatur dalam UU ITE

Belum ada komentar. Jadilah yang pertama untuk memberikan komentar!
LAPORKAN KONTEN
Alasan
Laporkan Konten
Laporkan Akun