এসো প্রোগ্রামিং শিখি

এসো প্রোগ্রামিং শিখি শুধু কোড ভাঙ্গা জবাব হবে....

কম্পিউটার প্রোগ্রামার হিসেবে আপনাকে কী কী কাজ করতে হবে?কম্পিউটার প্রোগ্রামার বা কোডার হলেন এমন একজন টেকনলজি প্রফেশনাল যি...
25/12/2022

কম্পিউটার প্রোগ্রামার হিসেবে আপনাকে কী কী কাজ করতে হবে?

কম্পিউটার প্রোগ্রামার বা কোডার হলেন এমন একজন টেকনলজি প্রফেশনাল যিনি বিভিন্ন কোডিং ল্যাংগুয়েজ ব্যবহার করে কাজ করেন। সফটওয়্যার ডেভেলপার ও ইঞ্জিনিয়ারদের তৈরি পরিকল্পনা অনুযায়ী কার্যকরীভাবে কোড লেখাই মূলত প্রোগ্রামারদের কাজ। তাঁরা সাধারণত পাইথন, জাভা, জাভাস্ক্রিপ্ট, সি, সি++, এইচটিএমএল, পিএইচপি এবং এসকিউএল নিয়ে কাজ করে থাকেন। এইসব ল্যাংগুয়েজ ব্যবহার করে তাঁরা কম্পিউটার অ্যাপলিকেশনের জন্য নির্দেশনা লিখতে পারেন যা ব্যবহার করে কম্পিউটার নানান কাজ সম্পাদন করতে পারে।

সফটওয়্যার ডেভেলপারদের ডিজাইনকে কার্যকর অ্যাপলিকেশনে পরিণত করতে দরকার সঠিক কোডিং। আর এর জন্য প্রয়োজন একজন দক্ষ প্রোগ্রামার। প্রোগ্রামাররা কম্পিউটার অ্যাপলিকেশন সঠিকভাবে পরিচালনার জন্য প্রয়োজনীয় কোড লেখেন এবং টেস্ট করেন। এছাড়া তাঁরা প্রোটোটাইপ অ্যাপলিকেশন টেস্ট করে তা নির্ভুলভাবে কাজ করছে কিনা সেটাও যাচাই করেন।

কম্পিউটার প্রোগ্রামারদের আরও কিছু কাজের মধ্যে পড়ে –

• প্রোগ্রামে কোনো ‘Error’ আছে কিনা তা খুঁজে বের করে তা ঠিক করা।
• পুরোনো কম্পিউটার প্রোগ্রাম আপডেট করা ও তাতে নতুন ফাংশন সংযোজন করা।
• কোড লাইব্রেরি ব্যবহার করে পুরোনো কোডকে সহজ করে লেখা।
• ডেভেলপমেন্ট পর্যায়ে কোড লেখা ও টেস্ট করা।
• Software as a Service সুবিধা ব্যবহার করে একাধিক অপারেটিং সিস্টেমে কাজ করে এরকম কোড লেখা।
কম্পিউটার প্রোগ্রামাররা সাধারণত কম্পিউটার সিস্টেম ডিজাইন বা এ ধরনের সার্ভিস সেক্টরে কাজ করেন। কেউ কেউ আবার সরাসরি সফটওয়্যার পাবলিশার, ইন্স্যুরেন্স ফার্ম অথবা পণ্য উৎপাদনকারী কোম্পানির সাথেও কাজ করেন। আবার অনেকেই কোনো কোম্পানিতে কাজ না করে ফ্রিল্যান্স বা নিজস্ব প্রজেক্টে কাজ করে থাকেন। একজন কম্পিউটার প্রোগ্রামার হিসেবে আপনি যেমন একা কাজ করতে পারবেন, তেমনি বড় প্রজেক্টের ক্ষেত্রে অন্য কম্পিউটার বিশেষজ্ঞদের সাহায্যও নিতে পারবেন। যেহেতু কোডিং যে কোনো জায়গা থেকেই করা সম্ভব, আপনার কাছে অনেক রিমোট চাকরির সুযোগও থাকবে।

কীভাবে শুরু করবেন এই ক্যারিয়ার?

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

বর্তমানে বাংলাদেশের প্রায় সবক’টি বিশ্ববিদ্যালয়ে সিএস ডিগ্রি প্রোগ্রাম রয়েছে যা আপনাকে প্রয়োজনীয় দক্ষতা অর্জনে সাহায্য করবে। তবে সব প্রোগ্রামিং ক্যারিয়ারের জন্য ব্যাচেলর ডিগ্রি থাকা জরুরী না। অনেক কোম্পানিই ব্যাচেলর ডিগ্রি ছাড়াও সহযোগী অন্য কোনো ডিগ্রি আছে বা চাকরির জন্য দরকারি দক্ষতা আছে এমন প্রার্থীও নিয়োগ দেয়। এক্ষেত্রে সবচেয়ে জরুরী বিষয়টা হচ্ছে আপনার কোডিং দক্ষতা।

কম্পিউটার প্রোগ্রামার হিসেবে ক্যারিয়ার গড়তে চাইলে আপনার অ্যাকাডেমিক জীবনের সবচেয়ে গুরুত্বপূর্ণ কোর্সগুলো হলো –

• গণিত, ক্যালকুলাস, পরিসংখ্যান অথবা বীজগণিতীয় ম্যাট্রিক্স
• সফটওয়্যার ডিজাইন এবং ইনফ্রাস্ট্রাকচার
• জাভা প্রোগ্রামিং
• সি++ এবং পাইথনের মতো কোডিং ল্যাংগুয়েজ
কম্পিউটার প্রোগ্রামার হিসেবে কাজ শেখার এবং অভিজ্ঞতা অর্জনের চমৎকার একটি উপায় হচ্ছে ইন্টার্নশিপ। বেশিরভাগ বিশ্ববিদ্যালয়ে ব্যাচেলর ডিগ্রির শেষ দিকে কিছুদিনের জন্য ইন্টার্নশিপ করার সুযোগ থাকে। আবার বিভিন্ন সফটওয়্যার কোম্পানিতেও সদ্য গ্র্যাজুয়েটদের ইন্টার্নিশিপের সুযোগ দেওয়া হয়। এ বিষয়ে তথ্যের জন্য আপনি বিশ্ববিদ্যালয় প্রশাসনের সাথে যোগাযোগ করতে পারেন অথবা বিভিন্ন চাকরির পোর্টাল ও সোশ্যাল মিডিয়া গ্রুপে প্রকাশিত ইন্টার্নশিপের দিকে নজর রাখতে পারেন।

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

