Framework Perangkat Lunak (Software Framework) adalah kumpulan kode program yang merupakan pondasi dan bersifat universal yang digunakan oleh para programmer / software engineer / pembuat software untuk membangun aplikasi / produk perangkat lunak. Berbeda dengan class library yang dibutuhkan oleh para programmer untuk dipanggil dan dikendalikan olehnya, framework-lah yang nantinya justru mengendalikan alur software produk jadinya secara keseluruhan. Sifat tersebut disebut Inversion of Control. Framework mempunyai perilaku dasar (default behavior) di mana kebutuhan umum diatasi/dikerjakan oleh framework. Framework juga mempunyai ruang-ruang kosong yang dapat diisi dengan kode-kode tertentu (oleh programmer) sebagai pengembangan dari perilaku dasar. Dengan kata lain, framework mempunyai kemampuan untuk dikembangkan oleh penggunanya (extensibility). Namun demikian, framework mempunyai bagian-bagian tertentu (kebanyakan) yang tidak dapat diubah oleh programmer penggunanya (non-modifiable framework code). Baca entri selengkapnya »