সুচিপত্র[লুকান][দেখান]
- 1. C# আসলে কি?
- 2. C থেকে C# কে কী পার্থক্য করে?
- 3. ক্লাস আসলে কি?
- 4. বস্তু ঠিক কি?
- 5. স্থির, সর্বজনীন এবং অকার্যকর পদগুলির মধ্যে পার্থক্য কী?
- 6. কনস্ট্রাক্টর সংজ্ঞায়িত করুন।
- 7. আবর্জনা সংগ্রহে C# কি?
- 8. C# তে গঠন বলতে ঠিক কী বোঝায়?
- 9. কিভাবে C# কোড কম্পাইল করা হয়?
- 10. বিভিন্ন C# ক্লাস পরিষ্কারভাবে বর্ণনা করুন।
- 11. জাগড অ্যারে ঠিক কি?
- 12. আউট এবং রেফ প্যারামিটারের মধ্যে পার্থক্য কী?
- 13. C# এ, ডেস্ট্রাক্টর কি?
- 14. C# এ, একটি সূচক কী?
- 15. পরিচালিত এবং অব্যবস্থাপিত কোডের মধ্যে পার্থক্য কী?
- 16. সিরিয়ালাইজেশন বর্ণনা কর।
- 17. C#-এ, ক্ষেত্র এবং বৈশিষ্ট্য একে অপরের থেকে কীভাবে আলাদা?
- 18. আপনি কিভাবে C# এ বিবৃতি ব্যবহার করে বিস্তারিতভাবে বর্ণনা করতে পারেন?
- 19. আপনি কিভাবে একই ক্লাসে একই পদ্ধতির নামের সাথে অসংখ্য ইন্টারফেস বাস্তবায়ন করবেন?
- 20. C# এ, টাস্ক এবং থ্রেডের মধ্যে পার্থক্য কী?
- 21. C# এ চূড়ান্ত ফাংশন কি?
- 22. চূড়ান্ত করা ব্লক এবং চূড়ান্ত করার মধ্যে একটি পার্থক্য করুন।
- 23. বিস্তারিতভাবে C# নিষ্পত্তি পদ্ধতি বর্ণনা করুন।
- 24. C# মেথড ওভারলোডিং কি? ব্যাখ্যা করা.
- 25. শুধুমাত্র পঠন এবং ধ্রুবকের মধ্যে পার্থক্য কি?
- 26. ব্যবহারকারী নিয়ন্ত্রণ এবং কাস্টম নিয়ন্ত্রণ কি?
- 27. C# এ, একটি মাল্টিকাস্ট প্রতিনিধি কি?
- 28. C# এ অবজেক্ট পুলিং আসলে কি?
- 29. C#.NET-এ জেনেরিক ঠিক কী?
- 30. একটি ব্যক্তিগত ভার্চুয়াল পদ্ধতি ওভাররাইড করা কি সম্ভব?
- 31. C# এ মেথড ওভারলোডিং এবং মেথড ওভাররাইডিংয়ের মধ্যে পার্থক্য করুন?
- 32. C# এ, স্ট্রিং এবং স্ট্রিংবিল্ডারের মধ্যে পার্থক্য কী?
- 33. প্রতিনিধি আসলে কি?
- 34. কখন আপনার C# এ মাল্টিথ্রেডিং ব্যবহার করা উচিত এবং কখন আপনার এটি এড়ানো উচিত?
- 35. C# এ, একটি মাল্টিকাস্ট প্রতিনিধি কি?
- 36. C# এ, লেট বাইন্ডিং এবং আর্লি বাইন্ডিং এর মধ্যে পার্থক্য কি?
- 37. ডাইরেক্টকাস্ট এবং টাইপের মধ্যে পার্থক্য করুন?
- 38. C# এ HashSet কিভাবে ব্যবহার করা হয়?
- 39. অনুগ্রহ করে C# এ থ্রেড পুলিং ব্যাখ্যা করুন।
- 40. C# এ Const এবং ReadOnly কীওয়ার্ডের মধ্যে পার্থক্য কী?
- 41. আপনি C# XSD ফাইল সম্পর্কিত কোন বিবরণ দিতে পারেন?
- 42. আপনার কাছে অ্যাকসেসর বৈশিষ্ট্যগুলি পেতে এবং সেট করার অর্থ কী?
- 43. C# এ নির্ভরতা ইনজেকশন আসলে কি?
- উপসংহার
C# (পূর্বে C sharp নামে পরিচিত) হল একটি অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং ল্যাঙ্গুয়েজ যা প্রায়শই ডেভেলপাররা বিভিন্ন ক্রিয়াকলাপ করতে এবং একাধিক লক্ষ্য অর্জন করতে ব্যবহার করে।
অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং ভাষা, যেমন C++, পাইথন এবং জাভা, বিভিন্ন স্বাদে আসে। এই প্রোগ্রামিং ভাষাগুলি একটি নির্দিষ্ট কাঠামোর মধ্যে কাজ করার জন্য ডিজাইন করা হয়েছে। একইভাবে, C# একটি নির্দিষ্ট কাঠামোর জন্য তৈরি এবং বিকাশ করা হয়েছে, যথা, NET।
.NET ফ্রেমওয়ার্ক দ্বারা তৈরি করা হয়েছিল মাইক্রোসফট. এটি অ্যাপ্লিকেশন, ঘোষণা, অ্যাপ্লিকেশন নির্দেশাবলী এবং আরও অনেক কিছু বিকাশের জন্য একটি বিশাল প্ল্যাটফর্ম সরবরাহ করে। C# ওয়েব ডেভেলপমেন্ট, গেমিং এর জন্য ব্যবহার করা যেতে পারে, মোবাইল অ্যাপস, উইন্ডোজ অ্যাপ্লিকেশন, এবং অন্যান্য অনুরূপ প্রকল্প।
এই ধরনের সুবিধার সাথে, C# এর ব্যবহার প্রসারিত হয়েছে, এবং বিশেষজ্ঞদের প্রয়োজন যারা এটি সঠিকভাবে ব্যবহার করতে পারে দ্বিগুণ বেড়েছে। কারণ C# একটি জনপ্রিয় প্রোগ্রাম ভাষা, অনেক বড় এবং ছোট সংস্থাগুলি তাদের পণ্যগুলির উপর ভিত্তি করে।
সুতরাং, সাক্ষাত্কারে দক্ষতার জন্য প্রাথমিক এবং উন্নত স্তরের C# প্রশ্নগুলি অনুশীলন করুন।
1. C# আসলে কি?
Microsoft C# একটি সমসাময়িক, সাধারণ উদ্দেশ্য, অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ভাষা. C# কমন ল্যাঙ্গুয়েজ ইনফ্রাস্ট্রাকচার (CLI) এর উদ্দেশ্যে তৈরি করা হয়েছে, যা এক্সিকিউটেবল কোড এবং একটি রানটাইম এনভায়রনমেন্ট নিয়ে গঠিত যা বিভিন্ন কম্পিউটার সিস্টেম এবং আর্কিটেকচারে অসংখ্য উচ্চ-স্তরের ভাষা ব্যবহার করতে সক্ষম করে।
2. C থেকে C# কে কী পার্থক্য করে?
C সাধারণত পদ্ধতিগত ভাষা হিসাবে পরিচিত, যেখানে C# আরও অবজেক্ট-ভিত্তিক। প্রধান পার্থক্য হল C# কমন ল্যাঙ্গুয়েজ রানটাইম (CLR) এর মাধ্যমে স্বয়ংক্রিয় আবর্জনা সংগ্রহের অনুমতি দেয়, যেখানে C তা করে না। C#-এর জন্য. NET ফ্রেমওয়ার্ক চালানোর প্রয়োজন, যেখানে C হল একটি প্ল্যাটফর্ম-স্বাধীন ভাষা।
3. ক্লাস আসলে কি?
একটি ক্লাস বস্তু নির্মাণের জন্য একটি টেমপ্লেট হিসাবে কাজ করে। কৌশলের পাশাপাশি এর বৈশিষ্ট্য রয়েছে। একটি একক শ্রেণী থেকে, আমরা একটি বস্তুর বেশ কয়েকটি উদাহরণ তৈরি করতে পারি।
4. বস্তু ঠিক কি?
অবজেক্ট হিসেবে পরিচিত একটি ক্লাস ইনস্ট্যান্স হল কিভাবে আমরা একটি ক্লাসের কার্যকারিতা অ্যাক্সেস করি। একটি বস্তু তৈরি করতে, আমরা "নতুন" কীওয়ার্ড ব্যবহার করতে পারি। মেমরিতে একটি বস্তু তৈরি করে এমন একটি শ্রেণীর ফাংশন, ডেটা সদস্য এবং আচরণ সংরক্ষণ করা হয়।
5. স্থির, সর্বজনীন এবং অকার্যকর পদগুলির মধ্যে পার্থক্য কী?
প্রোগ্রামের যে কোন জায়গায় সর্বজনীনভাবে সংজ্ঞায়িত ভেরিয়েবল অ্যাক্সেস করতে পারে। স্ট্যাটিক ভেরিয়েবলগুলি একটি ক্লাস ইনস্ট্যান্স তৈরি করার প্রয়োজন ছাড়াই বিশ্বব্যাপী অ্যাক্সেস করা যেতে পারে। C# এ, একটি পদ্ধতির রিটার্ন টাইপ নির্দেশ করতে Void নামক একটি টাইপ মডিফায়ার ব্যবহার করা হয়।
6. কনস্ট্রাক্টর সংজ্ঞায়িত করুন।
কনস্ট্রাক্টর হল একটি শ্রেণী-নির্দিষ্ট সদস্য ফাংশন। যখন একটি বস্তু গঠিত হয়, কনস্ট্রাক্টরকে স্বয়ংক্রিয়ভাবে বলা হয়। ক্লাসটি ডাটা সদস্যদের সমস্ত মান তৈরি করে যেহেতু এটি শুরু হয়।
7. আবর্জনা সংগ্রহে C# কি?
অযাচিত আইটেম দ্বারা দখল করা স্মৃতি পরিষ্কার করার প্রক্রিয়াটি আবর্জনা সংগ্রহ হিসাবে পরিচিত। একটি নির্দিষ্ট পরিমাণ মেমরি একটি ক্লাস অবজেক্টে স্বয়ংক্রিয়ভাবে বরাদ্দ করা হয় যখন এটি হিপ মেমরিতে তৈরি হয়। এখন আপনি আইটেমটিতে কাজ শেষ করেছেন, এটি পূর্বে দখল করা মেমরি স্পেস নষ্ট হয়ে গেছে। স্মৃতিশক্তি মুক্ত করতে হবে।
8. C# তে গঠন বলতে ঠিক কী বোঝায়?
C#-এ, একটি কাঠামো হল একটি ডেটা টাইপ যা অসংখ্য ডেটা প্রকারের সমন্বয়ে গঠিত, যেমন পদ্ধতি, ক্ষেত্র, কনস্ট্রাক্টর, ধ্রুবক, বৈশিষ্ট্য, সূচক, অপারেটর এবং এমনকি অন্যান্য কাঠামো। একটি কাঠামো একটি একক ইউনিটে অনেক ডেটা ধরণের একত্রীকরণে সহায়তা করে। এই পদ্ধতিতে, তারা কোর্সের সাথে সাদৃশ্যপূর্ণ। স্ট্রাকচার হল মান প্রকার, যেখানে ক্লাস হল রেফারেন্স টাইপ।
9. কিভাবে C# কোড কম্পাইল করা হয়?
যখন একটি প্রকল্প তৈরি করা হয়, তখন C# সোর্স কোড ইন্টারমিডিয়েট ল্যাঙ্গুয়েজ (IL) এ কম্পাইল করা হয়। IL হল নির্দেশাবলীর একটি সংগ্রহ যা একটি মেশিন প্রসেসরে কার্যকর করার জন্য মেশিন কোড তৈরি করে। কোডটি প্রিপ্রসেসর থেকে কম্পাইলারে, তারপর অ্যাসেম্বলারে এবং অবশেষে লিঙ্কারের কাছে চারটি ধাপে পাঠানো হয়।
10. বিভিন্ন C# ক্লাস পরিষ্কারভাবে বর্ণনা করুন।
- স্ট্যাটিক: এটি এমন ধরণের ক্লাস যা ইনস্ট্যান্ট করা যায় না, তাই আমরা এটির একটি বস্তু তৈরি করতে নতুন কীওয়ার্ড ব্যবহার করতে পারি না, তবে আমরা ক্লাসের সদস্যদের সরাসরি তাদের ক্লাসের নাম ব্যবহার করে কল করতে পারি।
- বিমূর্ত: বিমূর্ত ক্লাস সংজ্ঞায়িত করতে, বিমূর্ত কীওয়ার্ড ব্যবহার করুন। বিমূর্ত ক্লাসের জন্য কোন বস্তু তৈরি করা যাবে না। আপনি যদি এটি ব্যবহার করতে চান তবে এটি একটি সাবক্লাসে উত্তরাধিকার সূত্রে প্রাপ্ত হতে হবে। বিমূর্ত এবং অ-বিমূর্ত পদ্ধতির সহজ সংজ্ঞা একটি বিমূর্ত শ্রেণীর মধ্যে অনুমোদিত।
- আংশিক: এই ক্লাসটি আপনাকে আপনার বৈশিষ্ট্য, পদ্ধতি এবং ইভেন্টগুলিকে বিভিন্ন উত্স ফাইলে আলাদা করতে সক্ষম করে, যা পরবর্তীতে বিল্ড টাইমে একটি একক ক্লাসে একত্রিত হয়।
- সীলমোহর করা: একটি সীলমোহরযুক্ত শ্রেণী অন্য শ্রেণীর থেকে উত্তরাধিকার সূত্রে প্রাপ্ত হতে পারে না এবং সীমিত বৈশিষ্ট্য রয়েছে। অ্যাক্সেস মডিফায়ার সিল করা ক্লাসে যোগ করা যাবে না।
11. জাগড অ্যারে ঠিক কি?
অ্যারে উপাদান সহ একটি অ্যারেকে জ্যাগড অ্যারে হিসাবে উল্লেখ করা হয়। জাগড অ্যারেগুলির উপাদানগুলি অনেক আকার এবং আকারের হতে পারে।
12. আউট এবং রেফ প্যারামিটারের মধ্যে পার্থক্য কী?
রেফ হিসাবে একটি আর্গুমেন্ট দেওয়ার সময়, পদ্ধতিতে পাস করার আগে প্যারামিটারটি আরম্ভ করা আবশ্যক। একটি আউট প্যারামিটার, অন্যদিকে, একটি পদ্ধতিতে সরবরাহ করার আগে আরম্ভ করার প্রয়োজন নেই।
13. C# এ, ডেস্ট্রাক্টর কি?
ডেস্ট্রাক্টর হল C#-এ এক ধরনের পদ্ধতি যা একটি ক্লাসের অংশ। একটি ধ্বংসকারীর প্রাথমিক কাজ হল একটি ক্লাসের দৃষ্টান্ত মুছে ফেলা যখন সেগুলি আর মেমরি খালি করার জন্য প্রয়োজন হয় না। ধ্বংসকারী কখনও কখনও চূড়ান্ত হিসাবে পরিচিত হয়।
14. C# এ, একটি সূচক কী?
একটি ক্লাস বা কাঠামোর উদাহরণ খুঁজে পেতে C# এ সূচকগুলি ব্যবহার করা হয়। তাই সূচীকৃত মানগুলি একটি অ্যারের মতোই অ্যাক্সেস করা যেতে পারে, তবে স্পষ্টভাবে কোনও প্রকার বা উদাহরণ সদস্য ঘোষণা না করেই।
15. পরিচালিত এবং অব্যবস্থাপিত কোডের মধ্যে পার্থক্য কী?
পরিচালিত কোড আপনাকে একটি পরিচালিত CLR রানটাইম পরিবেশে.NET ফ্রেমওয়ার্কে কোড চালানোর অনুমতি দেয়।
নিয়ন্ত্রিত কোড অপারেটিং সিস্টেমের পরিবর্তে পরিচালিত রানটাইম পরিবেশে কার্যকর করে। ট্র্যাশ সংগ্রাহক, ব্যতিক্রম হ্যান্ডলিং ইত্যাদির মতো বিভিন্ন পরিষেবা প্রদান করে।
অব্যবস্থাপিত কোড হল এমন কোড যা CLR-এ কার্যকর হয় না এবং.NET ফ্রেমওয়ার্কের বাইরে কাজ করে। তারা উচ্চ-স্তরের ভাষা পরিষেবা সরবরাহ করে না এবং তাই তাদের ছাড়াই কাজ করে। C++ এরকম একটি উদাহরণ।
16. সিরিয়ালাইজেশন বর্ণনা কর।
একটি নেটওয়ার্কে স্থানান্তর করার জন্য আইটেম থেকে বাইটের একটি স্ট্রিম তৈরি করতে হবে। সিরিয়ালাইজেশন হল একটি আইটেমকে বাইটের একটি স্রোতে রূপান্তর করার কাজ। একটি আইটেম সিরিয়ালাইজযোগ্য হওয়ার জন্য সিরিয়ালাইজ ইন্টারফেস অবশ্যই প্রয়োগ করতে হবে। বাইটের একটি প্রবাহ থেকে একটি বস্তু নির্মাণের বিপরীতকে ডি-সিরিয়ালাইজেশন বলা হয়।
17. C#-এ, ক্ষেত্র এবং বৈশিষ্ট্য একে অপরের থেকে কীভাবে আলাদা?
একটি ক্ষেত্র হল একটি শ্রেণির সদস্য বা যেকোনো ধরনের বস্তু যা ডেটা সংরক্ষণের জন্য একটি অবস্থান হিসাবে কাজ করে, যেখানে একটি সম্পত্তি হল একটি শ্রেণির সদস্য যা একটি ব্যক্তিগত ক্ষেত্রের মান পড়া, লেখা এবং গণনা করার জন্য একটি পদ্ধতি অফার করে।
18. আপনি কিভাবে C# এ বিবৃতি ব্যবহার করে বিস্তারিতভাবে বর্ণনা করতে পারেন?
ব্যবহারের বিবৃতিটি অ্যাপ্লিকেশনের মধ্যে এক বা একাধিক সংস্থান ব্যবহার সীমাবদ্ধ করতে ব্যবহৃত হয়। সম্পদ একটি ধ্রুবক ভিত্তিতে গ্রাস এবং মুক্তি হয়.
এই বিবৃতিটির প্রাথমিক কাজ হল অবাঞ্ছিত সংস্থানগুলি পরিচালনা করা এবং সেগুলিকে স্বয়ংক্রিয়ভাবে ছেড়ে দেওয়া৷ একবার যে বস্তুটি সম্পদ ব্যবহার করছে তা তৈরি হয়ে গেলে, নিশ্চিত করুন যে বস্তুটির নিষ্পত্তি ফাংশনটিকে সেই বস্তুর প্রয়োজনীয় সংস্থানগুলি ছেড়ে দেওয়ার জন্য বলা হয়েছে; এখানে স্টেটমেন্ট ব্যবহার করা কাজে আসে।
19. আপনি কিভাবে একই ক্লাসে একই পদ্ধতির নামের সাথে অসংখ্য ইন্টারফেস বাস্তবায়ন করবেন?
একই পদ্ধতির নামের সাথে বেশ কয়েকটি ইন্টারফেস বাস্তবায়ন করতে, ফাংশনের মূল অংশের মধ্যে প্রয়োগ করা এড়িয়ে চলুন। পরিবর্তে, আপনি ইন্টারফেসের নাম সরাসরি মেথড বডিতে সরবরাহ করবেন। কম্পাইলার চিনবে যে কোন ইন্টারফেস পদ্ধতিগুলি উল্লেখ করা হচ্ছে, সমস্যাটি সমাধান করে।
20. C# এ, টাস্ক এবং থ্রেডের মধ্যে পার্থক্য কী?
একটি থ্রেড হল একটি বাস্তব অপারেটিং সিস্টেম থ্রেড যার নিজস্ব স্ট্যাক এবং কার্নেল সংস্থান রয়েছে। থ্রেড সবচেয়ে নিয়ন্ত্রণ প্রদান করে। থ্রেড আপনাকে Abort (), সাসপেন্ড (), বা পুনরায় শুরু () করতে দেয়। একটি থ্রেডের স্থিতি পর্যবেক্ষণ করা যেতে পারে বা এর বৈশিষ্ট্যগুলি, যেমন স্ট্যাকের আকার, অ্যাপার্টমেন্টের অবস্থা এবং সংস্কৃতি সেট করা যেতে পারে। CLR থ্রেডপুল দ্বারা মোড়ানো থ্রেডের পুল রাখে।
টাস্ক প্যারালাল লাইব্রেরিতে টাস্ক নামে একটি ক্লাস রয়েছে। ThreadPool থেকে ভিন্ন, টাস্কের নিজস্ব অপারেটিং সিস্টেম থ্রেড নেই। কার্যগুলি টাস্কশিডিউলার দ্বারা নির্বাহ করা হয়, যদিও ডিফল্ট সময়সূচীটি ThreadPool দ্বারা কার্যকর করা হয়। যখন একটি টাস্ক সম্পূর্ণ হয় এবং একটি ফলাফল প্রাপ্ত হয় তখন অবহিত করা সম্ভব।
21. C# এ চূড়ান্ত ফাংশন কি?
ক্লিনিং অ্যাকশনের জন্য ব্যবহৃত অবজেক্ট ক্লাস ফাইনালাইজ () ফাংশনকে সংজ্ঞায়িত করে। যখন একটি বস্তুর একটি রেফারেন্স একটি বর্ধিত সময়ের জন্য ব্যবহার করা হয় না, আবর্জনা সংগ্রহকারী প্রায়ই এই ফাংশন কল করবে।
আবর্জনা সংগ্রাহক স্বয়ংক্রিয়ভাবে নিয়ন্ত্রিত সংস্থানগুলিকে মুক্ত করে, তবে আপনি যদি ফাইল হ্যান্ডেল, ডেটা সংযোগ ইত্যাদির মতো অপ্রয়োজনীয় সংস্থানগুলি মুক্ত করতে চান তবে আপনাকে অবশ্যই চূড়ান্ত ফাংশনটি স্পষ্টভাবে প্রয়োগ করতে হবে।
22. চূড়ান্ত করা ব্লক এবং চূড়ান্ত করার মধ্যে একটি পার্থক্য করুন।
ট্রাই-এন্ড-ক্যাচ ব্লকগুলি সম্পূর্ণ হওয়ার পরে সমাপ্ত ব্লকটিকে বলা হয় কারণ এটি ব্যতিক্রম পরিচালনার জন্য প্রয়োজন। ব্যতিক্রম ধরা পড়ল কিনা তা বিবেচনা না করেই কোডের ব্লকটি কার্যকর করা হয়। ব্লকের কোড সাধারণত পরিষ্কার হয়।
আবর্জনা সংগ্রহের ঠিক আগে চূড়ান্ত পদ্ধতিটি চালু করা হয়। চূড়ান্ত করা পদ্ধতির প্রধান দায়িত্ব হল অব্যবস্থাপিত কোড সাফ করা, যেটি স্বয়ংক্রিয়ভাবে ট্রিগার হয়ে যায় যখন কোনো দৃষ্টান্ত পুনরায় কল করা হয় না।
23. বিস্তারিতভাবে C# নিষ্পত্তি পদ্ধতি বর্ণনা করুন।
disposeof() ফাংশন একটি বস্তুর অব্যবহৃত সম্পদ মুক্ত করে। অব্যবহৃত সংস্থান, যেমন ফাইল, ডেটা সংযোগ এবং আরও অনেক কিছু। এই ফাংশনটি ইন্টারফেস IDisposable-এ নির্দিষ্ট করা হয়েছে, যা ইন্টারফেস IDisposable বডি ঘোষণা করে ক্লাস দ্বারা প্রয়োগ করা হয়।
নিষ্পত্তি ফাংশন স্বয়ংক্রিয়ভাবে বলা হয় না; কার্যকর সম্পদ ব্যবহারের জন্য প্রোগ্রামারকে ম্যানুয়ালি এটি বাস্তবায়ন করতে হবে।
24. C# মেথড ওভারলোডিং কি? ব্যাখ্যা করা.
মেথড ওভারলোডিং হল C# এর একটি সাধারণ পদ্ধতি যা একই নাম এবং নির্দিষ্ট স্বাক্ষর সহ বেশ কয়েকটি পদ্ধতি তৈরি করতে ব্যবহৃত হয়। এই পদ্ধতিটি একই শ্রেণীর সাথে পুনরাবৃত্তি হয়।
মেথড ওভারলোডিং পদ্ধতি সম্পূর্ণ হলে, কম্পাইলার মেথড ওভারলোডিং এর উপর ভিত্তি করে নির্দিষ্ট অ্যাকশন কল করার জন্য কাজ শুরু করে।
25. শুধুমাত্র পঠন এবং ধ্রুবকের মধ্যে পার্থক্য কি?
কম্পাইলেশনের সময় ধ্রুবক ভেরিয়েবল ঘোষণা করা হয় এবং আরম্ভ করা হয়। তারপরে, এই মান পরিবর্তন করা যাবে না। অন্যদিকে, রান টাইমে একটি মান বরাদ্দ করা হলে শুধুমাত্র-পঠন ব্যবহার করা হয়।
26. ব্যবহারকারী নিয়ন্ত্রণ এবং কাস্টম নিয়ন্ত্রণ কি?
সংকলিত কোড কাস্টম নিয়ন্ত্রণ বিকাশ করতে ব্যবহৃত হয়। এগুলি টুলবক্সে অন্তর্ভুক্ত করা যেতে পারে এবং ব্যবহার করা সহজ। এই নিয়ন্ত্রণগুলিকে টেনে এনে ছেড়ে দেওয়ার মাধ্যমে, বিকাশকারীরা তাদের ওয়েব ফর্মগুলিতে অন্তর্ভুক্ত করতে পারে৷
ব্যবহারকারী নিয়ন্ত্রণ এবং ASP-অন্তর্ভুক্ত ফাইলগুলি বেশ একই রকম। এগুলি তৈরি করাও সহজ। ব্যবহারকারী নিয়ন্ত্রণ, অন্যদিকে, টুলবক্সে যোগ করা যাবে না। তারা এটি থেকে টানা এবং বাদ দেওয়া যাবে না।
27. C# এ, একটি মাল্টিকাস্ট প্রতিনিধি কি?
একটি মাল্টিকাস্ট প্রতিনিধি একই সময়ে বিভিন্ন ফাংশনের রেফারেন্স বা ঠিকানা বজায় রাখে। যখন আমরা মাল্টিকাস্ট প্রতিনিধিকে আমন্ত্রণ জানাই, তখন এটি অন্যান্য সমস্ত ফাংশনকেও আহ্বান করবে যা এটি উল্লেখ করছে। বেশ কয়েকটি পদ্ধতিতে কল করতে, প্রতিনিধির মতোই সম্পূর্ণ পদ্ধতির স্বাক্ষর ব্যবহার করুন। একটি উদাহরণ হিসাবে:
28. C# এ অবজেক্ট পুলিং আসলে কি?
অবজেক্ট পুলিং হল সফ্টওয়্যারের একটি ডিজাইন কৌশল যা জিনিসগুলিকে পুনর্নির্মাণের পরিবর্তে পুনর্ব্যবহার করে। এটি একটি পুলে নির্বাচিত আইটেমগুলি সংরক্ষণ করে এবং যখন একটি অ্যাপ্লিকেশন তাদের অনুরোধ করে তখন তাদের ব্যবহারের জন্য উপলব্ধ করে এটি সম্পন্ন করে। এই পদ্ধতিটি অপ্রয়োজনীয় বস্তু উৎপাদন হ্রাস করে কর্মক্ষমতা উন্নত করে।
29. C#.NET-এ জেনেরিক ঠিক কী?
কোড রিডানডেন্সি কমাতে, টাইপ নিরাপত্তা উন্নত করতে এবং গতি উন্নত করার জন্য পুনরায় ব্যবহারযোগ্য কোড ক্লাস তৈরি করতে জেনেরিক ব্যবহার করা হয়। আমরা জেনেরিকের সাথে সংগ্রহের ক্লাস তৈরি করতে পারি।
সিস্টেমে, ArrayList এর মত ক্লাসের পরিবর্তে একটি জেনেরিক নেমস্পেস ব্যবহার করা উচিত। সংগ্রহের জন্য নামস্থান। প্যারামিটারাইজড ধরনের ব্যবহার জেনেরিক দ্বারা উত্সাহিত করা হয়।
30. একটি ব্যক্তিগত ভার্চুয়াল পদ্ধতি ওভাররাইড করা কি সম্ভব?
একটি ব্যক্তিগত ভার্চুয়াল পদ্ধতি ওভাররাইড করা যাবে না যেহেতু এটি ক্লাসের জন্য ব্যক্তিগত এবং এটির বাইরে থেকে অ্যাক্সেস করা যাবে না।
31. C# এ মেথড ওভারলোডিং এবং মেথড ওভাররাইডিংয়ের মধ্যে পার্থক্য করুন?
মেথড ওভাররাইডিং হল একটি প্রাপ্ত শ্রেণীর মৌলিক সংজ্ঞা পরিবর্তন করার প্রক্রিয়া। এই কৌশলের ফলস্বরূপ উদ্ভূত শ্রেণীর পদ্ধতিগুলি শেষ পর্যন্ত ভিন্নভাবে আচরণ করে।
অন্যদিকে, মেথড ওভারলোডিংকে একই শ্রেণীর অধীনে একই নামের কিন্তু স্বতন্ত্র স্বাক্ষর সহ অনেকগুলি পদ্ধতি তৈরি করার কাজ হিসাবে বর্ণনা করা যেতে পারে।
32. C# এ, স্ট্রিং এবং স্ট্রিংবিল্ডারের মধ্যে পার্থক্য কী?
একটি স্ট্রিং অবজেক্ট অপরিবর্তনীয়, যার মানে এটি তৈরি হওয়ার পরে এটি পরিবর্তন করা যায় না। স্ট্রিং অবজেক্ট পরিবর্তন করার যেকোনো প্রচেষ্টার ফলে একটি নতুন স্ট্রিং অবজেক্ট তৈরি হবে।
একটি স্ট্রিং বিল্ডার অবজেক্ট, অন্যদিকে, নমনীয় এবং ডেভেলপার উপযুক্ত মনে করলে পরিবর্তন করা যেতে পারে।
33. প্রতিনিধি আসলে কি?
C++ এ, প্রতিনিধিরা মূলত ফাংশন পয়েন্টারগুলির মতোই। উভয়ের মধ্যে একমাত্র পার্থক্য হল প্রতিনিধিরা টাইপ-নিরাপদ যেখানে ফাংশন পয়েন্টার নয়। প্রতিনিধিদের প্রয়োজনীয় কারণ তারা জেনেরিক টাইপ-নিরাপদ ফাংশন নির্মাণ সক্ষম করে।
34. কখন আপনার C# এ মাল্টিথ্রেডিং ব্যবহার করা উচিত এবং কখন আপনার এটি এড়ানো উচিত?
মাল্টিথ্রেডিং, যা প্রায়শই থ্রেডিং নামে পরিচিত, একটি প্রোগ্রামের গতি বাড়ানোর জন্য একটি কার্যকর পদ্ধতি যেখানে অনেকগুলি ক্রিয়াকলাপ একই সাথে চালানো হয়। এটি পূর্ববর্তী ধাপটি সম্পূর্ণ হওয়ার জন্য অপেক্ষা না করে, স্বাধীনভাবে চালানোর জন্য বিভিন্ন থ্রেডকে সক্ষম করে। এটি একটি প্রোগ্রামের গতি বাড়ানোর ক্ষমতা রাখে।
যাইহোক, যখন প্রোগ্রামের বেশ কয়েকটি প্রক্রিয়া পরস্পর সংযুক্ত থাকে, তখন মাল্টিথ্রেডিং সুপারিশ করা হয় না। উদাহরণ স্বরূপ, যদি ধাপ B ধাপ A এর উপর নির্ভর করে থাকে, তাহলে মাল্টিথ্রেডিং কর্মক্ষমতা উদ্বেগ এবং সফ্টওয়্যার ত্রুটির কারণ হবে। একটি প্রোগ্রাম জটিলতায় বিকশিত হওয়ার সাথে সাথে থ্রেডিং ক্রমবর্ধমান সংবেদনশীল হয়ে ওঠে।
35. C# এ, একটি মাল্টিকাস্ট প্রতিনিধি কি?
C#-এ একটি মাল্টিকাস্ট প্রতিনিধি, একটি মৌলিক প্রতিনিধির বিপরীতে, অনেকগুলি লক্ষ্য পদ্ধতিকে বোঝায়। যখন একটি মাল্টিকাস্ট প্রতিনিধি ব্যবহার করা হয়, প্রতিনিধি দ্বারা নির্দেশিত সমস্ত ফাংশন বলা হয়। এগুলি সিস্টেমের মাল্টিকাস্ট ডেলিগেট ক্লাসের সাহায্যে প্রয়োগ করা হয়।
36. C# এ, লেট বাইন্ডিং এবং আর্লি বাইন্ডিং এর মধ্যে পার্থক্য কি?
- প্রারম্ভিক বাইন্ডিং কম্পাইলের সময় সঞ্চালিত হয়, যেখানে দেরী বাঁধাই রানটাইমের সময় সঞ্চালিত হয়।
- দেরী বাইন্ডিং প্রায়শই প্রারম্ভিক বাইন্ডিংয়ের চেয়ে ধীর হয় কারণ এটি রানটাইমে ঘটে।
- লেট বাইন্ডিং এর বিপরীতে, যা মেথড কল সমাধান করতে অবজেক্ট ব্যবহার করে, আর্লি বাইন্ডিং ক্লাস ইনফরমেশন ব্যবহার করে মেথড কল সমাধান করে।
37. ডাইরেক্টকাস্ট এবং টাইপের মধ্যে পার্থক্য করুন?
DirectCast-এ নির্দিষ্ট টাইপের সাথে মেলে যে ধরনের অবজেক্টের রান-টাইম প্রয়োজন তা DirectCast ব্যবহার করে রূপান্তরিত হয়।
যখন একটি রূপান্তর একটি অভিব্যক্তি এবং একটি প্রকারের মধ্যে নির্দিষ্ট করা হয়, তখন Ctype ব্যবহার করা হয়।
38. C# এ HashSet কিভাবে ব্যবহার করা হয়?
C#-এ, একটি হ্যাশসেট হল স্বতন্ত্র মানের একটি অবিন্যস্ত সংগ্রহ। সাধারণভাবে, এটি একটি সংগ্রহে ঢোকানো থেকে সদৃশ উপাদানগুলিকে প্রতিরোধ করতে ব্যবহৃত হয় এবং এটি এই টাস্কে একটি তালিকার চেয়ে ভাল কাজ করে।
হ্যাশসেট ক্লাস, যা সিস্টেম থেকে এসেছে, এটি বাস্তবায়নের জন্য ব্যবহৃত হয়।
39. অনুগ্রহ করে C# এ থ্রেড পুলিং ব্যাখ্যা করুন।
C# এ, একটি থ্রেড পুল হল থ্রেডের একটি সংগ্রহ। এই থ্রেডগুলি প্রাথমিক থ্রেডের কার্যকারিতার সাথে হস্তক্ষেপ না করে কাজগুলি করার জন্য নিযুক্ত করা হয়। একটি থ্রেড পুলে একটি থ্রেড থ্রেড পুলে ফিরে আসে যখন এটি চালানো শেষ হয়।
সিস্টেম ক্লাসে এমন ক্লাস রয়েছে যা থ্রেড পুলের থ্রেড এবং এর ক্রিয়াগুলি পরিচালনা করে। থ্রেডিং। ThreadPool হল একটি নামস্থান।
40. C# এ Const এবং ReadOnly কীওয়ার্ডের মধ্যে পার্থক্য কী?
- ReadOnly পদ্ধতির মধ্যে ঘোষণা করা যাবে না, যখন Const পারে।
- Const একটি কম্পাইল-টাইম ধ্রুবক, যেখানে ReadOnly একটি রানটাইম ধ্রুবক।
- শুধুমাত্র পঠন মান পরিবর্তন করা যেতে পারে, কিন্তু Const মান পারে না।
41. আপনি C# XSD ফাইল সম্পর্কিত কোন বিবরণ দিতে পারেন?
XSD মানে XML স্কিমা সংজ্ঞা। যদি কোনো XSD ফাইল XML ফাইলের সাথে সংযুক্ত না থাকে, তাহলে এতে কোনো বৈশিষ্ট্য, উপাদান এবং ট্যাগ থাকতে পারে। XSD ফাইলটি XML ফাইলের জন্য একটি ফ্রেমওয়ার্ক প্রদান করে, XML ফাইলে কোন উপাদান এবং গুণাবলী উপস্থিত থাকা উচিত সেইসাথে তাদের ক্রম নির্ধারণ করে।
42. আপনার কাছে অ্যাকসেসর বৈশিষ্ট্যগুলি পেতে এবং সেট করার অর্থ কী?
C#-এ, Get এবং Set-কে অ্যাক্সেসর বলে অভিহিত করা হয়েছে যেহেতু সেগুলি বৈশিষ্ট্য ব্যবহার করে তৈরি করা হয়। একটি সম্পত্তি একটি ব্যক্তিগত ক্ষেত্রের মান পড়তে এবং লেখার অনুমতি দেয়। এই ধরনের ব্যক্তিগত ক্ষেত্র অ্যাক্সেসর মাধ্যমে অ্যাক্সেস করা হয়.
একটি সম্পত্তির মান ফেরত দিতে Get প্রপার্টি ব্যবহার করা হলে, সেট প্রপার্টিটি মান সেট করতে ব্যবহৃত হয়।
43. C# এ নির্ভরতা ইনজেকশন আসলে কি?
ডিপেনডেন্সি ইনজেকশন (DI) হল C#-এর একটি ডিজাইন কৌশল যা আলগাভাবে লিঙ্কযুক্ত প্রোগ্রামিং তৈরি করতে ব্যবহৃত হয়। এই পদ্ধতিটি নির্ভরশীল বস্তুর সৃষ্টি এবং বাঁধাইকে সেই শ্রেণীর বাইরে স্থানান্তর করে যার উপর তারা নির্ভর করে। প্রধান লক্ষ্য ভবিষ্যত কোড পরিবর্তন আরো পরিচালনাযোগ্য করা হয়.
উপসংহার
C# হল প্রাথমিক প্রোগ্রামিং ভাষা যা সমস্ত উচ্চ-স্তরের প্রোগ্রামিং ভাষায় ব্যবহৃত হয়। C# ডেভেলপারদের প্রচুর চাহিদা রয়েছে এবং তারা ফ্রন্ট-এন্ড ডেভেলপমেন্ট, ব্যাক-এন্ড প্রোগ্রামিং এবং অ্যাপ ডেভেলপমেন্টের মতো শিল্পে আকর্ষণীয় ক্যারিয়ারের সম্ভাবনা খুঁজে পেতে পারেন। এবং যেহেতু মাইক্রোসফ্ট এটি সমর্থন করে, সি# জনপ্রিয়তা কেবল বাড়বে।
অভিজ্ঞ পেশাদার এবং নতুনদের জন্য উপরে উল্লিখিত সবচেয়ে গুরুত্বপূর্ণ C# সাক্ষাত্কারের প্রশ্ন। দেখা হ্যাশডর্কের ইন্টারভিউ সিরিজ ইন্টারভিউ প্রস্তুতির জন্য সাহায্যের জন্য।
নির্দেশিকা সমন্ধে মতামত দিন