অ-প্রযুক্তিগত ব্যক্তিকে আপনি কীভাবে রিফ্যাক্টরিং ব্যাখ্যা করবেন?


52

অ-প্রযুক্তিগত ব্যক্তির (সাধারণত কোনও পিএইচবি বা গ্রাহক) রিফ্যাক্টরিং (এবং প্রযুক্তিগত debtণ) সম্পর্কে কীভাবে ব্যাখ্যা করবেন? ("কী, এতে কোনও তফাত ছাড়াই আপনার কাজকর্মের এক মাস আমার ব্যয় করতে চলেছে?! ")

আপডেট এখন পর্যন্ত সমস্ত উত্তরের জন্য ধন্যবাদ, আমি মনে করি এই তালিকাটি বেশ কয়েকটি দরকারী উপমা সরবরাহ করবে যা আমরা উপযুক্ত লোকগুলিকে নির্দেশ করতে পারি (যদিও পিএইচবি'র উল্লেখগুলি সম্পাদনা করা বুদ্ধিমান হতে পারে!)


আমার মনে নেই যে অ্যাপল এত লোককে কীভাবে চিতাবাঘ থেকে স্নো চিতাবাঘে রূপান্তর করতে রাজি করেছিল। সম্ভবত দাম: সময়ে স্বাভাবিকের চেয়ে 100 ডলার কম।
mouviciel

এই প্রশ্নটি শিল্পে কোড সহ যে কেউ কাজ করছে তার জন্য কিছু আশ্চর্যজনকভাবে কার্যকর প্রতিক্রিয়া পেতে পারে। মনোযোগ দিন মানুষ।
joshin4colours

বুদ্ধিমান হবে কেন?
লুই রাইস

উত্তর:


53

আপনার যখন একটি বড় হোম থিয়েটার থাকে এবং আপনি জিনিসগুলি যুক্ত করেন, আস্তে আস্তে তবে অবশ্যই পিছনে বড় ইঁদুরের বাসা বাঁধে।

আপনি যদি প্রায়শই অংশগুলি প্রতিস্থাপন করেন তবে কখনও কখনও এটি সমস্ত জিনিস সোজা করে ফেলার উপযুক্ত।

অবশ্যই, আপনি যদি এটি করেন তবে এটি আগে কাজ করছিল, এবং আপনি যখন শুরু করেছিলেন তখনকার চেয়ে এটি আরও ভাল কাজ করে না, তবে যখন আপনাকে আবার এটির সাথে ঝামেলা করতে হবে তখন জিনিসগুলি অনেক সহজ হবে।

যে কোনও ক্ষেত্রে পিএইচবি বা গ্রাহক ইতোমধ্যে কারও সাথে সম্পর্কিত ক্ষেত্রের সাথে অনুরূপ তুলনা করা সবচেয়ে ভাল, যেমন গাড়ি বা নির্মাণ বা কোনও কিছুর ...


1
সেরা সাদৃশ্য নয় কারণ এটি আপনার থিয়েটারে স্বতঃস্ফূর্তভাবে ক্রল হয়ে যাওয়া খারাপ জিনিসগুলির মতো শোনাচ্ছে, যেমনটি আপনার থিয়েটার ক্রমাগত গড়ার প্রত্যক্ষ ফলাফল হিসাবে উপস্থিত খারাপ জিনিসটির বিরোধিতা করে।
doppelgreener

21
@ অ্যাক্সিডোস: "ইঁদুরের বাসা" একটি ইংরেজী প্রবাদ যার অর্থ "জট কাটানো একটি আপাতদৃষ্টিতে অসম্ভব" (এই ক্ষেত্রে, বিনোদন কেন্দ্রের পিছনে কর্ড এবং
তারগুলির মধ্যে

8
ধারণাগতভাবে এটি বেশ ভাল - "ইঁদুরের নীড়" এর পরে "কেবলগুলির" প্রয়োজন
মার্ফ

2
@ পিটার: আমি মনে করি আমাদের একবারে হলেও একবারে টিভির পিছনে যেতে হয়েছিল। এটিকে মাত্র একশগুণ খারাপ হিসাবে ব্যাখ্যা করুন এবং যেকোন তারের সুতা স্পিন করুন এবং এটি টানুন এবং এটিকে টানুন এবং গণ্ডগোলের কোথাও একটি মৃত সভ্যতা আবিষ্কার করুন।
ডপপেলগ্রিনিয়ার

3
যদি কেউ সম্পর্কিত না করতে পারেন তবে এগুলিটি দেখান: google.com/images?q=do+not+touch+any++++++++ তার
স্টিভ এস

41

রি-ফ্যাক্টরিং হ'ল স্যুটকেস পুনরায় প্যাকিংয়ের প্রক্রিয়ার মতো যতক্ষণ না সবকিছু ঝরঝরে করে fits কখনও কখনও, প্রক্রিয়াটিতে, আপনি অবাক হন কেন আপনি কেন সেখানে এত জঞ্জাল শুরু করার চেষ্টা করছেন।


1
আমি গ্যারেজ বা শেডের সাথে কিছু উপমা পোস্ট করতে যাচ্ছিলাম তবে এটি আরও ভাল।
ম্যাট এলেন

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

+1 এটি দুর্দান্ত। জিনিসগুলি কম স্থান দখল করার পাশাপাশি এমন কিছু জিনিস রয়েছে যা আপনি বুঝতে পারেন যে আপনার এমনকি কোনও প্রয়োজনও নেই এবং তাই ছেড়ে যেতে পারেন।
রবি ডি

21

আমি প্রযুক্তিগত debtণের ধারণাটি ব্যাখ্যা করব না, কারণ এটি প্রয়োজনীয় নয়। পরিবর্তে, রিফ্যাক্টরিংয়ের দিকে মনোনিবেশ করুন: আপনি আপনার প্রোগ্রামের নকশাটি পরিবর্তন করছেন, এটি "আরও ভাল" বা "উন্নত" হওয়ার দরকার নেই, আপনি এটি পরিবর্তন করছেন যাতে এটি আপনার প্রয়োজনীয় পরিবর্তনটি গ্রহণ করতে পারে।

একটি গাড়ির উপমা মাপসই: আপনার গাড়িতে একটি শীতাতপনিয়ন্ত্রক যুক্ত করা দরকার, তবে এটি মূলত এটির জন্য ডিজাইন করা হয়নি। আপনাকে কেবল একটি অদ্ভুত এল-আকারের এয়ার-কন্ডিশনার তৈরি করতে হবে না, তবে আপনাকে প্রথমে কিছু অন্যান্য জিনিস সরিয়ে নিয়ে ভেন্টিং সিস্টেমটি পরিবর্তন করতে হবে।

আমি আরও মনে করি যে আপনি নতুন বৈশিষ্ট্যগুলি সমন্বিত করার সময় এটি রিফ্যাক্টর করার জন্য আরও ভাল কৌশল: অন্যথায় আপনি সম্ভবত নকশাকে এমন কিছুতে পরিবর্তন করছেন যা কেবল "ভাল" দেখায় তবে আপনার পরবর্তী বৈশিষ্ট্যটি সংযোজনের আশেপাশের পরিস্থিতিতে খুব কমই উপযুক্ত হতে পারে।


আরও ভাল পারফরম্যান্স বা সহজ রক্ষণাবেক্ষণের জন্য গাড়ীতে অংশগুলি সরিয়ে নেওয়া - যে কেউ তাদের গাড়িতে idাকনা তুলেছেন তার পক্ষে কাজ করে, তবে কতজন পিএইচবি এই কাজটি করেছে?
পিটার বুফটন

3
আমি এটি পছন্দ করি কারণ এটি জোর দেয় যে প্রয়োজনীয় পরিবর্তনকে আরও সহজ করার জন্য (বা সম্ভব) রিফ্যাক্টরিং করা হচ্ছে। রিফ্যাক্টরিং সাধারণত নিজের স্বার্থে করা উচিত নয়, তবে একটি নির্দিষ্ট লক্ষ্য অর্জনের জন্য।
ক্রিস্টোফার জনসন

সুতরাং, সংক্ষিপ্ত উত্তর হয়ে যায়: তাদের বলবেন না! সেই সাথে নতুন বৈশিষ্ট্য এবং রিফ্যাক্টর মধ্যে কেবল সময়ের ফ্যাক্টর।
জোনাথন ভ্যান ডি ভীন

12

আমি টেকনিক্যাল tণ শব্দটি ব্যবহার করি এবং এগুলি তাদের বোঝার সাথে সরাসরি যুক্ত করি - কর্পোরেট tণ। প্রযুক্তিগত tণ outণ নেওয়ার মতো। আপনি এটির উপর সুদ প্রদান। উদাহরণস্বরূপ, আপনি একটি নতুন কারখানা তৈরি করতে পারেন এবং এর জন্য সরাসরি অর্থ প্রদান করতে পারেন বা আপনি এর জন্য loanণ পেতে পারেন। আপনি যদি কোনও getণ পান তবে আপনি দীর্ঘমেয়াদে এর জন্য আরও বেশি অর্থ প্রদান করবেন, তবে শর্তগুলি সঠিক হলে এটি আর্থিকভাবে অর্থবোধ করে

তবে, যদি আপনি এই জাতীয় onণের 25% সুদ প্রদান করেন তবে আপনি নিজেকে অ-টেকসই অবস্থানে রাখবেন। প্রযুক্তিগত withণের সাথে এটি একই রকম। কখনও কখনও কিছু প্রযুক্তিগত onণ গ্রহণ করা বোধগম্য হয়। যাইহোক, একটি পয়েন্ট আসে যেখানে সুদ খুব বেশি এবং এটি পরিশোধ করা দরকার। কিছু প্রযুক্তিগত incণ হোম loanণের মতো এবং কিছু এটি ক্রেডিট কার্ড debtণের মতো like জরুরী পরিস্থিতিতে ক্রেডিট কার্ড debtণ একটি গুরুত্বপূর্ণ এবং মূল্যবান সম্পদ। যাইহোক, এটি মূর্খভাবে ব্যবহার করা হলে এটি ব্যাংক (বা আপনি যদি চয়ন করেন তবে পরিবার) ভাঙ্গতে পারে।

আরেকটি উদাহরণ: আপনি ভবিষ্যতে বিক্রয়ের জন্য আরও সীসা অর্জনের জন্য বিপণন মেল ড্রপের জন্য 10,000 ডলার দিতে পারেন। আপনি "বিক্রয় debtণ" পরিশোধ করছেন। এটি দীর্ঘমেয়াদী পেওফ সহ ব্যয়। আপনি এখন কোডের একটি অংশকে পুনরায় সংশোধন করে কেন অর্থ "ব্যয়" করতে চান তা সমান করুন। উভয় ক্ষেত্রেই তাত্ক্ষণিকভাবে অর্থ প্রদানের ব্যবস্থা নেই, তবে আপনি ভবিষ্যতে আরও ভাল পারফরম্যান্সের জন্য নিজেকে সেট আপ করছেন।

লক্ষ্য শ্রোতা যার সাথে কথা বলার সময় আমি উপমা হিসাবে "xxxx debtণ" শব্দটি ব্যবহার করি। উদাহরণস্বরূপ, অপারেশনাল tণ - প্রিন্টিং প্রেসটি এখন আমাদের ভাল কাজ করে তবে একদিন (বা এক সপ্তাহ) উত্পাদন বন্ধ করে এবং একটি নতুন মেশিনে আপগ্রেড করে আমরা আউটপুট 25% বাড়িয়ে তুলতে পারি।

সম্পাদনা - এটি এখানে আরও গ্রহণ করা


1
বাস্তবসম্মত অর্থনীতি প্রদর্শন করে এমন একটি যুক্তিসঙ্গত জবাবের জন্য +1। Timesণ সময়ে সময়ে যুক্তিযুক্ত এবং শুদ্ধবাদীরা যদি এটি সহ্য করতে না পারে তবে তারা প্রচুর সুযোগ মিস করে।
ম্যাকনিল

1
এবং লোকেরা বুঝতে পারে যে পুরানো loansণের সুদের জন্য loansণ নেওয়া টেকসই নয়।
ক্রিস্টোফার মাহান

1
এটি ব্যাখ্যা করার জন্য আমার অগ্রাধিকার, কারণ আমি প্রযুক্তিগত দেউলিয়া
ওয়েন মোলিনা

4
এটি একটি ভয়ানক উত্তর। (1) এটি রিফ্যাক্টরিংয়ের প্রযুক্তিগত ব্যাখ্যার চেয়ে জটিল। (২) এটি "কেন" এর রিফ্যাক্টরিংয়ের ব্যাখ্যা দেয় না; এটি "কখন" এর রিফ্যাক্টরিংয়ের ব্যাখ্যা করে (যেমন: যখন এটি কার্যকর হয়)। অথবা সম্ভবত আমি সত্যিই এই পোস্টটি বুঝতে পারি না, এবং সুতরাং (1)।
থমাস এডিং

2
@ থমাসডিং (১) এটি রিফ্যাক্টরিংয়ের ব্যাখ্যা নয়, এটি প্রযুক্তিগত debtণের ব্যাখ্যা। (২) এটি কখন রিফ্যাক্টর করবেন - ব্যবসায়িক ব্যক্তির কাছে তার কারণ ব্যাখ্যা করে। সত্যিই, তারা প্রযুক্তিগত কারণ সম্পর্কে চিন্তা করে না, আপনি করেন না। তারা যুক্তিযুক্ত যুক্তি চায় যে আপনি পরবর্তী বৈশিষ্ট্য ব্যতীত অন্য কিছুতে কাজ করছেন যা বিক্রি চালিয়ে যাবে। এ কারণেই বেশিরভাগ প্রোগ্রামাররা তাদের বসের সাথে কথা বলতে পারে না এবং বসকে বোকা বলে অভিযোগ করতে পারে না। তারা নির্বোধ নয়, তাদের কেবল আপনার চেয়ে আলাদা ড্রাইভার রয়েছে।
নেমি

8

বসন্ত পরিষ্কার।

আপনি ঘরে কোনও পরিবর্তন করছেন না। আপনি কেবল জিনিসগুলি স্থানান্তরিত করছেন এবং কিছু ধূলিকণা থেকে মুক্তি পাচ্ছেন। হতে পারে এমন কিছু জিনিস ছুঁড়ে ফেলেছে যা আপনার আর প্রয়োজন নেই বা প্রয়োজন নেই। তবে আপনি কিছু যোগ করছেন না


1
+1: এটি সর্বোত্তম উত্তর ইমো: এবং যে কেউ যে কেউ সম্পর্কিত হতে পারে। "আপনি আপনার বাড়িতে থাকেন, জিনিসগুলি নোংরা / ধূলোয়ালি / শালীন হয়ে যায় - পর্যায়ক্রমে আপনাকে গভীর পরিষ্কার করা দরকার।"
স্টিভেন এভার্স

7

"আপনি কি কখনও মাউস ট্র্যাপ খেলেন ? আমরা নতুন বৈশিষ্ট্যগুলিতে লেগে থাকা, ইন্টারফেসগুলি পরিবর্তন করতে এবং বাগগুলি ঠিক করার সাথে সাথে কোডটি এর মতো দেখতে শুরু করতে পারে There এমন একটি পয়েন্ট আসে যেখানে আমাদের হয় প্রচুর মূলধন ব্যয় করতে হয় (সময় এবং প্রচেষ্টা) have , যা অর্থের পরিমাণে) নিশ্চিত হওয়া যায় যে সমস্ত চলমান অংশগুলি প্রতিটি নতুন পরিবর্তন বা সংযোজন সহ সুন্দরভাবে খেলতে পারে, বা আমরা পরিবর্তে ডিজাইনের রিফ্যাক্টরের জন্য সময় আলাদা করতে পারি, যার ফলে প্রতিবার পরিবর্তন করার সময় আমরা কম চালিত অংশগুলি পরিচালনা করতে পারি It শেষ-ব্যবহারকারীর দৃষ্টিকোণ থেকে মনে হতে পারে যে রিফ্যাক্টরটির কোনও সুবিধা নেই তবে সুবিধাটি প্রতিবারই একটি নতুন বৈশিষ্ট্য পোস্ট-রিফ্যাক্টর যুক্ত হওয়ার পরে ঘটে থাকে The প্রক্রিয়াটি দ্রুততর হয়, কম বাগগুলি প্রবর্তন করে এবং এর পরে কম ব্যয়বহুল হয়, রেফ্যাক্টর কোডটি প্রায়শই সামগ্রিকভাবে আরও কার্যকর mention

আপনি ভাবতে পারেন যে আমরা কেন প্রথম স্থানে মাউস ট্র্যাপের মতো দেখতে লাগলাম:

  • কখনও কখনও এখনই কিছু করার অর্থ হ'ল কেবল "এটিকে কাজ করতে" আমাদের কমনীয়তা এবং দক্ষতার ত্যাগ করতে হবে।
  • প্রোগ্রামারদের প্রায়শই পরিবর্তিত হওয়ার সাথে সাথে ভাষা বৈশিষ্ট্য এবং অন্যান্য প্রযুক্তি আমাদের কাছে উপলব্ধ। কখনও কখনও নতুন বৈশিষ্ট্যগুলি আমাদের সাথে একটি ছয়টি চলন্ত অংশের একটি ফিনিিকি গলগল প্রতিস্থাপন করে।
  • প্রায়শই, যখন আমরা A এবং B বৈশিষ্ট্যগুলিতে সি বৈশিষ্ট্য যুক্ত করি, আমরা জানি না যে অবশেষে বি বাদ দেওয়া হবে এবং ডি যুক্ত হবে। সি অর্জনের একটি উপায় বি এর সাথে খুব ভাল কাজ করতে পারে তবে ডি এর সাথে খুব ভাল নয় not

আরও উন্নততর মাউস ট্র্যাপ তৈরির চেষ্টা করার জন্য, আমাদের ক্রমাগত পিছনে গিয়ে জটিলতা হ্রাস করার জন্য জায়গাগুলি খুঁজে পেতে হবে এবং যা আছে তা প্রবাহিত করতে হবে। কেবলমাত্র প্রচুর বৈশিষ্ট্যযুক্ত সফ্টওয়্যার থাকা এবং সত্যই উচ্চমানের সফ্টওয়্যার থাকার মধ্যে পার্থক্য। "


6

বিকল্প পাঠ

এটি হোম থিয়েটার উপমাটির কিছুটা বেশি গ্রাফিকাল সংস্করণ।

যদি আপনি আরও একটি নতুন সরঞ্জাম [ওরফে, নতুন কার্যকারিতা] যোগ করতে চান, তবে আপনি সম্ভবত এটি কোনও জায়গায় ফিট করতে পারেন।

আপনি যদি আরও একটি সরঞ্জাম যুক্ত করতে চান তবে আপনি একটি এক্সটেনশান সীসা কিনতে পারেন, যা আপনাকে কিছুটা সময় কিনে দেবে।

তবে প্রতিটি সংযোজন, সমাধান খুঁজে পাওয়া আরও কঠিন হয়ে পড়ে। এবং আপনি নিজেকে আগুনের 1 ঝুঁকির সাথে প্রকাশ করছেন [ওরফে বাগগুলি], এবং আপনাকে প্রাচীরের মধ্যে নতুন সকেট লাগানোর জন্য কাউকে অর্থ প্রদানের জন্য বড় বড় টাকা বের করতে হবে, যা সম্ভবত পুরোপুরি পুরোপুরি বাড়ানো যেতে পারে সার্কিট বোর্ড, বা আরও।

1 আরেকটা জিনিস PHBs খুব ভাল grok করবেন না: "ভাল থাকেন তাহলে সেটি শুধুমাত্র পারে ঘটতে, আপনি সম্পর্কে উদ্বেজক কি?"


5

রিফ্যাক্টরিং - আপনার কাপড়ের মন্ত্রিসভা / টুল ড্রয়ারকে সাজানোর মতো।

  • আপনি নিজের কাপড় / সরঞ্জামগুলি কেবল জায়গা থেকে ফেলে দেওয়ার কারণে তা ফেলে দিন।

  • আপনি তর্ক করতে পারেন যে তাদের কখনই বিশৃঙ্খল হওয়া উচিত নয়। তবে তারা করে।

কোড যেমন করে। বিশেষত এটি সময়ের সাথে সাথে বৃদ্ধি পায়।

এবং যদি আপনি এটি পরিষ্কার না করেন তবে আপনি ভাবতে থাকবেন যে আপনি পছন্দ করেছেন এমন টি-শার্ট বা সেই রেঞ্চের যা আপনার সর্বদা প্রয়োজন তবে কখনও খুঁজে পাচ্ছেন না!


4

আমি "কোড রক্ষণাবেক্ষণ" বলব । এমন শব্দগুলি ব্যবহার করা গুরুত্বপূর্ণ যেগুলি অ-প্রযুক্তিগত ব্যক্তির সাথে পরিচিত এবং এটি একটি নন-প্রযুক্তিগত বিশ্বের দৃষ্টিভঙ্গিকে বোঝায়। যদি অ-প্রযুক্তিগত ব্যক্তি (গ্রাহক) অ্যাপ্লিকেশন রক্ষণাবেক্ষণের সাথে পরিচিত হয় তবে কোড রক্ষণাবেক্ষণ এবং অ্যাপ্লিকেশন রক্ষণাবেক্ষণের সমান্তরাল করা সহজ। এমনকি যদি সেগুলি একই না হয় তবে আপনি ব্যাখ্যা করতে পারবেন যে এখানে শেষ গ্রাহকরা বিকাশকারী বা যারা কীভাবে সিস্টেম বজায় রাখে।


1
প্রযুক্তিবিহীন লোকেরা কি আবেদন রক্ষণাবেক্ষণে ফালিলার? আমি আমার দাদীকে জিজ্ঞাসা করলাম: তিনি উত্তর নন যে তিনি আমার খুঁজে পাওয়া সবচেয়ে প্রযুক্তিগত ব্যক্তি। অতিরিক্তভাবে: যেহেতু একজন অ প্রযুক্তিগত ব্যক্তি কোড এবং অ্যাপ্লিকেশনের মধ্যে পার্থক্য জানেন না ("যদি কোডটি অ্যাপ্লিকেশন হয় তবে অ্যাপ্লিকেশন কোড হয়") আপনার উপমা কাজ করবে না।
মার্টিন

2
আমি যে জায়গাগুলিতে কাজ করেছি, বিপণন ও প্রজমান প্রকারগুলি "রিলিজের পরে বাগ ফিক্স" বোঝার জন্য "রক্ষণাবেক্ষণ" বোঝে এবং রিফেক্টরিং বাগগুলি স্থির করে দিচ্ছে তা দাবি করা অস্বাভাবিক হতে পারে।

আমার জন্য অ প্রযুক্তিগত ব্যক্তি হ'ল গ্রাহক। গ্রাহক যদি অ্যাপ্লিকেশন রক্ষণাবেক্ষণ কী তা জানেন তবে তারও কোড রক্ষণাবেক্ষণ বুঝতে হবে।
আমির রেজায়ে

"কোড রক্ষণাবেক্ষণ" শোনায় আপনার কোডটি টিয়ার হয়ে যায় এবং টিয়ার হয়ে যায় বা ব্যবহার হয়ে যায়। একটি গাড়ী বজায় রাখা দরকার, কারণ সাধারণ ব্যবহার তার উপাদানগুলিকে জোর দেয়, তরল ব্যবহার করে ইত্যাদি An একটি অ্যাপ্লিকেশন এর মতো নয় - হার্ড ড্রাইভে বসে কোডটি নিজের পক্ষে "বয়স" বা "খারাপ হয় না"।
ড্যান রে

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

4

বলুন আপনি এমন একজন যান্ত্রিক যা গাড়িগুলি কাস্টমাইজ করার ক্ষেত্রে বিশেষজ্ঞ, এমনকি গ্রাহকের যদি এটির প্রয়োজন হয় তবে তাদের এগুলি স্ক্র্যাচ থেকে তৈরি করা। এই গ্রাহকটি আপনার সুপার-মাপের লিমোতে সর্বদা প্রায়শই নতুন কোনও চকচকে জিনিস রাখার জন্য আপনার দোকানে ফিরে আসেন।

একবার সে আসার সাথে সাথে একটি দুর্দান্ত সাউন্ড সিস্টেম ইনস্টল করা হবে। আপনি অধ্যবসায়ভাবে তারগুলি অতিক্রম করে এবং এগুলি সমস্ত সঠিকভাবে সংযুক্ত করার কাজটি সম্পাদন করুন। তিনি একদিন পরে বাইরে যান, তিনি খুশি হন এবং যথারীতি সুদর্শন দেয়।

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

উপলব্ধি করে যে গ্রাহক আপনাকে পুরানো সাউন্ড সিস্টেমটি প্রতিস্থাপন করতে বলেননি যে আপনি প্রতিস্থাপন এবং টিউবগুলির কিছু ব্যয় সরিয়ে ফেলুন। তবে আপনি এখনও চুক্তি থেকে অর্থোপার্জন করেছেন, ঠিক যতটা না আপনি কেবল প্রথমবারের মতো সিস্টেমটিকে একসাথে ছুঁড়ে ফেলতে চেয়েছিলেন।

এক মাস পরে তিনি ফিরে আসেন, এবার তিনি একটি আলোকসজ্জার ব্যবস্থা চান এবং তিনি চান যে সপ্তাহের প্রথম দিকে নতুন স্পিকাররা পুরানোগুলির ক্ষতি করেছে।

আপনি সবকিছু সুন্দর এবং পরিচ্ছন্ন রাখার কারণে আপনি দ্রুত নিজের নল দিয়ে নতুন আলোক তারের চালাতে পারেন, সিস্টেমটি ইনস্টল করতে পারেন এবং স্পিকারটি প্রতিস্থাপন করতে পারেন। এবার তবে আপনি আরও দ্রুত সম্পন্ন হয়ে গেছেন, আপনাকে আবার আপনার গেমের শীর্ষে রেখে রি-ফ্যাক্টরিং প্রদান করা হয়েছে।

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

এটি দেখে আপনি বুঝতে পেরেছেন যে আপনার লক্ষ্যটি কেবল ব্যবসায়েই থাকবেন না তবে শীর্ষ বন্দুক হবেন গ্রাহকের চাহিদা পূরণের জন্য আপনি কী করেন এবং আপনার জীবনকে রাস্তায় সহজ করার জন্য আপনি কী করেন তা ভারসাম্যপূর্ণ করা। খুব কমই একজন গ্রাহক উভয়ের জন্য অর্থ প্রদান করবেন যাতে আপনাকে নিবিড়ভাবে পরিচালনা করতে হবে। আপনি জুয়া খেলেন যে প্রো-সক্রিয়ভাবে জিনিসগুলি ডান করেও দুবার করে ব্যয় করেও আপনি নিজের উত্পাদনশীলতার নিয়ন্ত্রিত স্থিতিশীল শতাংশে রক্ষণাবেক্ষণ ব্যয় বজায় রাখবেন।

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

এ কারণেই আমরা সিস্টেমটিকে পুনরায় ফ্যাক্টরিং করা জরুরী। খুব প্রায়শই অভিজ্ঞতা আমাদের একই জিনিসটি করার জন্য আরও নতুন দক্ষ উপায় দেখায় বা আমরা অনুরূপ কার্যকারিতা একত্রিত করতে পারি এবং কেবলমাত্র অতীতগুলি অনুলিপি করার পরিবর্তে অতিরিক্ত অর্থ ব্যবহার করতে পারি। এভাবেই আমরা সিস্টেমকে হেলান দিয়ে থাকি mean সময়টি দেখায় যে চাহিদা পূরণের জন্য নিয়মিত সিস্টেমটিকে পুনরায় ফ্যাক্টরিং রক্ষণাবেক্ষণে রাখা পরিমাণ নিয়ন্ত্রণ করে উত্পাদনশীলতা অবিচ্ছিন্ন রাখবে।

নালী টেপ স্থাপন একটি মুহূর্তে উপ-অনুকূল সিস্টেম বহনের ব্যয়ে উত্পাদনশীলতা বৃদ্ধি করবে। প্রযুক্তিগত debtণ যখনই তাত্ক্ষণিক উত্পাদনশীলতা কোনও সিস্টেমের অন্যান্য দিকগুলির ক্ষয়ক্ষতিতে অনুকূল হয় ur Debtণের সাদৃশ্যটি ভাল কারণ ধার করা মূলধনের উপর যেমন স্বার্থগুলি যেমন ধার করা সময়কে তত দ্রুত রক্ষণাবেক্ষণ করে তোলে তেমনি সিস্টেমের ভঙ্গুরতা বৃদ্ধি করে একটি দলকে তৈরির পরিবর্তে অতিরিক্ত সংস্থান ব্যয় করতে বাধ্য করে। ঠিক এর আর্থিক আত্মীয়ের মতো, orrowণ অব্যাহত থাকলে বেশিরভাগ সংস্থান সুদের ayণ পরিশোধের জন্য ব্যয় হয় উন্নতির জন্য খুব সামান্য। প্রযুক্তিগত debtণ এমন এক পর্যায়ে প্রযুক্তিগত সংস্থানগুলি হারাবে যেখানে বেশিরভাগ সংস্থান কেবলমাত্র সিস্টেমকে অন্যান্য সমস্ত সম্ভাব্য বর্ধনগুলিকে বন্ধ করে দেওয়ার জন্য ব্যয় করা হয়।

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

এখানে আপনার সফ্টওয়্যারটি শেষ হয়েছে, আশা করি আপনি এটি পছন্দ করবেন .... হ্যাঁ, আমি আপনার ক্রেডিট কার্ডটি সর্বাধিক করে ফেলেছি, আশা করি আপনি আপত্তি করবেন না ... cya


3

পুনঃ-ফ্যাক্টরিংয়ের বিষয়টি হ'ল নকশাটি সহজতর করা এবং অদক্ষতা অপসারণ করা। এটি ভবিষ্যতে বাগগুলি ঠিক করতে এবং নতুন বৈশিষ্ট্য যুক্ত করতে আরও সহজ করে।

ডিবাগিং প্রথম স্থানে কোড লেখার চেয়ে দ্বিগুণ শক্ত। অতএব, আপনি যদি কোডটি যথাসম্ভব চালাক হয়ে লিখেন তবে আপনি সংজ্ঞা অনুসারে এটিকে ডিবাগ করার পক্ষে যথেষ্ট স্মার্ট নন।

আপনি যদি কোডটিতে নতুন বৈশিষ্ট্য যুক্ত করতে থাকেন তবে পুনঃ-ফ্যাক্টরিং দ্রুত নিজের জন্য অর্থ প্রদান করবে। এটি নিম্ন ত্রুটি হার, দ্রুত ডিবাগিং এবং দ্রুত ফিক্সগুলিতে দৃশ্যমান হবে।


তবে clever == 0তাই 2 * clever == 0...
থমাস এডিং

3

রাইটিং সফটওয়্যার অনেকটা একটি বড় অ-কাল্পনিক বই, বা একটি এনসাইক্লোপিডিয়া লেখার মতো।

প্রথম খসড়া সর্বদা চুষতে থাকে। এটিকে পুনর্গঠন করে, সেখানে থাকা প্রয়োজন নেই এমন বিভাগগুলি সরিয়ে এবং সর্বদা একটি ধারাবাহিক শৈলী নিশ্চিত করে এটি সর্বদা উন্নত হতে পারে।

যখনই আপনাকে সংশোধন করতে হবে, সহজ কাজটি হ'ল কেবল একটি নতুন বিভাগ যুক্ত করা, কয়েকটি শব্দ পরিবর্তন করা ইত্যাদি। তবে সংশোধনীগুলি স্তূপিত হওয়ার সাথে সাথে বইটি তার সংগঠনটি হারাতে শুরু করে। সুতরাং আপনাকে পুনর্গঠনের আরও পাসগুলি করতে হবে। আপনি যদি তা না করেন তবে বইটি একটি অযৌক্তিক ঝাঁকুনিতে পরিণত হয়।


3

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

একদিন পরে যখন আপনি আপনার স্পিকারের ভারসাম্য পরিবর্তন করছেন, আপনি বুঝতে পারেন যে আপনি ভুল করে আপনার বাম এবং ডান স্পিকারকে ভুল জায়গায় রেখেছিলেন, তাই আপনি তাদের অবস্থানগুলি অদলবদল করতে চান। তবে ওরে না! জট বাঁধার জঙ্গল আছে; আপনি যখন স্পিকারগুলি সরিয়ে নিয়ে যান, তখন আপনার মাউস কর্ডটি আটকানো হবে, এবং এখন আপনার মাউস স্পিকারের সাথে টেনে আনবে। এছাড়াও, আপনার কীবোর্ডে এখন কোনও ckিল নেই - আপনি ডেস্ক থেকে আপনার কোলে সরিয়ে নিতে সক্ষম হতেন।

ঠিক আছে, আপনি কেবল মাউস এবং কীবোর্ডটি প্লাগ করতে পারেন এবং এগুলি পুনরায় সজ্জিত করতে পারেন যাতে সবকিছু ঠিক হয়ে যায়। তবে এটি ভবিষ্যতের পুনর্গঠন এবং ভবিষ্যতের সংযোজনগুলিতে সহায়তা করবে না। জঙ্গলের মাধ্যমে আপনার মাউস এবং কীবোর্ড কর্ডগুলি বুনন একটি ঝামেলা।

আরও ভাল সমাধান হ'ল সবকিছুকে পুনরায় প্লাগ করার জন্য একটি পরিষ্কার পরিচ্ছন্ন উপায়ে যেখানে প্রতিটি কর্ড অন্যটির সাথে হস্তক্ষেপ না করে। এখন ভবিষ্যতের পরিবর্তনগুলি সহজ এবং সহজ হতে চালিয়ে যান। আপনি পরে বড় লাভের জন্য সামান্য সামনের দিকে বিনিয়োগ করুন।

মূল বিষয়টি হ'ল মূল সমাধানটি বেশিরভাগই কাজ করে। এটি রিফ্যাক্টরিং সম্পর্কিত জিনিস: এটি দিয়ে কাজ শুরু করে তবে ভবিষ্যতে পরিবর্তনগুলি (স্পিকারগুলিকে সরিয়ে নেওয়া) সহজেই কীভাবে জিনিসগুলি ইতিমধ্যে বিদ্যমান তা আপনার পরিবর্তন করতে হবে।


2

এটি আগের মতো রাত থেকে কোনও বুনো এবং ক্রেজি পার্টির পরে ঘর পরিষ্কার করার মতো ঘটনা।

ধরা যাক লিভিংরুমটি পুরো জঞ্জাল হয়ে গেছে। বাড়িটি এখনও একটি বাড়ি, থাকার ঘরটি এখনও একটি থাকার ঘর। এটি কাজ করে তবে এটি যেভাবে হতে পারে তা নয়। জগাখিচুড়ি দেখার পরে আপনি বুঝতে পারেন যে এটি পরিষ্কার হওয়া দরকার।

সুতরাং, আপনি আবর্জনা জোগাড় করা শুরু করুন। এটি ইতিমধ্যে আরও ভাল দেখাচ্ছে। সুতরাং, আপনি ঘরের চারদিকে তাকান এবং আসবাব সোজা করার সিদ্ধান্ত নিন। আপনি একটি টুকরা পিছনে রাখুন, তারপরে পরের এবং পরেরটি। বাহ, ঘরটি দেখতে বেশ ভাল লাগছে। আপনি গর্বিত।

আপনার বোন ভিতরে যান এবং বলে ঘরটি আবর্জনার মতো দেখাচ্ছে, আপনার উচিত বইয়ের তাকটি ঠিক করা এবং কার্পেটটি ভ্যাকুয়াম করা। সে সঠিক. ঘরটি দেখতে সত্যই সুন্দর লাগছে।

আপনি চারপাশে তাকান এবং দেখুন যে উইন্ডো শেডগুলি সমস্ত একই উচ্চতায় থাকলে আরও ভাল দেখায়। সম্পন্ন. বাহ, ঘরটি আশ্চর্যজনক।

আপনার কোডকেও একইভাবে আচরণ করুন।


1
আমি এটি পছন্দ করি, তবে আমি এটি রান্নাঘর পরিষ্কারে পরিবর্তন করব। কিছুক্ষণ রান্না করা নয়, তবে জিনিসগুলি পরে আরও ভাল হবে। পিএইচবিগুলিকে কোম্পানির সময় পার্টি করার সাথে সম্পর্কিত সমস্যা হতে পারে :)
জাপ

শালীন উপমা, তবে একটি ত্রুটি রয়েছে যা সম্পর্কে পাঠকদের সচেতন হওয়া উচিত: আপনি যদি নিজের ঘরটি পরিষ্কার না করেন তবে আপনার ঘরটি সময়ের সাথে আক্ষরিকভাবে কম ব্যবহারযোগ্য হয়ে ওঠে। যদিও একটি প্রোগ্রাম সহ, এটি ঘটে না।
থমাস এডিং

1

সহজ!

এটি একটি উদাহরণ সহ দেখুন ... প্রত্যেকে তাদের জীবনে প্রিয়জনকে একটি চিঠি লিখেছিল। এটি প্রিয় কেউ হতে হবে কারণ সেই চিঠিগুলিতে আমরা সাধারণত রচনার দিকেও মনোযোগ দিই।

সুতরাং, আপনার পাঠ্য আছে, ... অর্থ উভয় দিক দিয়েই যাবে তবে আপনি পুরো জিনিসটি সুন্দর শোনাতে চান ! রাইট?

রিফ্যাক্টরিং, একই জিনিস ... একই তথ্যের টুকরো, কমবেশি, তবে রচনাটি আরও ভাল। এবং এটি সম্ভবত পাঠকের আরও ভাল পর্যালোচনার ফলস্বরূপ।

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

কার লেখাটি মনে পড়বে?


1

শারীরিক জগতের জিনিসের সমস্ত উপমা যেমন- থিয়েটার তৈরির মতো - আইএমও, ভয়ানক।

আপনাকে বোঝাতে হবে যে রিফ্যাক্টরিং কোডটি ... রিফ্যাক্টরিং কোডের মতো। সফটওয়্যারটি শারীরিকভাবে অ্যানালগগুলি নয় এমনভাবে ম্যালেবল। জিনিসগুলি আরও জটিল হয়ে উঠলে একটি অবশ্যই অবশ্যই একটি কোডবেসের বৃহত বা ছোট অংশকে চুল্লি করা (বা পুনরায় করা উচিত) যাতে আমরা পাগল না হয়ে জটিলতা বাড়িয়ে দিতে পারি continue

আমরা কেন চুল্লী? কারণ যে কোডটি কখনই রিফেক্টর হয় না তা বজায় রাখতে এবং পরিবর্তন করতে প্রতি মিনিটে বেশি খরচ হয় এবং শেষ পর্যন্ত আরও সমস্যাযুক্ত হয়ে ওঠে।

রিফ্যাক্টরিং সম্পর্কে এত মজার বিষয় হ'ল আমরা কোডবেসটি আবারও করি তবে কমপক্ষে শুরুতে কার্যকারিতাটি একই থাকে।


/ সব উপমা /? আমি দৃ strongly়ভাবে একমত না। আপনার আরও সৃজনশীল হওয়া দরকার। এছাড়াও ওপি-র প্রশ্নের উত্তর দেয় না।
থমাস এডিং

@ থমাস আপনার মন্তব্যের জন্য ধন্যবাদ। আমি দ্বিতীয় বিষয়টির সাথে একমত নই: আমি আসলে প্রশ্নের উত্তর দিচ্ছি। তবে আমি এখনই একটি সম্পাদনা করব আপনার জন্য।
ড্যান রোজনস্টার্ক

0

রি-ফ্যাক্টরিং কোনও জিনিস পরিষ্কার করা এবং স্টাফকে 'থাকার' জন্য নতুন জায়গা দেওয়ার মতো

সহজ সহজ এবং এমন কিছু যা অনেক সময় নিতে পারে। কখনও কখনও আমি এমনকি সেই ব্যক্তিকে এক্স যুক্ত করে দিয়েছি যে জিনিসগুলি একটি বিশাল জগাখিচুড়ি রেখেছিল এবং আমাকে এটি পরিষ্কার করতে হবে।


0

আমি অন্য একটি উদাহরণের কথা ভেবেছিলাম, যা এখানে সম্ভবত স্পষ্টভাবে কেউ উল্লেখ করেনি: রিফ্যাক্টরিং ম্যাথগুলিতে সমীকরণকে পুনর্বিন্যাস করার মতোই হ'ল (যদিও এটি 'অ-প্রযুক্তিগত ব্যক্তির ক্ষেত্রের বাইরে চলে যেতে পারে, আমার ধারণা)।

