विशेषता और संपत्ति के बीच अंतर क्या है? [बन्द है]


162

इनका वही मतलब लगता है। लेकिन किस संदर्भ में यह शब्द अधिक उपयुक्त है?


4
क्या आप संदर्भ के बारे में अधिक विशिष्ट हो सकते हैं? उदाहरण के लिए, C # संदर्भ के भीतर शब्द पूरी तरह से अलग चीजों का मतलब है।
डेविड अरनो

1
@ डेविड अरनो - अलग-अलग भाषा के सिंटैक्स ने एक या दोनों शब्दों को जोड़ दिया है लेकिन किसी विशेष भाषा के सिंटैक्स से स्वतंत्र, क्या अर्थ में अंतर है? यह कोई बुरा सवाल नहीं है।
कोरी ट्रेगर

4
मुझे लगता है कि यह एक बुरा सवाल है। एक थिसॉरस का एक चेक दिखाएगा कि वे वास्तविक भाषा के शब्दों के पर्याय हैं, लेकिन अलग-अलग कंप्यूटर और मेटा भाषाएँ उन्हें काफी भिन्न भूमिकाएँ प्रदान कर सकती हैं और इस तरह वे किसी विशेष कंप्यूटर भाषा का पर्याय नहीं हो सकते हैं। इसलिए संदर्भ ही सब कुछ है।
डेविड अरनो

9
मैं और अधिक .... सहानुभूतिपूर्ण। मुझे याद है पहली बार मैंने "विधि" शब्द सुना था। क्या बिल्ली एक "विधि" है? ओह, यह वह है जिसे आप एक फ़ंक्शन कहते हैं जब यह एक वर्ग का होता है। कुछ पुरानी के लिए नई शब्दावली क्यों? थोरो ने कहा, "सभी उद्यमों से सावधान रहें जिन्हें नए कपड़े की आवश्यकता है"। (या शब्द ...)
कोरी ट्रैगर

1
कुछ संदर्भ प्रदान किए बिना यह प्रश्न बहुत व्यापक है (जैसा कि लिखा गया है कि यह वास्तव में सभी संभावित संदर्भों की सूची के साथ उत्तर दिया जा सकता है)।
क्वेंटिन

जवाबों:


199

सामान्य शब्दों में (और सामान्य अंग्रेजी उपयोग में) शब्दों का अर्थ समान होता है।

HTML / Javascript के विशिष्ट संदर्भ में शब्द भ्रमित हो जाते हैं क्योंकि DOM तत्व के HTML प्रतिनिधित्व में विशेषताएँ होती हैं (जो कि एक शब्द के भीतर निहित कुंजी / मान युग्म के लिए XML में उपयोग किया जा रहा है), लेकिन जब जावास्क्रिप्ट के रूप में प्रतिनिधित्व किया जाता है, तो वे विशेषताएँ ऑब्जेक्ट गुण के रूप में दिखाई देते हैं

चीजों को और अधिक भ्रमित करने के लिए, गुणों में परिवर्तन आमतौर पर विशेषताओं को अपडेट करेगा।

उदाहरण के लिए, element.href संपत्ति को बदलने से तत्व पर href विशेषता अपडेट हो जाएगी , और यह कॉल में परिलक्षित होगा element.getAttribute('href')

हालाँकि यदि आप बाद में उस संपत्ति को पढ़ते हैं, तो यह एक निरपेक्ष URL के लिए सामान्यीकृत हो जाएगा , भले ही यह विशेषता एक सापेक्ष URL हो!


14
यह स्वीकृत उत्तर होना चाहिए!
मरिंजो

3
@RubensMariuzzo, हालांकि यह सही हो सकता है, यहां कोई जवाब नहीं है .. यह सिर्फ लोगों के लिए भ्रम के संभावित बिंदु पर विस्तृत है, एक संदर्भ दिया गया है।
ब्रेट कैसवेल

@BrettCaswell, मुझे लगता है कि एक DOM संदर्भ (HTML / JS) में यह उत्तर स्पष्ट रूप से और बस मेरे लिए अंतर बताता है।
मरिज़ो

1
@Alnitak क्लियर कट आंसर। मैंने आपके लिए एक सदी बनाई।
mkHun

मैं आता हूं python। क्या मैं टर्म class attributeऔर का उपयोग कर सकता हूं instance property?
सरित

71

कंप्यूटर विज्ञान के आसपास आने से पहले ये शब्द मौजूद थे।

  1. गुण एक गुण या वस्तु है जो हम किसी या किसी चीज़ के लिए विशेषता रखते हैं। उदाहरण के लिए, राजदंड सत्ता और राज्य का एक गुण है।

  2. संपत्ति एक गुण है जो बिना किसी विशेषता के मौजूद है । उदाहरण के लिए, मिट्टी में चिपकने वाले गुण हैं; या, धातुओं में से एक गुण विद्युत चालकता है। गुण स्वयं को प्रदर्शित करते हैं हालांकि आवश्यकता के बिना भौतिक घटनाएं उन्हें किसी या कुछ के लिए विशेषता देती हैं। उसी टोकन से, यह कहना कि किसी के पास मर्दाना गुण है, स्वयं स्पष्ट है। वास्तव में, आप कह सकते हैं कि किसी संपत्ति का स्वामित्व किसी न किसी के पास है।

