একটি বড় রিপ্যাক্টরিং করার সমস্যাটি হ'ল আপনি এবং কখনও কখনও এমন একটি পথ অনুসরণ করতে পারেন যা আপনাকে উপলব্ধি করতে পরিচালিত করে যে আপনি চাবানোর চেয়েও বেশি দংশন করেছেন। জায়ান্ট রিফ্যাক্টরিংগুলি একটি ভুল। যদি সিস্টেমের নকশাটি প্রথম স্থানে ত্রুটিযুক্ত থাকে, তবে আপনাকে কঠোর সিদ্ধান্ত নেওয়ার আগে রিফ্যাক্টরিং কেবল আপনাকে এ পর্যন্ত নিয়ে যেতে পারে। হয় সিস্টেমটিকে যেমন হয় তেমনি রেখে দিন এবং তার চারপাশে কাজ করুন, বা নতুন ডিজাইন করার এবং কিছু বড় পরিবর্তন করার পরিকল্পনা করুন।
অন্য উপায় আছে। রিফ্যাক্টরিং কোডের আসল সুবিধা হ'ল জিনিসগুলি সহজতর, সহজেই পড়া সহজ এবং বজায় রাখা আরও সহজ। আপনি যে সমস্যার বিষয়ে অনিশ্চয়তা রয়েছে সেখানে পৌঁছেছেন, আপনি কোনও পরিবর্তন করেছেন, সমস্যা সম্পর্কে আরও জানার জন্য এটি কোথায় যেতে পারে তা দেখার জন্য, তারপর স্পাইকটি ফেলে দিন এবং স্পাইকটি কীসের ভিত্তিতে একটি নতুন রিফ্যাক্টরিং প্রয়োগ করুন তোমাকে শিখিয়েছি বিষয়টি হল, যদি পদক্ষেপগুলি ছোট হয় এবং আপনার রিফ্যাক্টরিং প্রচেষ্টা প্রথমে আপনার পরীক্ষাগুলি লেখার ক্ষমতাকে ছাড়িয়ে না দেয় তবে আপনি সত্যিকার অর্থেই কেবল আপনার কোডটি উন্নত করতে পারেন। প্রলোভনটি হল একটি পরীক্ষা লিখুন, তারপরে কোড, তারপরে আরও কিছু কোড করুন কারণ সমাধানটি সুস্পষ্ট বলে মনে হতে পারে তবে শীঘ্রই আপনি বুঝতে পারবেন যে আপনার পরিবর্তন আরও অনেক পরীক্ষায় পরিবর্তন ঘটবে, তাই আপনাকে একবারে কেবল একটি জিনিস পরিবর্তন করার জন্য যত্নবান হওয়া দরকার।
উত্তরটি হ'ল আপনার রিফ্যাক্টরিংটিকে কখনও বড় করে তোলা না। শিশুর পদক্ষেপ. নিষ্কাশন পদ্ধতিগুলি দিয়ে শুরু করুন, তারপরে সদৃশ অপসারণের দিকে তাকান। তারপরে ক্লাস এক্সট্রাক্ট করতে সরান। প্রতিটি ক্ষুদ্র পদক্ষেপে একবারে একটি ছোটখাট পরিবর্তন হয়। যদি আপনি কোডটি বের করছেন তবে প্রথমে একটি পরীক্ষা লিখুন। আপনি যদি কোডটি সরিয়ে ফেলছেন তবে তা সরিয়ে ফেলুন এবং আপনার পরীক্ষাগুলি চালান, এবং সিদ্ধান্ত নিন যে কোনও ভাঙা পরীক্ষার আর কোনও প্রয়োজন হবে কিনা। এক সময় ছোট ছোট এক ধাপ। দেখে মনে হচ্ছে এটি বেশি সময় নিবে, তবে প্রকৃতপক্ষে আপনার রিফ্যাক্টরিং সময়টি যথেষ্ট পরিমাণে ছোট করবে।
বাস্তবতা তবে, প্রতিটি স্পাইক আপাতদৃষ্টিতে সম্ভাব্য প্রচেষ্টার অপচয় হ'ল। কোড পরিবর্তনগুলি কখনও কখনও কোথাও যায় না এবং আপনি নিজের ভিসিএস থেকে আপনার কোডটি পুনরুদ্ধার করতে পারেন। এটি আমরা দিনের পর দিন যা করি তার একটি বাস্তবতা। প্রতিটি স্পাইক যা ব্যর্থ হয় তা নষ্ট হয় না, যদি এটি আপনাকে কিছু শেখায়। প্রতিটি রিফ্যাক্টরিং প্রচেষ্টা ব্যর্থ হয় যা আপনাকে শিখিয়ে দেবে যে আপনি হয় খুব দ্রুত খুব বেশি চেষ্টা করছেন বা আপনার পদ্ধতির ভুল হতে পারে। এটিও যদি আপনি এর থেকে কিছু শিখেন তবে সময় নষ্ট হবে না। আপনি এই জিনিসটি যত বেশি করেন, আপনি তত বেশি শিখবেন এবং তত বেশি দক্ষ হয়ে উঠবেন। আমার পরামর্শ হ'ল এটি কেবল আপাতত পরিধান করুন, কম করে আরও বেশি কিছু করা শিখুন, এবং স্বীকার করুন যে স্পাইকটি আরও দূরে নিয়ে যাওয়ার আগে আপনি কতটা দূরে যেতে পারবেন তা নির্ধারণ করতে আপনি যতটা ভাল না হয়ে যান ততক্ষণ পর্যন্ত এই জিনিসগুলি সম্ভবত হওয়া দরকার।