Programming in C Sharp

C# (diucapkan C sharp ) adalah bahasa pemrograman tingkat tinggi tujuan umum yang mendukung banyak paradigma . C# mencakup pengetikan statis, pengetikan kuat , cakupan leksikal , imperatif , deklaratif , fungsional , generik , berorientasi objek ( berbasis kelas ), dan disiplin pemrograman berorientasi komponen.


Bahasa pemrograman C# dirancang oleh Anders Hejlsberg dari Microsoft pada tahun 2000 dan kemudian disetujui sebagai standar internasional oleh Ecma (ECMA-334) pada tahun 2002 dan ISO / IEC (ISO/IEC 23270) pada tahun 2003. Microsoft memperkenalkan C# bersama dengan .NET Framework dan Visual Studio , keduanya merupakan closed-source . Pada saat itu, Microsoft tidak memiliki produk sumber terbuka. Empat tahun kemudian, pada tahun 2004, proyek sumber terbuka dan gratis yang disebut Mono dimulai, menyediakan kompiler lintas platform dan lingkungan runtimeuntuk bahasa pemrograman C#. Satu dekade kemudian, Microsoft merilis Visual Studio Code (editor kode), Roslyn (kompiler), dan platform .NET terpadu (kerangka kerja perangkat lunak), yang semuanya mendukung C# dan gratis, sumber terbuka, dan lintas platform. Mono juga bergabung dengan Microsoft tetapi tidak digabungkan ke dalam .NET.


Pada November 2022, versi bahasa stabil terbaru adalah C# 11.0, yang dirilis pada 2022 di .NET 7.0.



Tujuan Desain 


Standar Ecma mencantumkan tujuan desain ini untuk C#:


  • Bahasa ini dimaksudkan untuk menjadi bahasa pemrograman yang sederhana, modern, bertujuan umum, dan berorientasi objek.
  • Bahasa, dan implementasinya, harus memberikan dukungan untuk prinsip-prinsip rekayasa perangkat lunak seperti pemeriksaan tipe yang kuat , pemeriksaan batas array , deteksi upaya untuk menggunakan variabel yang tidak diinisialisasi , dan pengumpulan sampah otomatis . Kekokohan perangkat lunak, daya tahan, dan produktivitas pemrogram adalah penting.
  • Bahasa ini dimaksudkan untuk digunakan dalam mengembangkan komponen perangkat lunak yang cocok untuk penerapan di lingkungan terdistribusi.
  • Portabilitas sangat penting bagi source code dan programmer , terutama yang sudah familiar dengan C dan C++ .
  • Dukungan untuk internasionalisasi sangat penting.
  • C# dimaksudkan agar cocok untuk menulis aplikasi baik untuk sistem yang dihosting maupun tertanam , mulai dari yang sangat besar yang menggunakan sistem operasi yang canggih , hingga yang sangat kecil yang memiliki fungsi khusus.
  • Meskipun aplikasi C# dimaksudkan untuk menjadi ekonomis sehubungan dengan kebutuhan memori dan daya pemrosesan , bahasa tersebut tidak dimaksudkan untuk bersaing secara langsung dalam hal kinerja dan ukuran dengan bahasa C atau bahasa rakitan.

Sejarah 

Selama pengembangan .NET Framework , pustaka kelas awalnya ditulis menggunakan sistem kompiler kode terkelola yang disebut " Simple Managed C " (SMC). Pada bulan Januari 1999, Anders Hejlsberg membentuk sebuah tim untuk membangun sebuah bahasa baru pada saat itu bernama Cool, yang merupakan singkatan dari " C-like Object Oriented Language". Microsoft telah mempertimbangkan untuk mempertahankan nama "Cool" sebagai nama akhir bahasa tersebut, tetapi memilih untuk tidak melakukannya karena alasan merek dagang. Pada saat proyek .NET diumumkan secara publik pada Juli 2000 Professional Developers Conference, bahasa tersebut telah diganti namanya menjadi C#, dan pustaka kelas serta runtime ASP.NET telah dipindahkan ke C#.


Hejlsberg adalah desainer utama dan arsitek utama C# di Microsoft, dan sebelumnya terlibat dengan desain Turbo Pascal , Embarcadero Delphi (sebelumnya CodeGear Delphi, Inprise Delphi dan Borland Delphi), dan Visual J++ . Dalam wawancara dan makalah teknis dia telah menyatakan bahwa kelemahan di sebagian besar bahasa pemrograman utama (misalnya C++ , Java , Delphi , dan Smalltalk ) mendorong dasar-dasar Common Language Runtime (CLR), yang, pada gilirannya, mendorong desain bahasa C# itu sendiri.