কম্পিউটার

আপনি কিভাবে টিডিডি ফ্লাইহুইল মুভ করবেন?

(আমি এই সপ্তাহে RailsConf-এর জন্য শিকাগোতে আছি। আপনি যদি আমাকে আশেপাশে দেখেন, হাই বলুন! আমি আপনার সাথে দেখা করতে চাই। সাইডবারে ছবিতে আমিই বয়স্ক।)

একজন পাঠক আমার নিবন্ধগুলির একটিতে একটি মন্তব্যে পরীক্ষা সম্পর্কে একটি দুর্দান্ত প্রশ্ন জিজ্ঞাসা করেছেন:

আমি জানি আমারও “TDD ফ্লাইহুইল” সরানো দরকার, কিন্তু TDD আমার কাছে খুব অপরিচিত। RSpec দিয়ে কীভাবে শুরু করা যায় সে সম্পর্কে আপনার কি কোনো সুপারিশ আছে নাকি এটা "সেখানে প্রবেশ করুন এবং হ্যাক অ্যাওয়ে" ধরনের জিনিস?

তাই আমি এর উত্তর দিলাম:

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

রেলের পরীক্ষার পরিভাষা, দাবী এবং রেলে সাধারণভাবে পরীক্ষা চালানোর বিষয়ে একটি বেশ ভাল গাইড রয়েছে।

টিডিডি শেখার সর্বোত্তম উপায় হল অনুশীলন করা। এই ধাপগুলি আপনার অনুসরণ করা উচিত:

  1. একটি পরীক্ষা লিখুন যা ধরে নেয় যে আপনার প্রয়োজনীয় কোডটি ইতিমধ্যেই সেখানে রয়েছে।
  2. পরীক্ষা চালান, নিশ্চিত করুন যে আপনার নতুন পরীক্ষা ব্যর্থ হয়েছে
  3. কোডের সহজতম বিট লিখুন যা পরীক্ষায় উত্তীর্ণ হবে। এখানে অতিরিক্ত বিমূর্ত বা রিফ্যাক্টর করবেন না।
  4. পরীক্ষা চালান, নিশ্চিত করুন যে আপনার নতুন পরীক্ষা পাস হয়েছে
  5. ডুপ্লিকেশন অপসারণ করতে আপনার কোড রিফ্যাক্টর করুন (অথবা কোডটিকে আরও অভিব্যক্তিপূর্ণ করুন)।
  6. পরীক্ষাগুলি আবার চালান (তারা এখনও পাস করেছে তা নিশ্চিত করতে)।
  7. ধাপ 1 এ ফিরে যান।

আপনি যখন TDD অনুশীলন করছেন, তখন আপনার নিজেকে জিজ্ঞাসা করা উচিত:আমি কোন ধাপে আছি? আমি কি একটি ধাপ এড়িয়ে গিয়েছি? কোন ধাপ পরবর্তী? (আপনার সর্বদা এই পদক্ষেপগুলির মধ্যে একটিতে থাকা উচিত।) এটি আপনাকে সঠিক পথে রাখতে সাহায্য করবে, যা সত্যিই গুরুত্বপূর্ণ যখন আপনি নতুন কিছু শিখছেন। "অভ্যাস স্থায়ী করে", তাই আপনি ভুল জিনিসটি অনুশীলন করতে চান না!

কিন্তু এছাড়াও, নিজেকে বিশৃঙ্খলা করার অনুমতি দিন . আপনি শিখছেন, এটা সম্পূর্ণ ঠিক আছে! এটি অনেক সহজ হয়ে যাবে কারণ আপনি এটি আরও প্রায়ই করবেন।

এরিক স্টিল, যিনি পরীক্ষার বিষয়ে একটি বইও লিখছেন, একটি মূল বিষয় তুলে ধরেছেন যা আমি মিস করেছি:

TDD-এর যে অংশটি বাকি থাকে তা হল পরিকল্পনার পরিমাণ যা ধাপ 1 এর আগে ঘটে।

পরীক্ষাগুলি হল যেখানে অ্যাপের প্রয়োজনীয়তাগুলি আপনার পরিকল্পিত বাস্তবায়ন পূরণ করে৷ পরীক্ষা চালিত বিকাশের অ্যাপটি কী করা উচিত তা জানার উপর একটি কঠিন নির্ভরতা রয়েছে এবং ধরে নেয় যে এটি কীভাবে করতে হবে সে সম্পর্কে আপনার ধারণা রয়েছে।

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

'একটি পরীক্ষা লিখুন' এর আগে আমি এই পদক্ষেপগুলি যোগ করব:

  1. মগজ ঝড়, ন্যায্যতা, এবং প্রয়োজনীয়তা গুলি। যেকোনো মূল্যে কোডিং এড়িয়ে চলুন।
  2. আপনার কোড পরিকল্পনা করুন এবং ডিজাইন করুন যা সেই প্রয়োজনীয়তাগুলি পূরণ করবে৷
  3. কোন অজানা প্রশ্নের উত্তর দেওয়ার জন্য কোড দিয়ে টিঙ্কার করুন, কিন্তু সেই কোডটিকে একপাশে রাখুন।

আমার পরামর্শ:

  • সিনট্যাক্সের চেয়ে বেশি পরিকল্পনার দিকে মনোনিবেশ করুন
  • আপনার সরঞ্জামগুলিকে ছোট করুন (আমি মিনিটেস্ট/ফিক্সচারগুলিকে সত্যিই সহায়ক বলে মনে করেছি)
  • অভ্যাস, অনুশীলন, অনুশীলন।

যেকোনো কিছুর মতোই, TDD-এর সাথে শুরু করার জন্য অনুশীলন এবং নিজেকে সংশোধন করার ক্ষমতা লাগে (অথবা আপনাকে সংশোধন করার জন্য আশেপাশে কাউকে থাকা)। আপনি যদি কয়েকটি আধা-কঠোর পদক্ষেপ অনুসরণ করতে পারেন, এবং আপনি কোথায় এই প্রক্রিয়ায় আছেন সে সম্পর্কে সচেতন থাকতে পারেন, TDD শীঘ্রই আপনার কাছে সম্পূর্ণ স্বাভাবিক বোধ করবে৷


  1. উইন্ডোজ এ গেট উইন্ডোজ 10 আইকন কিভাবে সরাতে হয়

  2. জাভাস্ক্রিপ্টে PI এর মান কিভাবে পাবেন?

  3. জাভাস্ক্রিপ্টে ব্রাউজারের কোড নাম এবং পণ্যের নাম কীভাবে পাবেন?

  4. কোডে আমার iOS প্রকল্পের বর্তমান সংস্করণ কিভাবে পেতে হয়?