প্রোগ্রামারদের জন্য ১০টি অবশ্য পালনীয় অভ্যাস

1
378

আমরা যখন কম্পিউটার সায়েন্স-এর উপর ডিগ্রি গ্রহণ করি অথবা “কিভাবে প্রোগ্রাম তৈরি করবেন” এই জাতীয় বইগুলি পড়ি তখন অনেক কিছু শিখতে পারি। কিন্তু দুর্ভাগ্যবশত, ভাল প্রোগ্রামিং অভ্যাস সম্পর্কে আমরা অজ্ঞ থেকে যাই অথবা আরো চর্চার মাধ্যমে জীবনের সাথে মেশাতে ব্যর্থ হই। এখানে সেইরকম ১০টি অভ্যাস দেয়া হল যেগুলো আপনাকে একজন ভালো প্রোগ্রামার হিসেবে গড়ে উঠতে সাহায্য করবে।

প্রোগ্রামারদের জন্য ১০টি অবশ্য পালনীয় অভ্যাস

১। আপনার সোর্স কন্ট্রোল প্রসেস সম্পর্কে জানুন:
একজন প্রোগ্রামার হিসাবে নিশ্চয় আপনি আপনার ব্যবহারকারীদেরকে ভালোভাবে চিনেন। যারা আপনার অ্যাপ্লিকেশনটিকে প্রথমবারের মত হাতে নিয়েই রেগে উঠে- কারণ তারা যেভাবে কাজটি করাতে চায় আপনার প্রোগ্রাম ঠিক সেভাবে কাজ করছে না – আর তারপর তারা এই নতুন প্রোগ্রাম নিয়ে কাজ করতে অস্বীকার করে! আপনি তখন মাথা চুলকাতে থাকেন এই ভেবে, কেন তারা প্রোগ্রামটি শিখতে চাইছে না, এর মাধ্যমে অনেক সমস্যা থেকে তারা মুক্তি পেত।

Unlimited Web Hosting
Unlimited Web Hosting
Unlimited Web Hosting
Unlimited Web Hosting

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

২। সুস্পষ্ট ভেরিয়েবল নামকরণের সঙ্গে যান:
ডেভেলপারেরা সাধারণত ভেরিয়েবল গুলোর নাম বিশৃঙ্খলভাবে দিয়ে থাকে, তাদের ধারণা এর ফলে কোন ক্ষতি হচ্ছে না। কিন্তু অন্য কেউ যদি ঐ কোড দেখতে চায় তাহলে তার জন্য সমস্যার সৃষ্টি হয়। কয়েকটি কি-স্ট্রোকের মাধ্যমে কিছু ভেরিয়েবলের ভাল নাম (বিশেষ করে যখন আধুনিক IDEs আপনাকে autofill করে সাহায্য করবে) দিলে প্রোডাক্টিভিটির ক্ষেত্রে অনেক এগিয়ে যাওয়া সম্ভব হবে। বিভিন্ন অজুহাত দেখান বন্ধ করুন এবং ভাল ভেরিয়েবল নাম ব্যবহার করুন।

৩। সম্ভব হলে ক্লাসের যায়গায় ইন্টারফেস ব্যবহার করুন:
যেখানেই সম্ভব হবে সেখানেই ক্লাসের যায়গায় ইন্টারফেস ব্যবহার করতে চেষ্টা করুন। ধরুন আপনার ক্লাসকে ইন্টিজারের এনুমারেশন নিয়ে আসতে হবে, তাহলে লিস্ট নিয়ে আসার দরকার নেই; নিয়ে আসুন IEnumerable। যার ফলে ফলাফলগুলোকে আবার তাদের প্রয়োজনানুযায়ি ক্লাসে রূপান্তর বা পুনর্গঠন ছাড়াই প্রাপকগণ তারা যা করতে চান সেটা করতে পারেন।

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

প্রোগ্রামারদের জন্য ১০টি অবশ্য পালনীয় অভ্যাস

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