हालांकि निष्पक्ष होना, कंप्यूटर साइंस में इन दो शब्दों का, कम से कम अधिकांश भाग के लिए, परस्पर उपयोग किया जा सकता है - लेकिन फिर प्रोग्रामर आमतौर पर अंग्रेजी साहित्य में डिग्री नहीं रखते हैं और व्याकरण की पुस्तकों के बारे में ज्यादा नहीं लिखते या परवाह नहीं करते हैं :)।


1
आप अर्थ के करीब हैं क्योंकि मैं इसे समझता हूं। एक विशेषता एक प्रकार Describer, एक संदर्भ है है यह बाहर के संदर्भ (एक interpeter) की तरह कुछ करने के लिए वस्तु का वर्णन करता है .. यह है कि, है, लेकिन इस संदर्भ बहुत अच्छी तरह से विनिमेय हो सकता है। उदाहरण के लिए HTML का उपयोग करने के लिए, चौड़ाई का पूरा उद्देश्य कोई फ़ंक्शन नहीं रखता है यदि आपका दस्तावेज़ बिना किसी पृष्ठ को प्रदर्शित / प्रस्तुत करने के इरादे से है।
ब्रेट कैसवेल

धन्यवाद! नामकरण के समय किस शब्द का उपयोग करना है, इसका मार्गदर्शन करने के लिए मैं यहां आया था। मुझे परवाह नहीं है (बहुत) अगर यह तकनीकी रूप से सही है या नहीं, तो यह वास्तव में उपयोगी अंतर है।
user1433150

1
इस प्रकार का उत्तर मुझे भी मिल रहा था। संदर्भ या कोई विशेष भाषा कार्यान्वयनकर्ता ने क्या निर्णय लिया उन्होंने मनमाना या अशिक्षित निर्णय लिया हो सकता है। मैं एक शिक्षित बनाना चाहता हूं और इससे मुझे एक दूसरे को चुनने के ठोस कारण मिलते हैं। यह भी स्पष्ट कर सकता है कि किसी विशेष कार्यान्वयनकर्ता ने अपनी पसंद क्यों बनाई।
bielawski

