'কোড স্কিউ' কী?


11

স্কালায় ও'রিলি বইতে, আমি পড়লাম যে কোডটি অনুলিপি করে:

... কোড-ব্লাট, রক্ষণাবেক্ষণযোগ্যতা এবং স্কিউ সমস্যা তৈরি করে ,

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

কোন পয়েন্টার?

উত্তর:


19

এর সর্বাধিক প্রচলিত সংজ্ঞাতে স্কু করা মানে অ্যালাইনমেন্টের বাইরে (সমান্তরাল নয়)। স্পষ্টতই যখন কোড অনুলিপি করা হয় এবং পেস্ট করা হয় তখন দুটি অনুলিপি অভিন্ন এবং সমান্তরাল হয়। এটি কোনও আক্রমণকারী নয়। একটি অনুলিপিতে করা পরিবর্তনগুলি অনুলিপি করে অন্য অনুলিপি করার জন্য গ্যারান্টিযুক্ত নয় (অসতর্কতা বা অজ্ঞতার কারণে) এখন দুটি ভিন্ন জায়গায় কোডের দুটি সংস্করণ রয়েছে যা স্কিউড (এখন আর একই নয়)। আচরণটি অন্য জায়গায় না হয়ে এক জায়গায় কাজ করে বলে মনে হচ্ছে এটি অদ্ভুত বাগগুলিতে নিয়ে যেতে পারে। আপনার কোড DRY রাখুন (নিজেকে পুনরাবৃত্তি করবেন না)।

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


একটি ভাল ব্যাখ্যার জন্য +1। কিছু ক্যাথারসিসের জন্যও - আমাকে এমন একটি কোডবেস নিয়ে কাজ করতে হবে যাতে এই ধরণের সমস্যার সাথে সঠিকভাবে কপি-পেস্ট কোডের কয়েকশ এবং কয়েকশ লাইন থাকে consists
কেচালাক্স

2

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


3
পার্থক্যগুলি অনুলিপি-অনুলিপি দ্বারা সৃষ্ট হয় না । অনুলিপি-পেস্টের পরে যা ঘটেছিল সেগুলির কারণে এগুলি ঘটে।
স্টিফেন সি

1
একদম সত্য, তবে কোডটি অনুলিপি করা এবং পেস্ট করা না থাকলে পার্থক্যটি ঘটত না।
জিম নট

এটা একটা ভাল উদাহরণ, কিন্তু উপমা হল স্কিউ ধারণা থেকে। সাদৃশ্যগুলিতে, পেস্টটি একটি পৃথক অনুলিপি তৈরি করে, যখন আসল ধারণাটিতে, অনুলিপিটি একই, তবে সিঙ্ক্রোনাইজ করা হয় না, ফলে স্কিউ তৈরি হয়।
সন্দীপ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.