Ruang lingkup Variabel Pemrograman dan luasnya


Ruang lingkup Variabel Pemrograman dan luasnya

Ruang lingkup variable Pemrograman menggambarkan di mana dalam teks program, variabel dapat digunakan, sedangkan tingkat (atau masa pakai) menggambarkan kapan dalam eksekusi program ada variabel yang memiliki nilai (bermakna). Ruang lingkup variabel sebenarnya adalah properti dari nama variabel, dan luasnya adalah properti dari variabel itu sendiri. Ini tidak boleh disalahartikan dengan konteks (juga disebut lingkungan), yang merupakan milik program, dan bervariasi menurut poin dalam kode sumber atau eksekusi - lihat cakupan: ikhtisar. Selanjutnya, masa pakai objek dapat bertepatan dengan masa pakai variabel, namun dalam banyak kasus tidak terkait dengan variabel seumur hidup.

Lingkup nama variabel mempengaruhi luasnya.

Lingkup merupakan bagian penting dari resolusi nama suatu variabel. Sebagian besar bahasa menentukan lingkup spesifik untuk setiap variabel (dan juga entitas lain yang disebutkan namanya), yang mungkin berbeda dalam program yang diberikan. Ruang lingkup variabel adalah bagian dari kode program yang nama variabelnya memiliki arti dan variabel mana yang dikatakan "terlihat". Masuk ke dalam lingkup itu biasanya memulai masa pakai variabel (seperti konteksnya) dan keluar dari lingkup itu biasanya mengakhiri masa pakainya (karena melampaui konteks). Misalnya, variabel dengan "cakupan leksikal" hanya bermakna dalam fungsi / subrutin tertentu, atau lebih halus dalam blok ekspresi / pernyataan (sesuai dengan cakupan fungsi atau cakupan blok); ini adalah resolusi statis, performable pada waktu parse atau waktu kompilasi. Sebagai alternatif, variabel dengan lingkup dinamik diselesaikan pada saat run-time, berdasarkan tumpukan pengikat global yang bergantung pada aliran kontrol spesifik. Variabel yang hanya dapat diakses dalam fungsi tertentu disebut "variabel lokal". Sebuah "variabel global", atau satu dengan lingkup yang tidak terbatas, dapat dirujuk ke manapun dalam program ini.


Pelajari Juga : Pengertian Variabel Dalam Pemrograman

Luasnya, di sisi lain, adalah aspek runtime (dinamis) dari sebuah variabel. Setiap pengikatan variabel ke nilai dapat memiliki jangkauan sendiri saat runtime. Tingkat pengikatan adalah bagian dari waktu eksekusi program dimana variabel tersebut terus mengacu pada nilai atau lokasi memori yang sama. Program yang sedang berjalan dapat masuk dan meninggalkan batas tertentu beberapa kali, seperti dalam kasus penutupan.

Kecuali bahasa pemrograman menampilkan pengumpulan sampah, sebuah variabel yang luasnya melebihi ambang batasnya dapat mengakibatkan kebocoran memori, dimana memori yang dialokasikan untuk variabel tidak dapat dibebaskan karena variabel yang akan digunakan untuk referensi untuk tujuan deallokasi tidak lagi. dapat diakses Namun, dapat diijinkan untuk variabel yang mengikat untuk melampaui lingkupnya, seperti yang terjadi pada penutupan Lisp dan variabel lokal C static; Ketika eksekusi melewati kembali lingkup variabel, variabel tersebut mungkin sekali lagi akan digunakan. Sebuah variabel yang ruang lingkupnya dimulai sebelum batasnya dikatakan tidak diinisiasi dan sering memiliki nilai sewenang-wenang dan tidak semestinya jika diakses (lihat pointer liar), karena ia harus secara eksplisit diberi nilai tertentu. Sebuah variabel yang batasnya berakhir sebelum ruang lingkupnya bisa menjadi penunjuk yang menggantung dan dianggap tidak diinisiasi sekali lagi karena nilainya telah dihancurkan. Variabel yang dijelaskan oleh dua kasus sebelumnya dapat dikatakan berada di luar jangkauan atau tidak terikat. Dalam banyak bahasa, ini adalah kesalahan untuk mencoba menggunakan nilai variabel saat berada di luar jangkauan. Dalam bahasa lain, melakukan hal itu dapat menghasilkan hasil yang tidak dapat diprediksi. Variabel semacam itu mungkin diberi nilai baru, yang memberinya tingkat baru.

