আপনার প্রোগামিং এর দক্ষতা কিভাবে বাড়াবেন?

0
507
আপনার প্রোগামিং এর দক্ষতা কিভাবে বাড়াবেন?
5 (100%) 2 votes

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

১। সমস্যা টি ভালভাবে বিশ্লেষণ করুন।
২। কিভাবে সমস্যার সমাধান করবেন তা অন্তত দুবার ভাবুন।
৩। প্রয়োজনীও তথ্য কাজ শুরু করার আগেই গুছিয়ে নিন
আপনার Productটির লক্ষ্য ও উদ্দেশ্য পূর্বেই নির্ধারন করুন। এবং এই Productটির ইউজার কারা হবেন তা নির্ধারন করতে কখনওই ভুলবেন না। এতে করে ভবিষ্যতে অবশ্যই আপনার সময়ের অপচয় অনেকটাই কমে যাবে।
৪। আপনার পরিকল্পনা ধারাবাহিক ভাবে লিখুন অর্থ্যাৎ Module তৈরি করুন

  • আপনার প্রজেক্টটি যদি তুলনামুলক ভাবে ছোট হয় তবে একটি বেসিক Flow Chart তৈরি করে নিন অথবা কিছু Equation লিখে রাখতে পারেন।
  • বড় Project এর জন্য কাজটি কয়েকটি ধাপে ভাগ করে নিন অর্থ্যাৎ Module তৈরি করুন এবং নিচের ধাঁপ গুলো অনুসরন করুন,
  • প্রতিটি Module এ কতটুকু কাজ সম্পন্ন হবে তা নির্দিষ্ট করুন।
  • Data গুলো Module এ কিভাবে পাস হচ্ছে তা সম্পর্কে ধারনা রাখুন। এবং প্রয়োজনীয় Data গুলো Module এ কিভাবে কাজ করছে তা সম্পর্কে অবশ্যই ধারনা রাখুন।

যদিও এসব তথ্য সংগ্রহ ও পরিকল্পনা সরাসরি কোডিং শুরু করার মত এতটা আকর্ষণীয় নয়, কিন্তু এতে করে আপনাকে CodeDebugging এ খুব একটা সময় ব্যয় করতে হবে না।
যথেষ্ট সময় নিয়ে Flow Chart ডিজাইন করুন এবং চেষ্টা করুন আপনার Programming এর ধারাবাহিকতা বজায় রাখতে। হয়ত এতে করে আপনি Coding শুরু করার পূর্বেই সহজে আপনার লক্ষ্যে পৌছাবার উপায় বেশ কয়েকটি উপায় খুজে পাবেন।

৫। Code এ প্রয়োজনীয় কমেন্ট করুন:
আপনি যদি মনে করেন আপনার কোড এ কোন ব্যাখ্যা বা explanation প্রয়োজন তাহলে সেখানে অবশ্যই কমেন্ট করতে ভুলবেন না। চেষ্টা করুন প্রতিটি Function এবং Arguments এ দু’এক লাইন কমেন্ট লিখতে। পাশাপাশি Arguments টি কি Valuereturn করে তাও লিখে রাখুন। কমেন্ট টি এমন হতে হবে যেন তা থেকে কি এবং কেন প্রশ্নের উওর পাওয়া যায়। পরবর্তীতে কোড আপডেট করার সময় কমেন্ট টিও আপডেট করুন।

৬। প্রতিটি Variable এর জন্য আলাদা ও সংগতি পূর্ণ নাম দিন
এই কৌশল টি আপনাকে প্রতিটি Variable আলাদা ভাবে চিন্তে সাহায্য করবে এবং Variable টির কাজও বুঝতে সাহায্য করবে। এতে হয়ত আপনাকে একটু বেশী টাইপিং করতে হবে কিন্তু এটি আপনার কোড Debugging ও Maintain করা সহজ হবে। Hungarian Notation প্রোগ্রামার দের কাছে বেশ জনপ্রিয়। এই Convention এ variable এর নাম Prefix ও type অনুযায়ী রাখা হয়। যেমন ধরুন Integer Variable এর জন্য intRowCounter, String এর জন্য strUserName ইত্যাদি। আপনাকে এ নিয়ম টিই মেনে চলতে হবে তেমন কোন কথা নেই। তবে অবশ্যই খেয়াল রাখুন যেন নামটি বোধগম্য ও সংগতিপূর্ণ হয়।

৭। আপনার কোড Organize রাখার চেষ্টা করুন
কোড কে readable করার জন্য Visual Structure অনুসরন করুন। এই যেমন ধরুন (if, else,…) অথবা (for, while,…) এর মত Conditional loop গুলো block এর মধ্যে লিখুন। চেষ্টা করুন Variable এবং Mathematical Operator যেমন- addition, subtraction, multiplication, division এর মাঝে Space এর ব্যবহার রাখতে। এমন কি ‘=’ sign এর দু’পাশেও Space এর ব্যবহার রাখুন (myVariable = 2 + 2). Space ব্যবহার আপনার কোড কে যেমন সাবলীল ও সুন্দর করবে ঠিক তেমনি readable ও হবে।

