Senin, 11 April 2011

Posted by Rizki Hayati Tanjung 07.24
Bahasa C# adalah sebuah bahasa pemrograman modern yang bersifat general-purpose, ‎berorientasi objek, yang dapat digunakan untuk membuat program di atas arsitektur Microsoft .NET Framework. ‎Bahasa C# ini memiliki kemiripan dengan bahasa Java, C dan C++ (selengkapnya dapat dilihat pada Sejarah ‎Bahasa C#).
Bahasa pemrograman ini dikembangkan oleh sebuah tim pengembang di Microsoft yang dipimpin oleh ‎Anders Hejlsberg, seorang yang telah lama malang melintang di dunia pengembangan bahasa ‎pemrograman karena memang ialah yang membuat Borland Turbo Pascal, Borland Delphi, dan juga Microsoft J++.
Kini, C# telah distandarisasi oleh European Computer Manufacturer Association (ECMA) dan ‎juga International Organization for Standardization (ISO) dan telah menginjak versi 3.0 yang mendukung ‎beberapa fitur baru semacam Language Integrated Query (LINQ) dan lain-lainnya.‎

[sunting] Sejarah perkembangan bahasa pemrograman C#

Sebelum tahun 1970-an (atau lebih lama), menggunakan komputer seperti saat ini—dari mulai ‎mengetik hingga main game komputer—merupakan sesuatu hal yang mustahil. Revolusi yang terjadi di dalam dunia ‎komputer membutuhkan dua tahap agar dapat sampai kepada zaman seperti sekarang, yakni:
  1. saat ‎komputer dibangun untuk membantu para ilmuwan untuk menyelesaikan tugas-tugas ilmiahnya, dan
  2. ‎turunnya harga komputer secara signifikan dan dapat digunakan oleh para pengguna yang bukan programmer, yang berlangsung beberapa dekade setelah tahap pertama selesai.
Pengguna awam komputer pun ‎akhirnya "dilahirkan", dan sejak itu programmer dan pengguna merupakan dua buah entitas yang sama ‎sekali berbeda, dan kurang begitu dapat berkomunikasi satu dengan lainnya.‎

[sunting] Awal-awal pemrograman komputer digital

Komputer digital yang dapat diprogram pertama kali dibuat pada tahun 1930-an. Maksud dari "komputer digital" di sini adalah bahwa komputer-komputer tersebut bekerja dengan menggunakan angka-angka diskrit (yang memiliki ‎batasan yang jelas), seperti halnya 0, 1, nilai π (3.14159) dan nilai-nilai angka lainnya. Sementara itu, ‎maksud dari "komputer yang dapat diprogram" adalah komputer dapat melakukan operasi-operasi ‎matematika dengan berdasarkan instruksi-instruksi yang disebut dengan program. Untuk beberapa tahun ‎semenjak itu, program-program komputer ditulis di atas kertas yang dilubangi (disebut sebagai punched-‎card) atau medium-medium lainnya. Akhirnya, perangkat fisik komputer pun disebut sebagai perangkat ‎keras (hardware), sementara instruksi-instruksi yang ditulis di atas punched card atau medium lainnya ‎dikenal dengan perangkat lunak (software). Dinamai "perangkat lunak", karena memang memiliki sifat ‎mudah diubah. Kita tidak harus membangun komputer secara keseluruhan untuk melakukan jenis ‎perhitungan yang berbeda. Sementara itu, perangkat keras didesain untuk melakukan beberapa jenis ‎operasi aritmetika dan logika. Operasi mana yang dapat dilakukan oleh perangkat keras dan bagaimana ‎urutan operasi tersebut, diatur oleh kode-kode program. Pada saat program dijalankan, komputer juga ‎disebut sedang "mengeksekusi program", yakni saat komputer membaca kode dan melakukan instruksi ‎yang disuruhkan kepadanya.‎
Untuk dekade-dekade awal perkembangan komputer digital, hubungan antara perangkat keras ‎dan perangkat lunak sangatlah erat. Setiap mesin memiliki instruksinya sendiri-sendiri yang kadang tidak ‎cocok dengan mesin lainnya. Untuk mentransfer sebuah program dari satu mesin ke mesin lainnya yang ‎lebih baru dan tentunya lebih cepat, program tersebut harus ditulis ulang dengan semua kode-kodenya ‎yang baru. Nah, kode-kode yang hanya dimiliki oleh mesin tertentu ini dinamakan dengan kode mesin ‎‎(machine code) atau bahasa mesin (machine language). Untuk lebih cepat mengingat instruksi-instruksi dalam kode mesin, para desainer pun kemudian ‎membentuk sebuah cara dengan menyamakannya dengan sebuah kata tertentu (umumnya berupa ‎singkatan dalam bahasa Inggris), yang kemudian berevolusi menjadi bahasa rakitan atau assembly ‎language.‎