আপনি যখন কোনও সমীকরণ পুনঃবিন্যাস করেন, অর্থকে পরিবর্তন না করে আপনি আরও স্ট্র্যাটেডকে আরও পঠনযোগ্য এবং আরও ব্যবহারযোগ্য করে তোলার জন্য কেবল 'স্টাফের চারপাশে' সরিয়ে নিয়ে যান ।


1
সুতরাং আমি যদি পিএইচবি বা গ্রাহক (যিনি এই রিফ্যাক্টরিং প্রচেষ্টাটির জন্য অর্থ প্রদান করবেন), তবে কেন আমার যত্ন নেওয়া উচিত? কোড কাজ করে (আমার দৃষ্টিকোণ থেকে)
ড্যান পিচেলম্যান

0

তাদের একটি সাধারণ গণিতের সমীকরণ দিন। উদাহরণ স্বরূপ:

কোনটি সহজ?

y = x + x

অথবা

y = 2x

রিফ্যাক্টরিং হ'ল সাধারণ গণিতের সমীকরণগুলির পরিবর্তে আপনি অ্যালগরিদমে রাখে similar মূল ধারণাটি হ'ল আপনি কাজ করার দুটি উপায়ের মধ্যে অদলবদল করতে পারেন কারণ এগুলি একই ফল পাবে।