এর জন্য বিভিন্ন বিশ্ববিদ্যালয় ও ইনস্টিটিউশনে প্রোগ্রামারদের জন্য সার্টিফিকেট প্রোগ্রাম রয়েছে। এছাড়া কিছু ওয়েবসাইট ব্যবহার করে আপনি বিশেষ কোনো কোর্সেও সার্টিফিকেট অর্জন করতে পারবেন। Udemy এবং LinkedIn Learning-এ নতুন ও আধুনিক টেকনোলজি বিষয়ক অনেক কোর্স রয়েছে। এমনকি সিএস গ্র্যাজুয়েটদের নতুন টেকনোলজি সম্পর্কে জানা বা আগের জ্ঞান ঝালাই করে নেওয়ার জন্য Udemy-এর কোর্সগুলো অনেক উপযোগী। এবং এসব কোর্স থেকে অর্জিত সার্টিফিকেট সিভিতে যোগ করে নিজের স্কিলকে উল্লেখযোগ্যভাবে উপস্থাপন করা সম্ভব।

22/12/2022

Software quality assurance Engineer(SQA) হিসাবে আপনাকে যেভাবে এগিয়ে যেতে হবে......... সফটওয়্যার টেস্টিং এর জন্য নিজেকে প্রস্তুত করার আগে কিছু জিনিস অবশ্যই মাথায় রাখতে হবে। তার মধ্যে কিছু জিনিস আমি তুলে ধরার চেষ্টা করছি।

পার্ট-১

মাইন্ড সেটআপ করুন .........

একজন SQA ইঞ্জিনিয়ার হিসাবে নিজেকে গড়ে তুলতে হলে সর্বপ্রথম আপনাকে যে কাজ টি করতে হবে নিজেকে সব সময় user সাইট থেকে চিন্তা করতে হবে, আর মাথার মধ্যে আপনাকে এটা ঢুকাতে হবে যে , আপনি যে ভাবেই হোক ভুল বের করবেন। বিভিন্ন ধরণের Negative data ব্যবহার করে হোক অথবা অন্য কোনো ভাবেই হোক , তাহলে দেখবেন ভুল গুলো অথবা Bug গুলো easy ভাবে ধরা পরতেছে। Developer রা Code লেখে ভিন্ন ভাবে তেমন চিন্তা না করেই। কিন্তু আপনি একজন SQA Engineer হিসাবে অবশ্যই বিভিন্ন দিক থেকে চিন্তা করে টেস্ট করে ভুল গুলো ( Bug ) খুঁজে বের করবেন। আপনাকে মাইন্ড সেটআপ সেই ভাবেই করতে হবে। একটা উদাহরণ দেইঃ ধরুন আপনি একটা ক্যালকুলেটর এ যোগ হয় কিনা টেস্ট করবেন। সবাই হয়তো বিভিন্ন নাম্বার দিয়ে চেক করবে, কিন্তু একজন টেস্টার হিসাবে আপনি দেখার চেষ্টা করবেন যতগুলা সম্ভাব্য রাস্তা আছে চেক করে ফেলা। যেমন আপনি দশমিক সংখ্যা দিয়ে যোগ করে দেখবেন, ১ এর নিচের সংখ্যা দিয়ে যোগ করে দেখবেন, একটা বিয়োগ বা গুন বা ভাগ এর মাঝে একটা যোগ করে দেখবেন ইত্যাদি। এবং এর জন্য আপনার এনালাইটিক্যাল এবিলিটি (Analytical Ability) ভালো থাকতে হবে। এবং ইন্টারভিউ তেও চেক করে দেখা হয় যে একজন প্রার্থীর এই এবিলিটি ক্যামন, কারণ এটা খুবই গুরুত্বপুর্ণ একটা প্রস্তুতি।

ম্যানুয়াল টেস্টিং শিখুন ......

SQA Engineer হওয়ার জন্য সর্বপ্রথম নিজেকে ম্যানুয়াল টেস্টার হিসাবে গড়ে তুলুন। ম্যানুয়াল টেস্টিং এর সব গুলো স্টেপ কমপ্লিট করে , তারপর test case লেখা শুরু করতে শিখুন। কারণ ম্যানুয়াল টেস্টিং এ দক্ষ হলে Automation Testing এ আপনি অনেক সুবিধা পাবেন। Bug সম্পর্কে ভালো আইডিয়া পাবেন। ম্যানুয়াল টেস্টিং শেখার জন্য বিভিন্ন Youtube Channel Follow করতে পারেন।

অটোমেশন টেস্টিং ........

অটোমেশন টেস্টিং জানা থাকলে আপনি SQA Engineer হিসাবে ভালো গুরুত্ব পাবেন সবার কাছে। কারণ অটোমেশন টেস্টিং যেমন সময় সাপেক্ষ তেমনি কোম্পানি এর cost ও কমিয়ে নিয়ে আসে। একজন ম্যানুয়াল টেস্টার একটা ওয়েবসাইট Regression Testing করতে অনেক সময় লাগবে যেখানে অটোমেশন টেস্টিং চালু করে পাশাপাশি অন্য কাজ ও করা যায় , এবং অল্প সময়ে regression testing complete হতাই নিজেকে Automation Tester হিসাবে গড়ে তোলার জন্য programing language জানার পাশাপাশি কিছু testing tools সম্পর্কে ভালো দক্ষ হতে হবে।

17/12/2022

আমরা কয়েকজন স্বপ্নবাজ তরুণ।সৃষ্টিকর্তার দয়ায় সবাই গ্র্যাজুয়েশন শেষ করে এখন জীবিকার তাগিদে, বা নিজের পেশন এর জায়গা থেকে সবাই এখন বিভিন্ন কোম্পানি তে বিভিন্ন সেক্টরে আছি। যেমন : ফ্রন্টেন্ড ডেভেলপার,ইউআই/ইউএক্স ,এসকিউএ ,অ্যাপ ডেভেলপমেন্ট,আইটি,নেটওয়ার্ক।
জব লাইফে আমরা নিত্যদিন নতুন নতুন জিনিস শিখছি, যেগুলো যারা এসব সেক্টরে আসতে চায় তাদের জবলাইফ শুরুর ক্ষেত্রে অনেক কাজে লাগতে পারে। আমাদের উদ্দেশ্য, আমাদের দ্বারা যদি একজনের ও একটু উপকার হয় সেটাই আমাদের স্বার্থকতা।

