NET Framework

advertisement
Framework .NET dalam Bahasa C#
Untuk dapat lebih memahami tentang bahasa C# dan dapat memanfaatkannya secara lebih maksimal,
maka sebelum kita memulai membahas tentang apa itu bahasa C#, ada baiknya kita mempelajari terlebih
dahulu tentang Microsoft Framework .NET yang merupakan komponen yang tidak bisa dipisahkan dari
bahasa C# itu sendiri.
Adapun penjelasan pada bab ini akan diawali dengan penjelasan tentang istilah Framework .NET istilahistilah lain yang berhubungan dengannya.
1.1 Apakah Itu Framework .NET ?
Framework .NET adalah suatu komponen windows yang terintegrasi yang dibuat dengan tujuan untuk
mensupport pengembangan berbagai macam jenis aplikasi serta untuk dapat mejalankan berbagai
macam aplikasi generasi mendatang termasuk pengembangan aplikasi Web Services XML.
Framework .NET di design untuk dapat memenuhi beberapa tujuan berikut ini :

Untuk menyediakan environment kerja yang konsisten bagi bahasa pemrograman yang
berorientasi objek (object-oriented programming – OOP) baik kode objek itu di simpan dan di
eksekusi secara lokal, atau dieksekusi secara lokal tapi didistribusikan melalui internet atau di
eksekusi secara remote.

Untuk menyediakan environment kerja di dalam mengeksekusi kode yang dapat meminimaliasi
proses software deployment dan menghindari konflik penggunaan versi software yang di buat.

Untuk menyediakan environment kerja yang aman dalam hal pengeksekusian kode, termasuk
kode yang dibuat oleh pihak ketiga (third party).

Untuk menyediakan environment kerja yang dapat mengurangi masalah pada persoalan
performa dari kode atau dari lingkungan interpreter nya.

Membuat para developer lebih mudah mengembangkan berbagai macam jenis aplikasi yang lebih
bervariasi, seperti aplikasi berbasis windows dan aplikasi berbasis web.

Membangun semua komunikasi yang ada di dalam standar industri untuk memastikan bahwa
semua kode aplikasi yang berbasis Framework .NET dapat berintegrasi dengan berbagai macam
kode aplikasi lain.
Sebagai salah satu sarana untuk dapat memenuhi tujuan di atas, maka dibuatlah berbagai macam
bahasa pemrograman yang dapat digunakan dan dapat berjalan di atas platform Framework .NET seperti
bahasa C#, VB.NET, J#, Perl.NET dan lain-lain. Masing-masing bahasa tersebut mempunyai kelebihan
dan kekurangannya masing-masing, namun yang pasti, apapun bahasa pemrograman yang digunakan,
semuanya akan dapat saling berkomunikasi dan saling compatible satu dengan yang laiinya dengan
bantuan Framework .NET
1.2 Arsitektur Framework .NET
Framework .NET terdiri dari dua buah komponen utama, yaitu Common Language Runtime (CLR) dan
.NET Framework Class Library atau kadang juga sering disebut dengan Base Class Library (BCL).
Common Language Runtime (CLR) adalah pondasi utama dari Framework .NET. CLR merupakan
komponen yang bertanggung jawab terhadap berbagai macam hal, seperti bertanggung jawab untuk
melakukan managemen memory, melakukan eksekusi kode, melakukan verifikasi terhadap keamanan
kode, menentukan hak akses dari kode, melakukan kompilasi kode, dan berbagai layanan system lainnya.
Dengan adanya fungsi CLR ini, maka aplikasi berbasis .NET biasa juga disebut dengan managed code,
sedangkan
aplikasi
di
luar
itu
biasa
disebut
dengan
un-managed
code.
Berikut ini beberapa hal yang disediakan CLR bagi para developer:

Dapat lebih menyederhakan proses pengembangan aplikasi.

Memungkinkan adanya variasi dan integrasi dari berbagai bahasa pemrograman yang ada di
lingkunan Framework .NET

Keamanan dengan melakukan identing pada kode aplikasi.

Bersifat Assembly pada saat proses deployment / kompilasi

Melakukan versioning sebuah komponen yang bisa di daur ulang.

Memungkinkan penggunaan kembali kode, dengan adanya sifat inheritance.

Melakukan pengaturan / manajemen tentang lifetime sebuah objek.

