Pemanggilan Prosedur
Diperkenalkan| English | Makna |
|---|---|
| reusable/riːˈjuːzəbl/ | dapat digunakan kembali |
| procedure/prəˈsiːdʒə/ | prosedur |
| call/kɔːl/ | pemanggilan |
| method/ˈmeθəd/ | metode |
| arguments/ˈɑːɡjuːmənts/ | argumen |
| parameters/pəˈræmɪtəz/ | parameter |
| return value/rɪˈtɜːn ˈvæljuː/ | nilai pengembalian |
| implementation/ˌɪmplɪmənˈteɪʃn/ | implementasi |
| abstraction/əbˈstrækʃn/ | Abstraksi |
Blok kode yang dapat digunakan kembali
- A prosedur, juga disebut fungsi atau metode, adalah blok kode dapat digunakan kembali yang bernama.
- Anda menulisnya sekali dan menggunakannya berkali-kali.
- Ini memberikan nama pada suatu tugas, sehingga Anda dapat memanggil tugas itu kapan pun Anda membutuhkannya.
- Ini adalah inti dari "jangan ulangi hal yang sama".
Prosedur (fungsi/metode) adalah:
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Tulis sekali, panggil berkali-kali.
Untuk menjalankan instruksi prosedur dari tempat lain, Anda ______ namanya.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Setelah pemanggilan selesai, program melanjutkan dari tempat ia berhenti.
Memanggil prosedur
- Untuk menjalankan prosedur dari tempat lain, Anda memanggilnya berdasarkan namanya.
- Ketika pemanggilan selesai, program melanjutkan dari tempat di mana ia berhenti sebelumnya.
- Jadi pemanggilan ibarat jalan pintas: pergi mengerjakan tugas, lalu kembali.
- Prosedur yang sama dapat dipanggil dari banyak tempat.
Cara kerja pemanggilan prosedur
Pemanggilan melompat ke prosedur bersama argumennya, menjalankan tubuh prosedurnya, mengembalikan nilai, dan program melanjutkan dari tempat ia berhenti.
Cocokkan setiap istilah dalam area(4, 5) dengan maknanya.
Difficulty 2/5 · 140 coins + a small bonus on first completion today
Argumen adalah nilai aktual; parameter adalah slot bernama.
Dalam total ← area(4, 5), apa yang dikembalikan oleh area?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Hasil yang dikembalikan disimpan untuk penggunaan nanti.
Argumen, parameter, pengembalian
- Prosedur dapat menerima input: Anda memasukkan argumen ke dalam prosedur melalui parameternya.
area(length, width)yang dipanggil sebagaiarea(4, 5)menerima 4 dan 5.- Prosedur juga dapat mengembalikan nilai kembalian — hasil yang akan Anda gunakan nanti.
- Sebagai contoh
total ← area(4, 5)menyimpan nilai yang dikembalikan.
Jika square(n) mengembalikan n × n, apa yang dikembalikan oleh square(square(3))?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
square(3) = 9, kemudian square(9) = 81.
Saat Anda memanggil square(3), Anda perlu tahu apa yang dilakukannya, bukan bagaimana cara kerjanya di dalam.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Menyembunyikan detail implementasi adalah abstraksi prosedural.
Menyembunyikan implementasi
- Prosedur mendukung abstraksi dengan menyembunyikan detail implementasi dari Caller.
- Anda hanya perlu tahu apa yang dilakukan prosedur, bukan bagaimana cara kerjanya di dalamnya.
square(n) mengembalikan n × n. a ← square(3) menyimpan 9. b ← square(a) menyimpan 81, karena square(9) adalah 81. Pemanggil tidak pernah melihat perkalian di dalamnya — ia hanya menggunakan nilai yang dikembalikan.
Sebuah prosedur (fungsi atau metode) adalah kode dapat digunakan ulang yang Anda panggil dengan nama; program berlanjut setelah prosedur itu kembali. Anda mengirimkan argumen ke dalam parameter-nya dan dapat menggunakan nilai kembalinya. Prosedur memberikan abstraksi — pemanggil tahu apa yang dilakukan, bukan implementasinya.