[sunting] Munculnya bahasa pemrograman tingkat tinggi

Pada awal tahun 1950-an, para desainer pun mencoba untuk mendesain bahasa komputer yang ‎umum yang program hasilnya tidak hanya dapat berjalan di mesin-mesin tertentu saja. Muncullah bahasa ‎pemrograman tingkat tinggi atau high-level programming language. Disebut demikian untuk ‎membedakannya dengan kode mesin yang disebut sebagai bahasa pemrograman tingkat rendah atau ‎low-level programming language. Tren yang ada adalah kemunculan beberapa bahasa pemrogramTeks tebalan seperti FORTRAN, COBOL, BASIC, dan masih banyak lagi yang ‎lainnya. Beberapa bahasa pemrograman tersebut masih terus-terusan digunakan hingga saat ini. Sebagai ‎contoh, FORTRAN (akronim dari Formula Translator) masih sering digunakan oleh para ilmuwan dan para ‎insinyur bidang teknik; COBOL (akronim dari Common Business-Oriented Language) juga sering digunakan ‎dalam institusi-institusi finansial; dan bahasa BASIC (akronim dari Beginner’s All-purpose Symbolic ‎Instruction Code) juga masih banyak digunakan hingga saat ini, meskipun terjadi perubahan yang sangat ‎signifikan dari ketika bahasa tersebut dipublikasikan pertama kali pada tahun 1963.‎
Program-program komputer yang dibangun dengan menggunakan bahasa FORTRAN, COBOL, ‎BASIC, atau bahasa tingkat tinggi lainnya pada dasarnya adalah berisi berkas teks yang terdiri atas ‎sekumpulan pernyataan yang ditulis di dalam bahasa pemrograman tertentu, dengan beberapa peraturan ‎sintaksis, semantik dan gramatika yang didefinisikan di dalam bahasa pemrograman. Karena komputer ‎hanya dapat menjalankan machine code, maka program yang ditulis di dalam bahasa pemrograman ‎tingkat tinggi harus terlebih dahulu diterjemahkan ke dalam machine code sebelum dieksekusi. Proses ‎penerjemahan ini dapat dilakukan baik itu dengan menggunakan teknik translasi (alat bantunya disebut ‎dengan translator), teknik interpretasi (alat bantunya disebut interpreter), atau dengan menggunakan teknik ‎kompilasi (alat bantunya disebut dengan compiler). Teknik translasi merupakan teknik kuno yang ‎menerjemahkan keseluruhan kode bahasa pemrograman menjadi machine code; teknik kompilasi ‎merupakan evolusi dari teknik translasi di mana kode dalam bahasa pemrograman dipisah-pisah ke dalam ‎beberapa berkas untuk kemudian diterjemahkan dan dijadikan machine code, sementara teknik ‎interpretasi merupakan sebuah teknik di mana eksekusi dan translasi dilakukan secara berbarengan ‎‎(bersama-sama).‎
Bahasa pemrograman lainnya yang dikembangkan selama tahun 1950-an tapi sudah tidak ‎digunakan lagi adalah ALGOL (akronim dari Algorithmic Programming Language). ALGOL memang sudah ‎tidak digunakan lagi, tapi memberikan dampak yang signifikan untuk beberapa bahasa pemrograman ‎lainnya di dalam sejarah perkembangan bahasa pemrograman komputer. ALGOL didesain pertama kali pada akhir tahun 1950-an oleh sebuah komite ‎internasional, untuk kemudian diperbaiki pada tahun 1960 dan 1968. Meskipun saat ini bahasa tersebut ‎mati seolah lenyap ditelan bumi, jiwanya masih hidup di dalam bahasa pemrograman tingkat tinggi yang ‎sekarang banyak digunakan, seperti Pascal, PL/1, dan Bahasa C.‎

