Ruang Lingkup (ilmu komputer)

Dalam pemrograman komputer, ruang lingkup (bahasa Inggris: Scope) pengikatan nama (asosiasi nama ke suatu entitas, seperti variabel) adalah bagian dari program di mana pengikatan nama tersebut valid; yaitu dimana nama dapat digunakan untuk merujuk pada entitas tersebut. Di bagian lain dari program, nama tersebut mungkin merujuk pada entitas yang berbeda (mungkin memiliki pengikatan yang berbeda), atau tidak merujuk pada apa pun sama sekali (mungkin tidak terikat). Ruang lingkup membantu mencegah tabrakan nama dengan memungkinkan nama yang sama merujuk pada objek yang berbeda - selama nama tersebut memiliki ruang lingkup yang terpisah. Ruang lingkup suatu nama pengikatan juga dikenal sebagai visibilitas suatu entitas, terutama dalam literatur yang lebih tua atau lebih teknis—ini berhubungan dengan entitas yang dirujuk, bukan nama yang merujuk.

Istilah "ruang lingkup" juga digunakan untuk merujuk pada himpunan semua pengikatan nama yang valid dalam suatu bagian dari suatu program atau pada titik tertentu dalam suatu program, yang lebih tepat disebut sebagai konteks atau lingkungan.[1]

Contoh dengan Java

sunting
public class A {
    
    public Integer nomorInteger = new Integer(); /* Variabel Global untuk semua Metode */
    
    public Integer metode() {
        int angka = 1; // Variabel Lokal untuk metode. Dapat diakses di dalam metode ini saja, tetapi tidak di luar metode ini.
        for (int i = 0; i < nomorInteger.intValue(); i++) { // i adalah variabel lokal untuk loop for, hanya dapat diakses di dalam loop tersebut.
            angka *= i;
        }
        // i = 2; Baris ini akan menyebabkan error karena variabel i belum dideklarasikan. i hanya didefinisikan secara lokal di dalam loop for.
        return Integer.valueOf(angka);
    }
    
    public void metodeLain() {
        int angka = 1; // Variabel lokal untuk metodeLain. angka di sini adalah variabel yang berbeda dengan variabel angka di metode.
        System.out.println("Variabel lokal angka: " + angka);
    }
}

Referensi

sunting
  1. ^ Scott, Michael L. (2009). Programming Language Pragmatics (edisi ke-tiga). Morgan Kaufmann Publishers. ISBN 978-0-12-374514-9.