সি শার্প একটি অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ভাষা। পূর্ববর্তী প্রোগ্রামিং ভাষাগুলোর বিভিন্ন সীমাবদ্ধতা দূর করার লক্ষ্যে মাইক্রোসফট করপোরেশন এই নতুন প্রোগ্রামিং ভাষার উদ্ভাবন করে। এটি প্রথম বাজারজাত হয় ২০০০ সালে আলফা ভার্সন হিসেবে। এর চীফ আর্কিটেকচার ছিলেন অ্যানডার্স হেজলসবার্গ (Anders Hejlsberg) যিনি একজন বিখ্যাত প্রোগ্রামিং বিশারদ। সি শার্প প্রায় জাভার মত একটি ভাষা হলেও পুরোপুরি একরকম নয়। ভিন্ন প্ল্যাটফর্ম ছাড়াও এদের মধ্যে পার্থক্য রয়েছে, বিশেষত সি শার্পের ২.০ ভার্সনে। ভাষাগতভাবে উল্লেখযোগ্য পার্থক্য হলো নিরাপত্তা (সি শার্পে অনিরাপদ প্রোগ্রামিং করা সম্ভব), কো-রুটিন (পাইথনের মত yield নির্দেশনা), এবং নামবিহীন ফাংশন।

সি#
প্যারাডাইমমাল্টি-প্যারাডাইম: স্ট্রাকচার্ড, ইম্পেরাটিভ, অবজেক্ট ওরিয়েন্টেড, ইভেন্ট-ড্রাইভেন, টাস্ক-ড্রাইভেন, ফাংশনাল, জেনেরিক, রিফ্লেক্টিভ, কন্‌কারেন্ট
নকশাকারমাইক্রোসফট
বিকাশকারীমাইক্রোসফট
প্রথম প্রদর্শিত২০০০
স্থিতিশীল সংস্করণ
12.0[১] উইকিউপাত্তে এটি সম্পাদনা করুন / ১৪ নভেম্বর ২০২৩; ৩ মাস আগে (14 November 2023)
টাইপিং পদ্ধতিস্ট্যাটিক, ডাইনামিক,[২] শক্তিশালী, নিরাপদ, নমিনেটিভ, partially inferred
প্লাটফর্মকমন ল্যাংগুয়েজ ইনফ্রাস্ট্রাকচার
লাইসেন্সকমন ল্যাংগুয়েজ রান্‌টাইম স্বত্বাধিকারী; মোনো কম্পাইলার হল দ্বৈত জিপিএল (৩য় সংস্করণ), এমআইটি/এক্স১১; লাইব্রেরীগুলো এলজিপিএল (২য় সংস্করণ) এবং ডটজিএনইউ হল দ্বৈত জিপিএল, এলজিপিএল (২য় সংস্করণ)
ফাইলনেম এক্সটেনশন.cs
ওয়েবসাইটdocs.microsoft.com/en-us/dotnet/csharp/,%20https://docs.microsoft.com/de-de/dotnet/csharp/,%20https://docs.microsoft.com/ja-jp/dotnet/csharp/,%20https://docs.microsoft.com/fr-fr/dotnet/csharp/,%20https://docs.microsoft.com/it-it/dotnet/csharp/
মুখ্য বাস্তবায়নসমূহ
ভিজুয়াল সি#, .নেট ফ্রেমওয়ার্ক, মোনো, ডটজিএনইউ
উপভাষাসমূহ
সিওমেগা, স্পেক#, পলিফোনিক সি#
যার দ্বারা প্রভাবিত
সি++,[৩] আইফেল, জাভা,[৩] মডুলা-৩, অব্‌জেক্ট প্যাস্‌কেল,[৪] এমএল, আইকন, হ্যাস্কেল, সিওমেগা, এফ#
যাকে প্রভাবিত করেছে
ডি, ডার্ট,[৫] এফ#, জাভা,[৬] কটলিন, মাংকি, নেমের্লে, সুইফ্‌ট,[৭] ভালা

অনেক গুলো প্রোগ্রামিং ভাষার মিশ্রণ বলে সি শার্প যে বৈশিষ্ট্য অর্জন করেছে তা হল:

মাইক্রোসফট এর ডট নেট প্লাটফর্মের সাথে একীভূত হওয়ায় সি শার্পে আরো বৈচিত্র যোগ হয়েছে এবং এর জনপ্রিয়তাও বেড়েছে। তবে ডট নেট-এ একীভূত সি শার্পে শুধু মাত্র ডট নেট রান টাইম এর অধীনে চলতে পারে এরকম কোড চালানো যায়। এ ধরনের কোডকে ম্যানেজড কোড বলা হয়।

উদাহরণ সম্পাদনা

using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("Hello, world!");
    }
}

তথ্যসূত্র সম্পাদনা

  1. "Announcing C# 12"। সংগ্রহের তারিখ ১৮ নভেম্বর ২০২৩ 
  2. Torgersen, Mads (অক্টোবর ২৭, ২০০৮)। "New features in C# 4.0"Microsoft। জানুয়ারি ৩, ২০১২ তারিখে মূল থেকে আর্কাইভ করা। সংগ্রহের তারিখ অক্টোবর ২৮, ২০০৮ 
  3. Naugler, David (মে ২০০৭)। "C# 2.0 for C++ and Java programmer: conference workshop"। Journal of Computing Sciences in Colleges22 (5)। Although C# has been strongly influenced by Java it has also been strongly influenced by C++ and is best viewed as a descendant of both C++ and Java. 
  4. Hamilton, Naomi (অক্টোবর ১, ২০০৮)। "The A-Z of Programming Languages: C#"Computerworld। মার্চ ২৪, ২০১০ তারিখে মূল থেকে আর্কাইভ করা। সংগ্রহের তারিখ ফেব্রুয়ারি ১২, ২০১০We all stand on the shoulders of giants here and every language builds on what went before it so we owe a lot to C, C++, Java, Delphi, all of these other things that came before us. (Anders Hejlsberg) 
  5. "Web Languages and VMs: Fast Code is Always in Fashion. (V8, Dart) - Google I/O 2013"Google। সংগ্রহের তারিখ ২২ ডিসেম্বর ২০১৩ 
  6. Cornelius, Barry (ডিসেম্বর ১, ২০০৫)। "Java 5 catches up with C#"University of Oxford Computing Services। সংগ্রহের তারিখ জুন ১৮, ২০১৪In my opinion, it is C# that has caused these radical changes to the Java language. (Barry Cornelius) 
  7. Lattner, Chris (২০১৪-০৬-০৩)। "Chris Lattner's Homepage"। Chris Lattner। সংগ্রহের তারিখ ২০১৪-০৬-০৩The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.