সেই উদ্দেশ্যেই এখন থেকে এই পেজ থেকে উপরোক্ত সেক্টর থেকে আমরা যা জানি, যা শিখবো তার ই একটা অভিজ্ঞতা শেয়ার করার চেষ্টা করবো। যাতে আপনরা উপকৃত হলেও হতে পারেন।

আশা করছি আপনার দোয়া দিয়ে আমাদের সাথেই থাকবেন।

প্রথম প্রোগ্রামিং ল্যাঙ্গুয়েজ হিসেবে সি (C) বেশ জনপ্রিয় ও বহুল ব্যবহৃত। বিভিন্ন প্রোগ্রামিং প্রতিযোগিতায় (স্কুল-কলেজ-...
03/01/2022

প্রথম প্রোগ্রামিং ল্যাঙ্গুয়েজ হিসেবে সি (C) বেশ জনপ্রিয় ও বহুল ব্যবহৃত। বিভিন্ন প্রোগ্রামিং প্রতিযোগিতায় (স্কুল-কলেজ-বিশ্ববিদ্যালয় পর্যায়ে) সি ব্যবহার করা হয়। কলেজে আইসিটি কোর্সের সি ব্যবহার করা হয় এবং বেশিরভাগ বিশ্ববিদ্যালয়েও প্রথম প্রোগ্রামিং কোর্সে সি ব্যবহার করা হয়। সি ভালোভাবে শিখতে গিয়ে অনেকেই নানান সমস্যায় পরে। তাই আমার অভিজ্ঞতা থেকে কিছু পরামর্শ দিলাম।

০) কোর্স পাশ করা কিংবা একটা বই পড়ে শেষ করা উদ্দেশ্য নয়, সেটা বুঝতে হবে। কম্পিউটার সায়েন্সে পড়ে প্রোগ্রামিং ঠিকমতো না শিখলে সারা জীবন ভুগতে হবে। প্রোগ্রামিং কোর্সে এ প্লাস পাওয়া আর প্রোগ্রামিং শেখা এক জিনিস নয় – এই জিনিস মাথায় গেঁথে নিতে হবে।

১) প্রোগ্রামিংয়ের পেছনে নিয়মিত সময় দিতে হবে। একটানা কয়েকঘণ্টা (২ থেকে ৫ ঘণ্টা)। সপ্তাহে কমপক্ষে ৫ দিন। এভাবে মাসের পর মাস। প্রোগ্রামিং করার সময় অন্য কিছু, যেমন টিভি দেখা, খেলা দেখা, ফেসবুক – এসব করা যাবে না।

২) প্রথমে একটা বিষয় পড়ে বোঝার চেষ্টা করতে হবে। প্রথম পড়াতেই পুরোটা বুঝতে পারা যাবে না (বেশিরভাগ ক্ষেত্রেই) এবং তাতে কোনো অসুবিধা নেই। যেকোনো একটা বই দিয়ে শুরু করতে হবে এবং বইয়ের প্রত্যেকটা উদাহরণ নিজে প্রোগ্রাম লিখে চালিয়ে দেখতে হবে।

৩) প্রোগ্রামিংয়ে অনেক সময়ই কেন হয় প্রশ্নের উত্তর পাওয়া যাবে না (আসলে পাওয়া যাবে, তবে অনেক পরে, কখনও কয়েক মাস পরে, কখনও আরো বেশি সময় পরে)। যেমন: scanf ফাংশনে ভেরিয়েবলের আগে & চিহ্ন কেন ব্যবহার করা হয়, সেটা নিয়ে শুরুতে বেশি মাথা ঘামানো দরকার নাই। কিভাবে ব্যবহার করতে হয়, সেটা জানলেই হবে। তবে প্রোগ্রামিং শিখতে থাকলে একসময় এর উত্তর পেয়ে যাবে। শুরুতে কী করলে কী হয়, সেটাই গুরুত্বপূর্ণ। এজন্য বেশি বেশি প্রোগ্রাম লিখতে হবে, এবং প্রোগ্রামিং করার সময় পূর্ণ মনোযোগ দিতে হবে।

৪) কোনো কিছু মনে রাখার চেষ্টা করা, কিংবা মুখস্থ করার চেষ্টা করার দরকার নাই। প্রোগ্রামিং এত বেশি প্র্যাকটিস করতে হবে যে মুখস্থ না করে বিষয়টা নিজের আয়ত্বে এসে যাবে। ক্রিকেট খেলায় যেমন কোন ধরনের বলে কোন শট খেলতে হয়, সেটা কেউ মুখস্থ করে না, বরং প্র্যাকটিস করতে করতে আয়ত্বে চলে আসে – এরকম আর কী।

৫) লজিক জিনিসটা খুবই গুরুত্বপূর্ণ ও সহজ। কিন্তু আমাদের সবাই প্রোগ্রামিং শিখতে আসলে এখানে ধাক্কা খাই। কারণ আসলে তো আমরা সারাজীবন মুখস্থ করে এসেছি, চিন্তাভাবনা করে কিছু করি নাই ও শিখি নাই, আর সমসময়ই শিক্ষক বলে দিয়েছেন যে কী করতে হবে। তাই শুরুতে ধাক্কা খেলে হতাশ হওয়া চলবে না, বরং ধৈর্য্য রাখতে হবে, চেষ্টা চালিয়ে যেতে হবে।

৬) যেই বই দিয়েই সি শেখা শুরু কর না কেন, সেটা দুইবার পড়তে হবে (এবং সেই বইতে যা বলা হয়েছে, তা করতে হবে)। তারপরে কমপক্ষে আরো একটা বই পড়তে হবে।

৭) ক্লাসের পরীক্ষায় (মানে প্রোগ্রামিং কোর্সের পরীক্ষায়) কম নাম্বার পেলে মন খারাপ করা চলবে না। কে কতটুকু প্রোগ্রামিং পারে সেটা আসলে পরীক্ষায় যাচাই করা খুব কঠিন।

