টিডিডি আলগোরিদিমিক সমস্যাগুলির কাছে পদ্ধতির মতো


10

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

সুতরাং এটি আমাকে ভাবতে বাধ্য করেছিল যে আমি যদি টিডিডি-র অনুরূপ কোনও ব্যবহার করতে পারি? আমি যদি একই ধরণের ধীরে ধীরে একটি সমাধান বিকাশ করতে পারি?

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

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

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

"টিডিডির অনুরূপ" সহ আমার অর্থ:

  1. ম্যানুয়াল পরীক্ষাগুলি pr বৃদ্ধিতে সময় সাশ্রয় করতে তুলনামূলকভাবে স্বয়ংক্রিয় পরীক্ষা লিখুন।
  2. বর্ধমান বিকাশ।
  3. রিগ্রেশন টেস্টিং, কোড ভেঙে যায় কিনা সনাক্ত করার ক্ষমতা বা কমপক্ষে যদি কার্যবৃদ্ধির মধ্যে বৃদ্ধি ঘটে।

আপনি যদি তুলনা করেন তবে এটি বুঝতে সহজতর হওয়া উচিত বলে আমি মনে করি

  1. সরাসরি শেল সাজানো লেখা
  2. বুদবুদোর্ট থেকে কুইকোর্টে জাম্পিং (মোট পুনর্লিখন)
  3. একমুখী বুদ্বুদ-সাজ্ট থেকে শেল সাজানোর (যদি সম্ভব হয়) তে ক্রমান্বয়ে সরানো।

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

"ধীরে ধীরে" :-) - শেষ বাক্যটি "সুতরাং পরিবর্তে ..."
ওলাভ

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

@ ডকব্রাউন নং - বুদবুলোর্ট / কুইকোর্টের উদাহরণ দেখুন। টিডিডি ভালভাবে "কাজ করে" কারণ একটি ইনক্রিমেন্টাল অ্যাপ্রোচ বিভিন্ন ধরণের সমস্যার জন্য ভাল কাজ করে। অ্যালগোরিটমিক সমস্যাগুলি আলাদা হতে পারে।
ওলাভ

সুতরাং আপনি বোঝাতে চেয়েছিলেন "বর্ধিত পদ্ধতিতে অ্যালগরিদম ডিজাইনের প্রশ্নগুলি সমাধান করা কি সম্ভব" (যেমন টিডিডি একটি বর্ধিত পদ্ধতির), এবং "টিডিডি বাই" নয়, তাই না? পরিষ্কার করে বলো.
ডক ব্রাউন 15

উত্তর:


9

টিডিডি সহ সুডোকু সলভার তৈরি করার রন জেফরিসের প্রচেষ্টাও দেখুন , যা দুর্ভাগ্যক্রমে কার্যকর হয়নি।

অ্যালগরিদমের জন্য অ্যালগরিদম ডিজাইনের নীতিগুলির একটি গুরুত্বপূর্ণ বোঝার প্রয়োজন। এই নীতিগুলি দিয়ে পিটার নরভিগের মতো একটি পরিকল্পনা সহ, ক্রমবর্ধমানভাবে অগ্রসর হওয়া সম্ভব ।

প্রকৃতপক্ষে, অ-তুচ্ছ নকশার প্রচেষ্টা প্রয়োজন অ্যালগরিদমের জন্য, চেষ্টাটি সর্বদা সর্বদা প্রকৃতির ক্ষেত্রে ক্রমবর্ধমান। তবে প্রতিটি "ইনক্রিমেন্ট", যা অ্যালগোরিদম ডিজাইনারের দৃষ্টিতে ক্ষুদ্র, এমন এক ব্যক্তির কাছে কোয়ান্টাম লিপ (আপনার শব্দগুচ্ছ ধার নিতে) দেখে মনে হয়, যার এই বিশেষ অ্যালগরিদমের সাথে বিশেষ দক্ষতা বা জ্ঞান নেই।

