Gilded Rose-এর ইঞ্জিনিয়ারিং টিমে আপনাকে স্বাগতম! আপনি জানেনই, আমরা এমন একটি সরাইখানা, যেখানে কেবল সেরা মানের পণ্য কেনাবেচা হয়। বিক্রয়ের শেষ তারিখ ঘনিয়ে আসার সাথে সাথে আমাদের পণ্যের গুণমান ক্রমাগত কমতে থাকে, তাই এই তথ্যগুলোর হিসাব রাখার জন্য আমাদের একটি ইনভেন্টরি সিস্টেম আছে।
আমাদের সিস্টেমে একটি নতুন ফিচার যোগ করা দরকার, যাতে আমরা নতুন এক ধরনের পণ্য বিক্রি শুরু করতে পারি। তবে কোডটি বেশ এলোমেলো, আর আপনি আগে বিদ্যমান কোড রিফ্যাক্টর না করলে নতুন ফিচার যোগ করা কঠিন হবে।
তাই আপনার কাজ দুটি: ইনভেন্টরি সিস্টেমটি রিফ্যাক্টর করা, তারপর নতুন ফিচারটি যোগ করা।
আমাদের সিস্টেমের মূল বিষয়গুলো এই রকম:
বেশ সহজ, তাই না? কিন্তু আসল মজাটা এখান থেকেই শুরু:
নতুন ফিচারের পথ তৈরি করতে বিদ্যমান কোডটি রিফ্যাক্টর করুন এবং এটিকে পরিবর্তন করা সহজ করে তুলুন।
সবকিছু ঠিকঠাক কাজ করতে থাকলে (অর্থাৎ বিদ্যমান ফিচারগুলোর টেস্ট পাস হতে থাকলে) আপনি নিশ্চিন্তে যেকোনো পরিবর্তন করুন এবং নতুন কোড যোগ করুন।
দ্রষ্টব্য: ধরে নিতে পারেন, পণ্যগুলো সবসময় একটি বৈধ গুণমান নিয়েই শুরু হয়। অন্য কথায়, শুরুতেই কোনো পণ্যের গুণমান সর্বোচ্চ সীমার চেয়ে বেশি হলে, বা Sulfuras-এর শুরুর গুণমান ৮০ ছাড়া অন্য কিছু হলে কী হয়, স্বয়ংক্রিয় টেস্টগুলো তা যাচাই করে না।
আমরা সম্প্রতি Conjured পণ্যের এক সরবরাহকারীর সঙ্গে চুক্তি করেছি। আপনার কাজ হলো আমাদের সিস্টেমে নিচের নিয়মগুলো যোগ করা:
Exercism-এ সাইন আপ করুন, Ruby ট্র্যাকের 21টি কনসেপ্ট121টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।