৮) i++, ++i এসব জিনিস নিয়ে শুরুর দিকে মাথা ঘামানো মানে সময় নষ্ট করা, যদিও এটা পরীক্ষায় অনেক শিক্ষকেরই প্রিয় প্রশ্ন। ভেরিয়েবল, কন্ডিশনাল লজিক, লুপ, অ্যারে, ফাংশন – এসব জিনিস ভালোভাবে শিখতে ও এগুলো ব্যবহার করতে পারতে হবে।

৯) সি মোটামুটি শেখা হয়ে গেলে সি দিয়ে যেকোনো ওয়েবসাইট থেকে ৫০-১০০ টা সমস্যা সমাধান করতে হবে, তাহলে হাত ও মাথা পাকবে।

১০) আমি সি পুরোটা শিখতে চাই – এই টাইপ চিন্তাভাবনা থেকে বের হয়ে আসতে হবে। আমার মতে, এটা বোকার মত চিন্তা। পুরোটা সি শেখা বলতে আসলে তুমি কী বোঝাও, সেটা নিজেই জান না। অনেকে সি দিয়ে গ্রাফিক্যাল ইউজার ইন্টারফেস (গুই – GUI) সমৃদ্ধ সফটওয়্যার বানাতে চায়, যেটা আসলে না করলেই ভালো। কারণ এতে পরিশ্রম বেশি হয়, শেখা কম হয়। প্রোগ্রামিং শিখতে থাকলে একসময় গুই বানানোর অনেক টুলসের সাথে পরিচিত হবে, তাই অস্থির হওয়ার কিছু নেই।

১১) প্রোগ্রামিং কনটেস্টে অংশ নিতে হবে। প্রোগ্রামিং প্রতিযোগিতায় ভালো করতে পারলে তো ভালো, কিন্তু ভালো করতে না পারলেও ক্ষতি নেই। ভালো করার জন্য যেই চেষ্টা – সেটা করতে গিয়েই অনেক কিছু শিখতে পারবে যেটা তোমাকে ভবিষ্যতে একজন দক্ষ সফটওয়্যার ইঞ্জিনিয়ার হতে সহায়তা করবে।

প্রোগ্রামিং নিয়ে আনন্দে সময় কাটুক সবার!

08/10/2021
Useful Shortcut for Code-blocks ..Happy coding 🔥
21/06/2021

Useful Shortcut for Code-blocks ..
Happy coding 🔥

🏆🏆🏆
13/02/2021

🏆🏆🏆

কনফিউজড প্রোগ্রামারপ্রোগ্রামিং শেখা শুরু করার সময় আমাদের মনে হাজারটা প্রশ্ন আসে এবং আসাটাই স্বাভাবিক কারণ জিনিসটা আমাদ...
27/10/2020

কনফিউজড প্রোগ্রামার

প্রোগ্রামিং শেখা শুরু করার সময় আমাদের মনে হাজারটা প্রশ্ন আসে এবং আসাটাই স্বাভাবিক কারণ জিনিসটা আমাদের কাছে নতুন। কিন্তু সমস্যাটা হয় উত্তর খুজতে গিয়ে, দশজনকে জিজ্ঞেস করে আমরা দশটা উত্তর পাই। কেও বলবে আগে সি শিখো, কেও বলবো পিএইচপি শিখে আউটসোর্সিং এ নেমে যাও, কেও বলবে অ্যালগরিদম শিখে প্রোগ্রামিং কনটেস্ট করো। কিন্তু আমরা করবোটা আসলে কি?

এই লেখার উদ্দেশ্য তোমাকে উপদেশ দিয়ে আরো কনফিউজড করা না, বরং কনফিউশন দূর করতে সাহায্য করা এবং নিজের কিছু অভিজ্ঞতা শেয়ার করা।

কিছুদিন আগে প্রশ্ন-উত্তর ওয়েবসাইট Quora তে কিছু লেখা পড়ছিলাম যার বিষয় ছিল প্রোগ্রামিং শেখা আগের থেকে কঠিন হয়ে গেছে নাকি সহজ? একভাবে চিন্তা করতে গেলে, অবশ্যই আগের থেকে সহজ হয়ে গিয়েছে। একসময় প্রোগ্রামিং ল্যাংগুয়েজগুলো তেমন উন্নত ছিল না, লো-লেভেল ল্যাংগুয়েজ শিখতে অনেক পরিশ্রম করতে হতো, সেই তুলনায় এখনকার পাইথন বা সি++ শেখা খুবই সহজ। বাচ্চাদের প্রোগ্রামিং শিখানোর জন্য অনেক রকমের ভিজুয়াল ল্যাংগুয়েজও এখন বের হয়ে গিয়েছে। এখনকার IDE গুলোও এত স্মার্ট যে ভুল করতে না করতেই ধরিয়ে দেয়।

এখন ইন্টারনেটে যেকোনো টপিক সার্চ করলে হাজার-হাজার রিসোর্স চলে আসে। বাংলা ভাষার কথাই চিন্তা করি, ৫বছর আগেও অ্যালগোরিদম আর প্রোগ্রামিং কনটেস্ট নিয়ে বাংলায় তেমন ভালো লেখা ছিল না, এখন অনেকেই কি সুন্দর করে বাংলায় কঠিন কঠিন বিষয়গুলো সহজ করে লিখছে! কিন্তু এই ইন্টারনেট যেমন প্রোগ্রামিং শেখা সহজ করে দিয়েছে, একই ভাবে অনেক কঠিনও করে দিয়েছে! এখন নানা মুনির নানা মতের কারণে আমরা কি শিখবো সেটাই ঠিক করতে পারি না, শেখাতো দূরের কথা।

আমি যখন প্রথম প্রোগ্রামিং শিখি Qbasic ল্যাংগুয়েজে তখন আমি প্রোগ্রামিং নিয়ে তেমন কিছুই জানতাম না। পৃথিবীতে হাজার হাজার ল্যাংগুয়েজ আছে, একেকটা একেক রকম সুবিধা আছে সেসব সম্পর্কে আমি সম্পূর্ণ অজ্ঞ ছিলাম, আমি খালি QBasic, Visual Basic এরকম কিছু শব্দ জানতাম, আর জানতাম যে C নামের খুব কঠিন ল্যাংগুয়েজ আছে যেটা বড়রা শিখে! আমি ইন্টারনেট ক্যাফেতে গিয়ে কিউবেসিক এর একটা টিউটোরিয়াল আর কম্পাইলার ডাউনলোড করে এনে নিজে নিজে শেখার চেষ্টা করতাম। নিজে নিজে গুতাগুতি করে মিনি ক্যালকুলেটর, বেস কনভার্টার এসব টাইপের কোড লিখে আমার কোডিং এর সাথে পরিচয়, গাইডলাইন দেয়ার মত কেও ছিল না তখন।

