প্রোগ্রামিংয়ের এক হালি কমন কনফিউশন
Heading
দেখে হয়ত অনেকে বুঝে গেছেন আমি আজ কি নিয়ে কথা বলব । আর যারা বুঝেন নাই তাদের ও নিরাশ
হবার কিছু নেই । অনলাইনে বিভিন্ন বড় বড় Developer দের লিখনি পড়ে বুঝতে পারলাম আমরা যারা কম্পিউটার প্রোগ্রমিং করি তারা চাকরির
জন্য যখন ইন্টারভিউ দেই , ইন্টারভিউয়াররা কিন্তু আমাদের খুব জটিল কিনবা বড় কোন প্রোগ্রাম
লিখতে দেন না , তারা খুবই বেসিক লেবেলের কিছু প্রভলেম এবং প্রশ্ন করে থাকেন ।আর সেই
তথ্যরে উপর ভিক্তি করে নিজেকে প্রস্তুত করতে
গিয়ে আমি কিছু কনসেপ্ট নিয়ে কনফিউশনে পড়ি ।
আজ সেগুলো নিয়ে আলোচনা করব …
নাম্বার এক: Parameter vs Argument
Parameter
হল মেথডের / ফাংশনের মধ্যে ভ্যারিয়্যাবল কে
Declearation. অন্যদিকে Argument হলো ঐ ভ্যারিয়্যাবেলের
actual value যেটি মেথড / ফাংশনের কল কারার
সময় মেথড / ফাংশনের ভিতর পাস করা হয় । কি!! এখনো
বুঝেন
নাই
? আসুন
উদাহরন
দেখে
ধারনাটা
পরিপূর্ন
করি।
int add(int x, int y) {
return x + y;
}
int result = add(123, 456);
উপরে
উদাহরন থেকে add মেথডের ভিতর int x এবং int y হল Parameter এবং ঐ add মেথডকে যখন কল করে int result নামক ভ্যারিয়্যাবলে রাখা হয় তখন x এবং
y এর প্রকৃত ভেলু 123 এবং 456 পাস করা
হয় , আর এই ভেলু দুইটি হল Argument .
নাম্বার দুই: Mehtod vs Function
এক
কথায় বলেতে গেলে উপরের add মেথড / ফাংশনটিকে
যদি কোন
Class এর ভিতর লিখা হয় তাহলে সেটিকে
আমরা Mehtod বলব আর যদি class এর বাহিরে লিখা হয় তাহলে আমরা সেটিকে Function বলব । বিষয়টি নিয়ে
পরিষ্কার ধারনার জন্য আর কিছু র্পাথক্য জেনে নেই…
Function কে আমরা
Object oriented or Non- object oriented Programming প্রয়োগ করতে পারি কিন্তু Method
কে শুধুমাত্র Object Oriented
Programming এ প্রয়োগ করতে পারি ।
Function এর কোন
Reference Variables নেই অন্যদিকে Method
কে Reference Variable দ্বারা কল করা হয় ।
একটি উদাহরন দেখা যাক …
void main() {
//This is referred to as a function
int add(int x, int y) {
return x +
y;
}
int result = add(10, 20);
print(result);
var methodCallResult = new
MyMethod().add(10,20);
print(methodCallResult);
}
class MyMethod{
//This is referred to as a method
int add(int x, int y) {
return x + y;
}
}
নাম্বার
তিন : কল ব্যাক ফাংশন কী?
এক কথায় কল ব্যাক ফাংশন এমন একটা ফাংশন যেটা
আরেকটা ফাংশন এক্সিকিউট হওয়ার পর এক্সিকিউট হয়। আর এজন্যেই এটার নাম কলব্যাক ফাংশন।
এখানে ফাংশনও অবজেক্ট। আর একটা ফাংশনকে আরেকটা ফাংশন রিটার্ণ করতে পারে
আবার একই সাথে একটা ফাংশন আর্গুমেন্ট হিসেবে আরেকটা ফাংশনকেও নিতে পারে। আর যখনি
এরকম একটা ফাংশন আরেকটা ফাংশনকে আর্গুমেন্ট হিসেবে নেয়, তখনি
আমরা সেই আর্গুমেন্টে যাওয়া ফাংশনটাকে কলব্যাক ফাংশন বলি।
একটি
উদাহরন দেখা যাক …
void main() {
int a = 10;
int b = 10;
int sum = a+b;
functionOne(sum){
return sum;
}
functionTwo(x){
print(sum);
}
functionTwo(functionOne);
}
নাম্বার চার: Null vs Empty String
Null
String হ'ল 'কিছুই না', পরম কিছুই
নয় বলে বোঝানোর প্রোগ্রামিক পদ্ধতি।যেমন 0 কন্তিু 'কিছুই'
নয়। এটি একটি পূর্ণসংখ্যা মান। একইভাবে " " (empty)
হ'ল খালি স্ট্রিংয়ের মান তবে 'কিছুই না' বলা যায় না। কারন এর length
আছে.
একটি
উদাহরন দেখা যাক …
void main() {
String nullString;//declear
String nullStrings = null;
//initialize
String emptyString = " ";
print(nullString); //Output is : null
print(nullStrings); //Output is : null
print(emptyString.length); //Output is : 0
}
Awesome :D
ReplyDeleteধন্যবাদ
Deletevalo likhechen vaiya 😊
ReplyDelete