সহজ রিফ্যাক্টরিং যা করা যায় তা হল নামকরণ।

doX() { ... }
{
   doX()
}

এখন যেহেতু আমরা সত্যই জিনিসগুলিকে ডএক্স বলা চাই না কারণ আমরা সত্যিকার অর্থে এর অর্থ কী তা আমরা জানি না, আমরা এটির নামকরণ করি যা আরও বেশি স্ব-বর্ণনামূলক এবং আমরা যে কোনও জায়গায় এটি ব্যবহার করেছি প্রতিস্থাপন করি।

doBusinessTransaction() { ... }
{
   doBusinessTransaction()
}

সমস্যা বা বর্ধনের সময় পরে এটি আপনার অর্থ সাশ্রয় করবে কারণ এটি আপনার অ্যাপ্লিকেশন বুঝতে এবং ঠিক করার জন্য লোকদের সময় কমিয়ে দেয়। অর্থের আরও সঞ্চয় করতে, এমন কোনও মুক্ত সরঞ্জাম রয়েছে যা আপনি কোন ভাষা ব্যবহার করছেন তার উপর নির্ভর করে স্বয়ংক্রিয়ভাবে আপনার জন্য এই কাজটি করে। এই সরঞ্জামগুলি এমনভাবে লাইসেন্সযুক্ত যে এটি সীমাবদ্ধ নয় এবং যদি আপনি সরাসরি ব্যবহার করেন তবে এটি স্বীকৃতি দেওয়া বাদ দিয়ে আপনার বিশেষ কিছু করা প্রয়োজন।


