Social Icons

Wednesday, July 23, 2014

প্রোগ্রামারদের মাথা নষ্ট করে কিছু সাধারন ভুল ত্রুটি


মানুষ মাত্রই ভূল করে আর প্রোগ্রামারতো মানুষের বাইরে না। সুতরাং প্রোগ্রামার ভুল করতেই পারে তাদের প্রোগ্রামের ভেতরে। আর যারা নতুন প্রোগ্রামিং করছে তাদের এই সকল ভুলগুলো হওয়াটা খুবই স্বাভাবিক একটি ব্যাপার। অনেক সময় এই সকল সাধারন ছোট ভুলগুলো নতুনদের কাছে অনেক বড় জটিলতা তৈরি করতে পারে তাদের প্রোগ্রামের ভেতরে, তাই নতুন প্রোগ্রামারদের এই ভুলক্রটি কিভাবে হয় এই বিষয়গুলো জেনে রাখতে হবে তাহলে প্রোগ্রাম করতে কোন সমস্যা হবে না।
Programming error
Programming Error



সেমিকলন দিতে মনে নেই


প্রোগ্রামের স্টেটমেন্ট শেষ করার পর শেষে সেমিকলন (;) দিয়ে শেষ করতে হয়। এটা বাধ্যতামুলক কারন একটি স্টেটমেন্ট শেষ করার পর সেমিকলন বাদে আরেকটি স্টেটমেন্ট শুরু করতে প্রোগ্রাম কম্পাইলার দুই স্টেটমেন্টকে একটি স্টেটমেন্ট মনে করে এবং তখন কম্পাইলার বুঝতে পারে না সেই স্টেটমেন্ট দ্বারা কি বুঝানো হয়েছে। তখন কম্পাইলার এটাকে একটি প্রোগ্রামের ক্রটি হিসেবে বিবেচনা করে এবং প্রোগ্রামকে সেখানেই থামিয়ে দেয় যতক্ষন সেই স্টেটমেন্ট দুটোকে সেমিকলন দিয়ে আলাদা না করা হয়। আর এই ভুলটাই নতুন প্রোগ্রামাররা বেশি করে থাকে।

Error in programming with semicolon
Missing Semicolon
স্টেটমেন্ট লিখেছে কিন্তু লিখার শেষে কোন সেমিকলন দেয়নি এবং কম্পাইলার ক্রটি ধরছে। তাই এই বিষয়টি খুব ভাল করে খেয়াল রাখতে হবে। এখন এই ক্রটিটি সমাধান অনেক সহজ হয়ে গেছে কারন এখনকার কম্পাইলার প্রোগ্রামগুলো অনেক আপডেটেড। আপনার প্রোগ্রামের কোন লাইনে সেমিকলন ছেড়ে এসেছেন সেটা লাইন নম্বর সহ বলে দিবে এবং সেই নম্বর দেখে লাইনটি বের করে আপনি সেমিকলন বসিয়ে দিতে পারেন তাহলে কম্পাইলার আর কোন ত্রুটি ধরবে না। একটি স্টেটমেন্ট এর জন্য একটি মাত্র সেমিকলন ব্যবহার করবেন, একের অধিক করবেন না।
 

ছোট বড় অক্ষরের সমন্বয়


এই ভুলটিও প্রোগ্রামাররা বরাবরই করে থাকে। দেখা যায় ভেরিয়েবল লিখা হয়েছে প্রথম অক্ষর বড় হাতের এবং বাকিগুলো ছোট হাতের অক্ষর দিয়ে কিন্তু অন্য জায়গায় সেই ভেরিয়েবলটা সব ছোট হাতের অক্ষর দিয়ে লিখা হয়েছে । তাতে করে কি হল দুইটি নাম হয়ে গেল কারন হাই লেভেল প্রোগ্রামিং ল্যাঙ্গুয়েজগুলো কেজ সেনসিটিব মানে ছোট ও বড় হাতের অক্ষর দুইটি আলাদা আলাদা ভাবে কাউন্ট করে কারন ছোট হাতের অক্ষরের আসকি কোড এবং বড় হাতের অক্ষরের আসকি কোড আলাদা। তাই ভেরিয়েবল লেখার সময় ছোট হাতের অক্ষর দিয়ে লেখাই ভাল। ছোট হাতের অক্ষরের ভেতরে বড় হাতের অক্ষর দিয়ে লিখলে প্রায় সময় ভেরিয়েবল অন্য জায়গায় ব্যবহারের সময় ভুল হবার সম্ভাবনা থেকে যায় আর সেইটাই হয়।
Case sensitive error
Miss mass 
তাই এই ব্যাপারটা খুব মনোযোগের সাথে খেয়াল রাখতে হবে যেন অক্ষরের সম্মনয় ঠিক থাকে। তাছারা কম্পাইল ক্রটি ধরবে। যদি এটি প্রোগ্রামার ঠিকমত ক্রটিটি ধরতে না পারে বা বুঝতে না পারে তাহলে পুরো দিনের কষ্টটা মাটি হয়ে যেতে পারে এই ভেবে যে আমিতো ভেরিয়েবল ঠিকি লিখেছি কিন্তু কম্পাইলার ভুল ধরছে কেন ? তাই নজর রাখবেন যেই নামে ভেরিয়েবল লিখেছেন সেই ফরমেট অনুযায়ী অন্য জায়গায় ভেরিয়েবল ব্যবহার করবেন। এইটা শুধু ভেরিয়েবল নয় সব জায়গার ঠিক রাখতে হবে যেমন কন্ডিশন লিখতে বা ফাংশন এর নাম লিখতে আর ব্যবহার করতে কারন হাই লেভেল প্রোগ্রামিং  লাঙ্গুয়েজ কেস সেনসিটিভ।

