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