Melakukan penganalisaan objek-objek secara otomatis.
CLR akan melakukan kompilasi kode-kode aplikasi kita menjadi bahasa assembly MSIL (Microsoft
Intermediate Language). Proses kompilasi ini sendiri dilakukan oleh komponen yang bernama Just In
Time (JIT). JIT hanya akan mengkompilasi metode-metode yang memang digunakan dalam aplikasi, dan
hasil kompilasi ini sendiri di chace di dalam mesin dan akan dikompile kembali jika memang ada
perubahan
pada
kode
aplikasi
kita.
.NET Framework Class Library atau sering juga disebut Base Case Library (BCL) adalah koleksi dari
reusable types yang sangat terintegrasi secara melekat dengan CLR. Class library bersifat berorientasi
terhadap objek yang akan menyediakan types dari fungsi-fungsi managed code. Hal ini tidak hanya
berpengaruh kepada kemudahan dalam hal penggunaan, tetapi juga dapat mengurangi waktu yang
diperlukan pada saat eksekusi. Dengan sifat tersebut, maka komponen pihak ketiga akan dengan mudah
diaplikasikan
ke
dalam
aplikasi
yang
dibuat.
Dengan adanya BCL ini, maka kita bisa menggunakan Framework .NET untuk membuat berbagai macam
aplikasi, seperti :

Aplikasi console

Aplikasi berbasis windowd (Windows Form)

Aplikasi ASP.NET (berbasis web)

Aplikasi Web Services XML

