क्या कोई ऐसी भाषा है जिसमें कोड टेम्पलेटिंग का एक रूप है? मुझे समझाने दो कि मेरा क्या मतलब है ... मैं आज सी # प्रोजेक्ट पर काम कर रहा था जिसमें मेरी कक्षाओं में से एक बहुत बार दोहराया गया था, संपत्ति गेटर्स और सेटर्स की एक श्रृंखला थी।क्या वहां कोई भाषा है जो कोड टेम्पलेटिंग का उपयोग करती है?
public static int CustomerID
{
get
{
return SessionHelper.Get<int>("CustomerID", 0); // 0 is the default value
}
set
{
SessionHelper.Set("CustomerID", value);
}
}
public static int BasketID
{
get
{
return SessionHelper.Get<int>("BasketID", 0); // 0 is the default value
}
set
{
SessionHelper.Set("BasketID", value);
}
}
... and so forth ...
मुझे एहसास है कि यह मूल रूप से एक प्रकार, एक नाम और एक डिफ़ॉल्ट मान में टूट सकता है।
मैंने यह आलेख देखा, जो कि मैंने कल्पना की है, लेकिन पैरामीटर (डिफ़ॉल्ट) के लिए कोई जगह नहीं है।
लेकिन मैं सोच रहा था, वहाँ कई बार जहां कोड टेम्पलेट्स में टूट जाती है कर रहे हैं।
उदाहरण के लिए, वाक्य रचना के रूप में इस तरह के लिए जा सकते हैं:
public template SessionAccessor(obj defaultValue) : static this.type this.name
{
get
{
return SessionHelper.Get<this.type>(this.name.ToString(), defaultValue);
}
set
{
SessionHelper.Set(this.name.ToString(), value);
}
}
public int CustomerID(0), BasketID(0) with template SessionAccessor;
public ShoppingCart Cart(new ShoppingCart()) with template SessionAccessor; // Class example
मैं इस तरह लग रहा है संक्षिप्त, सूखी कोड लिखने में संभावनाओं का एक बहुत होगा। इस प्रकार की चीज प्रतिबिंब के साथ सी # में कुछ हद तक प्राप्त करने योग्य होगी, हालांकि यह धीमी है और यह संकलन के दौरान किया जाना चाहिए।
तो, प्रश्न: क्या इस प्रकार की कार्यक्षमता किसी भी मौजूदा प्रोग्रामिंग भाषा में संभव है?
टी 4 के लिए नौकरी की तरह ध्वनि ... –
सी ++ में टेम्पलेट्स हैं जो आप चाहते हैं कि करीब आते हैं: http://www.cplusplus.com/doc/tutorial/templates/ –
यदि आपकी प्राथमिक चिंता है बॉयलरप्लेट में प्रवेश करने की कठोरता (और आपके बॉयलरप्लेट में बदलाव की संभावना नहीं), रिशेर्पर की एक अच्छी लाइव टेम्पलेट सुविधा है जो वास्तव में इसके साथ मदद करती है। टी 4 अधिक शक्तिशाली है (आप टेम्पलेट परिभाषा को अद्यतन कर सकते हैं और अद्यतन टेम्पलेट के साथ फ़ाइल को पुन: उत्पन्न कर सकते हैं), लेकिन यह कुछ अतिरिक्त जटिलता भी जोड़ता है। वेनिला वीएस में कोड स्निपेट हैं, जो भी मदद कर सकते हैं। –