"পাস অবধি পরীক্ষার জন্য + লেখার প্রক্রিয়া" পদ্ধতির অবিশ্বাস্যভাবে অ্যান্টি-ইঞ্জিনিয়ারিং দেখাচ্ছে looks
আপনার কাছে রিফ্যাক্টরিং এবং টিডিডি উভয় সম্পর্কে একটি ভুল ধারণা রয়েছে বলে মনে হচ্ছে।
কোড রিফ্যাক্টরিং হ'ল সফ্টওয়্যারটির অযৌক্তিক বৈশিষ্ট্যগুলির কিছু উন্নত করার জন্য কোনও কম্পিউটার প্রোগ্রামের উত্স কোডের বাহ্যিক কার্যক্ষম আচরণটি পরিবর্তন না করেই পরিবর্তন প্রক্রিয়া।
এটি পাস না হওয়া পর্যন্ত আপনি কোডটি রিফ্যাক্টর করতে পারবেন না ।
এবং টিডিডি, বিশেষত ইউনিট টেস্টিং (যা আমি মূল উন্নতি হিসাবে বিবেচনা করি, যেহেতু অন্যান্য পরীক্ষা আমার কাছে প্রশংসনীয় বলে মনে হয়), কোনও উপাদান কাজ না করা পর্যন্ত এটি পুনরায় নকশার বিষয়ে নয়। এটি কোনও উপাদান ডিজাইন করা এবং উপাদানটি নকশা করা না হওয়া অবধি বাস্তবায়নে কাজ করার বিষয়ে।
এছাড়াও এটি সত্যিই উপলব্ধি করতে গুরুত্বপূর্ণ, যে ইউনিট টেস্টিং টেস্টিং সম্পর্কে ইউনিট । সর্বদা স্ক্র্যাচ থেকে প্রচুর জিনিস লেখার প্রবণতার কারণে, এই জাতীয় ইউনিটগুলি পরীক্ষা করা গুরুত্বপূর্ণ is একজন সিভিল ইঞ্জিনিয়ার ইতিমধ্যে তিনি যে ইউনিটগুলি ব্যবহার করেন সেগুলির চশমা জানেন (বিভিন্ন উপকরণ) এবং তাদের কাজ করার আশা করতে পারেন। এটি দুটি জিনিস যা প্রায়শই সফ্টওয়্যার ইঞ্জিনিয়ারদের ক্ষেত্রে প্রযোজ্য না এবং ইউনিটগুলি ব্যবহারের আগে তাদের পরীক্ষা করা খুব প্রকৌশলী। কারণ এর অর্থ পরীক্ষিত, উচ্চ-মানের উপাদানগুলি ব্যবহার করা।
কোনও সিভিল ইঞ্জিনিয়ারের যদি স্টেডিয়ামটি coverেকে রাখার জন্য ছাদ তৈরির জন্য কিছু নতুন ফাইবার টিস্যু ব্যবহার করার ধারণা থাকে তবে আপনি তাকে ইউনিট হিসাবে এটি পরীক্ষা করার অর্থাত্ প্রয়োজনীয় চশমাগুলি (যেমন ওজন, ব্যাপ্তিযোগ্যতা, স্থিতিশীলতা ইত্যাদি) সংজ্ঞায়িত করার প্রত্যাশা করবেন এবং এরপরে এটি পরীক্ষা করে নিন এবং এটি পরিমার্জন না করা অবধি পরিমার্জন করুন।
এজন্য টিডিডি কাজ করে। কারণ আপনি যদি পরীক্ষিত ইউনিটগুলির সফ্টওয়্যার তৈরি করেন তবে আপনি যখন এটি একসাথে প্লাগ করেন এবং আপনার পরীক্ষাগুলিতে ভাল কভারেজ থাকে তা ধরে নিয়ে সমস্যাটি আপনার আঠালো কোডের মধ্যে থাকতে পারে এমনটি আশা করতে না পারলে সম্ভাবনা আরও বেশি কার্যকর হয়।
সম্পাদনা:
রিফ্যাক্টরিং এর অর্থ: কার্যকারিতাতে কোনও পরিবর্তন নেই । রাইটিং ইউনিট পরীক্ষার এক বিন্দুটি নিশ্চিত করা, সেই রিফ্যাক্টরিং কোডটি ভঙ্গ করে না। তাই টিডিডি নিশ্চয়তা দেওয়ার জন্য বোঝায় যে রিফ্যাক্টরিংয়ের কোনও পার্শ্ব প্রতিক্রিয়া নেই।
গ্রানুলারিটি দৃষ্টিভঙ্গির বিষয় নয়, কারণ আমি যেমন বলেছি, ইউনিট পরীক্ষা করে ইউনিট পরীক্ষা করে না সিস্টেমগুলি, যার মাধ্যমে গ্রানুলারিটি হুবহু সংজ্ঞায়িত হয়।
টিডিডি ভাল আর্কিটেকচারকে উত্সাহ দেয়। এটি আপনার সমস্ত ইউনিটগুলির জন্য নির্দিষ্টকরণগুলি সংজ্ঞায়িত এবং প্রয়োগ করতে হবে, আপনাকে প্রয়োগের আগে তাদের ডিজাইন করতে বাধ্য করে, যা আপনি যা ভাবেন বলে মনে হয় তার সম্পূর্ণ বিপরীত। টিডিডি ইউনিট তৈরির নির্দেশ দেয়, যা পৃথকভাবে পরীক্ষা করা যেতে পারে এবং এভাবে সম্পূর্ণভাবে ডিকোপলড হয়।
টিডিডি এর অর্থ এই নয় যে আমি স্প্যাগেটি কোডে একটি সফ্টওয়্যার পরীক্ষা নিক্ষেপ করব এবং পাস্তা পাস না হওয়া পর্যন্ত আলোড়ন দিন।
সিভিল ইঞ্জিনিয়ারিং এর বিপরীতে, সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ে একটি প্রকল্প সাধারণত ক্রমাগতভাবে বিকশিত হয়। সিভিল ইঞ্জিনিয়ারিংয়ে, আপনার A অবস্থানে একটি সেতু নির্মাণ করার প্রয়োজনীয়তা রয়েছে, এটি এক্স টন বহন করতে পারে এবং এটি প্রতি ঘন্টা এন যানবাহনের জন্য যথেষ্ট প্রশস্ত।
সফটওয়্যার ইঞ্জিনিয়ারিংয়ে গ্রাহক মূলত যে কোনও সময়ে সিদ্ধান্ত নিতে পারেন (সম্ভবত সমাপ্তির পরে), তিনি একটি দ্বিগুণ সেতু চান এবং এটি চান যে এটি নিকটতম মোটরওয়ের সাথে সংযুক্ত রয়েছে এবং তিনি এটি একটি উত্তোলন সেতু হতে চান, কারণ তাঁর সংস্থাটি সম্প্রতি নৌযান চালানো জাহাজ ব্যবহার শুরু হয়েছে।
সফ্টওয়্যার ইঞ্জিনিয়ারদের ডিজাইন পরিবর্তন করার দায়িত্ব দেওয়া হয়। কারণ তাদের নকশাগুলি ত্রুটিযুক্ত নয়, তবে এটি হ'ল মোডাস অপারেন্ডি। যদি সফ্টওয়্যারটি ভালভাবে ইঞ্জিনিয়ার করা থাকে তবে সমস্ত নিম্ন স্তরের উপাদানগুলি পুনরায় লিখিত না রেখে এটিকে উচ্চ স্তরে নতুন করে ডিজাইন করা যায়।
টিডিডি হ'ল স্বতন্ত্রভাবে পরীক্ষিত, অত্যন্ত decoupled উপাদানগুলির সাথে সফ্টওয়্যার নির্মাণ সম্পর্কে। কার্যকরভাবে কার্যকর, এটি আপনাকে প্রয়োজনীয়তার পরিবর্তনের প্রতিক্রিয়া জানাতে সহায়তা করবে, বাহিরের চেয়ে দ্রুত এবং নিরাপদ।
টিডিডি উন্নয়ন প্রক্রিয়ায় প্রয়োজনীয়তা যুক্ত করে, তবে এটি মানের আশ্বাসের অন্য কোনও পদ্ধতি নিষিদ্ধ করে না। মঞ্জুর, টিডিডি আনুষ্ঠানিক যাচাইকরণের মতো সুরক্ষা দেয় না, তবে আবার, আনুষ্ঠানিক যাচাইকরণ অত্যন্ত ব্যয়বহুল এবং সিস্টেম স্তরে ব্যবহার করা অসম্ভব। এবং এখনও, আপনি চাইলে, আপনি উভয় একত্রিত করতে পারে।
টিডিডি ইউনিট পরীক্ষা ব্যতীত অন্যান্য পরীক্ষাগুলিও অন্তর্ভুক্ত করে, যা সিস্টেম পর্যায়ে করা হয়। আমি এগুলি ব্যাখ্যা করা সহজ, তবে কার্যকর করা কঠিন এবং পরিমাপ করা কঠিন। এছাড়াও, তারা বেশ প্রশংসনীয়। যদিও আমি তাদের প্রয়োজনীয়তাটি পুরোপুরি দেখতে পাচ্ছি, তবুও আমি তাদের ধারণাগুলি হিসাবে সত্যই মূল্য দেব না।
শেষ পর্যন্ত, কোনও সরঞ্জাম আসলে কোনও সমস্যার সমাধান করে না। সরঞ্জামগুলি কেবল একটি সমস্যার সমাধান সহজ করে তোলে। আপনি জিজ্ঞাসা করতে পারেন: একটি ছিনকি আমাকে কীভাবে দুর্দান্ত স্থাপত্যে সহায়তা করবে? ঠিক আছে যদি আপনি সোজা দেয়ালগুলি করার পরিকল্পনা করেন তবে সোজা ইটগুলি সহায়তা করে। এবং হ্যাঁ, আপনি যদি সেই সরঞ্জামটি কোনও মূর্খকে দেন তবে তিনি সম্ভবত এটি তার পায়ের উপর দিয়ে স্ল্যাম করে ফেলবেন, তবে এটি চিসেলের দোষ নয়, এটি টিডিডির কোনও ত্রুটি নয় যে এটি নবাগতদের মিথ্যা সুরক্ষা দেয়, যারা ভাল পরীক্ষা লিখেন না।
সুতরাং নীচের লাইনে, কেউ বলতে পারেন যে টিডিডি কোনও টিডিডির চেয়ে অনেক বেশি ভাল কাজ করে।