هل يجب أن أستخدم قائمة ArrayList أو ilist
سؤال
أنا أستخدم .NET Framework 1.1 وأتمنى أن يساعدني شخص ما في تنفيذ مجموعة ديناميكية من الكائنات؟
مثال على الكائن الذي أتمنى استخدامه أدناه.
Class CarObj
{
public string CarName;
public string CarYear;
}
هل يجب أن أستخدم قائمة ArrayList أم تعتقد أنه سيكون من الأفضل تكوين فئة Carlist لتنفيذ واجهة Ilist؟ هل هناك فائدة أداء لبعضها البعض؟
المحلول
يرث CollectionBase
في حين أن؛ هذا اللف IList
ويسمح لك بتوفير تنفيذ الأساليب المكتوبة التي تحتاجها. هذا ما صممه :)
نصائح أخرى
إذا كنت تستخدم 1.1 وتحتاج إلى مجموعة نمط صفيف ديناميكية ثم ArrayList
هو الخيار الأفضل لجعلك تتحرك.
أنا أكره كل ما يأتي مع استخدام ArrayList
على الرغم من أنني بالتأكيد لا أخطئ في كتابة مجموعات مخصصة نفذت بشدة الأعضاء في 1.1. ومع ذلك ، إذا ذهبت إلى هذا المسار ، أود أن أقترح استخدام مولد مخصص مقابل ترميز اليد الشاقة. هناك العديد من المتاحة التي يمكن العثور عليها بسرعة عبر Google
سيؤدي هذا الرابط على سبيل المثال إلى إنشاء الرمز لك على موقع الويب ويمكن ببساطة نسخه ولصقه في مشروعك.
الفائدة الرئيسية لتنفيذ فئة التجميع الخاصة بك (بما أنك عالق في 1.1) هو السلامة من النوع ؛ عندما تعرف بالتأكيد أن مجموعتك يمكن أن تحتوي فقط CarObj
الحالات ، ليست هناك حاجة إلى نوع صب أو القلق بشأن أخطاء التحويل. داخليا يمكن أن تستخدم فئة المجموعة هذه ArrayList
لتخزين الكائنات.