Apa itu Perpustakaan Statis?

Perpustakaan statis adalah arsip komputer yang menyimpan sekelompok file terkait agar mudah ditautkan ke dalam program. Isi dari library ini biasanya berupa file kode mesin yang tidak dapat dibaca oleh manusia. File kode mesin ini biasanya dihasilkan dari kompilasi kode atau proses serupa. Sebagian besar sistem operasi memiliki ekstensi standar untuk pustaka statis, sehingga mudah diidentifikasi terlepas dari ukuran atau kontennya.

Dua jenis perpustakaan komputer yang berbeda adalah statis dan dinamis. Pustaka statis lebih fleksibel daripada pustaka dinamis karena jalur persisnya tidak relevan dengan executable yang menggunakannya. Pustaka statis ditautkan ke file yang dapat dieksekusi dan kemudian dapat dihapus jika perlu karena kontennya telah disertakan dalam program akhir. Pustaka dinamis tidak dapat dihapus karena kontennya dimuat saat executable berjalan, jadi lokasinya relatif terhadap executable dan dalam sistem operasi adalah penting. Penautan statis memungkinkan perpustakaan dipindahkan atau digunakan kembali tanpa memperhatikan jalur lokasi absolut.

Berbeda dengan perpustakaan dinamis, perpustakaan statis biasanya tidak dapat dieksekusi sendiri. Di C++, perpustakaan statis sering bertindak seperti file objek besar, dan mereka dapat ditautkan ke file yang dapat dieksekusi dengan cara yang sama seperti file objek dapat dan kemudian dihapus tanpa merugikan program. Meskipun seringkali mungkin untuk mengabaikan perpustakaan statis, mereka sering berguna dalam hal organisasi. Untuk pengguna dan pengembang, biasanya lebih mudah memiliki satu file yang berisi materi terkait daripada memiliki banyak file kecil. Banyak pengembang membangun perpustakaan statis khusus untuk keuntungan organisasi ini.

Membangun perpustakaan statis jauh lebih sederhana daripada membangun perpustakaan dinamis. Konten perpustakaan statis tidak ditautkan bersama karena tidak diharapkan berjalan sendiri, jadi pengarsipan sederhana biasanya cukup untuk membuatnya. Membuat pustaka statis yang tidak tertaut dengan benar di dalam dirinya sendiri tidak berbahaya selama pustaka tersebut ditautkan dengan file eksternal lain yang mungkin diperlukan. Pustaka bisa bergantung pada grup eksternal file objek, atau satu pustaka bisa bergantung pada yang lain. Penggunaan dan pengorganisasian perpustakaan statis sering kali merupakan pilihan pribadi di pihak programmer daripada persyaratan, meskipun mobilitas bawaan mereka sering membuat mereka menjadi pilihan yang diinginkan.