Rabu, 21 September 2011

perkembangan net.framework & C#

 


C# kadang-kadang dapat disebutkan sebagai bahasa pemrograman yang paling mencerminkan dasar dari CLR dimana semua program-program .NET berjalan, dan bahasa ini sangat bergantung pada kerangka tersebut sebab ia secara spesifik didisain untuk mengambil manfaat dari fitur-fitur yang tersedia pada CLR.

Pada akhir dekade 1990-an, microsoft  membuat program Microsoft Visual J++ sebagai sebuah langkah percobaan untuk menggunakan Java di dalam sistem operasi Windows untuk meningkatkan antarmuka dari Microsoft Component Object Model (COM). Akan tetapi, akibat masalah dengan pemegang hak ciptabahasa pemrograman Java, Sun Microsystem, Microsoft pun menghentikan pengembangan J++, dan beralih untuk membuat pengganti J++, kompilernya dan mesin virtualnya sendiri dengan menggunakan sebuah bahasa pemograman yang bersifat general-purpose. Untuk menangani proyek ini, Microsoft merekrut Anders Helsberg, yang merupakan mantan karyawan Borland yang membuat bahasa Turbo pascal, dan Borland delphi, yang juga mendesain Windows Foundation Classes (WFC) yang digunakan di dalam J++. Sebagai hasil dari usaha tersebut, C# pun pertama kali diperkenalkan pada bulan Juli 2000 sebagai sebuah bahasa pemrograman modern berorientasi objek yang menjadi sebuah bahasa pemrograman utama di dalam pengembangan di dalam platform  Microsoft Net.Framework. 
 
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 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 danaplikasi berbasis web.
   
 Pengalaman Helsberg sebelumnya dalam pendesain bahasa pemrograman seperti Visual J++, Delphi, Turbo Pascal) dengan mudah dilihat dalam sintaksis bahasa C#, begitu pula halnya pada inti Common Language Runtime (CLR). Dari kutipan atas interview dan makalah-makalah teknisnya ia menyebutkan kelemahan-kelemahan yang terdapat pada bahasa pemrograman yang umum digunakan saat ini, misalnya C++, Java, Delphi, ataupun Smalltalk.

Mengapa C# dibuat ?


Munculnya C#
 

  Pada tahun 2000, Microsoft pun merilis bahasa C# (dibaca C Sharp), yang secara umum