1
আমি এই উপমাটি সত্যই পছন্দ করি কারণ এটি সবার কাছে বোধগম্য এবং কোডের সাথে সত্যই সমান।
ভেঙ্কট ডি

ধন্যবাদ, আমি এমনকি এটি আমার ব্লগেও পোস্ট করেছি trajano.net/2013/05/refactoring- বর্ণিত
আর্কিমিডিস ট্রাজানো

0

একটি ছবি হাজার শব্দ বলছে। উদাহরণস্বরূপ, রিফ্যাক্টরিংয়ের দুটি ব্যবহারের কেস রয়েছে:

  • যখন জিনিসগুলি প্রথমবার করা হয় না:

জিনিসগুলি যখন প্রথমবার না করা হয় তখন রিফ্যাক্টরিং

  • যখন বিষয়গুলি ক্লান্তিকর হয়:

জিনিসগুলি ক্লান্তিকর হলে রিফ্যাক্টরিং

তথ্যসূত্র


এক্সকেসিডি হ'ল সময়টি এই বিষয়টিকে উপেক্ষা করে চলেছে যে একটি রুটিন টাস্ককে আরও দক্ষ করে তোলার অর্থ এই হতে পারে যে আপনি অন্যথায় যা করতে চান তার থেকে অনেক বেশি কাজ শেষ করেন। সুতরাং আপনাকে কার্যের অতিরিক্ত পারফরম্যান্সগুলি থেকে যে মূল্যটি পাওয়া উচিত তা ফ্যাক্ট করতে হবে।
বিডিএসএল

