डब्ल्यूडब्ल्यूडीसी सत्र के परिचय में, केवल पढ़ने के लिए संपत्ति descriptionका प्रदर्शन किया गया है:
class Vehicle {
var numberOfWheels = 0
var description: String {
return "\(numberOfWheels) wheels"
}
}
let vehicle = Vehicle()
println(vehicle.description)
क्या इसके बजाय किसी विधि का उपयोग करने के लिए उपरोक्त दृष्टिकोण को चुनने के कोई निहितार्थ हैं:
class Vehicle {
var numberOfWheels = 0
func description() -> String {
return "\(numberOfWheels) wheels"
}
}
let vehicle = Vehicle()
println(vehicle.description())
यह मुझे लगता है कि सबसे स्पष्ट कारण आप केवल एक पढ़ने योग्य संपत्ति का चयन करेंगे:
- शब्दार्थ - इस उदाहरण में यह
descriptionवर्ग की संपत्ति होने के लिए समझ में आता है , बजाय इसके कि यह क्रिया करता है। - ब्रेविटी / स्पष्टता - मूल्य मिलने पर खाली कोष्ठक का उपयोग करने की आवश्यकता को रोकता है।
स्पष्ट रूप से उपरोक्त उदाहरण अत्यधिक सरल है, लेकिन क्या दूसरे को चुनने के लिए अन्य अच्छे कारण हैं? उदाहरण के लिए, क्या फ़ंक्शंस या गुणों की कुछ विशेषताएं हैं जो आपके निर्णय का मार्गदर्शन करेंगी कि किसका उपयोग करना है?
NB पहली नज़र में यह काफी सामान्य OOP प्रश्न लगता है, लेकिन मैं किसी भी स्विफ्ट-विशिष्ट विशेषताओं के बारे में जानने के लिए उत्सुक हूं जो इस भाषा का उपयोग करते समय सर्वोत्तम अभ्यास का मार्गदर्शन करेंगे।
