টেস্ট চালিত বিকাশ কি গেম বিকাশে কার্যকর?


23

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

তদুপরি, আমি ভাবছি যে টিডিডি গেম বিকাশের একটি বিকল্প, যদি এটি কার্যকর হয়?

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

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

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

আমি বুঝতে পারি যে গেম ডেভলপমেন্টের জন্য দায়ী সমস্ত বিভাগ যদি স্ক্রাম ব্যবহার না করে তবে স্ক্রাম অকেজো হয়ে যায়। তবে আসুন আমরা এক মুহুর্তের জন্য বিবেচনা করি যে সমস্ত বিভাগগুলি স্ক্রাম ব্যবহার করে ... আমি মনে করি যে আপনি "নিখুঁত" সিস্টেম / গেমটি লিখতে চান না, তবে বাগ-ফ্রি কোড লিখতে টিডিডি ভাল হবে।

সুতরাং আমার প্রশ্নটি নিম্নলিখিত:

টিডিডি কি কোনওভাবে গেম ডেভলপমেন্টে টেকসই?


আপনি যে প্রশ্নটি যুক্ত করেছেন তার বাইরে এই প্রশ্নটি থেকে কি আলোচনা যুক্ত হবে?

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

@ উইল টিডিডি == টপ ডাউন ডিজাইন বা টেস্ট চালিত ডিজাইন? আমি টপ ডাউন চিন্তা করছিলাম এবং দীর্ঘমেয়াদে পরিচালনার একটা উত্তর দিতে যাচ্ছিলাম কিন্তু তখন অন্য উত্তরটি টিডিডিকে এমনভাবে ব্যাখ্যা করছে যে আমি ছিলাম না ...
জেমস

@ জেমস: টেস্ট চালিত বিকাশ।
বিশৃঙ্খলা

@ জেমস: বিভ্রান্তির জন্য দুঃখিত! আমি সংক্ষিপ্ত রূপটির অন্য অর্থ সম্পর্কে জানতাম না, যেহেতু আমার মনে যা ছিল তা ছিল স্ক্রমের সাথে Agile সফটওয়্যার ডেভলপমেন্ট।
উইল মারকুইলার

উত্তর:


11

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

প্রচুর পরিশ্রমী বস্তু ব্যবহারের প্রত্যাশা। যেহেতু প্রচুর সিস্টেমগুলি একত্রে বাঁধা আছে, এর পৃথক উপাদানগুলি পরীক্ষা করা শক্ত।

এছাড়াও অনেক কিছু ভালভাবে পরীক্ষা করা যায় না। আপনি কীভাবে পরীক্ষা-চালনা করবেন, বলুন, একটি কণা সিস্টেম? আপনার অ্যানিমেশন সিস্টেমটি সঠিকভাবে কাজ করছে তা আপনি কীভাবে পরীক্ষা করবেন? কীভাবে সঠিক পরীক্ষা করা যায় সে সম্পর্কে অনেক কিছুই দৃশ্যমান প্রকৃতির এবং স্পষ্ট নয় (কমপক্ষে আমার কাছে)।

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

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


9
এগুলি স্বয়ংক্রিয় পরীক্ষার উপস্থিতির জন্য দুর্দান্ত প্রস্তাব, তবে পরীক্ষা-চালিত বিকাশের জন্য মোটেই নয়।

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

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

এটি কেবল পরীক্ষামূলকই নয়, এটি এখন টিডির পক্ষেও ভাল প্রার্থী। আসুন বলুন যে এই 2 ডি গেমটিতে সাপটি এক্স এবং ওয়াই অক্ষ উভয়েরই Vector2.Zeroগতিতে অবস্থানে শুরু করা হয়েছে 10.0f। প্রথম প্রশ্নটি: এটি কি অনুমিত প্রাথমিক অবস্থানে অবস্থিত এবং এটি কীভাবে পরীক্ষা করবেন? তারপরে, আপনি ভাবেন যে Positionসম্পত্তিটি প্রকাশ্যে প্রকাশিত হবে। দ্বিতীয়: এটি কীভাবে সরানো যায়? আন্দোলন পদ্ধতি ভাল হওয়া উচিত, তাই আপনি প্রতিটি দিক পদ্ধতির জন্য একটি পরীক্ষা লিখতে MoveDown, MoveLeftইত্যাদি। এখন, আপনার পদ্ধতির ঘোষণা লিখুন এবং পরীক্ষাটি অভিযোগ করে কিনা তা দেখুন। তারপরে, সাপের অবস্থানটি পুনরায় যাচাই করুন
উইল মারকুইলারের

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

11

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


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

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

2
@ উইল মারকুইলার, আমি অত্যন্ত, অত্যন্ত, একমত নই যে গেমটির মজাটি গল্পে নেমে আসে। গেমের সমস্ত মজা গেমপ্লেতে নেমে আসে, গল্পটি কেবল একটি বোনাস।
অ্যাটাকিংহোব

