जेनेरिक, डेल्फी के लिए एक शक्तिशाली अतिरिक्त, डेल्फी 2009 में एक नई भाषा सुविधा के रूप में पेश किया गया था। जेनेरिक्स या सामान्य प्रकार (के रूप में भी जानते हैं पैरामीट्रिक प्रकार), आपको उन वर्गों को परिभाषित करने की अनुमति देता है जो विशेष रूप से कुछ डेटा सदस्यों के प्रकार को परिभाषित नहीं करते हैं।
एक उदाहरण के रूप में, डेल्फी 2009 से, किसी भी प्रकार के ऑब्जेक्ट की सूची रखने के लिए टोबिजेलिस्ट प्रकार का उपयोग करने के बजाय, जेनेरिक्स। कलेक्शन यूनिट एक अधिक दृढ़ता से टाइप किए गए TOBjectList को परिभाषित करता है।
जेनरिक को कभी-कभी जेनेरिक पैरामीटर कहा जाता है, एक ऐसा नाम जो उन्हें कुछ बेहतर पेश करने की अनुमति देता है। फ़ंक्शन पैरामीटर (तर्क) के विपरीत, जिसका मूल्य है, एक जेनेरिक पैरामीटर एक प्रकार है। और यह एक वर्ग, एक इंटरफ़ेस, एक रिकॉर्ड, या, कम बार, एक विधि को मानकीकृत करता है... एक बोनस, अनाम दिनचर्या और नियमित संदर्भ के रूप में
डेल्फी tList, tStringList, tObjectlist या tCollection का उपयोग विशेष कंटेनरों के निर्माण के लिए किया जा सकता है, लेकिन टाइपकास्टिंग की आवश्यकता होती है। जेनरिक के साथ, कास्टिंग को टाला जाता है और कंपाइलर टाइप त्रुटियों को जल्द ही दूर कर सकता है।
एक बार जब आपने जेनेरिक प्रकार के मापदंडों (जेनेरिक) का उपयोग करके एक वर्ग लिखा है, तो आप किसी भी प्रकार और के साथ उस वर्ग का उपयोग कर सकते हैं जब आप उस वर्ग के किसी भी उपयोग के साथ उपयोग करने के लिए चुनते हैं तो आपके द्वारा बनाए गए सामान्य प्रकार को बदल देता है कक्षा।
डेल्फी में जेनरिक के जिन उदाहरणों को मैंने देखा है उनमें से अधिकांश में सामान्य प्रकार के वर्ग होते हैं। हालांकि, एक व्यक्तिगत परियोजना पर काम करते समय, मैंने फैसला किया कि मैं एक इंटरफ़ेस चाहता हूं जिसमें एक सामान्य प्रकार है।