Aplikasi berbasis Windows Services
Jika kita membuat sekumpulan Class untuk membuat aplikasi berbasis windows, maka Class-Class itu
bisa kita gunakan untuk jenis aplikasi lain, seperti aplikasi berbasis web (ASP.NET)
1.3 Keuntungan Framework .NET
Berikut beberapa keuntungan dari Framework .NET
Mudah
Kemudahan di sini lebih ke arah pada kemudahan bagi para developer untuk membuat aplikasi yang
dijalankan pada lingkungan Framework .NET. Beberapa hal yang merepotkan developer pada saat
membuat aplikasi, telah di hilangkan atau di ambil alih kemampuannya oleh Framework .NET, misalnya
masalah lifetime sebuah objek yang biasanya luput dari perhatian developer pada saat proses pembuatan
aplikasi. Masalah ini telah ditangani dan diatur secara otomatis oleh Framework .NET melalui komponen
yang bernama Garbage Collector yang bertanggung jawab untuk mencari dan membuang objek yang
sudah tidak terpakai secara otomatis.
Efisien
Kemudahan pada saat proses pembuatan aplikasi, akan berimplikasi terhadap efisiensi dari suatu proses
produktivitas, baik efisien dalam hal waktu pembuatan aplikasi atau juga efisien dalam hal lain, seperti
biaya (cost).
Konsisten
Kemudahan-kemudahan pada saat proses pembuatan aplikasi, juga bisa berimplikasi terhadap
konsistensi pada aplikasi yang kita buat. Misalnya, dengan adanya BCL, maka kita bisa menggunakan
objek atau Class yang dibuat untuk aplikasi berbasis windows pada aplikasi berbasis web. Dengan adanya
kode yang bisa dintegrasikan ke dalam berbagai macam aplikasi ini, maka konsistensi kode-kode aplikasi
kita dapat terjaga.
Produktivitas
Semua kemudahan-kemudahan di atas, pada akhirnya akan membuat produktivitas menjadi lebih baik.
Produktivitas naik, terutama produktivitas para developer, akan berdampak pada meningkatnya
produktivitas suatu perusahaan.
Membangun WebStore Dengan ASP.NET
Tanggal 18 Agustus kemarin aku ngajar Membangun Web Store Dengan ASP.NET di Brainmatics. Dalam
Training ini kita membahas bagaimana membuat sebuah toko elektronik yang terdiri dari 4 Lapisan [Data
Access <-- Business Logic <-- Web Service <-- Web Application]. Tujuan pembuatan arsitektur semacam
ini adalah untuk membuat sebuah Web Store yang Maintanable dan Scalable.
Training aku mulai dari Overview Visual Studio Express, setelah itu aku jelaskan bagaimana mendesain
sebuah database dari bentuk Conceptual Data Model (CDM), Physical Data Model (PDM) dan diakhiri
dengan membuat Database Microsoft Access. Setelah pembuatan Database selesai kemudian dilanjutkan
dengan pembuatan Data Access yang akan melakukan koneksi ke Database. Data Access ini
sendiri kami buat dengan tipe Class Library dengan bahasa pemrograman C#, setelah pembuatan
Data Access ini selesai kemudian kami membuat Business Logic dimana dalam Business Logic ini semua
didefinisikan operasi-operasi yang akan dijalankan oleh WebStore. Business Logic ini sendiri juga dibuat
dengan tipe Class Library dengan bahasa pemrograman C#.
Setelah pembuatan Business Logic selesai, kemudian dilanjutkan dengan pembuatan Web Service dimana
Web Service ini akan mengakses ke Business Logic yang telah dibuat sebelumnya. Web Service ini
juga dibuat dengan bahasa Pemrograman C#. Setelah pembuatan Web Service selesai kami kemudian
membuat Web Application yang akan mengakses ke Web Service yang telah dibuat. Web Application ini
sendiri juga dibuat dengan bahasa pemrograman C#.
Salah satu hal yang menarik dari acara tersebut adalah bahwa masih sedikit sekali peserta yang
menggunakan ASP.NET dalam pekerjaan mereka. Rata-rata para peserta menggunakan PHP dan Java
dalam project-project yang mereka atau perusahaan mereka buat. Karena semua peserta adalah Web
Developer dan mereka sudah bekerja semua maka selama ini hanya mendalami Tools dan Bahasa
Pemrograman sesuai dengan apa yang dipakai dalam Perusahaan mereka. Setelah mengikuti acara ini
rata-rata para peserta ingin sekali mendalami ASP.NET untuk itu aku berikan kepada mereka banyak
resources untuk belajar ASP.NET ini, dan tentu saja tidak kelupaan aku beritahu kepada mereka mailinglist yang membahas teknologi .NET ini sendiri.
Pengenalan Bahasa Pemrograman C#
C# (C Sharp) adalah sebuah bahasa pemrograman yang dibuat setelah bahasa pemrograman Java
muncul, basis dari C# sebenarnya adalah C++. Karena banyaknya kekurangan dan kelemahan dari
bahasa pemrograman C++, maka akhirnya dibuat bahasa pemrograman Java, dengan fitur dan model
yang lebih kompleks dari C++, Java memiliki banyak peminat. Akan tetapi setelah diketahui bahwa
ternyata dalam bahasa pemrograman Java juga masih memiliki banyak kelemahan, akhirnya Java
dikembangkan menjadi C#, dimana dalam bahasa pemrograman C# tersusun dari 70% Java, 20% C++
dan 10% baru. Sehingga hal ini dapat menciptakan suatu bahasa pemrograman baru yang menutup
kelemahan C++, maupun Java.
Langsung saja mari kita perhatikan contoh program hello words dengan menggunakan C# berikut ini;
1.
2.
3.
4.
5.
6.
7.
8.
9.
using System;
class Welcome
{
static void main(string[] args)
{
Console.WriteLine("Hello Words !!!");
}
}
Maka output dari program diatas adalah :
view plainprint?
1. Hello Words !!!
Console.WriteLine( "Hello Words !!!" ); Adalah fungsi dalam C# yang digunakan untuk mencetak text
kedalam layar dimana setelah mencetak text, ia langsung berganti ke baris baru dibawahnya. Sedangkan
Console.Write() adalah fungsi yang digunakan untuk mencetak text akan tetapi tidak berganti baris ketika
selesai.
Seperti halnya bahasa pemrograman yang lain, id dalam C# kita juga diperbolehkan menggunakan
escape character, yaitu beberapa karakter khusus yang digunakan untuk memodifikasi pencetakan text
yang kita lakukan. Untuk lebih jelasnya perhatikan contoh dibawah ini :
1.
2.
3.
4.
5.
6.
7.
8.
9.
using System;
class Welcome
{
static void main(string[] args)
{
Console.WriteLine("Hello\nWords!!!");
}
}
Maka setelah kita mengcompile program diatas akan dihasilkan output seperti dibawah ini :
1. Hello
2. Words!!!
Berkenalan Dengan C# dan CLR
Pendahuluan
C# (dibaca "C Sharp") merupakan bahasa pemrograman modern yang berorientasi objek. Secara sintaks
C# mirip dengan bahasa-bahasa keluarga C seperti C, C++, dan Java. C# menggabungkan produktifitas
dan kemudahan yang ada di Visual Basic dengan kemampuan dan fleksibilitas yang ada di C++, dan
menambahkan hal-hal baru yang tidak ada di Java. Perancang utamanya adalah Anders Hejlsberg dari
Microsoft, yang dulunya membuat Turbo Pascal dan berperan dalam pengembangan bahasa Delphi dan
IDE Borland Delphi.
Bahasa ini telah diserahkan oleh Microsoft ke badan standar internasional ECMA. Proses standarisasinya
selesai pada Desember 2001 dengan nama standarnya ECMA-334. Dengan standar tersebut, siapapun
dapat dengan mudah dan bebas membuat implementasi bahasa C#.
Hello, World!!!
Mungkin cara yang paling baik untuk mengenal suatu bahasa adalah dengan melihat contoh
programnya. Inilah program "Hello World" yang dibuat dengan C#:
// Contoh001
class Halo
{
static void Main()
{
System.Console.WriteLine("Halo, dunia!!!");
}
}
Jika program tersebut dicompile dan dijalankan, maka akan keluar tulisan berikut di layar:
Halo, dunia!!!
Menganalisa "Hello World"
Cara mengcompile dan menjalankan program "Hello World" akan dibahas di akhir tutorial ini.
Sebelumnya, kita akan menganalisa program di atas sedikit demi sedikit.
// Contoh001
Baris tersebut merupakan comment satu baris. Comment satu baris diawali dengan // dan berakhir di
baris yang bersangkutan. Comment tidak akan mempengaruhi jalannya program, walaupun begitu
comment merupakan alat yang handal untuk dokumentasi dan penulisan catatan-catatan saat kita
membuat program.
Lalu perhatikan baris berikut (baris sebelumnya sengaja dilompati):
static void Main()
Baris di atas mendeklarasikan suatu method yang bernama Main() (di beberapa bahasa pemrograman
lain, method disebut fungsi atau subroutine). Setiap program C# harus memiliki method ini. Method
Main() adalah pintu masuk program anda, yang berarti bahwa method ini akan dipanggil saat program
dijalankan. Isi atau tubuh method harus diawali dengan { (kurung kurawal buka) dan diakhiri dengan }
(kurung kurawal tutup).
C# merupakan bahasa yang "case sensitive", jadi method yang bernama Main() (m huruf besar)
berbeda dengan method yang bernama main() (m huruf kecil). Kita bisa melihat bahwa C#
meninggalkan adat istiadat keluarga C yang menggunakan method main() (m huruf kecil) sebagai pintu
masuk program. Hal ini dilakukan agar C# konsisten dengan salah satu panduan penamaan modern
yaitu mengawali nama method dengan huruf besar. Untuk sementara, static dan void tidak akan
dibahas.
Kita bisa lihat bahwa method Main() berada di dalam class yang bernama Halo, dengan deklarasi
sebagai berikut:
class Halo
Class merupakan salah satu unit enkapsulasi di C#. Maksudnya, class digunakan untuk mengelompokkan
data-data dan method-method yang saling berhubungan. Tubuh class dibatasi dengan { dan }.
Di dalam C#, method harus berada di dalam unit enkapsulasi, contohnya class. Dalam Contoh001,
method Main() berada di dalam class Halo. Ini adalah aturan baru bagi programmer C dan C++,
tetapi bukanlah hal yang asing bagi programmer Java. Kita bebas menentukan nama class yang memuat
method Main().
Aktivitas utama program kita terletak di baris berikut:
System.Console.WriteLine("Halo, dunia!!!");
Saat program dijalankan, baris tersebut menyebabkan keluarnya tulisan "Halo, dunia!!!" yang diikuti baris
baru. Hal tersebut dilaksanakan oleh method WriteLine(). Method WriteLine() tersebut berada di
dalam class yang bernama Console (sebagaimana method Main() berada dalam suatu class). Class
Console sendiri dikelompokkan ke dalam namespace yang bernama System. Namespace digunakan
untuk mengelompokkan class-class dan beberapa elemen bahasa lainnya. Jadi kita memanggil method
WriteLine() dengan menuliskan mulai dari nama namespacenya, class yang memuatnya, sampai ke
method itu sendiri. “Halo Dunia!” dikatakan sebagai argumen bagi method WriteLine(). Class
Console merupakan bagian dari BCL (Base Class Library), jadi bisa dipastikan bahwa semua
implementasi standar C# memilikinya.
Baris yang barus saja kita bahas biasa disebut dengan statement. Statement di atas melakukan
pemanggilan method, tetapi nanti kita akan melihat bahwa masih banyak jenis-jenis statement lainnya.
Setiap statement di C# harus diakhiri dengan ; (titik koma).
Terlalu Panjang?
Jika kita membuat program console, kita akan banyak memakai method WriteLine(). Pemanggilannya
yang cukup panjang seperti pada Contoh001 tentunya akan merepotkan. Ada cara yang dapat dilakukan
untuk menyingkatnya, yaitu sebagai berikut:
// Contoh002
using System;
class HaloDanDadah
{
static void Main()
{
Console.WriteLine("Halo!");
Console.WriteLine("Dadah!");
}
}
Output programnya adalah sebagai berikut:
Halo!
Dadah!
Perhatikan statement berikut:
using System;
Statement tersebut memungkinkan kita untuk menggunakan semua class yang berada di dalam
namespace System secara langsung. Karenanya, pemanggilan terhadap method WriteLine() cukup
diawali dengan nama classnya yaitu Console.
Di dalam Contoh002 juga jelas terlihat bahwa method WriteLine() mengganti baris setelah menuliskan
argumennya. Oleh karena itu, "Dadah!" tertulis di bawah "Halo!".
Membuat, Mengcompile, dan Menjalankan Program
Di bagian ini akan dibahas dua cara, yaitu menggunakan Framework .NET di Windows dan menggunakan
Mono di Linux.
Menggunakan Framework .NET di Windows
Yang pertama kali harus kita lakukan adalah mendownload Microsoft .NET Framework SDK (106 MB)
atau Microsoft .NET Framework Redistributable (23 MB). Ukuran versi SDK jauh lebih besar dari versi
redistributablenya, sebab versi SDK memuat dokumentasi, contoh-contoh program, dan tools-tools
tambahan yang berguna untuk pengembangan program. Untuk mencoba program-program di tutorial ini
anda dapat menggunakan versi redistributable. Dokumentasi yang ada di SDK akan menjadi kebutuhan
saat anda sudah memulai pemrograman serius menggunakan C#. Versi SDK hanya akan dapat berjalan
di Windows 2000, Windows XP, dan Windows Server 2003.
Setelah menginstall Framework .NET, di dalam folder Windows anda akan terdapat folder yang
menyimpan compiler C#. Contoh foldernya adalah sebagai berikut:
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322
Lokasi tepatnya bergantung pada lokasi folder Windows anda dan versi Framework .NET yang anda
install. Compiler C# yang terletak di folder tersebut bernama csc.exe. Untuk dapat memanggil compiler
C# dari folder manapun, pastikan untuk menulis perintah seperti berikut di command prompt (cek dulu
lokasi foldernya):
PATH = %PATH%; C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322
Setting tersebut hanya akan berlaku dan bertahan pada command prompt yang sedang anda gunakan.
Untuk membuatnya universal dan permanen, tambahkan perintah tersebut ke file autoexec.bat. Cara
lainnya, jika anda menggunakan Windows 2000 atau Windows XP, adalah dengan mengklik kanan "My
Computer", memilih "Properties", masuk ke tab "Advanced", dan memilih "Environment Variables". Di
bagian "System Variables" terdapat variabel "Path". Tambahkan folder tempat Framework .NET terinstall
ke variable "Path" tersebut.
Anda dapat menuliskan program-program C# dengan text editor seperti notepad. Save source code
anda dengan akhiran cs, misalnya contoh002.cs. Untuk mengcompile program anda, masuklah ke
command prompt dan gunakan csc. Misalnya, untuk mengcompile contoh002.cs digunakan perintah
berikut:
csc contoh002.cs
Hasil kompilasinya adalah contoh002.exe. Anda dapat menjalankannya dengan mengetikkan nama
filenya, misalnya:
contoh002
Menggunakan Mono di Linux
Mono merupakan salah satu proyek open source untuk membuat implementasi Framework .NET. Caracara menginstallnya terdapat di website yang bersangkutan. Setelah Mono terinstall, ketik source code
dengan text editor favorit anda dan save dengan akhiran cs. Untuk mengcompile program anda,
gunakan perintah berikut:
mcs namaprogram.cs
Untuk menjalankannya, gunakan perintah berikut:
mono namaprogram.exe
Terdapat juga Mono untuk Windows. Silahkan mencobanya jika anda tertarik.
Menggunakan IDE (Integrated Development Environment)
Selain menggunakan text editor dan command line compiler, kita bisa juga menggunakan beberapa IDE
yang telah tersedia. IDE gratis yang bisa diperoleh contohnya adalah SharpDevelop (lihat gambar di
atas) dan MonoDevelop. IDE komersial yang ada contohnya adalah Microsoft Visual Studio .NET 2003.
Berkenalan dengan CLR dan Konsep Program Managed
Program-program C# yang dihasilkan tidaklah terikat dengan hardware maupun operating system
tertentu. Untuk menjalankan suatu program C#, di komputer (atau alat elektronik lain) yang
bersangkutan harus tersedia CLR (Common Language Runtime). Jalannya sebuah program C# akan
dikelola sepenuhnya oleh CLR, oleh karena itu program C# dikatakan sebagai program yang managed.
Program-program klasik yang langsung berinteraksi dengan operating system maupun hardware tertentu
disebut program unmanaged. Untuk lebih jelasnya, lihatlah diagram berikut:
Dengan perantara CLR tersebut, program-program C# menjadi portable. Misalnya, program C# yang
dicompile menggunakan Microsoft .NET Framework dapat langsung dijalankan di Linux asalkan terinstall
Mono atau implementasi CLR lainnya. Mungkin anda sudah bisa menebak bahwa Microsoft .NET
Framework dan Mono merupakan beberapa implementasi CLR yang ada. Beberapa implementasi CLR
lainnya contohnya adalah Microsoft .NET Compact Framework (untuk Pocket PC dan handphone),
dotGNU Portable .NET (untuk Linux), dan Rotor (untuk FreeBSD).
Konsep ini sekilas terdengar mirip dengan Java dan JVMnya, namun ada beberapa hal yang membedakan
CLR dengan Java.
CLR merupakan bagian dari standar internasional yang disebut CLI (Common Language Infratructure).
CLI memuat CLR, CIL (Common Intermediate Language, analog dengan Java bytecode), dan BCL (Base
Class Library). Sifat CLR yang merupakan open standard memungkinkan siapa saja membuat
implementasinya. Hal ini berbeda dengan platform Java yang merupakan platform pribadi milik Sun.
Tidak seperti platform Java yang terkait dengan bahasa Java, CLR tidak terkait dengan bahasa
pemrograman apapun. Contoh-contoh bahasa yang bisa dipakai untuk membuat program managed
adalah C#, Managed Extension for C++, Visual Basic .NET, Jscript .NET, J#, Pascal .NET, Delphi .NET,
Phyton .NET, Eiffel#, COBOL .NET, dan Perl .NET. Program yang dibuat dengan bahasa berbeda dapat
dengan mudah berinteraksi!
CLI dibuat oleh Microsoft bersamaan dengan implementasinya yaitu Framework .NET. Microsoft
menyerahkan CLI kepada ECMA untuk distandarisasi agar pengadopsiannya lebih cepat dan meluas.
Hasil standarisasi tersebut tidaklah sia-sia, sebab dengan standar-standar yang ada muncullah
implementasi-implementasi open source seperti Mono dan dotGNU Portable .NET. Standar CLI tersebut
diberi nama ECMA-335.
Penutup
Tutorial pengenalan ini mungkin belum bisa memperlihatkan keunggulan C# terhadap bahasa-bahasa
pemrograman lainnya, terutama terhadap C++ dan Java. Programmer C++ nantinya akan melihat
bahwa sintaks di C# lebih bersih, aturan-aturan bahasanya lebih sederhana, dan class librarynya yang
berorientasi objek sangat intuitif untuk dipakai. Programmer Java akan lebih cepat untuk beradaptasi
dan akan menghargai elemen-elemen bahasa baru seperti property, indexer, delegate, dan event.
Dengan mempelajari C#, anda juga telah mulai menapakkan kaki anda ke dunia pemrograman managed
yang modern, di mana perbedaan bahasa, operating system, dan hardware tidak lagi menjadi pembatas.
Semoga tutorial ini dapat menarik minat anda untuk mempelajari C# lebih lanjut.
.NET Framework
Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Langsung ke: navigasi, cari
.NET Framework
Pengembang
Microsoft
Versi rilis terbaru
Version 2.0.50727.42 / October 27
2005
Jenis
System platform
Lisensi
Proprietary software
Situs web
www.microsoft.com/net/
Microsoft .NET Framework (dibaca Microsoft Dot Net Framework) adalah sebuah komponen yang
dapat ditambahkan ke sistem operasi Microsoft Windows atau telah terintegrasi ke dalam Windows (mulai
dari Windows Server 2003 dan versi-versi Windows terbaru). Kerangka kerja ini menyediakan sejumlah
besar solusi-solusi program untuk memenuhi kebutuhan-kebutuhan umum suatu program baru, dan
mengatur eksekusi program-program yang ditulis secara khusus untuk framework ini. .NET Framework
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 software 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 application virtual machine, sehingga para programmer tidak perlu
mengetahui kemampuan CPU tertentu yang akan menjalankan program. CLR juga menyediakan layananlayanan penting lainnya seperti jaminan keamanan, pengaturan memori, 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
programmer 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 mengcover area yang luas dari
kebutuhan program pada bidang user interface, pengaksesan data, koneksi basis data, kriptografi,
pembuatan aplikasi berbasis web, algoritma numerik, dan komunikasi jaringan. Fungsi-fungsi yang ada
dalam class library dapat digabungkan oleh programmer dengan kodenya sendiri untuk membuat suatu
program aplikasi baru.
Pada berbagai literatur dan referensi di Internet, .NET Framework seringkali disingkat menjadi .NET saja.
Daftar isi
[sembunyikan]