এজন্য প্রচুর অ্যালগরিদম প্রোগ্রামিং অনুশীলনের সাথে সিএস তত্ত্বের একটি প্রাথমিক শিক্ষা সমান গুরুত্বপূর্ণ। একটি নির্দিষ্ট "কৌশল" (অ্যালগোরিদমের ক্ষুদ্র বিল্ডিং ব্লক) বিদ্যমান তা জেনে রাখা এই ক্রমবর্ধমান কোয়ান্টামের ঝাঁকুনি তৈরির দিকে দীর্ঘ পথ।


যদিও অ্যালগরিদম এবং টিডিডি-তে বর্ধমান অগ্রগতির মধ্যে কিছু গুরুত্বপূর্ণ পার্থক্য রয়েছে।

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

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

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

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

যদি প্রয়োজনের পরিবর্তন হয় তবে এটি সাধারণত একটি পৃথক অ্যালগরিদম কল করে।

অ্যালগরিদম বিকাশে, পরিবর্তন (কঠোর করা) ব্যর্থ করার জন্য পারফরম্যান্স তুলনা পরীক্ষা (লাল) নিরীহ - এটি আপনাকে আপনার অ্যালগরিদমে সম্ভাব্য পরিবর্তন সম্পর্কে কোনও অন্তর্দৃষ্টি দেয় না যা পারফরম্যান্সের উন্নতি করবে।

সুতরাং, অ্যালগরিদম বিকাশে, যথার্থতা পরীক্ষা এবং পারফরম্যান্স পরীক্ষা উভয়ই টিডিডি পরীক্ষা নয়। পরিবর্তে, উভয়ই রিগ্রেশন টেস্ট । বিশেষত, নির্ভুলতা রিগ্রেশন পরীক্ষা আপনাকে অ্যালগরিদমে পরিবর্তন করতে বাধা দেয় যা এর যথার্থতা ভঙ্গ করবে; পারফরম্যান্স টেস্ট আপনাকে অ্যালগরিদমে পরিবর্তন করতে বাধা দেয় যা এটি আরও ধীরে চলবে।

"লাল - সবুজ - রিফ্যাক্টর" আনুষ্ঠানিকতা কঠোরভাবে প্রয়োজনীয় নয় বা অ্যালগরিদম বিকাশের চিন্তার প্রক্রিয়াটির জন্য বিশেষভাবে উপকারী তা বাদ দিয়ে আপনি টিডিডিটিকে ব্যক্তিগত কাজের শৈলী হিসাবে অন্তর্ভুক্ত করতে পারেন ।

আমি যুক্তি দেব যে বর্তমান অ্যালগরিদমের ডেটা ফ্লো ডায়াগ্রামে এলোমেলোটি (প্রয়োজনীয় সঠিক নয়) ক্রমান্বনগুলি তৈরি করে বা পূর্বে পরিচিত বাস্তবায়নের মধ্যে মেশানো এবং মিলে যাওয়ার ফলে অ্যালগরিদমের উন্নতি ঘটে।


টিডিডি ব্যবহার করা হয় যখন একাধিক প্রয়োজনীয়তা থাকে যা আপনার পরীক্ষার সেটে ক্রমবর্ধমানভাবে যুক্ত হতে পারে

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

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

টিডিডি কম্পিউটার বিজ্ঞানের বিকল্প নয়। এটি এমন একটি মনস্তাত্ত্বিক ক্র্যাচ যা প্রোগ্রামারদের একসাথে অনেকগুলি প্রয়োজনীয়তা পূরণ করার ধাক্কা কাটিয়ে উঠতে সহায়তা করে।

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


টিডিডিতে "মাইক্রো-প্রয়োজনীয়তা" (বা লুকানো গুণাবলীর) উপরও ফোকাস রয়েছে। উদাহরণস্বরূপ, প্যারামিটারের বৈধতা, দৃser়তা, ব্যতিক্রম নিক্ষেপ এবং পরিচালনা ইত্যাদি execution টিডিডি সাফল্য নির্বাহের সাধারণ কোর্সে প্রায়শই ব্যবহার করা হয় না এমন কার্যকরকরণের পাথের নির্ভুলতা নিশ্চিত করতে সহায়তা করে।

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