এরপর এইচ.এস.সি পরীক্ষার পর এবং ভর্তি পরীক্ষার আগে এক বড়ভাইয়ের কাছে জানতে পারি সি শেখা খুব কঠিন না আর সবাই সি দিয়ে প্রোগ্রামিং শেখা শুরু করে। তখন ডেইটেলের একটা মোটাসোটা সি এর বই জোগাড় করে শেখা শুরু করি। সেসময় আমার কাছে ইন্টারনেট থাকলেও ব্যবহার ছিল খুবই সীমিত। সি এর বেসিক সব নলেজ আমি ডেইটেলের বই থেকেই শিখেছি, মাঝে মাঝে সেই বড়ভাইয়ের সাহায্য নিয়েছি। তখন আমি সি আর সি++ নিয়ে কনফিউজড হয়ে গিয়েছিলাম (এমন কি আছে যে হয় নি?), কোনটা আগে শিখবো? পরে যখন শুনলাম যে একটা ল্যাংগুয়েজ শেখার পর বাকিগুলা শেখা তেমন কঠিন না, আসল কাজ হলো “প্রোগ্রামারদের মত” চিন্তা করতে শেখা, তখন আর সেই নিয়ে দুশ্চিন্তা না করে ডেইটেলের সি এর বই, আর ইন্টারনেটে দুয়েকটা রেফারেন্স সাইট ছাড়া তেমন কিছু ধরিনি।

এখন আমার হাতে অনেক রিসোর্স, জানিও আগের থেকে অনেক বেশি, কিন্তু এখন নতুন কিছু শিখতে গেলে আমি কনফিউজড হয়ে যাই। চারিদিকে হাজারটা ফ্রেমওয়ার্ক (জাভাস্ক্রিপ্টের ফ্রেমওয়ার্কের জন্মহার বাংলাদেশের জন্মহারের সাথে পাল্লা দেয়ার চিন্তা করছে), দশ রকমের ডাটাবেস টুল, দশ রকমের ল্যাংগুয়েজ নিয়ে দশ হাজার ভিন্ন মতামত। HackerRank এ কাজ করার সময় রুবি অন রেইলস শিখলাম, এরপর জানলাম রুবি অন রেইলসে নাকি হাজার রকম সমস্যা, রবি ডেভেলপাররা না খেয়ে মারা যাবে কয়দিন পর, backbone.js শিখলাম, তারপর শুনি শুধুমাত্র মেরুদন্ডহীন ইঞ্জিনিয়াররাই ব্যাকবোন ব্যবহার করে, এখনকার ইঞ্জিনিয়াররা React.js ব্যবহার করে। এখান Traveloka.com এ জাভা নিয়ে কাজ করছি, কিন্তু একসময় আমি নিজেও কত জাভা নিয়ে নাক শিটকেছি!

আরেকটা সমস্যা হলো শো-অফ করা ডেভেলপারের সংখ্যা ইন্টারনেটে অতিরিক্ত বেশি, তুমি যদি কনফিউজড এবং হতাশ হতে না চাও তাহলে তাদেরকে তোমার চিনতে হবে। এরা মানুষকে প্রোগ্রামিং শিখানোর নামে ইউটিউবে ভিডিও আপলোড করবে বা ব্লগ লিখবে এবং সেখানে কোনো টপিকের গভীরে প্রবেশ করবে না। এদের লক্ষ্য ১০মিনিটের ভিডিওতে ২০টা Buzzword ব্যবহার করে নিজের জ্ঞান জাহির করা। এরা তাদের কোম্পানিতে কোনো একটা অপটিমাইজেশন করে ভাব দেখাবে যে রকেটে করে চাঁদে যাবার মত কোনো কাজ করেছে এবং কিভাবে অপটিমাইজেশনটা করেছে সেটা সহজ ভাষায় বলবে না। কথায় কথায় Concurrency, NO-SQL, ES6, dynamoDB, REST এসব শব্দ ব্যবহার করে হয়তো পান্ডিত্য দেখানো যায়, কিন্তু তাদের কাছে নতুন কিছু শেখার চেষ্টা করছে তারা কনফিউজড হয়ে যায়। তারমানে এই না যে এই শব্দগুলো গুরুত্বপূর্ণ না, আমি বলছি তাদের কথা যারা কঠিন শব্দ ব্যবহার করে অন্যদের ভড়কে দিতে পছন্দ করে কিন্তু প্রায়ই দেখবে কঠিন শব্দের আড়ালে আসলে সহজ কোনো ধারণাই লুকিয়ে আছে।

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

ক্রিকেট খেলায় যখন কেও ম্যাচের পর ম্যাচ খারাপ খেলতে থাকে তখন তাকে কোচরা উপদেশ দেয় “Stick to the basic”, তারমানে হলো হাজার রকমের টেকনিক না খাটানোর চেষ্টা করে তোমার বেসিকের দিকে মনযোগী হও, ফর্ম যখন ফিরবে তখন আবার রিভার্স সুইপে ছক্কা মারতে পারবে। তুমি যদি কেবলই নতুন প্রোগ্রামিং শেখা শুরু করো তাহলে কোন ল্যাংগুয়েজ শিখলে চাকরি বেশি এই নিয়ে চিন্তা না করে যেকোনো একটা ল্যাংগুয়েজ শেখা শুরু করে বেসিকের প্রতি মনযোগী হয়। তুমি শিখো কত রকমের ডাটাটাইপ আছে কিভাবে অ্যারে/পয়েন্টার কাজ করে, কিভাবে লিংকড লিস্ট বানাতে হয়, কি করলে প্রোগ্রাম ক্র্যাশ করে, কিভাবে ডিবাগ করতে হয় ইত্যাদি। একবার যখন তোমার বেসিক শক্ত হবে তখন না হয় তুমি সি ভালো নাকি জাভা ভালো সেটা নিয়ে চিন্তা করলে!