৮। Testing করুন
প্রতিটি module এর জন্য আলাদা Testing এর জন্য input value গুলো ব্যবহার করুন। এরপর চেষ্টা করুন common কিন্তু possible কিছু input ব্যবহার করতে। এতে করে প্রোগামে কোনো hidden bugs থাকলে সহজেই চোখে পড়বে। একজন সফল প্রোগ্রামার হতে হলে Software Testing এর এ গুণ টি আপনার মাঝে থাকতে হবে।

Software Testingএর জন্য কিছু Test Case:
• Zero, Maximum Positive value, Empty String & NULL
• Incorrect Value
• Meaningless Value
৯। Practice, Practice, Practice
প্রোগ্রামিং বিষয় টি আসলে কখনও থেমে থাকে না। এখানে সব সময়ই নতুন কিছু শেখার আছে। আর পুরনো অনেক কিছুই আপনাকে নতুন করে শিখতে হবে।

১০। পরিবর্তনে অভ্যস্ত হন
বাস্তবে আপনার কাজের environment ও requirements দুটোই পরিবর্তন হতে পারে। সে জন্য কাজের শুরু তে আপনি যত ভালভাবে পরিকল্পনা করবেন ততই ভাল ফল পাবেন।
• কাজের শুরু থেকেই আপনার project এর Documentation চালিয়ে যান। এতে করে আপনার লক্ষ্য ও পরিকল্পনার সাথে Client এর চাহিদার সমন্বয় ঘটবে।
• Project টি কে কয়েক টি ভাগে ভাগ করে নিয়ে আলাদা আলাদা লক্ষ্য নির্ধারন করুন। এতে আপনার কাজের জটিলতা অনেকটাই কমে যাবে।

১১। জটিল কাজ টি কখনই আগে নয়
বড় কোনো Project এর ক্ষেত্রে সবসময় সহজ একটি Task দিয়ে শুরু করা ভাল। প্রথমেই Complex কোনো কিছু দিয়ে শুরু করাটা বুদ্ধিমানের কাজ নয়। ধরুন আপনি একটি Geometric shape বানাবেন যা Mouse Direction ও Speed Follow করে shapeপরিবর্তন করবে।

• এজন্য শুরু তে একটি shape (i.e. Square) তৈরি করুন এবং একে Mouse Direction Follow করান – Movement tracking solve!
• এরপর Mouse এর Speed অনুযায়ী এর Size পরিবর্তন করুন Speed-to-shape Tracking solve!
• সবশেষে আপনার পছন্দমত shape এর জন্য Code Implement করুন।

এভাবে কাজ করার আরেকটি সুবিধা হচ্ছে এতে করে Codeটি Reusable হয়। পরবর্তীতে একই ধরনের কাজে আপনাকে বেশী সময় দিতে হবে না। সেই সাথে আপনার নিজেরই একটি Large, Debugged & Reusable Library তৈরি হবে।

Tips
1. Client / Employer রা আপনার Codeকিভাবে কাজ করে তা নিয়ে মোটেই মাথা ঘামাবেন না। বরং তারা Codeটি কত ভাল কাজ করে তাই দেখতে চাইবেন।
2. আজকাল Google এ সার্চ দিলে প্রোগ্রামিং সম্পর্কিত অনেক Tutorial পাবেন। Internet প্রোগ্রামিং শিখার জন্য অনেক বড় একটি মাধ্যম।
3. সবসময় আপনার Coding এর Backup রাখুন। কোনো Hard Drive অথবা Portable Device এ অন্তত একটি কপি সংগ্রহে রাখুন যাতে আপনার PC তে কোনো Technical Problem হলেও Code টি হারিয়ে না যায়।
4. Coding এর জন্য অবশ্যই একটি ভালো IDE (Integrated Development Environment) ব্যবহার করুন। ভালো IDE গুলোতে Color-coded Editor থাকে যা Function, Variable, Argument, Keywords, String, Number,Return Value এসব ভিন্ন ভিন্ন Color এর মাধ্যমে চিহ্নিত থাকে। এছাড়া Spelling Mistake হবার সম্ভমনাও কম থাকে।
5. Spelling & Syntax ভালোভাবে Check করুন। ছোট একটি typing mistake এর জন্য অনেক ঝামেলা পোহাতে হতে পারে।
6. Code Debugging এর জন্য ভাল Tool ব্যবহার করুন।
7. মাঝে মাঝে কিছুটা অবসর নিন। এতে কাজে আনন্দ পাবেন।

সবশেষে বলব Programming কে ভালবাসুন। আর সবসময় নতুন কিছু শিখুন।

Tonnee Afrin

Tonnee Afrin

Tonnee Afrin completed her B.Sc in CSE. Now she is working as a Web Developer. She loves to watch Disney animation movies. She is also a fan of cricket. Afrin is very dedicated to work and passionate about what she do.
Tonnee Afrin

Comments

লেখাটি পড়ে কেমন লাগলো ?

NO COMMENTS

LEAVE A REPLY