2
मेरे लिए जो काम करता है वह गुणों को उद्देश्य के रूप में मानता है और विशेषताओं को सापेक्ष / व्यक्तिपरक के रूप में। रंग, आकार, स्कोर, हवा की गति, तापमान (98'F) और अन्य उद्देश्य या औसत दर्जे का तथ्यों जैसी सुविधाओं अच्छा गुण हैं। बनावट ("नरम"), स्थितियां ("हवा"), तापमान ("गर्म") और अन्य कथन जैसी विशेषताएं जो बेहतर विशेषताओं के लिए निर्विवाद रूप से सही नहीं हैं।
इवान

20

अक्सर एक विशेषता का उपयोग तंत्र या वास्तविक दुनिया की चीज़ का वर्णन करने के लिए किया जाता है।

मॉडल का वर्णन करने के लिए एक संपत्ति का उपयोग किया जाता है।

उदाहरण के लिए, एक दस्तावेज़ (आपके डेस्क पर बैठे) में यह विशेषता हो सकती है कि यह एक मसौदा है।

दस्तावेज़ों को प्रदर्शित करने वाली श्रेणी में यह इंगित करने के लिए एक संपत्ति है कि क्या यह एक मसौदा है या नहीं। इस मामले में संपत्ति राज्य को पकड़ती है।


1
इसका मतलब है, एक उदाहरण की संपत्ति विशेषता है?
अब्दुर्रहीम

गूढ़, लेकिन मैं ऐसा नहीं मानता। दस्तावेज़ को देखते हुए, एक विशेषता का एक उदाहरण कागज का एक टुकड़ा हो सकता है; मॉडल की प्रतिनिधित्व संपत्ति का एक उदाहरण उक्त कागज की सामग्री के लिए काफी बड़ा बफर हो सकता है।
वॉल्ट स्टोनबर्नर

17

एक विशेषता वह वास्तविक चीज़ है जिसका उपयोग आप अपने HTML टैग में करते हैं

<input type="checkbox" checked="checked" />

इस उदाहरण में टाइप और चेक की गई विशेषताएँ हैं। हालांकि संपत्ति इन विशेषताओं का मूल्य है, जो ब्राउज़र DOM तत्व के अंदर बचाता है। अक्सर विशेषताओं और गुणों के मूल्य बराबर होते हैं, यही वह इसे इतना भ्रामक बनाता है।

इस उदाहरण में DOM तत्व की वैल्यू के साथ inputप्रॉपर्टी typeहै और वैल्यू के साथ "checkbox"प्रॉपर्टी है (ध्यान दें कि यह वैल्यू HTML वर्जन के अंदर वैल्यू से कैसे अलग है)।checkedtrue

फायरबग का उपयोग करके आप किसी तत्व पर क्लिक करने और "DOM दृश्य" का चयन करते समय गुणों के व्यवहार का निरीक्षण कर सकते हैं।


यह स्वीकृत उत्तर हो सकता है। यह सिद्धांत में स्पष्ट और संदर्भ में उपयोगी दोनों है।
Jaune

15

इन शब्दों का सटीक अर्थ इस बात पर निर्भर करता है कि आप किस भाषा / प्रणाली / ब्रह्मांड के बारे में बात कर रहे हैं।

एचटीएमएल / एक्सएमएल में, एक विशेषता एक टैग के बराबर चिह्न और एक मूल्य का हिस्सा है, और संपत्ति का मतलब कुछ भी नहीं है, उदाहरण के लिए।

इसलिए हमें इस बारे में अधिक जानकारी चाहिए कि आप किस डोमेन पर चर्चा कर रहे हैं।


7
यह सही नहीं है। देखिए अलनीतक का जवाब।
kba

6

अजगर में ...

class X( object ):
    def __init__( self ):
        self.attribute
    def getAttr( self ):
        return self.attribute
    def setAttr( self, value ):
        self.attribute= value
    property_name= property( getAttr, setAttr )

एक संपत्ति एक भी गुण की तरह नाम है कि सेटर, गेटर (और Deleter) कार्यों का एक संग्रह लपेटता है।

एक विशेषता आमतौर पर किसी अन्य वस्तु के भीतर एक ही वस्तु होती है।

हालांकि, यह कहते हुए कि पायथन आपको ऐसे तरीके देता है __getattr__जिससे आप "विशेषता" की परिभाषा को बढ़ा सकते हैं।

निचला रेखा - वे लगभग पर्यायवाची हैं। अजगर कि वे किस तरह से लागू किया कर रहे हैं में एक तकनीकी अंतर रखता है।


2

जावा (या अन्य भाषाओं) में, संपत्ति / गुण का उपयोग करना उपयोग पर निर्भर करता है:

  • जब मूल्य बहुत बार नहीं बदलता है (आमतौर पर स्टार्टअप या पर्यावरण चर के लिए इस्तेमाल किया जाता है)

  • विशेषताएँ एक तत्व (वस्तु) का एक मूल्य (ऑब्जेक्ट चाइल्ड) है जो बहुत बार / हर समय बदल सकता है और लगातार या नहीं हो सकता है


2

HTML में ऐसा लगता है कि विशेषताएँ DOM ट्री के लिए विशिष्ट हैं जबकि DOM तत्वों की विशेषताओं का वर्णन करने के लिए गुणों का उपयोग किया जाता है


2

गुण और संपत्ति में क्या अंतर है?
फ़ीचर और समारोह के बीच क्या अंतर है? विशेषता और चरित्र के बीच अंतर क्या है? अधिनियम और व्यवहार में क्या अंतर है?

इसके संदर्भ में सिर्फ एक बदलाव है।

वस्तु, उत्पाद, व्यक्तित्व, व्यक्ति

एक व्यवहार में एक व्यक्ति अधिनियम। एक व्यक्तित्व में किसी दिए गए चरित्र के लक्षण होते हैं। एक उत्पाद में वह विशेषता है जो कार्यशीलता को प्राप्त करती है। एक ऑब्जेक्ट में गुण थे जो इसे गुण देते हैं।


यह वास्तव में एक अच्छा जवाब है।
अनाम

1
<property attribute="attributeValue">proopertyValue</property>

इसे देखने का एक तरीका होगा।

C # में

[Attribute]
public class Entity
{
    private int Property{get; set;};

8
इसे नीचे वोट करने के लिए क्षमा करें, लेकिन एक्सएमएल में आपने जो एक संपत्ति लेबल की है वह
वास्तविक रूप से

@HaraldScheirich एक धीमी गति से उत्तर;) लेकिन तत्व वास्तव में Entity.Property के साथ संबंध स्पष्ट करने के लिए "संपत्ति" कहा जाता है। Xml तत्वों को वास्तव में "तत्व" कहा जाना सामान्य नहीं है
कबूतर

1

डेल्फी ने गुणों का इस्तेमाल किया और उन्होंने .NET में अपना रास्ता खोज लिया (क्योंकि इसमें एक ही वास्तुकार है)।

डेल्फी में वे अक्सर रनटाइम प्रकार की जानकारी के साथ संयोजन में उपयोग किए जाते हैं जैसे कि डिजाइन में संपत्ति को सेट करने के लिए एकीकृत संपत्ति संपादक का उपयोग किया जा सकता है।

गुण हमेशा खेतों से संबंधित नहीं होते हैं। वे ऐसे कार्य हो सकते हैं जिनके संभावित दुष्प्रभाव हो सकते हैं (लेकिन निश्चित रूप से यह बहुत बुरा डिज़ाइन है)।


जरुरी नहीं। एक निरंतर वस्तु पर स्वचालित रूप से गंदी जांच एक ऐसी संपत्ति का उदाहरण होगा जिसके दुष्प्रभाव खराब डिजाइन नहीं होंगे।
Quibblesome
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.