যখনই নতুন কোনো বিষয় শিখবে, চেষ্টা করবে একসাথে একাধিক সোর্স থেকে না শিখতে। সবথেকে ভালো, নির্ভরযোগ্য সোর্সটা বেছে নিয়ে সেখান থেকে মোটামুটি ভালো করে শিখে এরপর অন্যান্য সোর্স নিয়ে গুতাগুতি করে দেখবে আরো কিছু শেখা যায় নাকি, তাহলে কনফিউজড হবার সম্ভাবনা কমে যাবে। যেমন সি শেখার জন্য ডেইটেল বা হার্ভার্ড শিল্ডের বই সারা পৃথিবীর ছেলেমেয়েরা পড়ে, এই বইগুলোর গ্রহণযোগ্যতা নিয়ে কোনো সন্দেহ নেই, তুমি এরকম একটা বই বেছে নিয়ে যতটা সম্ভব পড়ে ফেলতে পারো। অথবা ইংরেজী পড়তে না চাইলে তামিম শাহরিয়ার সুবিনের বাংলা বইও পড়তে পারো। আবার মেশিন লার্নিং সম্পর্কে জানতে চাইলে অ্যান্ড্রু এনজির কোর্সেরা ভিডিও কোর্সটা চোখ বন্ধ করে বেছে নিতে পারো। এর মানে এই না যে এক বিষয়ের উপর একটাই বই পড়ে সারাজীবন চালিয়ে দিবে, “The man of a single book” হওয়াটা বুদ্ধিমানের কাজ না। ভালো বই/ভিডিও/ব্লগ চেনার সহজ উপায় হলো, সেখানে খালি তোমাকে কি করলে কি হবে বলা থাকবে না, কেন হবে সেটাও বলা থাকবে।

কারো উপদেশ গ্রহণ করার সময় আরেকটা ব্যাপারে খেয়াল রাখতে হবে, যে উপদেশ দিচ্ছে সে কি সেই বিষয়টার উপরে দক্ষ? বিশ্ববিদ্যালয়ে ভর্তির পর ক্যারিয়ার বিষয়ের উপদেশ কখনোই সেকেন্ড ইয়ার বা থার্ড ইয়ারের ছাত্র/ছাত্রীর কাছ থেকে অন্ধভাবে নিবে না, থার্ড ইয়ারে যে পড়ালেখা করে সে হয়তো ভালো অ্যালগরিদম জানে কিন্তু ক্যারিয়ার নিয়ে কতটুকু জানে? এমনকি অনেক বিখ্যাত লোকজনও অনেক সময় অনেক কথা বলে যেটা সম্পর্কে সে বিশেষজ্ঞ না। কিছুদিন আগে ইলন মাস্ক আর্টিফিসিয়াল ইন্টেলিজেন্স নিয়ে কিছু কথা বলেছে যা নিয়ে খুব হইচই হয়েছে, কিন্তু প্রফেসর অ্যান্ড্র এনজি অন্যরকম মতামত দিয়েছেন। আমি ইলন মাস্ক এর অনেক বড় ভক্ত হলেও মেশিন লার্নিং বা এ.আই নিয়ে অ্যান্ড্র এনজির মতামতকেই বেশি গুরুত্ব দিব কারণ অ্যান্ড্র এনজি এ বিষয়ে অনেক বেশি অভিজ্ঞ। আমার ব্লগেও অনেক সময় আমি অনেক বড় বড় হাবিজাবি কথা বলি, তোমাকে কমন-সেন্স খাটিয়ে বুঝে নিতে হবে কোনটা কাজের কথা আর কোনটা হাবিজাবি!

সবশেষে, তোমাকে জানতে হবে তুমি কেন প্রোগ্রামিং শিখছো, তাহলে কনফিউশন দূর করা অনেকটাই সহজ হয়ে যাবে। তুমি কি শুধু আনন্দ পেতে শিখছো? তুমি প্রোগ্রামিং কনটেস্ট করতে শিখছো? নাকি তুমি চাও দ্রুত অ্যান্ড্রয়েড ডেভেলপার হয়ে যেতে? তুমি যদি জানো যে তুমি প্রোগ্রামিং কে কিভাবে কাজে লাগাতে চাও তাহলে উপদেশ চাওয়ার সময় তুমি বুদ্ধিমানের মত প্রশ্ন করতে পারবে, যে উপদেশ দিচ্ছে সেও সহজে উত্তর দিতে পারবে। তোমাকে বুদ্ধিমানের মত প্রশ্ন করা শিখতে হবে। তুমি যদি এসে আমাকে মেইল করে প্রশ্ন করো সি শিখবো নাকি পাইথন শিখবো, আমি সহজে উত্তর দিতে পারবো না। তুমি যদি প্রশ্ন করো “আমি ইনফরমেটিকস অলম্পিয়াডে অংশ নিতে চাই, আমি কি সি শিখবো নাকি পাইথন শিখবো?” , তাহলে আমি সহজেও তোমাকে বুঝাতে পারবো কেন সি শেখাটা বেশি দরকার।

তোমার প্রোগ্রামিং ক্যারিয়ার দীর্ঘায়িত হোক, হ্যাপি কোডিং‍!

from --- শাফায়েত Bhai....

Important Shortcut Keys SystemCTRL+A. . . . . . . . . . . . . . . . . Select AllCTRL+C. . . . . . . . . . . . . . . . . ...
05/10/2020

Important Shortcut Keys System

