শীর্ষ 50টি অবশ্যই জানা থাকা প্রোগ্রামিং ইন্টারভিউ প্রশ্ন ও উত্তর
একটি সাক্ষাত্কারে আপনাকে সাহায্য করার জন্য শীর্ষ প্রোগ্রামিং প্রশ্ন এবং উত্তর খুঁজছেন? এখানে শীর্ষ 50 আছে.

সফ্টওয়্যার সংস্থাগুলি সর্বদা ভাল প্রোগ্রামিং প্রতিভার সন্ধানে থাকে, টেলিফোন এবং অনলাইন সাক্ষাত্কারগুলি প্রায়শই মাত্র কয়েক মিনিটের মধ্যে আপনার ভাগ্য নির্ধারণ করে।
একজন ভালো প্রোগ্রামারকে যতটা সম্ভব বহুমুখী হতে হবে - সিস্টেম বোঝার থেকে শুরু করে সাধারণ প্রোগ্রামিং, বিভিন্ন ধারণা এবং প্রযুক্তি, সেইসাথে আপ টু ডেট হতে হবে।
নীচে 50 টি শীর্ষ প্রোগ্রামিং ইন্টারভিউ প্রশ্ন এবং তাদের উত্তরগুলির একটি তালিকা রয়েছে। তারা বিভিন্ন ধারণার উপর আলোকপাত করে যা প্রত্যেক শিক্ষানবিসকে এক্সেল করার জন্য জানতে হবে।
1. কম্পিউটার প্রোগ্রামিং কি?
কম্পিউটার প্রোগ্রামিং হল একটি কম্পিউটার দ্বারা সম্পাদিত যৌক্তিক প্রক্রিয়াগুলিকে এনকোড করার প্রক্রিয়া। এটি একটি কম্পিউটার ভাষা ব্যবহার করে সম্পন্ন করা হয় যাতে প্রয়োজনীয় নির্দেশাবলী রয়েছে।
প্রক্রিয়াটিকে আরও ডিজাইন, কোডিং, ডিবাগিং এবং আপডেটে ভাগ করা যেতে পারে।
2. ডিবাগিং কি?
ডিবাগিং হল একটি কম্পিউটার প্রোগ্রামের সফ্টওয়্যার উত্সে ত্রুটিগুলি আবিষ্কার এবং নির্মূল করার প্রক্রিয়া। এটি সম্পর্কে যাওয়ার অনেকগুলি পদ্ধতি রয়েছে, তবে বেশিরভাগ বিকাশের পরিবেশগুলি জিনিসগুলিকে সহজ করার জন্য একটি সমন্বিত ডিবাগারের সাথে আসে।
3. কম্পাইলার কি?
একটি কম্পাইলার হল একটি সফ্টওয়্যার প্রোগ্রাম যা লিখিত প্রোগ্রাম নেয় এবং এটিকে মেশিন কোডে পরিণত করে যা একটি কম্পিউটার বুঝতে পারে।
একটি সাধারণ কম্পাইলার প্যাকেজ, তবে, একটি প্রাক-প্রসেসর দ্বারা গঠিত, প্রধান কম্পাইলার যা কম্পিউটার ভাষাকে অ্যাসেম্বলি কোডে পরিণত করে এবং একটি অ্যাসেম্বলার।
4. একটি প্রি-প্রসেসর কি?
একটি প্রাক-প্রসেসর হল এমন একটি প্রোগ্রাম যা প্রয়োজনীয় লাইব্রেরির মতো নির্ভরতা খুঁজে পেতে এবং সন্তুষ্ট করতে লিখিত কম্পিউটার কোড বিশ্লেষণ করে।
প্রি-প্রসেসর নিশ্চিত করার পরে যে এক্সিকিউশন এনভায়রনমেন্ট সহ সবকিছু ঠিক আছে, একটি কম্পাইলার কোডটিকে অ্যাসেম্বলি কোডে রূপান্তর করতে পারে।
5. অ্যাসেম্বলার কী?
অ্যাসেম্বলার হল এমন একটি প্রোগ্রাম যা অ্যাসেম্বলি ল্যাঙ্গুয়েজ নামে মানব-পাঠযোগ্য কম্পিউটার কোডের সর্বনিম্ন স্তর নেয় এবং এটিকে মেশিন কোডে পরিণত করে যা একটি কম্পিউটার দিয়ে কাজ করতে পারে।
সমাবেশ ভাষা সাধারণত একটি কম্পাইলার দ্বারা আউটপুট হয় যদিও কেউ সরাসরি কোড করতে পারে। একটি সমাবেশ প্রোগ্রাম কোড অন্তর্ভুক্ত করতে পারে যেমন:
MOV AH, 02H
কিন্তু যখন আপনি এটিকে মেশিন কোডে কম্পাইল করেন, তখন আপনি শুধুমাত্র শূন্য এবং একটি পাবেন (যেমন 0110011110101010)।
6. কিভাবে একটি প্রোগ্রাম চালানো হয়?
প্রথমত, অপারেটিং সিস্টেম নির্দিষ্ট প্রোগ্রামটিকে হার্ড-ডিস্ক স্টোরেজ থেকে সিস্টেম মেমরিতে (র্যাম) লোড করে এবং তারপরে প্রোগ্রামের প্রথম মেমরি অ্যাড্রেস থেকে সিপিইউকে তার এক্সিকিউশন চালিয়ে যাওয়ার নির্দেশ দিয়ে এক্সিকিউট করার অনুমতি দেয়। সিপিইউ এটি দেখে যে কোনও কমান্ড চালায়, তারপরে পরবর্তীটিতে চলে যায়, প্রায়শই প্রতি সেকেন্ডে লক্ষ লক্ষ বার এই পদ্ধতিটি পুনরাবৃত্তি করে।
32-বিট সিপিইউগুলি একবারে 32-বিট (4-বাইট, ডাবল-ওয়ার্ড) নির্দেশাবলী চালায়, যখন 64-বিট সিপিইউগুলি একবারে 64-বিট (8-বাইট, কোয়াড-ওয়ার্ড) নির্দেশাবলী চালায়। এই নির্দেশাবলী সিপিইউতে তৈরি করা হয় এবং এটি অ্যাসেম্বলার যেটি প্রোগ্রামিং কোডকে বাইনারি সংখ্যায় পরিণত করে যা নেটিভ সিপিইউ কমান্ড ঠিকানাগুলিকে উপস্থাপন করে।
7. একটি সংজ্ঞায়িত করুন সাবরুটাইন
সাবরুটিন হলো একটি প্রোগ্রামের নির্দেশাবলীর একটি ক্রম যা যেকোনো সময় কল করা এবং কার্যকর করা যেতে পারে। অন্য কথায়, একটি সাবরুটিন হলো একটি ফাংশন, একটি পদ্ধতি, অথবা একটি পদ্ধতি যা ইমেল পাঠানো, একটি ফাইল খোলা, অথবা একটি লগইন পৃষ্ঠা জোর করে চালানোর মতো নির্দিষ্ট কাজ বাস্তবায়নের জন্য ব্যবহৃত হয়।
8. সংজ্ঞা দিন মেশিন কোড
মেশিন কোড হল বাইনারি সংখ্যার একটি ক্রম যা একটি নির্দিষ্ট মাইক্রোপ্রসেসর এবং এর সাথে সম্পর্কিত মেমরি ঠিকানাগুলির সম্পাদন নির্দেশাবলী ধারণ করে।
মেশিন কোড ঐতিহ্যগতভাবে একটি অ্যাসেম্বলার দ্বারা আউটপুট হয় যা মাইক্রোপ্রসেসরের নির্দিষ্ট পরিবারের জন্য ডিজাইন করা হয়।
9. ব্যাখ্যা কর সংকলিত বনাম ব্যাখ্যা করা ভাষা
একটি কম্পাইল করা কম্পিউটার ল্যাঙ্গুয়েজকে কম্পিউটারে এক্সিকিউট করার আগে অবশ্যই মেশিন কোডে পরিণত করতে হবে, যখন একটি ইন্টারপ্রেটেড ল্যাঙ্গুয়েজ এর আগে কম্পাইলেশনের প্রয়োজন নেই।
যখন আপনি একটি ইন্টারপ্রেটেড প্রোগ্রাম এক্সিকিউট করেন, এটি প্রথমে একটি ইন্টারপ্রেটার দ্বারা প্রসেস করা হয়, যা তারপর কম্পাইল করে এবং ফ্লাইতে এক্সিকিউট করে। এই অতিরিক্ত পদক্ষেপগুলি সি-এর মতো সংকলিত ভাষার তুলনায় পাইথনের মতো ব্যাখ্যা করা ভাষাকে ধীর করে তোলে।
10. লুপ কি?
একটি লুপ হল একটি কোড কাঠামো যা নির্দিষ্ট বিবৃতিগুলি পুনরাবৃত্তি করতে পারে যতক্ষণ না একটি নির্দিষ্ট মানদণ্ড অর্জন করা হয়। এই মানদণ্ডে একটি নির্দিষ্ট সংখ্যক পুনরাবৃত্তি বা একটি সংজ্ঞায়িত পরিবর্তনশীল পরিবর্তন অন্তর্ভুক্ত থাকতে পারে।
11. জনপ্রিয় ধরনের লুপ তালিকা করুন
বিভিন্ন কম্পিউটার ভাষা বিভিন্ন উপায়ে লুপ ব্যাখ্যা করবে। জনপ্রিয় সি-ফ্যামিলি লুপ প্রকার, তবে, অন্তর্ভুক্ত:
- while() লুপ - এটি একটি বুলিয়ান হিসাবে দীর্ঘ নির্দিষ্ট কোড কার্যকর করার অনুমতি দেয় যখন() শর্ত পূরণ করা হয়।
উদাহরণ স্বরূপ while(2>1){print("yahoo!")};। - জন্য(;;) লুপ - তিনটি অভিব্যক্তি রয়েছে (প্রাথমিককরণ; মূল্যায়ন আপডেট) যা পরীক্ষার জন্য শর্তগুলি সংজ্ঞায়িত করে, সেইসাথে গণনা বৃদ্ধি করার জন্য একটি নমনীয় পদ্ধতি। এটি অন্তত একবার কোড চালাবে।
- করুন{} while() লুপ – এই ধরনের লুপ এক্সিকিউট করে কর{} যদি নির্ধারণ করার আগে অন্তত একবার কোড যখন() অবস্থা এখনও সত্য।
12. পুনরাবৃত্তি বনাম ব্যাখ্যা করুন recursion
একটি পুনরাবৃত্তি হল একই কোড ধাপগুলি চালানোর জন্য একটি লুপের ব্যবহার, যখন পুনরাবৃত্তি হল একটি ফাংশনকে বারবার কল করার প্রক্রিয়া। তবে পুনরাবৃত্তির সমস্যা হল যে আপনি মেমরির সমস্যায় না যাওয়া পর্যন্ত আপনি শুধুমাত্র একটি নির্দিষ্ট গভীরতায় যেতে পারবেন।
13. এর কাজ ব্যাখ্যা কর বিরতি এবং চালিয়ে যান একটি লুপে
A বিরতি বিবৃতিটি একটি লুপের কার্য সম্পাদন শেষ করে এবং বাকি কম্পিউটার কোডটি সম্পাদন করা চালিয়ে যায়। ক অবিরত স্টেটমেন্ট, অন্যদিকে, শুরু থেকে লুপ পুনরাবৃত্তি করা চালিয়ে যায়।
14. OOP কি?
OOP এর অর্থ হল অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং এবং এটি একটি প্রোগ্রামিং প্যারাডাইম যা ফাংশন বা পদ্ধতির পরিবর্তে ডেটা এবং অবজেক্টের চারপাশে সফ্টওয়্যার ডিজাইন প্রয়োগ করে।
15. পদ্ধতিগত প্রোগ্রামিং কি?
পদ্ধতিগত প্রোগ্রামিং হল একটি প্রোগ্রামিং প্যারাডাইম যা কার্যকর করার নির্দেশাবলীর ক্রম বা ধাপগুলির চারপাশে কম্পিউটার কোড সংগঠিত করে। নাম থেকে বোঝা যায়, এটি একটি টপ-ডাউন পদ্ধতি যা ইভেন্টের প্রাথমিক পর্ব থেকে কোড শুরু করে এবং ইভেন্টের প্রত্যাশিত সমাপ্তির সাথে শেষ হয়।
16. ফাংশনাল প্রোগ্রামিং ব্যাখ্যা কর
ফাংশনাল প্রোগ্রামিং হল একটি কম্পিউটার প্রোগ্রামিং প্যারাডাইম যা সফ্টওয়্যার ডেভেলপমেন্টের দিকে এগিয়ে যায় ক্রমিক ফাংশন প্রয়োগ করে যা সরবরাহিত আর্গুমেন্টের অবস্থা বা ডেটা পরিবর্তন করে না।
লক্ষ্য হল আরও শক্তিশালী প্রোগ্রাম তৈরি করা যা অপ্রত্যাশিত পার্শ্ব প্রতিক্রিয়া ছাড়াই প্রত্যাশিত ফলাফল তৈরি করে।
17. ব্যাখ্যা কর উচ্চ স্তরের ভাষা
একটি উচ্চ-স্তরের প্রোগ্রামিং ভাষা হল একটি কম্পিউটার ভাষা যা কম্পিউটারের বৈশিষ্ট্য বা প্রকৃতির চেয়ে মানুষের বোঝার জন্য বেশি আবেদন করে।
উচ্চ-স্তরের প্রোগ্রামিং ভাষা যেমন সি এবং পাইথন বোঝা সহজ, যখন একটি নিম্ন-স্তরের সমাবেশ ভাষা প্রথম-টাইমারদের জন্য খুব বিভ্রান্তিকর হতে পারে।
18. জনপ্রিয় তালিকা নিম্ন-স্তরের ভাষা
শুধুমাত্র দুটি নিম্ন-স্তরের প্রোগ্রামিং ভাষা আছে: সমাবেশ এবং মেশিন কোড।
19. একটি এসকিউএল ইনজেকশন আক্রমণ সংজ্ঞায়িত করুন
এসকিউএল ইনজেকশন অ্যাটাক হল ইউজারনেম বা অ্যাড্রেস ইনপুটের মতো ইনপুট ফিল্ডে এসকিউএল স্টেটমেন্ট প্রবেশ করার একটি প্রক্রিয়া, এই আশায় যে একজন ডেভেলপার প্রোগ্রামিংয়ের সময় ইনপুটগুলিকে সঠিকভাবে স্যানিটাইজ করেনি। এবং সফল হলে, এই ধরনের আক্রমণ আক্রমণকারীকে সার্ভারে অ্যাডমিন অ্যাক্সেস পেতে সক্ষম করে।
20. SQL এ টেবিল কি?
এসকিউএল-এর একটি সারণী কলাম এবং সারিগুলিতে গোষ্ঠীবদ্ধ ডেটার একটি সংগ্রহকে বোঝায়। প্রতিটি কলামের একটি স্বতন্ত্র ডেটাটাইপ রয়েছে এবং আপনার একক ডাটাবেসে একাধিক টেবিল থাকতে পারে। আপনি একবারে একাধিক টেবিল জিজ্ঞাসা করতে পারেন।
আপনি এর সাথে একটি টেবিল তৈরি করুন:
টেবিল তৈরি করুন টেবিল_নাম(কলাম 1 ডেটাটাইপ, কলাম 2 ডেটাটাইপ, কলাম 3 ডেটাটাইপ, …);
21. একটি বস্তু এবং একটি শ্রেণীর মধ্যে পার্থক্য ব্যাখ্যা করুন
একটি অবজেক্ট হল একটি ক্লাসের একটি উদাহরণ, যখন একটি ক্লাস একটি ব্লুপ্রিন্ট যা থেকে একটি বস্তু তৈরি করা হয়। একটি বস্তুর অবস্থা এবং বৈশিষ্ট্য থাকতে পারে, যেমন রঙ, উচ্চতা, ওজন, গতি ইত্যাদি।
এই বৈশিষ্ট্যগুলিকে অবশ্যই সংজ্ঞায়িত করতে হবে বা অন্ততপক্ষে ডিফল্ট মান দিয়ে শুরু করতে হবে।
22. কয়টি বিট এক মেগাবাইট তৈরি করে?
8,000,000 মেগাবাইটে 1 বিট রয়েছে কারণ একটি বাইট 8 বিট এবং একটি মেগা 106.
23. একটি ফ্লোট ডেটা টাইপ সংজ্ঞায়িত করুন
একটি ফ্লোট হল একটি ডেটা টাইপ যা দশমিক ভগ্নাংশ সহ একটি সংখ্যার প্রতিনিধিত্ব করে। এটি এমন পরিস্থিতিতে ব্যবহার করা হয় যেখানে স্ট্যান্ডার্ড পূর্ণসংখ্যা প্রদান করতে পারে তার চেয়ে উচ্চ স্তরের নির্ভুলতা প্রয়োজন। ফ্লোটের একটি উদাহরণ হল:
0.013
or
25.932
24. HexaDecimal 0xFF বলতে কী বোঝায়?
0xFF এর অর্থ হল দশমিক 255 বা বাইনারি 11111111। 0x এর অর্থ হল বেস 16 বা হেক্সাডেসিমাল নোটেশন, যা 1 থেকে 9 পর্যন্ত চলে এবং তারপর A থেকে F এর সাথে চলতে থাকে 15 কে উপস্থাপন করতে। সুতরাং, 0xF হল দশমিক 15, যেখানে 0xFF হল দশমিক 255।
25. প্রোগ্রামিং এর ত্রুটির প্রকারের নাম
একটি কম্পিউটার প্রোগ্রামে 3 প্রধান ধরণের ত্রুটি রয়েছে, সেগুলি হল:
- বাক্যগঠন ত্রুটি
- লজিক্যাল ত্রুটি
- রানটাইম ত্রুটি
26. একটি সিনট্যাক্স ত্রুটি কি?
একটি সিনট্যাক্স ত্রুটি ঘটে যখন প্রোগ্রামিং ভাষার প্রায়শই কঠোর সিনট্যাক্স থেকে বিচ্যুতি ঘটে। এটি একটি ফাংশনে পাস করা ভুল পরামিতিগুলিতে অক্ষরের সাধারণ ভুল স্থানান্তর থেকে পরিণত হতে পারে। বেশিরভাগ কম্পাইলার সোর্স কোড লাইন নম্বর অন্তর্ভুক্ত করবে যেখানে ত্রুটি ঘটেছে।
27. একটি লজিক্যাল ত্রুটি কি?
একটি লজিক ত্রুটি হল একটি ত্রুটি যা একটি প্রোগ্রামের কাজ করার পদ্ধতি থেকে উদ্ভূত হয়। সুতরাং, যদিও প্রোগ্রামটি নির্দোষভাবে সম্পাদন করতে পারে, এটি তার উদ্দেশ্য অর্জন করতে ব্যর্থ হয়। যৌক্তিক ত্রুটি অনেক উপায়ে ঘটতে পারে এবং অনেক কারণে হতে পারে।
28. রানটাইম এরর কি?
একটি রানটাইম ত্রুটি হল একটি কম্পিউটার প্রোগ্রাম ত্রুটি যা প্রোগ্রামটি কার্যকর করার সময় এবং অপ্রত্যাশিত পরিস্থিতির কারণে ঘটে। সুতরাং, প্রোগ্রামটি ত্রুটিহীনভাবে কাজ করার সময়, উদাহরণস্বরূপ, মেমরি এবং নেটওয়ার্ক সমস্যাগুলি প্রোগ্রামটিকে খারাপ আচরণ করতে পারে।
29. ব্যাখ্যা কর শক্তিশালী বনাম দুর্বল-টাইপ করা ভাষা
একটি দৃঢ়ভাবে টাইপ করা ভাষা তার বিভিন্ন ডেটা প্রকার এবং আপনি কীভাবে সেগুলিকে রূপান্তর করতে পারেন সে সম্পর্কে কঠোর, যখন একটি দুর্বলভাবে টাইপ করা ভাষা ডেটা প্রকার এবং তাদের সংজ্ঞাগুলিতে কম সীমাবদ্ধতা রাখে।
অনেক দুর্বলভাবে টাইপ করা ভাষাগুলি স্বয়ংক্রিয়ভাবে ডেটা টাইপগুলিকে রূপান্তর করবে, যখন শক্তিশালীভাবে টাইপ করা ভাষাগুলি প্রায়শই স্পষ্ট রূপান্তরের প্রয়োজন হয়।
30. MVC আর্কিটেকচার কি?
MVC মডেল-ভিউ-কন্ট্রোলারকে বোঝায় এবং এটি ইউজার ইন্টারফেসের জন্য একটি সফ্টওয়্যার ডেভেলপমেন্ট প্যাটার্ন। এটি প্রোগ্রাম লজিককে 3টি অংশে বিভক্ত করে।
সার্জারির মডেল অংশ প্রশ্নে থাকা বস্তুর অন্তর্নিহিত ডেটা লজিক পরিচালনা করে, যখন দৃশ্য ব্যবহারকারীর কাছে তথ্য প্রদর্শন পরিচালনা করে, এবং নিয়ামক ভিউ এবং মডেলের মধ্যে ডেটা প্রবাহ পরিচালনা করে। MVC ডিজাইন প্রায়ই অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং এর সাথে ব্যবহার করা হয়।
31. একটি সংজ্ঞায়িত করুন অ্যালগরিদম
একটি অ্যালগরিদম হল একটি নির্দিষ্ট সমস্যা সমাধানের জন্য ডিজাইন করা পদ্ধতির একটি ক্রম। এই পদ্ধতিগুলি সাধারণত ছোট ছোট ধাপে বিভক্ত করা হয় এবং কম্পিউটার প্রতিবার ঠিক সেভাবেই করে।
অ্যালগরিদমের উদাহরণগুলির মধ্যে রয়েছে মুখের স্বীকৃতি, গুগল অনুসন্ধান, আপনি কীভাবে আপনার জুতা বাঁধেন, ডেটা এনকোডিং বা এনক্রিপ্ট করা ইত্যাদি।
32। কি মেশিন লার্নিং?
মেশিন লার্নিং বা এমএল হল কৃত্রিম বুদ্ধিমত্তার একটি বিভাগ যা ডেটা ব্যবহারের মাধ্যমে সিস্টেমগুলিকে প্যাটার্ন সনাক্ত করতে এবং নিজেরাই সিদ্ধান্ত নিতে সহায়তা করার উপর দৃষ্টি নিবদ্ধ করে।
এটি তখন তাদের কর্মক্ষমতা বা দক্ষতা উন্নত করে। মেশিন লার্নিং সিস্টেম তত্ত্বাবধান করা যেতে পারে, unsupervised, এবং শক্তিবৃদ্ধি ভিত্তিক.
33. কি হয় নিয়মিত অভিব্যক্তি?
একটি রেগুলার এক্সপ্রেশন বা Regex হল একটি স্ট্রিং যা টেক্সট ডকুমেন্টে সার্চ প্যাটার্ন নির্ধারণ করতে ব্যবহৃত হয়। বিভিন্ন প্রোগ্রামিং ভাষা নিয়মিত এক্সপ্রেশন প্রয়োগ করে বা জনপ্রিয় রেজেক্স লাইব্রেরি ব্যবহার করে। একটি পাঠ্যের সমস্ত অক্ষর মেলে রেজেক্সের একটি উদাহরণ হল:
(.*)
যখন নিম্নলিখিতগুলি শুধুমাত্র mp3 ফাইলের সাথে মেলে:
.+\.(mp3)$
34. মডুলাস (%) অপারেটর কি করে?
মডুলাস অপারেটর % দুটি অপারেন্ড নেয় এবং দ্বিতীয়টি ব্যবহার করে প্রথম অপারেন্ডটিকে ভাগ করে। এটি তারপর ফলাফল হিসাবে অপারেশন বাকি ফেরত.
এটি প্রায়শই যেকোনো পূর্ণসংখ্যাকে 2 দ্বারা ভাগ করে বিজোড় এবং জোড় সংখ্যা পরীক্ষা করতে ব্যবহৃত হয়, যেখানে 0 ফলাফল মানে একটি জোড় সংখ্যা এবং 1 মানে একটি বিজোড় সংখ্যা।
35. ব্যাখ্যা কর প্রক্রিয়া Forking
কাঁটাচামচ থেকে আসে কাঁটাচামচ () ইউনিক্স এবং লিনাক্স সিস্টেমে ফাংশন যা একটি চলমান প্রক্রিয়া দ্বারা নিজের একটি অনুলিপি তৈরি করতে ব্যবহার করা যেতে পারে। সুতরাং, প্রক্রিয়া ফর্কিং হল দুটি অনুরূপ এবং একই সাথে কার্যকরী প্রক্রিয়া তৈরি করার জন্য একটি প্রক্রিয়ার নকল।
আরেকটি ধরণের ফর্কিং বলতে বোঝায় একটি ওপেন-সোর্স প্রকল্পের সোর্স কোড নেওয়া এবং তা থেকে একটি সম্পূর্ণ নতুন প্রোগ্রাম তৈরি করা।
36. ব্যাখ্যা কর থ্রেড স্পনিং
থ্রেড স্পোনিং হল একটি প্রক্রিয়া চালানোর জন্য একটি নতুন CPU থ্রেড তৈরি করার প্রক্রিয়া। একটি প্রসেসরের মাল্টি-থ্রেডিং ক্ষমতার সুবিধা নিতে প্রায়ই কম্পিউট-ইনটেনসিভ প্রোগ্রাম দ্বারা স্পোনিং ব্যবহার করা হয় এবং এর সাফল্য নির্ভর করে এটি যে CPU-তে চলছে, কতগুলি কোর রয়েছে এবং প্রতি কোরে কতগুলি থ্রেড অফার করে তার উপর।
37. কি করবেন সংরক্ষিত শব্দ কি বোঝাতে চেয়েছেন?
সংরক্ষিত শব্দগুলি এমন শব্দ যা আপনাকে একটি প্রোগ্রামিং ভাষায় সনাক্তকারী হিসাবে ব্যবহার করার অনুমতি দেওয়া হয় না। এর মধ্যে রয়েছে ফাংশন, ভেরিয়েবল এবং লেবেল। তারা সংরক্ষিত কারণ তারা ইতিমধ্যে সংজ্ঞায়িত করা হয়েছে এবং নির্দিষ্ট অর্থ আছে।
38. জনপ্রিয় সংরক্ষিত শব্দের তালিকা করুন
বিভিন্ন ভাষার তাদের সিনট্যাক্সের উপর ভিত্তি করে বিভিন্ন সংরক্ষিত শব্দ রয়েছে। এখানে প্রোগ্রামিং এর সবচেয়ে জনপ্রিয় সংরক্ষিত শব্দ আছে:
- IF
- 'সত্য'
- মিথ্যা
- সুইচ
- ছাড়া আর অন্য
- কেস
- বুলিয়ান
- প্রত্যাবর্তন
- ফাংশনটির
- বিরতি
- এতে যান
39. স্ট্রিং কি?
একটি স্ট্রিং অক্ষরের একটি ক্রম, প্রায়শই একটি অ্যারেতে রাখা হয় এবং পাঠ্য ডেটা সংজ্ঞায়িত করতে ব্যবহৃত হয়। সবচেয়ে জনপ্রিয় স্ট্রিং হল "হ্যালো ওয়ার্ল্ড"।
40. একটি চলক কি?
একটি ভেরিয়েবল হল যে কোন মান যা একটি প্রোগ্রামের এক্সিকিউশনের সময় পরিবর্তিত হতে পারে। একটি ভেরিয়েবল স্ট্রিং এবং পূর্ণসংখ্যা সহ যেকোনো ডেটা টাইপের হতে পারে। উদাহরণস্বরূপ, একটি প্রোগ্রাম নীচের মত শুরু করা হয়:
int a = 0;
int b = 1;
তারপর মৃত্যুদন্ডের সময়, পরিবর্তন করা হয়:
b = a+b; //বি বৈচিত্র্যময় হয়েছে
41. ধ্রুবক কি?
একটি ধ্রুবক হল একটি পরিবর্তনশীল যা প্রোগ্রাম নির্বাহের সময় পরিবর্তন হবে বলে আশা করা হয় না। একটি ভাল উদাহরণ হল আলো বা শব্দের গতি। বিভিন্ন প্রোগ্রামিং ভাষা আপনাকে বিভিন্ন উপায়ে ধ্রুবক সংজ্ঞায়িত করতে দেয়। উদাহরণস্বরূপ, সি-তে:
const float Middle_c = 261.62; একটি পিয়ানোতে //মিডল কী c হল 261.6255 Hz
42. একটি অ্যারে সংজ্ঞায়িত করুন
অ্যারে হল এক ধরনের ভেরিয়েবল যা এক সময়ে একাধিক মান সংরক্ষণ করতে ব্যবহৃত হয়। অনেক ভাষা আপনাকে শুধুমাত্র একই ধরনের ডেটার মান সঞ্চয় করার অনুমতি দেয়, যখন অন্যান্য ভাষা বিভিন্ন ধরনের অ্যারে পরিচালনা করতে পারে। আপনার কাছে বহুমাত্রিক অ্যারেও থাকতে পারে, যা অ্যারের অ্যারে এবং অগোছালো হতে পারে।
mql4 এ একটি অ্যারে সংজ্ঞায়িত করা সহজ:
স্ট্রিং TextArray[100]; //শত স্ট্রিংয়ের একটি অ্যারে
43। কি ফাংশন ওভারলোডিং?
ফাংশন ওভারলোডিং এমন একটি পদ্ধতি যা একজন বিকাশকারীকে একাধিক ফাংশন সংজ্ঞায়িত করতে দেয় যা একই নাম ভাগ করে কিন্তু বিভিন্ন কার্যকারিতা রয়েছে। এটি বিভিন্ন আর্গুমেন্ট সহ বিভিন্ন ফাংশন সংস্করণ তৈরি করে অর্জন করা হয়। কম্পাইলার তখন জানে যে সরবরাহকৃত আর্গুমেন্টের ধরন এবং সংখ্যা দ্বারা কোন ফাংশন প্রয়োজন।
44. একটি সংজ্ঞায়িত করুন রেফারেন্স দ্বারা কল করুন
রেফারেন্স দ্বারা একটি কল একটি ফাংশনে আর্গুমেন্টের মেমরি ঠিকানা পাস করার একটি পদ্ধতি, আর্গুমেন্টের মানের একটি অনুলিপি পাস করার আদর্শ পদ্ধতির বিপরীতে। রেফারেন্স কলের লক্ষ্য হল আর্গুমেন্ট সরাসরি ফাংশন দ্বারা পরিবর্তিত হয়।
45. ব্যাখ্যা কর পাটিগণিত অপারেটর
এগুলি বিশেষ অক্ষর যা একটি প্রোগ্রামিং ভাষায় গাণিতিক ক্রিয়াকলাপ সম্পাদন করতে কাজ করে। পাটিগণিত অপারেটর অন্তর্ভুক্ত:
- যোগ বা ইউনারী প্লাস (+)
- বিয়োগ বা একক বিয়োগ (-)
- গুণ (*)
- বিভাগ (/)
- মডুলাস (%)।
46. ব্যাখ্যা কর লজিক্যাল অপারেটর
লজিক্যাল অপারেটর হল শব্দ বা চিহ্ন যা শর্তসাপেক্ষ যুক্তির উপর ভিত্তি করে অপারেশন করতে ব্যবহৃত হয়। বেশিরভাগ ভাষায় মাত্র 3টি লজিক্যাল অপারেটর রয়েছে:
- এবং (&& C, C++, জাভাস্ক্রিপ্টে)
- OR (|| C, C++, জাভাস্ক্রিপ্টে)
- না (! সি, সি++, জাভাস্ক্রিপ্টে)
47. লজিক্যাল 1 এবং 0 =?
একটি যৌক্তিক 1 এবং 0 অপারেশন আপনাকে দেবে মিথ্যা কারণ দ্বিতীয় অপারেন্ডটি 0 এবং পজিটিভ আউটপুট পেতে আপনার AND অপারেশনের দুটি অপারেন্ড 1 বা TRUE হতে হবে।
48. লজিক্যাল নয় 1 =?
একটি যৌক্তিক NOT 1 অপারেশন আপনাকে দেবে মিথ্যা কারণ NOT অপারেটর আপনার দেওয়া সবকিছুকে অস্বীকার করে, মানে এটি 1 কে 0 তে এবং 0 কে 1 এ পরিণত করে। সুতরাং, এটিকে 1 বা সত্য অপারেন্ড দিলে ফলাফল 0 বা মিথ্যা হয়।
49. লজিক্যাল 1 NAND 1 =?
একটি যৌক্তিক 1 NAND 1 অপারেশন উত্পাদন করবে মিথ্যা কারণ উভয় অপারেন্ডই সত্য এবং NAND অপারেটর সর্বদা একটি বিপরীত আউটপুট তৈরি করতে দুটি অনুরূপ ইনপুটকে অস্বীকার করে।
এভাবে অপারেশন হলে ড 0 NAND 0, তাহলে আউটপুট হবে 1 বা TRUE।
50. লজিক্যাল 1 XOR 1 =?
একটি যৌক্তিক 1 XOR 1 অপারেশন উত্পাদন করবে মিথ্যা কারণ যখন একটি স্বাভাবিক OR ক্রিয়াকলাপ যেকোন একটিতে বা উভয় ইনপুট TRUE করে TRUE উৎপন্ন করবে, একটি XOR (এক্সক্লুসিভ OR) অপারেশন শুধুমাত্র তখনই TRUE উৎপন্ন করে যখন শুধুমাত্র একটি ইনপুট নয়, অন্যটি TRUE হয়।
উপসংহার
আমরা শীর্ষ 50টি অবশ্যই জানা থাকা প্রোগ্রামিং ইন্টারভিউ প্রশ্ন এবং তাদের উত্তরগুলির এই তালিকার শেষে পৌঁছেছি। এবং আপনি দেখতে পাচ্ছেন, প্রোগ্রামিংয়ের জগতটি বিশাল কিন্তু উত্তেজনাপূর্ণ।
কোন দুটি সাক্ষাৎকার এক নয়। সুতরাং, এই তালিকাটি আপনাকে সঠিক বিষয়ের দিকনির্দেশে নির্দেশ করার সময়, আপনার প্রতিটি সমস্যা সম্পর্কে আরও ভালভাবে বোঝার চেষ্টা করা উচিত।





