से सी # / नेट लिटिल आश्चर्य:। अभिव्यक्ति शरीर सी # 6 में सदस्य :
तो, क्या आपको इसका उपयोग करना चाहिए? यह सब शैली के लिए नीचे आता है। मेरी हिम्मत इसे सरल अभिव्यक्तियों और बयानों तक सीमित करना होगी जो पहली नज़र में स्पष्ट रूप से समझा जा सकता है।
(जोर, मेरा; अद्यतन 1 देखें नीचे)
उपरोक्त लेख के सारांश से अधिक:
इसलिए C # 6 अब हमें केवल संपत्ति और अभिव्यक्ति के साथ विधि निकायों को निर्दिष्ट करने की क्षमता देता है। यह आपके कोड को अधिक संक्षिप्त बनाने के लिए बहुत सरल तरीकों के वाक्यविन्यास बोझ को कम करने में मदद कर सकता है।
हालांकि, सभी चीजों के साथ, अपने निर्णय का उपयोग करें कि क्या यह किसी भी स्थिति के लिए फिट बैठता है। जब एक अभिव्यक्ति बहुत लंबी या जटिल होती है, तो पूरे शरीर के सिंटैक्स का उपयोग करना अभी भी अधिक पठनीय हो सकता है।
और प्रदर्शन के बारे में एक और उद्धरण, क्योंकि प्रदर्शन समस्याएं भी तब खेल सकती हैं जब एक निश्चित भाषा सुविधा का उपयोग करना उचित हो:
अब, आप पूछ सकते हैं कि क्या रनटाइम के दौरान इसका कोई प्रदर्शन निहितार्थ है? दरअसल, इसका जवाब नहीं है । यह सिंटैक्टिकल चीनी है जो पूरे शरीर को लिखने के रूप में एक ही आईएल में फैलता है। यह एक प्रतिनिधि नहीं बनाता है, यह केवल एक अभिव्यक्ति में परिणाम देने वाले सरल निकायों को सरल बनाने के लिए लैम्ब्डा अभिव्यक्ति सिंटैक्स उधार ले रहा है।
(जोर, लेखक)
अद्यतन 1: @ JörgWMittag ने कहा
इसका कोई अर्थ नहीं निकलता। "इसे सरल भाव और कथन तक सीमित करें"? है ना? यह 'बयानों के साथ भी काम करता है, केवल भावों के साथ!
ऐसा लगता है कि मूल लेखक को गलत वर्तनी हो सकती है। नई और बेहतर C # 6.0 से स्पष्ट करने के लिए :
एक्सप्रेशन बॉडीड फ़ंक्शंस C # 6.0 में एक और सिंटैक्स सरलीकरण है। ये बिना किसी विवरण निकाय के कार्य हैं। इसके बजाय, आप उन्हें फ़ंक्शन घोषणा के बाद एक अभिव्यक्ति के साथ लागू करते हैं।
स्पष्ट होने के लिए, यह एक विधि या संपत्ति को एक अभिव्यक्ति नहीं बनाता है । यह कोड की लाइनों (और घुंघराले ब्रेसिज़ की संख्या) को कम करने के लिए अभिव्यक्ति सिंटैक्स का उपयोग करता है ।
मेरी मूल सिफारिश अभी भी खड़ी है: इसका उपयोग तब करें जब यह आपके कोड को स्पष्ट और समझने में आसान बनाता है, केवल इसलिए नहीं कि आप इसका उपयोग कर सकते हैं।