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