ইনভাটেট কমার সঠিক ব্যবহার


ইনভেটেট কমার (‘’ বা “”) ব্যবহার সঠিক ভাবে করতে হবে। যেখানে সিঙ্গেল কমার দরকার সেখানে সিঙ্গেল ইনভাটেট কমা আর যেখানে ডাবল ইনভাটেট কমার দরকার সেখার ডাবল ব্যবহার করতে হবে। সিঙ্গেল ও ডাবল এক সাথে ব্যবহার করা যাবে না বা দুইটি সিঙ্গল ইনভাটেট কমা দিয়ে ডাবল বানানো যাবে না তাহলে ক্রটি তৈরি হবে। এটি খুব সর্ত্কতার সাতে ব্যবহার করতে হবে কারন আপনি বুঝতেই পারবেন না যে আপনি সেখানে দুইটি সিঙ্গেল ইনভাটেট কমা একত্রে দিয়েছেন না একটি ডাবল ইনভাটেট কমা ব্যবহার করেছেন।
Error for inverted comma
Error for inverted comma
আমি আমার অভিজ্ঞতা থেকে বলছি, আমি এই রকম ভুল করেছিলাম, সারা দিন সেই ত্রুটি ধরতে পারি নাই সেখানে সিঙ্গেল কমা দুইটি ছিল। সারা দিন পর সন্ধার দিকে ধরতে পেরেছিলাম ক্রটিটি কোথায় হয়েছিল। তাই বলছি একটি ভুল আপনার সারাদিন পার করে দিতে পারে।


প্রোগ্রামের সংরক্ষিত শব্দ ব্যবহার


প্রোগ্রামে কিছু সংরক্ষিত শব্দ আছে যেগুলো আপনি প্রোগ্রামের ভেরিয়েবল বা ফাংশনের নাম লেখার ক্ষেত্রে ব্যবহার করতে পারবেননা। সেগুলো শুধু তাদের যেই কাজ সেই কাজের জন্য ব্যবহার করা হয়। যেমন int, float, if, else, switch, do, while, আরো কিছু আছে। যেমন if ব্যবহার করা হয় কন্ডিশন এ ব্যবহারের জন্য, এটিকে ভেরিয়েবল হিসেবে লিখতে পারবেন না কারন এর নিজস্ব কিছু কাজ আছে। যখন আপনি এই গুলোকে ভেরিয়েবল বা কোন কিছুর নাম হিসেবে ব্যবহার করবেন তখন কম্পাইলার ক্রটি ধরবে কারন এই গুলো প্রোগ্রামের সংরক্ষিত শব্দ বা keyword
Learn more about programming criteria
Study for Programming
প্রোগ্রামের নিয়ম অনুযায়ী এ সকল শব্দগুলোকে তাদের নির্ধারিত কাজ ব্যতীত অন্য কোন কাজে ব্যবহার করতে পারবেন না। সুতরাং আপনাদের এই সকল keyword  গুলোকে চিনে রাখতে হবে যেন ভুল না হয়।


সঠিকভাবে ভেরিয়েবল লিখা


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


তারপরও ভুল ত্রুটি হবেই, সেটার সমাধানও হবে। ভুলত্রুটি নিয়েই মানুষের জীবন, মানুষ ভুল করার মাঝ দিয়েই শেখে, তাই ভুল হলে চিন্তার কিছু নাই, নিয়মিত অনুশীলন করুন এবং ভুল করলে কম্পাইল কি বার্তা দিচ্ছে সেইগুলো ভালো করে পড়ুন এবং বোঝার চেষ্টা করুন কি হয়েছে?
practice make perfect
Keep practicing
অনুশীলন কখনও বন্ধ করবেন না, কারন অনুশীলন ছাড়া একজন ভালো মানের প্রোগ্রামার হয়ে ওঠা অনেকটাই কঠিন। তাই নিয়মীত চর্চা করুন।

Techplus are always with you. So any types of question just knock us on our facebook page. Just stay with Techplus.

No comments:

Post a Comment