CTRL+A. . . . . . . . . . . . . . . . . Select All
CTRL+C. . . . . . . . . . . . . . . . . Copy
CTRL+X. . . . . . . . . . . . . . . . . Cut
CTRL+V. . . . . . . . . . . . . . . . . Paste
CTRL+Z. . . . . . . . . . . . . . . . . Undo
CTRL+B. . . . . . . . . . . . . . . . . Bold
CTRL+U. . . . . . . . . . . . . . . . . Underline
CTRL+I . . . . . . . . . . . . . . . . . Italic
F1 . . . . . . . . . . . . . . . . . . . . . . Help
F2 . . . . . . . . . . . . . . . . . . . . . Rename selected object
F3 . . . . . . . . . . . . . . . . . . . . . Find all files
F4 . . . . . . . . . . . . . . . . . . . . . Opens file list drop-down in dialogs
F5 . . . . . . . . . . . . . . . . . . . . . Refresh current window
F6 . . . . . . . . . . . . . . . . . . . . . Shifts focus in Windows Explorer
F10 . . . . . . . . . . . . . . . . . . . . Activates menu bar options
ALT+TAB . . . . . . . . . . . . . . . . Cycles between open applications
ALT+F4 . . . . . . . . . . . . . . . . . Quit program, close current window
ALT+F6 . . . . . . . . . . . . . . . . . Switch between current program windows
ALT+ENTER. . . . . . . . . . . . . . Opens properties dialog
ALT+SPACE . . . . . . . . . . . . . . System menu for current window
ALT+¢ . . . . . . . . . . . . . . . . . . opens drop-down lists in dialog boxes
BACKSPACE . . . . . . . . . . . . . Switch to parent folder
CTRL+ESC . . . . . . . . . . . . . . Opens Start menu
CTRL+ALT+DEL . . . . . . . . . . Opens task manager, reboots the computer
CTRL+TAB . . . . . . . . . . . . . . Move through property tabs
CTRL+SHIFT+DRAG . . . . . . . Create shortcut (also right-click, drag)
CTRL+DRAG . . . . . . . . . . . . . Copy File
ESC . . . . . . . . . . . . . . . . . . . Cancel last function
SHIFT . . . . . . . . . . . . . . . . . . Press/hold SHIFT, insert CD-ROM to bypass auto-play
SHIFT+DRAG . . . . . . . . . . . . Move file
SHIFT+F10. . . . . . . . . . . . . . . Opens context menu (same as right-click)
SHIFT+DELETE . . . . . . . . . . . Full wipe delete (bypasses Recycle Bin)
ALT+underlined letter . . . . Opens the corresponding menu
PC Keyboard Shortcuts
Document Cursor Controls
HOME . . . . . . . . . . . . . . to beginning of line or far left of field or screen
END . . . . . . . . . . . . . . . . to end of line, or far right of field or screen
CTRL+HOME . . . . . . . . to the top
CTRL+END . . . . . . . . . . to the bottom
PAGE UP . . . . . . . . . . . . moves document or dialog box up one page
PAGE DOWN . . . . . . . . moves document or dialog down one page
ARROW KEYS . . . . . . . move focus in documents, dialogs, etc.
CTRL+ > . . . . . . . . . . . . next word
CTRL+SHIFT+ > . . . . . . selects word
Windows Explorer Tree Control
Numeric Keypad * . . . Expand all under current selection
Numeric Keypad + . . . Expands current selection
Numeric Keypad – . . . Collapses current selection
¦ . . . . . . . . . . . . . . . . . . Expand current selection or go to first child
‰ . . . . . . . . . . . . . . . . . . Collapse current selection or go to parent
Special Characters
‘ Opening single quote . . . alt 0145
’ Closing single quote . . . . alt 0146
“ Opening double quote . . . alt 0147
“ Closing double quote. . . . alt 0148
– En dash. . . . . . . . . . . . . . . alt 0150
— Em dash . . . . . . . . . . . . . . alt 0151
… Ellipsis. . . . . . . . . . . . . . . . alt 0133
• Bullet . . . . . . . . . . . . . . . . alt 0149
® Registration Mark . . . . . . . alt 0174
© Copyright . . . . . . . . . . . . . alt 0169
™ Trademark . . . . . . . . . . . . alt 0153
° Degree symbol. . . . . . . . . alt 0176
¢ Cent sign . . . . . . . . . . . . . alt 0162
1⁄4 . . . . . . . . . . . . . . . . . . . . . alt 0188
1⁄2 . . . . . . . . . . . . . . . . . . . . . alt 0189
3⁄4 . . . . . . . . . . . . . . . . . . . . . alt 0190
PC Keyboard Shortcuts
Creating unique images in a uniform world! Creating unique images in a uniform world!
é . . . . . . . . . . . . . . . alt 0233
É . . . . . . . . . . . . . . . alt 0201
ñ . . . . . . . . . . . . . . . alt 0241
÷ . . . . . . . . . . . . . . . alt 0247
File menu options in current program
Alt + E Edit options in current program
F1 Universal help (for all programs)
Ctrl + A Select all text
Ctrl + X Cut selected item
Shift + Del Cut selected item
Ctrl + C Copy selected item
Ctrl + Ins Copy selected item
Ctrl + V Paste
Shift + Ins Paste
Home Go to beginning of current line
Ctrl + Home Go to beginning of document
End Go to end of current line
Ctrl + End Go to end of document
Shift + Home Highlight from current position to beginning of line
Shift + End Highlight from current position to end of line
Ctrl + f Move one word to the left at a time
Ctrl + g Move one word to the right at a time
MICROSOFT® WINDOWS® SHORTCUT KEYS
Alt + Tab Switch between open applications
Alt +
Shift + Tab
Switch backwards between open
applications
Alt + Print
Screen
Create screen shot for current program
Ctrl + Alt + Del Reboot/Windows® task manager
Ctrl + Esc Bring up start menu
Alt + Esc Switch between applications on taskbar
F2 Rename selected icon
F3 Start find from desktop
F4 Open the drive selection when browsing
F5 Refresh contents
Alt + F4 Close current open program
Ctrl + F4 Close window in program
Ctrl + Plus
Key
Automatically adjust widths of all columns
in Windows Explorer
Alt + Enter Open properties window of selected icon
or program
Shift + F10 Simulate right-click on selected item
Shift + Del Delete programs/files permanently
Holding Shift
During Bootup
Boot safe mode or bypass system files
Holding Shift
During Bootup
When putting in an audio CD, will prevent
CD Player from playing
WINKEY SHORTCUTS
WINKEY + D Bring desktop to the top of other windows
WINKEY + M Minimize all windows
WINKEY +
SHIFT + M
Undo the minimize done by WINKEY + M
and WINKEY + D
WINKEY + E Open Microsoft Explorer
WINKEY + Tab Cycle through open programs on taskbar
WINKEY + F Display the Windows® Search/Find feature
WINKEY +
CTRL + F
Display the search for computers window
WINKEY + F1 Display the Microsoft® Windows® help
WINKEY + R Open the run window
WINKEY +
Pause /Break
Open the system properties window
WINKEY + U Open utility manager
WINKEY + L Lock the computer (Windows XP® & later)
OUTLOOK® SHORTCUT KEYS
Alt + S Send the email
Ctrl + C Copy selected text
Ctrl + X Cut selected text
Ctrl + P Open print dialog box
Ctrl + K Complete name/email typed in address bar
Ctrl + B Bold highlighted selection
Ctrl + I Italicize highlighted selection
Ctrl + U Underline highlighted selection
Ctrl + R Reply to an email
Ctrl + F Forward an email
Ctrl + N Create a new email
Ctrl + Shift + A Create a new appointment to your calendar
Ctrl + Shift + O Open the outbox
Ctrl + Shift + I Open the inbox
Ctrl + Shift + K Add a new task
Ctrl + Shift + C Create a new contact
Ctrl + Shift+ J Create a new journal entry
WORD® SHORTCUT KEYS
Ctrl + A Select all contents of the page
Ctrl + B Bold highlighted selection
Ctrl + C Copy selected text
Ctrl + X Cut selected text
Ctrl + N Open new/blank document
Ctrl + O Open options
Ctrl + P Open the print window
Ctrl + F Open find box
Ctrl + I Italicize highlighted selection
Ctrl + K Insert link
Ctrl + U Underline highlighted selection
Ctrl + V Paste
Ctrl + Y Redo the last action performed
Ctrl + Z Undo last action
Ctrl + G Find and replace options
Ctrl + H Find and replace options
Ctrl + J Justify paragraph alignment
Ctrl + L Align selected text or line to the left
Ctrl + Q Align selected paragraph to the left
Ctrl + E Align selected

 #ভেরিয়েবেলআপনি কি চাইলেই মেঝেতে ৫০০ গ্রাম দুধ রাখতে পারবেন ? পারবেন না কেন অবশ্যই পারবেন । কিন্তু সেই দুধ পরে কি খেতে প...
