.NET Framework

**.NET Framework** (dibaca "*dot net*") merupakan sebuah perangkat lunak kerangka kerja yang berjalan terutama pada sistem operasi Microsoft Windows, saat ini .NET Framework umumnya telah terintegrasi dalam distribusi standar Windows (mulai dari Windows Server 2003 dan versi-versi Windows yang lebih baru). Kerangka kerja ini menyediakan sejumlah besar pustaka pemrograman komputer dan mendukung beberapa bahasa pemrograman serta interoperabilitas yang baik sehingga memungkinkan bahasa-bahasa tersebut berfungsi satu dengan lain dalam pengembangan sistem. Berbeda halnya dengan tipikal aplikasi konvensional umumnya, program yang ditulis dengan memanfaatkan .NET Framework berjalan pada lingkungan perangkat lunak melalui Common Language Runtime, dan bukan perangkat keras secara langsung. Hal ini memungkinkan aplikasi yang dibuat di atas .NET secara teoretis dapat berjalan pada perangkat keras apapun yang didukung oleh .NET Framework. Perangkat lunak ini adalah kunci penawaran utama dari Microsoft, dan dimaksudkan untuk digunakan oleh sebagian besar aplikasi-aplikasi baru yang dibuat untuk platform Windows.

Pada dasarnya, .NET Framework memiliki 2 komponen utama: CLR dan .NET Framework Class Library.

Program-program yang ditulis untuk .NET Framework dijalankan pada suatu lingkungan perangkat lunak yang mengatur persyaratan-persyaratan runtime program. *[[Runtime environment]]* ini, yang juga merupakan suatu bagian dari .NET Framework, dikenal sebagai *[[Common Language Runtime]]* (CLR). CLR menyediakan penampilan dari *[[virtual machine#application virtual machine|application virtual machine]]*, sehingga para pemrogram tidak perlu mengetahui kemampuan CPU tertentu yang akan menjalankan program. CLR juga menyediakan layanan-layanan penting lainnya seperti jaminan keamanan, pengaturan memori, *[[pengumpulan sampah (ilmu komputer)|garbage collection]]* dan *[[exception handling]]* / penanganan kesalahan pada saat *runtime*. Class library dan CLR ini merupakan komponen inti dari .NET Framework. Kerangka kerja itu pun dibuat sedemikian rupa agar para pemrogram dapat mengembangkan program komputer dengan jauh lebih mudah, dan juga untuk mengurangi kerawanan aplikasi dan juga komputer dari beberapa ancaman keamanan.

CLR adalah turunan dari *CLI (Common Language Infrastructure)* yang saat ini merupakan standar ECMA. Untuk keterangan lebih lanjut, silakan mengunjungi situs ECMA atau kunjungi sumber pranala di bawah artikel ini.

Solusi-solusi program pembentuk *[[class library]]* dari .NET Framework mencakup area yang luas dari kebutuhan program pada bidang antarmuka pengguna, pengaksesan data, koneksi pangkalan data, kriptografi, pembuatan aplikasi berbasis web, algoritme numerik, dan komunikasi jaringan. Fungsi-fungsi yang ada dalam *class library* dapat digabungkan oleh pemrogram dengan kodenya sendiri untuk membuat suatu program aplikasi baru.

Pada berbagai literatur dan referensi di Internet, .NET Framework sering kali disingkat menjadi .NET saja.

## .NET Framework sebagai platform

.NET sering kali juga dapat diartikan sebagai platform, yang merupakan suatu lingkungan terpadu untuk pengembangan dan eksekusi untuk berbagai macam bahasa pemrograman dan kumpulan pustaka untuk bekerja sama membuat dan menjalankan aplikasi berbasis Windows yang lebih mudah untuk dibuat, diatur, didistribusikan, dan diintegrasikan dengan sistem jaringan lain.

Dalam perkembangannya, .NET sering kali dikaitkan pula dengan versi Visual Studio yang sesuai dengan dukungan versi yang bersangkutan untuk pengembangan aplikasi. Berikut ini versi .NET dan versi Visual Studio yang terkait:

## Versi
Microsoft memulai pengembangan .NET Framework di akhir 1990 dengan nama awal Next Generation Windows Services (NGWS). Pada akhir 2000 versi beta .NET 1.0 dirilis.

Versi 3.0 dari .NET Framework disertakan di Windows Server 2008 dan Windows Vista. Versi 3.5 disertakan di Windows 7, dan bisa juga diinstal di Windows XP maupun Windows Server 2003. Pada 12 April 2010 .NET Framework 4 dirilis bersamaan dengan aplikasi Visual Studio 2010.

.NET Framework terdiri dari dua versi yaitu mobile dan embedded. Versi mini dari kerangka kerja .NET Compact Framework, tersedia untuk platform smartphone khususnya Windows CE dan Windows Mobile. .NET Micro Framework lebih ditargetkan untuk device yang membutuhkan kinerja tinggi.

.NET 2.0, 3.0 dan 3.5 memiliki CLR yang sama. Dengan demikian, struktur IL juga sama. Adapun fasilitas penambahan kata kunci pemrograman seperti pada LINQ yang sebenarnya lebih mengarah sebagai fitur bahasa pemrograman (*programming language feature*) sehingga bukan merupakan fitur CLR.

## .NET pada sistem operasi selain Windows
Implementasi .NET 2.0 saat ini juga memiliki Mono, perangkat lunak varian yang dapat berjalan di Linux dan UNIX. Mono dikembangkan oleh Ximian, yang selanjutnya diakuisisi oleh Novell. Mono merupakan platform sumber terbuka, berarti semua orang dapat berpartisipasi di dalam pengembangan Mono.

## Pranala luar

* 
* Documentasi .NET
* 
*  - Daftar pustaka, alat, kerangka kerja, dan perangkat lunak .NET