didesain   oleh  Anders  Hejlsberg,   yang   juga   lagi-lagi  melanjutkan   penamaan   yang   diplesetkan. Simbol pagar (#) yang digunakan dalam C#, secara sekilas terlihat seperti empat buah plus-plus yang  disusun   sedemikian   rupa.   Selain   itu,   di   dalam   notasi   musik,   tanda   pagar   memang menunjukkan  nada   yang   lebih   tinggi   dibandingkan   dengan   nada   yang   tidak   memiliki pagar sehingga C# lebih tinggi dibandingkan C.  Seperti  halnya bahasa  Java,  bahasa C#  telah membuang beberapa  fitur  berbahaya dari bahasa   C.  Memang,
pointer   belum  sepenuhnya   dicabut   dari   C#, tapi sebagianbesar  pemrograman dengan menggunakan bahasa  C#  tidak membutuhkan pointer   secara   ekstensif,  seperti halnya C dan C++. Persamaan lainnya antara Java dan C# mencakup peran dari kompiler. Biasanya, kompiler menerjemahkan kode sumber (berkas teks yang berisi bahasa pemrograman tingkat tinggi) ke dalam kode mesin. Kode mesin tersebut membentuk sebuah berkas yang dapat dieksekusi  (executable atau EXE),  yang berupa sebuah berkas yang siap untuk dijalankan kapan saja secara langsung oleh komputer. Tetapi, karena kode mesin hanya diasosiasikan dengan sebuah jenis mesin tertentu saja, berkas yang dapat dieksekusi tersebut hanya dapat berjalan di atas satu jenis  komputer   saja.   Inilah  sebabnya  mengapa  kita  tidak dapat  menjalankan  secara   langsung  program  yang   sama   yang   berjalan   di   atas   sistem  operasi  Windows   di   atas   sistem  operasi GNU/Linux,   Apple   Macintosh   atau   sistem   operasi   lainnya,   dan   begitu   pula   sebaliknya.
  

Alat bantu kompiler yang digunakan oleh C# tidak menerjemahkan kode sumber ke ?dalam
kode mesin,   tetapi  hanya menerjemahkan ke dalam  sebuah bahasa perantara atau  Intermediate Language   (disingkat  menjadi   IL),  yang merupakan  sebuah  jenis  kode mesin hanya   saja  telah digeneralisasikan. Ketika kita hendak menjalankan program di atas sebuah mesin, maka IL akan diterjemahkan ke dalam kode mesin secara keseluruhan. Dilihat dari perspektif pengguna, proses translasi ini tidak terlihat. Tetapi, dalam teorinya, ternyata di balik itu terdapat proses dua langkah rumit yang mengizinkan program dengan bahasa IL yang sama untuk berjalan di atas mesin yang berbeda. Selain itu, sebuah program dalam bentuk IL dapat diuji lebih mudah
oleh sistem operasi dari keberadaan kode yang merusak atau kode yang mencurigakan. Kemampuan ini telah menjadi
lebih penting saat program tersebut dipertukarkan melalui jaringan publik, seperti halnya Internet.
 

Bahasa  C,  C++,   Java   dan  C#   kini   dikenal   dengan   sebutan   keluarga   besar   bahasa  pemrograman C  atau  bahasa pemrograman berbasis  bahasa C .  C++ mengandung  semua  hal yang dimiliki oleh C tetapi memiliki fitur yang tidak dimiliki oleh C, sementara Java dan C# meskipun masih berbasis  bahasa C,  keduanya  tidaklah  serta-merta merupakan pengganti  dari  bahasa C, dan antara bahasa Java dan C# memiliki kesamaan dalam berbagai bidang, ketimbang mirip dengan bahasa C++. Meskipun demikian, semuanya menggunakan banyak sintaksis yang mirip, seperti void, int, struct, dan lain sebagainya.


Sejarah C#


NAMA PEMBUAT C#

















 

Anders Hejlsberg


SEJARAH  C#

c# (dibaca: C sharp) merupakan sebuah bahasa pemrograman yang berorientasi objek yang dikembangkan oleh Microsoft sebagai bagian dari inisiatif kerangka .NET Framework. Bahasa pemrograman ini dibuat berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek-aspek ataupun fitur bahasa yang terdapat pada bahasa-bahasa pemrograman lainnya seperti Java, Delphi, Visual Basic, dan lain-lain) dengan beberapa penyederhanaan. Menurut standar ECMA-334 C# Language Specification, nama C# terdiri atas sebuah huruf Latin C (U+0043) yang diikuti oleh tanda pagar yang menandakan angka # (U+0023). Tanda pagar # yang digunakan memang bukan tanda kres dalam seni musik (U+266F), dan tanda pagar # (U+0023) tersebut digunakan karena karakter kres dalam seni musik tidak terdapat di dalam keyboard standar.
Pada akhir dekade 1990-an, Microsoft membuat program Microsoft Visual J++ sebagai sebuah langkah percobaan untuk menggunakan Java di dalam sistem operasi Windows untuk meningkatkan antarmuka dari Microsoft Component Object Model (COM). Akan tetapi, akibat masalah dengan pemegang hak cipta bahasa pemrograman Java, Sun Microsystems, Microsoft pun menghentikan pengembangan J++, dan beralih untuk membuat pengganti J++, kompilernya dan mesin virtualnya sendiri dengan menggunakan sebuah bahasa pemrograman yang bersifat general-purpose. Untuk menangani proyek ini, Microsoft merekrut Anders Helsberg, yang merupakan mantan karyawan Borland yang membuat bahasa Turbo Pascal, dan Borland Delphi, yang juga mendesain Windows Foundation Classes (WFC) yang digunakan di dalam J++. Sebagai hasil dari usaha tersebut, C# pun pertama kali diperkenalkan pada bulan Juli 2000 sebagai sebuah bahasa pemrograman modern berorientasi objek yang menjadi sebuah bahasa pemrograman utama di dalam pengembangan di dalam platform Microsoft .NET Framework.
Pengalaman Helsberg sebelumnya dalam pendesain bahasa pemrograman seperti Visual J++, Delphi, Turbo Pascal) dengan mudah dilihat dalam sintaksis bahasa C#, begitu pula halnya pada inti Common Language Runtime (CLR). Dari kutipan atas interview dan makalah-makalah teknisnya ia menyebutkan kelemahan-kelemahan yang terdapat pada bahasa pemrograman yang umum digunakan saat ini, misalnya C++, Java, Delphi, ataupun Smalltalk. Kelemahan-kelemahan yang dikemukakannya itu yang menjadi basis CLR sebagai bentukan baru yang menutupi kelemahan-kelemahan tersebut, dan pada akhirnya memengaruhi desain pada bahasa C# itu sendiri. Ada kritik yang menyatakan C# sebagai bahasa yang berbagi akar dari bahasa-bahasa pemrograman lain.
Fitur-fitur yang diambilnya dari bahasa C++ dan Java adalah desain berorientasi objek, seperti garbage collection, reflection, akar kelas (root class), dan juga penyederhanaan terhadap pewarisan jamak (multiple inheritance). Fitur-fitur tersebut di dalam C# kini telah diaplikasikan terhadap iterasi, properti, kejadian (event), metadata, dan konversi antara tipe-tipe sederhana dan juga objek. C# didisain untuk memenuhi kebutuhan akan sintaksis C++ yang lebih ringkas dan Rapid Application Developmet  yang 'tanpa batas' (dibandingkan dengan RAD yang 'terbatas' seperti yang terdapat pada Delphi dan Visual Basic). Agar mampu mempromosikan penggunaan besar-besaran dari bahasa C#, Microsoft, dengan dukungan dari Intel Corporation dan Hewlett-Packard, mencoba mengajukan standardisasi terhadap bahasa C#. Akhirnya, pada bulan Desember 2001, standar pertama pun diterima oleh European Computer Manufacturers Association atau Ecma International (ECMA), dengan nomor standar ECMA-334. Pada Desember 2002, standar kedua pun diadopsi oleh ECMA, dan tiga bulan kemudian diterima oleh International Organization fo Standardization (ISO), dengan nomor standar ISO/IEC 23270:2006.