[sunting] Munculnya C

Bahasa C dilahirkan di Bell Telephone Laboratories (atau sering disebut sebagai Bell Labs saja). ‎Sulit membayangkan dunia modern saat ini jika tidak ada pengaruh dari Bell Labs. Pada tahun 1947, ‎transistor ditemukan di Bell Labs, dan juga sistem operasi yang sekarang banyak digunakan di dalam ‎komputer korporat (UNIX) juga dibuat di sana. Untuk beberapa tahun, ada sebuah bahasa pemrograman ‎yang sangat dekat dengan sistem operasi UNIX, yang disebut dengan bahasa C, yang didesain oleh Dennis ‎Ritchie dan Brian Kernighan. Mengapa disebut hanya C saja? Bahasa C disebut demikian mengingat ‎bahasa tersebut adalah turunan dari bahasa B, dan bahasa B merupakan pemendekan dari Basic CPL, ‎sementara CPL sendiri adalah sebuah bahasa pemrograman yang merupakan singkatan dari Combined ‎Programming Language.‎
Meskipun populer, bahasa C terkesan lebih rumit jika dibandingkan dengan ‎bahasa pemrograman lainnya, khususnya jika digunakan oleh para pemrogram pemula. Ketika ALGOL dan banyak turunan ALGOL menggunakan kata-kata yang ‎mudah diingat seperti BEGIN dan END untuk membatasi sebuah seksi dalam instruksi program, bahasa C ‎malah menggunakan tanda kurung keriting ({ dan }). Beberapa operasi juga disederhanakan, bahkan ‎banyak singkatannya yang cukup membingungkan para programmer pemula. Contoh yang sering ‎digunakan adalah printf, dan scanf. Meskipun demikian, program-program yang ditulis dalam bahasa C ‎seringnya lebih efisien dibandingkan dengan bahasa pemrograman lainnya, yang artinya program-‎program dalam bahasa C diterjemahkan ke dalam machine code dalam jumlah yang relatif lebih sedikit ‎jika dibandingkan dengan program yang ditulis dalam bahasa pemrograman lainnya. Salah satu bagian ‎yang paling canggih dari bahasa C adalah bahwa bahasa C memiliki "pointer", selain tentunya "variabel" ‎dan "konstanta". Istilah Pointer dalam bahasa pemrograman merujuk kepada alamat-alamat memori yang ‎mengizinkan para programmer untuk melakukan beberapa tugas secara jauh lebih efisien, dengan ‎melibatkan bit, byte, dan word memori. Karenanya, banyak orang menyebut bahasa C sebagai "High-level ‎Assembly language, atau bahasa rakitan tingkat tinggi.‎
Meskipun bahasa C masih merupakan bahasa pemrograman yang populer, bahasa ‎tersebut saat ini dapat dikatakan telah "kadaluwarsa". Saat ini, bahasa tersebut diklasifikasikan ‎ke dalam "bahasa pemrograman prosedural tradisional" (traditional procedural programming language), sebuah istilah yang merujuk kepada ‎struktur program-program dalam bahasa C. Umumnya sebuah program bahasa C terdiri atas ‎banyak prosedur (juga sering disebut sebagai fungsi/function atau subrutin/subroutine), yang ‎setiap prosedur tersebut merupakan bagian dari kode yang melakukan beberapa tugas tertentu ‎atau merupakan implementasi dari algoritma tertentu. Prosedur-prosedur tersebut dapat ‎bekerja dengan data dalam beberapa cara. Data adalah kumpulan angka atau teks atau bahkan ‎gabungan antara keduanya. Dalam bahasa pemrograman prosedural tradisional, kodelah yang ‎‎memproses data menjadi output.‎

0 komentar:

Posting Komentar

  • RSS
  • Delicious
  • Digg
  • Facebook
  • Twitter
  • Linkedin
  • Youtube