Untuk efisiensi ruang, ruang memori yang dibutuhkan untuk variabel dapat dialokasikan hanya bila variabel pertama kali digunakan dan dibebaskan saat tidak lagi dibutuhkan. Variabel hanya diperlukan bila berada dalam ruang lingkup, sehingga memulai setiap masa hidup variabel saat memasuki ruang lingkup dapat memberi ruang pada variabel yang tidak terpakai. Agar tidak membuang-buang ruang, kompiler sering memperingatkan pemrogram jika variabel dinyatakan namun tidak digunakan.

Hal ini dianggap sebagai praktik pemrograman yang baik untuk membuat lingkup variabel sesempit layak sehingga berbagai bagian program tidak secara tidak sengaja saling berinteraksi satu sama lain dengan memodifikasi variabel masing-masing. Melakukan hal itu juga mencegah tindakan dari kejauhan. Teknik umum untuk melakukannya adalah memiliki bagian yang berbeda dari sebuah program menggunakan ruang nama yang berbeda, atau membuat variabel individual "pribadi" melalui pelingkupan variabel dinamis atau pelingkupan variabel leksikal.

Banyak bahasa pemrograman menggunakan nilai yang dipesan (sering disebut null atau nihil) untuk menunjukkan variabel yang tidak valid atau tidak diinisiasi.

Mengetik Variabel Pemrogramman

Dalam bahasa yang diketik statis seperti Java atau ML, sebuah variabel juga memiliki tipe, yang berarti bahwa hanya beberapa jenis nilai tertentu yang dapat disimpan di dalamnya. Misalnya, variabel tipe "integer" dilarang menyimpan nilai teks.

Dalam bahasa yang diketik secara dinamis seperti Python, itu adalah nilai, bukan variabel, yang membawa tipe. Dalam Common Lisp, kedua situasi ada bersamaan: Variabel diberi tipe (jika tidak dideklarasikan, diasumsikan T, supertipe universal) yang ada pada waktu kompilasi. Nilai juga memiliki tipe, yang bisa diperiksa dan di tanya saat runtime.

Pengetikan variabel juga memungkinkan polimorfisme dipecahkan pada waktu kompilasi. Namun, ini berbeda dengan polimorfisme yang digunakan dalam pemanggilan fungsi berorientasi objek (disebut fungsi virtual di C ++) yang menyelesaikan panggilan berdasarkan jenis nilai yang bertentangan dengan jenis supertipe yang diperbolehkan dimiliki.


Variabel sering menyimpan data sederhana, seperti bilangan bulat dan string literal, namun beberapa bahasa pemrograman memungkinkan variabel untuk menyimpan nilai tipe data lainnya juga. Bahasa semacam itu mungkin juga memungkinkan fungsi menjadi parametrik polimorfik. Fungsi ini beroperasi seperti variabel untuk mewakili data dari beberapa jenis. Misalnya, fungsi yang diberi nama panjang mungkin menentukan panjang daftar. Fungsi panjang semacam itu dapat berupa parametrik polimorfik dengan memasukkan tipe variabel pada tanda tangan jenisnya, karena jumlah elemen dalam daftar tidak bergantung pada jenis elemen.

Demikianlah Materi Tentang Ruang lingkup Variabel Pemrograman dan luasnya dari Cari Materi Semoga Bermanfaat Bagi Para Pembaca Sekalian.

Pelajari Juga :

Subscribe to receive free email updates:

1 Response to "Ruang lingkup Variabel Pemrograman dan luasnya"

  1. Keren infonya,,
    Kalau bisa ada gambar yang menarik, biar lebih seru bacanya,,
    Kunjungi kami di Dostzero.blogspot.co.id

    ReplyDelete

close