আপনার পোস্টে প্রথম দুটি উদ্ধৃত শব্দের অর্থ ("চাচা বব") কী বোঝায়?
রবার্ট হার্ভে

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

ঠিক আছে. তবে আপনি কি আমার বিভ্রান্তি বুঝতে পারছেন? আপনার প্রথম অনুচ্ছেদে কেউ "চাচা বব" শব্দটি উচ্চারণ করছেন বলে মনে হচ্ছে। কে বলছে?
রবার্ট হার্ভে

@ রবার্টহারভে অর্ডার মেনে চলেন।
রওয়ং

2

আপনার সমস্যার জন্য, আপনার দুটি পরীক্ষা হবে:

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

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

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


1

সুতরাং টিডিডির মতো আরও পরীক্ষায় উত্তীর্ণ হওয়ার পরিবর্তে আপনি এটিকে "আরও ভাল আচরণ" করুন make

প্রকার, রকম.

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

অথবা, আপনি sort()দুটি সেটের সাথে তুলনা করতে পারেন এবং নিশ্চিত করতে পারেন যে সেগুলি compare()আপনার টার্গেট জটিলতায় (বা আশেপাশের জায়গাগুলি, যদি আপনি কিছুটা অসঙ্গতি প্রত্যাশা করেন) কল করে in

এবং, যদি আপনি করতে পারেন তাত্ত্বিক প্রমাণ আকারের একটি সেট Nকঠোরভাবে বেশী প্রয়োজন, N*log(N)তুলনা, এটা হতে পারে যুক্তিসঙ্গত আপনার ইতিমধ্যে পরিশ্রমী সীমিত করতে হবে sort()করতে N*log(N)এর আমন্ত্রণ compare()...

যাহোক ...

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

তবে, আপনি যদি কোনও নির্দিষ্ট অ্যালগরিদম ব্যবহার করা হয় তা নিশ্চিত করতে চান তবে আপনাকে আরও ক্লান্তিকর হতে হবে এবং আরও গভীরতা অর্জন করতে হবে। ভালো জিনিস..

  • পর্বত ঠিক কল প্রত্যাশিত সংখ্যা compare()এবং swap()(অথবা যাই হোক না কেন) তৈরি করা হয়
  • সমস্ত বড় ফাংশন / পদ্ধতি মোড়ানো এবং অনুমানযোগ্য ডেটা সেট সহ নিশ্চিত করা, যে কলগুলি প্রত্যাশিত ক্রমে ঘটেছিল
  • প্রত্যাশার ঠিক পরিবর্তন হয়েছে তা নিশ্চিত করতে প্রতিটি এন পদক্ষেপের পরে কার্যকারী অবস্থা পরীক্ষা করা হচ্ছে

তবে আবারও, যদি আপনি ensure অ্যালগরিদমএক্স particular বিশেষত ব্যবহৃত হয় তা নিশ্চিত করার চেষ্টা করছেন তবে সম্ভবত {অ্যালগরিদমএক্স of এর বৈশিষ্ট্যগুলি রয়েছে যা আপনি test অ্যালগরিদমএক্স actually আসলে শেষ পর্যন্ত ব্যবহৃত হয়েছিল কিনা তার চেয়ে পরীক্ষা করা আরও গুরুত্বপূর্ণ care


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


অপারেশন সংখ্যার উপর সীমা নির্ধারণের সম্ভাবনা সম্পর্কে দুর্দান্ত পয়েন্ট। আমি যুক্তি দিয়ে বলব যে এটি (মকস, স্টাবস এবং স্পাইস) শক্তি, এটি টিডিডিতে ব্যবহার করা যেতে পারে যা অন্যান্য ধরণের পরীক্ষায়ও ব্যবহার করা যেতে পারে।
রওয়ং

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

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

@ ওলাভ "লেখার পরীক্ষা কিছু চতুর প্রিন্টআউটগুলির তুলনায় দীর্ঘ সময় নিবে" ... একবার করতে ... আহ .. সম্ভবত , তবে খুব বিতর্কিতও হতে পারে। প্রতিটি বিল্ডে বারবার করতে? ... অবশ্যই না.
এসভিডজেন

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