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