৬। কি কারণে পরিবর্তন করেছেন তা লিপিবদ্ধ করুন:
একটি অ্যাপ্লিকেশনে মাঝে মধ্যেই পরিবর্তন আসতে পারে। কিন্তু বেশী ভাগ সময়েই লক্ষ্য করা যায় পরিবর্তন করা হয়েছে কিন্তু কি কারণে করা হয়েছে তা লিপিবদ্ধ করা হয় নি। কয়েক মাস পর অন্য কেউ লক্ষ্য করলো যে আগের পরিবর্তনটি নতুন এক প্রয়োজনের সাথে দ্বন্দ্ব তৈরি করছে। সে যখন প্রশ্ন করবে কেন আগের পরিবর্তনটি করা হয়েছিল তখন আর কেউ জবাব দিতে পারবে না। তারপর সবাই মিলে লেগে যাবে খুঁজতে কোন কোন জায়গায় পরিবর্তন করা হয়েছে এবং কেন করা হয়েছে, তারফলে নষ্ট হবে মূল্যবান সময়। তাই এ ধরনের সমস্যার সৃষ্টি যাতে না হয় সেই জন্য লিপিবদ্ধ করুন সকল পরিবর্তন।

৭। কেন অ্যালগোরিদম দিয়েছেন তার ব্যাখ্যা করুন:
একই কারণে কোন অ্যালগোরিদম ব্যবহার করলে কেন করেছেন তা সুস্পষ্টভাবে লিপিবদ্ধ করুন।

৮। বর্ণনা-প্রাসঙ্গিক(contextual) সাহায্য প্রদান করুন:
আমরা সবাই জানি ব্যবহারকারীরা প্রশিক্ষণ উপকরণের সারাংশের দিকে নজর বেশী দেয়। তারপরেও আপনার অ্যাপটির ব্যাবহার বিধির উপর বর্ণনা-প্রাসঙ্গিক সাহায্য দেয়া উচিত। যদিও ব্যবহারকারীরা ম্যানুয়াল পড়ার ব্যাপারে আগ্রহী নয়, কিন্তু কোন কিছু না বুঝলে বিশাল প্রশ্ন চিহ্নটিকে ক্লিক করতে কিন্তু ভুলবে না। আর তাই সাহায্য মেন্যুটিকে যতটা সম্ভব সহজলভ্য এবং সহজবোধ্য করে তুলুন। কোন ধরনের টেকনিক্যাল কথাবার্তা থেকে যতটা দূরে থাকা সম্ভব হয় ততটা দূরে থাকুন।

৯। ক্রস-প্ল্যাটফর্ম এ পরীক্ষা করুন:
যদি আপনি ওয়েব অ্যাপ্লিকেশন তৈরি করছেন, তাহলে বিভিন্ন প্ল্যাটফর্মে কেমন কাজ করছে তা পরীক্ষা করে দেখুন। আলাদা আলাদা প্ল্যাটফর্মে আলাদা আলাদা ব্রাউজার ব্যবহার করে পরীক্ষা করে দেখুন আপনার অ্যাপটিকে। ব্যাপারটা ঝামেলা বলে মনে হলেও করুন। এতে আপনারই উপকার হবে। এই কাজে আপনাকে সাহায্য করতে পারে সসল্যাবের একটি সফটওয়্যার।

১০। ব্যবহারকারীকে কখনো ভুলবেন না:
অনেক ব্যবসায়িক প্রয়োজন ব্যবহারকারীকে সাহায্য করেনা, কিছু কিছু আবার রাগান্বিত বা বিব্রত করে। এ ধরণের ব্যবসায়ীক প্রয়োজনগুলো হয়তোবা কার্যকরী নয় কিন্তু রাখা হয় মার্কেটিং সেলস ডিপার্টমেন্টের জন্য। উদাহরণ হিসাবে বলা যায় রেজিস্ট্রেশনের পেজগুলি যেগুলো অনেক প্রশ্ন করে থাকে, যা ব্যবহারকারীকে বিব্রত করে তোলে। আর তাই এ ধরণের ব্যাপার থেকে নিজেকে দূরে রাখবেন।

টিউনারপেজের নতুন টিউন আপনাকে ইমেইল করব?
Unlimited Web Hosting
Unlimited Web Hosting
Unlimited Web Hosting
Unlimited Web Hosting

1 মন্তব্য

একটি উত্তর ত্যাগ

Please enter your comment!
Please enter your name here

four × 2 =