1
@ উইল: না, তিনি বলছেন যে কোনও ব্যবহারকারী কোনও গেম থেকে প্রাপ্ত উপভোগ স্বয়ংক্রিয় পরীক্ষার মাধ্যমে নির্ধারণ করা যায় না, এবং গেমগুলিতে প্রচুর পরিমাণে এমন জিনিস রয়েছে যা কেবলমাত্র গ্রাহকের হাতে গেমটি পাঠিয়ে পরীক্ষা করা যায় can
ডেড এমজি

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

6

শিরোনামটি নিখুঁতভাবে টিডিডি সম্পর্কে আপনি যা জিজ্ঞাসা করছেন তা ঠিকভাবে কাজ করা কিছুটা কঠিন তবে আপনি মনে করছেন স্ক্রামটিও প্রশ্নের একটি অবিচ্ছেদ্য অঙ্গ হয়ে গেছে - এবং আমি এটি বুঝতে পেরেছি, একজনের অপরটির প্রয়োজন হয় না।

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

ঐটা ঠিক. আমি মনে করি না যে আমি এর আগে কখনও গেমস ইন্ডাস্ট্রিতে অনুশীলনে ব্যবহারের কথা শুনেছি। (তবে তখন আমি গেমস ইন্ডাস্ট্রির বাইরে এটি কখনও শুনিনি - কেবল ব্যক্তি দ্বারা by)

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

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

এছাড়াও, স্ক্রমের বিধিগুলি নিম্নলিখিত আপনার কাজের সময়সীমার সাথে মিলিত হওয়ার জন্য উত্সাহিত করে যখন স্ক্রমে প্রতিটি ক্রিয়াকলাপ সময় বাক্সযুক্ত!

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

আমি মনে করি যে আপনি "নিখুঁত" সিস্টেম / গেমটি লিখতে চান না, তবুও বাগ-মুক্ত কোড লিখতে টিডিডি ভাল হবে।

যদি টিডিডি অন্যান্য পদ্ধতির চেয়ে ভাল কোড লিখতে প্রমাণিত হয় তবে হ্যাঁ।

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

টিডিডি কি কোনওভাবে গেম ডেভলপমেন্টে টেকসই?

টেকসই? অবশ্যই. উপকারী? এটি এখনও প্রমাণিত হয়নি।


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

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

1
এফওয়াইআই, নোয়েল লোলোপিস তার ইনডি গেমসের জন্য টিডিডি ব্যবহার করে এবং তার পুরানো সংস্থা হাই মুন স্টুডিওগুলি এটি ব্যাপকভাবে ব্যবহার করে। দুঃখিত, একটি উদ্ধৃতি পেলেন না।
tenpn

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

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

4

আমার দুর্বল ইংরেজির জন্য দুঃখিত এবং আমার পক্ষপাতদুষ্ট দৃষ্টিভঙ্গির জন্য দুঃখিত: আমি গেম ডিজাইনার নই তবে কোডার।

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

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

সর্বশেষ ধারণাটি হ'ল, ইমো, এটি হ'ল কেবল গেম ডিজাইনই নয় পুরো লিখিত কোডটি একটি শিল্প।


4

যে কেউ টিডিডি এবং গেমদেবকে খুব ভালভাবে মিশ্রিত করে বলে মনে করে তার একটি কেস স্টাডি এখানে দেওয়া হয়েছে:

http://powertwenty.com/kpd/downloads/TestDrivenDevelopmentInPython.pdf

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


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

3

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

গেমস শুরু হওয়ার সাথে সাথে খুব কমই সঠিক স্পেসিফিকেশন থাকে। এবং যদি তারা তা করে থাকে তবে তারা বিকাশ প্রক্রিয়া চলাকালীন সর্বদা পরিবর্তন ও বিকশিত হয়।

গেম ডিজাইন একটি শিল্প, আর্ট কখন ভাল বা সম্পূর্ণ হয় তা জানতে আপনার নির্দিষ্ট পরীক্ষা থাকতে পারে না।


আপনি কি মনে করেন না যে গেমটি নিজেই বিশ্লেষণ করার সময় মজাদার ফ্যাক্টরটিকে বিবেচনা করা উচিত, কার্যকরী বিশ্লেষণ বা এর মতো? আপনি এমন বৈশিষ্ট্যগুলির একটি সেট সেট আপ করতে পারেন যা একসাথে গেমটি খেলতে মজাদার করে তুলবে এবং এই বৈশিষ্ট্যগুলি তখন টেস্টেবল! আমি কেবল বিষয় এবং আপনি যে আর্গুমেন্ট নিয়ে এসেছেন সে সম্পর্কে গভীরতার জন্য বিভিন্ন মতামতকে এগিয়ে দেওয়ার চেষ্টা করছি। আপনার অবদানের জন্য ধন্যবাদ! =)
মারকুইলার 26'11

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

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