1 .NET Framework sebagai platform
o 1.1 .NET 3.0 sebagai jalan menuju Longhorn
o 1.2 .NET di masa depan
2 .NET di operating system selain Windows
3 Sumber daya pranala luar terkait dengan .NET
.NET Framework sebagai platform
.NET seringkali juga dapat diartikan sebagai platform, yang merupakan suatu lingkungan terpadu untuk
pengembangan dan eksekusi untuk berbagai macam bahasa pemrograman dan kumpulan library 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 seringkali 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:





.NET
.NET
.NET
.NET
.NET
1.0
1.1
2.0
3.0
3.5
dan
dan
dan
dan
dan
Visual
Visual
Visual
Visual
Visual
Studio
Studio
Studio
Studio
Studio
.NET (atau seringkali disebut juga dengan Visual Studio .NET 2002)
.NET 2003
2005
2005 dengan tambahan addin untuk WPF, WCF dan WF
2008
.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.
[sunting] .NET 3.0 sebagai jalan menuju Longhorn
.NET 3.0 pada hakekatnya adalah .NET 2.0 ditambah pilar-pilar teknologi untuk Windows Longhorn
Client/Server atau sekarang bernama Windows Vista untuk Longhorn Client dan Windows Server 2008
untuk Longhorn Server. Dengan demikian, program yang dibuat dengan .NET 2.0 dapat berjalan pada
.NET 3.0, kecuali untuk fasilitas atau fitur yang sangat spesifik.
Pilar-pilar teknologi pada .NET 3.0:




