Fungsi vs Program
Komputer menjalankan serangkaian tugas sebagai respons terhadap instruksi pengguna. Dengan menggunakan bahasa pemrograman, pengguna dapat membuat program yang menyertakan instruksi untuk menyelesaikan tugas dan menggunakan fungsi untuk menjaga agar kode dapat digunakan kembali dan diatur. Penulisan kode yang berkualitas dan terstruktur dimulai dengan memahami perbedaan antara fungsi dan program. Dalam artikel ini, kita membahas fungsi vs. program, menjelaskan definisinya, menjelajahi berbagai kategorinya, dan mempelajari kelebihannya.
Fungsi vs program
Sebelum menjelajahi fungsi vs. program, perlu dipahami definisinya dan berbagai jenisnya. Fungsi adalah blok kode yang menerima input, melakukan operasi, dan menghasilkan hasil. Program adalah seperangkat instruksi yang memungkinkan komputer untuk melakukan tugas-tugas tertentu. Pengguna dapat membuat ini menggunakan bahasa pemrograman tertentu seperti C++, Python dan Java.
Apa itu fungsi?
Sebuah fungsi terdiri dari kode terorganisir yang dapat digunakan kembali yang melakukan tugas tunggal dan terkait. Anda dapat menggunakan kembali fungsi ini di seluruh kode tanpa menulis ulang rangkaian instruksi yang sama setiap kali Anda ingin melakukan tugas. Struktur umum dari sebuah fungsi adalah sebagai berikut:
- Nama fungsi: Menggunakan nama fungsi memungkinkan Anda untuk memanggil fungsi di mana saja dalam kode. Tanda tangan fungsi mencakup nama fungsi dan parameter yang diteruskan sebagai input.
- Badan fungsi: Badan fungsi terdiri dari pernyataan yang menjelaskan apa yang dilakukan fungsi. Anda mungkin mendapatkan kesalahan sintaks jika Anda tidak mengikuti lekukan yang benar saat menulis isi fungsi.
- Parameter: Parameter berfungsi sebagai placeholder. Sebuah fungsi mengambil parameter sebagai argumennya, dan Anda dapat meneruskan sejumlah parameter ke fungsi, dipisahkan dengan koma.
- Return: Anda dapat menulis fungsi yang melakukan serangkaian operasi dan mengembalikan hasilnya ke titik di mana Anda memanggilnya. Anda dapat menambahkan tipe pengembalian, yang dapat mengembalikan satu keluaran atau satu set keluaran, di akhir fungsi.
Apa manfaat menggunakan fungsi?
Menggunakan fungsi memiliki beberapa manfaat, seperti:
Menggunakan teknik membagi-dan-menaklukkan
Menggunakan fungsi memungkinkan Anda untuk menerapkan strategi bagi-dan-taklukkan, yang melibatkan pemecahan masalah menjadi bagian-bagian yang lebih sederhana, menyelesaikan masing-masing secara mandiri dan menggabungkan semua bagian yang lebih kecil untuk mendapatkan hasil akhir. Meskipun kode Anda berukuran sedang, menjadi sulit untuk menulis semuanya sebagai satu fungsi besar. Ini membuat proses pengujian, debugging, dan pemeliharaan kode menjadi sangat sulit.
Membagi kode ini menjadi sub-tugas yang lebih kecil dapat mengurangi kerumitan kode dan meningkatkan keterbacaannya. Dalam hal ini, Anda dapat menulis setiap subtugas sebagai fungsi. Jika diperlukan, Anda juga dapat membagi subtugas ini menjadi subtugas yang lebih kecil dan mengikuti metodologi yang sama. Fungsi dapat berisi satu atau lebih fungsi di dalamnya, juga dikenal sebagai fungsi bersarang.
Menghindari duplikasi kode
Penggunaan fungsi membantu menghindari duplikasi kode dan usaha. Saat Anda mengembangkan program, mungkin perlu melakukan tugas yang sama beberapa kali. Dalam situasi ini, menggunakan fungsi dapat mengurangi duplikasi kode dan upaya manual. Ini mengurangi ukuran kode sumber dan kode yang dapat dieksekusi. Akibatnya, mengembangkan, menguji, men-debug, dan memelihara layanan membutuhkan waktu lebih sedikit, yang mengurangi biaya pengembangan.
Menyembunyikan detail implementasi
Menggunakan fungsi memungkinkan Anda menyembunyikan detail implementasi suatu program. Beberapa contoh kasus ini termasuk penggunaan fungsi bawaan seperti log, sin dan sqrt. Menyembunyikan detail implementasi juga meningkatkan keterbacaan program. Memanfaatkan fungsi dengan benar membuat kode menjadi modular dan mudah dibaca dan dipahami.
Mengurangi waktu pengembangan secara keseluruhan
Selain itu, menggunakan fungsi memungkinkan anggota tim pemrograman untuk mengembangkan, menguji, dan men-debug bagian program secara mandiri dan paralel. Pemrogram yang berbeda dapat menulis kode mereka secara terpisah dan mengintegrasikannya dengan aliran utama setelah mereka mengembangkan dan mengujinya secara menyeluruh. Beberapa programmer dapat bekerja secara bersamaan pada bagian kode yang berbeda, mengurangi waktu pengembangan secara keseluruhan. Anda dapat menggunakan fungsi yang dikembangkan untuk satu program dalam tugas serupa lainnya tanpa memodifikasinya secara signifikan. Hal ini memungkinkan Anda untuk mengurangi waktu dan biaya yang terkait dengan pengembangan program.
Jenis fungsi
Berikut adalah beberapa jenis fungsi yang umum digunakan dalam pemrograman, terlepas dari bahasanya:
Perpustakaan atau fungsi bawaan
Setiap bahasa pemrograman menyediakan fungsi perpustakaan untuk melakukan tugas-tugas tertentu yang telah ditentukan sebelumnya. Dikenal sebagai fungsi bawaan atau yang telah ditentukan sebelumnya, fungsi ini tidak dapat dimodifikasi. Penting untuk mengimpor paket yang berisi fungsi-fungsi ini sebelum menggunakannya. Beberapa contohnya adalah printf(), scanf() dalam bahasa pemrograman C dan log(), sin() dan sqrt() dalam Python.
Fungsi yang ditentukan pengguna
Fungsi yang ditentukan pengguna mengacu pada fungsi yang dibuat oleh pengguna untuk menulis kode program atau menjalankan tindakan tertentu. Dimungkinkan untuk memodifikasi dan menjalankan fungsi-fungsi yang ditentukan pengguna ini sesuai dengan persyaratan programmer. Pustaka bahasa pemrograman tidak menyertakan fungsi ini, tetapi Anda dapat menyesuaikan dan mengimpornya ke modul lain. Deklarasi fungsi, definisi fungsi, dan panggilan fungsi bersama-sama terdiri dari fungsi yang ditentukan pengguna.
Apa itu program?
Program, juga dikenal sebagai executable, adalah sekumpulan instruksi yang mengarahkan komputer untuk melakukan tugas tertentu. Sebuah program terdiri dari satu atau lebih fungsi, subrutin atau prosedur dengan tujuan untuk memecahkan masalah tertentu. Setidaknya ada satu fungsi utama di dalamnya, yaitu titik masuk ke dalam aplikasi. Segera setelah program loader memuat gambar program ke dalam memori, ia mengeksekusi instruksi kode mesin. Setelah keluar dari fungsi utama, program berakhir.
Jenis program
Selain berisi data yang digunakan oleh instruksi, program juga dapat memperoleh data dari sumber eksternal. Dua jenis program yang paling umum adalah:
Program aplikasi
Pengguna dapat menjalankan executable ini secara langsung untuk menjalankan fungsi tertentu. Contohnya termasuk email, browser web, game, pengolah kata, dan pemutar media. Karena program ini menyediakan aplikasi bagi pengguna akhir, Anda dapat menyebutnya sebagai program aplikasi. Misalnya, Anda dapat menggunakan browser web untuk berselancar dan pengolah kata untuk mengetik dokumen. Seorang programmer menggunakan antarmuka program aplikasi (API) untuk berkomunikasi dengan aplikasi dan meminta layanan.
Program sistem
Anda dapat memprogram sistem operasi menggunakan program sistem. Sementara program sistem menyediakan perangkat lunak untuk sistem lain, program aplikasi menyediakan perangkat lunak secara langsung untuk pengguna. Beberapa fitur lainnya meliputi:
- Anda dapat menggunakan pemrograman sistem untuk membuat asumsi tentang perangkat keras sistem tempat Anda menjalankan program.
- Anda dapat melakukan pemrograman sistem dengan menggunakan bahasa tingkat rendah, yang memungkinkan program berjalan di lingkungan dengan jumlah sumber daya yang rendah.
- Secara umum, program sistem ringan dan mudah dimuat.
- Dimungkinkan bagi pemrogram untuk menulis program sistem secara langsung dalam bahasa assembly, yang merupakan bahasa tingkat rendah.
- Karena Anda tidak dapat men-debug program sistem, Anda dapat menggunakan lingkungan simulasi untuk menjalankan dan mengujinya.
Perbedaan lain antara fungsi dan program
Perbedaan tambahan antara fungsi dan program meliputi:
Cakupan
Sebagai bagian dari program, suatu fungsi dapat melakukan tugas-tugas tertentu, tetapi hanya dapat melakukannya ketika dipanggil dari fungsi utama atau dari fungsi lain yang dipanggil dari fungsi utama itu sendiri. Fungsi tidak dapat beroperasi secara independen. Sebuah program, sebaliknya, adalah skrip mandiri yang dapat beroperasi secara independen dan dapat dijalankan langsung dari sistem operasi.
Jenis pengembalian
Setelah fungsi menyelesaikan eksekusi pernyataan, ia dapat mengembalikan output ke titik di mana pengguna telah memanggilnya. Anda dapat mengembalikan nilai tunggal atau urutan nilai yang dipisahkan dengan koma. Anda kemudian dapat memplot hasil ini dalam grafik atau mengubahnya menjadi format tabel. Berbeda dengan fungsi, program tidak mengembalikan output apa pun.
Eksekusi
Dimungkinkan untuk mengkompilasi dan menjalankan program langsung dari sistem operasi. Dengan demikian, program tidak memerlukan mesin skrip untuk dijalankan. Untuk mengkompilasi dan menjalankan suatu fungsi, penting untuk menggunakan mesin skrip.