কম্পিউটার

C# এবং .NET ইকোসিস্টেমের একটি সংক্ষিপ্ত বিবরণ প্রদান করুন


C# হল একটি অবজেক্ট-ওরিয়েন্টেড, টাইপ-নিরাপদ এবং সাধারণ-উদ্দেশ্যের প্রোগ্রামিং ভাষা, যা প্রোগ্রামারদের উত্পাদনশীল করার উপর ফোকাস করে। এটি অভিব্যক্তি, সরলতা এবং কর্মক্ষমতার উপর ফোকাসের মাধ্যমে এই উত্পাদনশীলতা অর্জন করার চেষ্টা করে। এটি উইন্ডোজ, ম্যাক এবং লিনাক্সের মতো বিভিন্ন প্ল্যাটফর্মে কাজ করে।

টাইপ-নিরাপত্তা

C# একটি স্ট্যাটিকলি টাইপ করা ভাষা। এর মানে আপনি একটি প্রোগ্রাম কম্পাইল করার সময় প্রকারগুলি যাচাই করা হয়। এটি প্রোগ্রামটি চালানোর আগে একটি বড় সেট ত্রুটি দূর করে।

আবর্জনা সংগ্রহ

স্বয়ংক্রিয় মেমরি ব্যবস্থাপনা C# এর একটি অপরিহার্য বৈশিষ্ট্য। এটিতে একটি আবর্জনা সংগ্রহকারী রয়েছে যা প্রোগ্রামগুলির সাথে চলে, অব্যবহৃত মেমরি পুনরুদ্ধার করে। এটি প্রোগ্রামারদের থেকে স্পষ্টভাবে মেমরি ডিলকেটিং করার বোঝা মুক্ত করে।

.NET ইকোসিস্টেম একটি সাধারণ ভাষা রানটাইম এবং বেস ক্লাস লাইব্রেরির মাধ্যমে C# প্রোগ্রামগুলির জন্য সমর্থন প্রদান করে। এটিতে একটি অ্যাপ্লিকেশন স্তরও রয়েছে যা ডেস্কটপ, মোবাইল বা ওয়েব অ্যাপ্লিকেশন তৈরি করতে লাইব্রেরি সরবরাহ করে৷

C# এবং .NET ইকোসিস্টেমের একটি সংক্ষিপ্ত বিবরণ প্রদান করুন

সাধারণ ভাষা রানটাইম

কমন নির্দেশ করে যে রানটাইমটি .NET ইকোসিস্টেমের অন্যান্য ভাষার দ্বারা ভাগ করা হয়, যেমন C#, ভিজ্যুয়াল বেসিক, F# এবং পরিচালিত C++। CLR আবর্জনা সংগ্রহ এবং ব্যতিক্রম হ্যান্ডলিং প্রদান করে।

C# কম্পাইলার কোডটিকে একটি মধ্যবর্তী ভাষায় (IL) রূপান্তর করে, যা জাভার বাইট-কোডের মতো। CLR তারপর এই IL কে মেশিনের নেটিভ কোডে রূপান্তর করে, যেমন X-64 বা X-86, এটি কার্যকর করার ঠিক আগে। এটি জাস্ট-ইন-টাইম (JIT) সংকলন নামে পরিচিত।

এই মধ্যবর্তী ভাষার জন্য ধারক একটি সমাবেশ বলা হয়. এতে IL কোড সহ প্রকারগুলি সম্পর্কে তথ্য রয়েছে৷ এটি একটি সমাবেশ অন্যকে উল্লেখ করার অনুমতি দেয়। C# প্রতিফলন ব্যবহার করে মেটাডেটাও জিজ্ঞাসা করতে পারে।

বেস ক্লাস লাইব্রেরি

সমাবেশের একটি সেট CLR-এ অন্তর্ভুক্ত করা হয়, যাকে বেস ক্লাস লাইব্রেরি বলা হয়। এটি প্রয়োজনীয় কার্যকারিতা প্রদান করে যা বেশিরভাগ প্রোগ্রামের জন্য প্রয়োজনীয়, যেমন I/O, ফাইল/টেক্সট প্রসেসিং, নেটওয়ার্কিং ইত্যাদি।

এটিতে ভাষার জন্য প্রয়োজনীয় প্রকারগুলিও অন্তর্ভুক্ত রয়েছে, যেমন সংগ্রহ, লিংক এবং অ্যাসিঙ্ক প্রোগ্রামিং, এবং আপনাকে আবর্জনা সংগ্রহ এবং প্রতিফলনের মতো CLR-এর বৈশিষ্ট্যগুলি অ্যাক্সেস করতে দেয়৷


  1. C ভাষায় putw() এবং getw() ফাংশন ব্যাখ্যা কর

  2. একটি স্ট্রিং কি? সি ল্যাঙ্গুয়েজে স্ট্রিং ডিক্লেয়ার করুন এবং ইনিশিয়ালাইজ করুন

  3. সি ভাষায় পয়েন্টার এবং অ্যারের ধারণা ব্যাখ্যা কর

  4. C# এবং .NET ইকোসিস্টেমের একটি সংক্ষিপ্ত বিবরণ প্রদান করুন