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