27/06/2020

#ভেরিয়েবেল
আপনি কি চাইলেই মেঝেতে ৫০০ গ্রাম দুধ রাখতে পারবেন ? পারবেন না কেন অবশ্যই পারবেন । কিন্তু সেই দুধ পরে কি খেতে পারবেন ? যদি আপনি দুধ খেতেই চান তাহলে সবার আগে সেই দুধ পাত্রে সংরক্ষণ করতে হবে । এখন ৫০০ গ্রাম দুধ রাখার জন্য কিন্তু আপনার পাত্র ৫০০ গ্রাম এর সমান বা তার তুলনায় বড় হতে হবে । তা নাহলে আপনি ৫০০ গ্রাম দুধ রাখতে পারবেন না । অর্থাৎ দুধ রাখার জন্য আপনার এমন কিছু দরকার যেখানে আপনি দুধ সংরক্ষণ করতে পারেন । তেমনি প্রোগ্রামিং করার সময়ে যখন কোন ডাটা সংরক্ষণ করার প্রয়োজন হয় তখন মেমরিতে জায়গার দরকার হয় । আর এটাকেই প্রোগ্রামিং এর ভাষায় ভেরিয়েবল বলে ।
সি তে ভেরিয়েবল ব্যবহার এর পূর্বে ভেরিয়েবল ডিক্লিয়ার করতে হয় ।
যে ভাবে ভেরিয়েবল ডিক্লিয়ার করতে হয় ঃ
data_type variable_list;
data_type variable_name= value;
1) data_type variable_list; int a,b,c; float j,k,l;
2)data_type variable_name= value; int a=10,b=34,c=87; float j=12.7 ,k=56.9,l=78.98;
একটা প্রোগ্রাম দেখা যাক ঃ
int main ( ) { int a,b,c; a = 10; b = 20; c=a+b; printf(“Here is your number c =%d”,c); return 0; }
এই প্রোগ্রামিং এ a , b এবং c নামে তিনটি ভেরিয়েবেল ডিক্লিয়ার করা হয়েছে ।যা পূর্ণসংখ্যা মান বা integer value ধারন করে । যখন আমরা a , b এবং c নামে তিনটি ভেরিয়েবেল ডিক্লিয়ার করি তখন মেমোরির মধ্যে a , b এবং c এর জন্য ৩ টি জায়গা নির্ধারণ হয়ে যায় । যেটা অনেকটা দুধ রাখা পাত্রের মত হয়ে যায় । এখন ডাটাটাইপ অনুসারে মেমর‍ির মধ্যে জায়গার আকার নির্ধারণ হবে ।
প্রতিটি ডাটা টাইপ এর জন্য কেমন মেমোরি তে জায়গা লাগবে টা দেখানো হয়েছে । veriable declare করার ক্ষেত্রে মাথায় রাখতে হবে ভেরিয়েবল শুধু মাত্র অক্ষর , সংখ্যা , আন্ডারস্কোর ব্যবহারক করে হয়।
তবে variable declare এর শুরুতেই কখনই সংখ্যা ও আন্ডারস্কোর ব্যবহার করা যাবে না ।
variable কে global variable ও local variable হিসেবে ডিক্লিয়ার করা যায় । যদি function বা কোন ব্লক এর এর মধ্যে ডিক্লিয়ার করা হয় তবে সেটা local variable । আর যদি function এর বাইরে declare করা হয় তবেসেটা global variable ।
Local variable
একটি ফাংশন বা ব্লকের ভিতরে যে ভেরিয়েবল বা ভেরিয়েবলগুলি ডিল্কিয়ার করা হয় তাকে local variable বলা হয় ।
এই লোকাল ভেরিয়েবলগুলি কেবল ফাংশন বা ব্লকের মধ্যে ব্যবহার করাযেতে পারে যা এত মধ্যে ডিক্লিয়ার করা হয়েছে ।



int Add(int output1,int output2 )
{
printf("%d", output1);
printf("%d", output2);
return output1 + output2;
}

int main()
{
int answer, input1, input2;

scanf("%d", &input1);
scanf("%d", &input2);

answer = Add(input1,input2);

printf(" answer = %d\n", answer);
return 0;
}

Global variable
ফাংশন এর বাইরে যে variable ডিক্লিয়ার করা হয় তাকে Global variable বলা হয় । Global variable এর সুবিধা হল যে কোন প্রোগ্রামের যে কোন ফাংশনে এটি ব্যবহার করা যায় । using namespace std; int a; int main( ) { int b=4; a= b + 2; printf(“Here is your number : %d”,a); return 0; }

Address

Dhaka
5660

Website

Alerts

Be the first to know and let us send you an email when এসো প্রোগ্রামিং শিখি posts news and promotions. Your email address will not be used for any other purpose, and you can unsubscribe at any time.

Share