Windows Presentation Foundation atau WPF
Windows Communication Foundation atau WCF
Windows Workflow Foundation atau WF
CardSpace
Walaupun teknologi di atas ditujukan pada Windows Vista dan sesudahnya, .NET 3.0 dapat pula diinstall
pada Windows XP SP2 dan Windows Server 2003.
Versi terbaru dari .NET adalah .NET 3.5. Versi ini didukung sepenuhnya oleh Visual Studio 2008, berisi
teknologi-teknologi kunci yaitu:

LINQ


Extension Methods
Lambda Expression
Dan juga perbaikan serta pengembangan dari WPF, WCF, dan WF.
.NET di masa depan
Pada saat artikel ini disunting, 07:13, 11 Februari 2008 (UTC), Microsoft tengah mengembangkan .NET
"4". .NET 4 ini akan lebih mengedepankan konsep SOA (Service Oriented Architecture) dan SaaS
(Software As A Service). Dengan dukungan library dasar yang sudah ada seperti XML dan WCF, Microsoft
berencana untuk menambah dukungan web service seperti REST, JSON, POX. Di samping itu Microsoft
juga telah mempersiapkan pengembangan "Oslo" sebagai bagian dari inisiatif pengembangan platform
.NET.
.NET di operating system selain Windows
.NET 2.0 saat ini juga memiliki pasangan kembar yang berjalan di Linux dan UNIX, yaitu Mono. Mono
dikembangkan oleh Ximian, yang selanjutnya diakuisisi oleh Novell. Mono merupakan platform open
source, berarti semua orang dapat berpartisipasi di dalam pengembangan Mono.
Download