@bdsl যে আচ্ছাদিত করছে workplace.se
পল Sweatte

0

রিফ্যাক্টরিংয়ে দেওয়া একটি উত্তর বিবেচনা করুন , এবং এটি কোনও অ প্রযুক্তিগত ব্যক্তির কাছে ব্যাখ্যা করবেন না। রিফ্যাক্টরিং একটি প্রযুক্তিগত ক্রিয়াকলাপ যা তাদের সম্পর্কে জানতে হবে না:

অবশ্যই, অনেক লোক বলে যে তারা মানের দ্বারা চালিত তবে সময়সূচিতে আরও চালিত হয়। এই ক্ষেত্রে আমি আমার আরও বিতর্কিত পরামর্শ দিচ্ছি: বলুন না!

সাবভারসিভ? আমি তাই মনে করি না. সফটওয়্যার বিকাশকারীরা পেশাদার। আমাদের কাজটি যত দ্রুত সম্ভব কার্যকর সফ্টওয়্যার তৈরি করা। … একটি শিডিয়ুল-চালিত পরিচালক আমাকে দ্রুততম উপায়ে জিনিসগুলি করতে চান; আমি কিভাবে এটি আমার ব্যবসা হয়। দ্রুততম উপায় রিফেক্টর হয়; তাই আমি রিফ্যাক্টর।

(রিফ্যাক্টরিং, মার্টিন ফওলার, 2000, পৃষ্ঠা 61)

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.