यह ठोस स्थिति पर बहुत कुछ निर्भर करता है। मान लें कि आपके द्वारा जोड़ी गई नई संपत्ति अनिवार्य है, अर्थात इसे हमेशा सेट करना होगा। फिर आपको स्वयं कोड के माध्यम से खोजना होगा और इसे हर जगह अपडेट करना होगा companyObj
, यह सुनिश्चित करने के लिए कि यह ठीक से बनाया गया है (नई संपत्ति सेट करने सहित)। मुझे लगता है कि PHP में कंस्ट्रक्टर हैं, इस स्थिति में आपको केवल एक नया कंस्ट्रक्टर पैरामीटर जोड़ने की आवश्यकता है और कंपाइलर अतिरिक्त त्रुटि के रूप में अतिरिक्त पैरामीटर के बिना प्रत्येक कंस्ट्रक्टर कॉल को स्वचालित रूप से चिह्नित करेगा। यह यह भी सुनिश्चित करेगा कि टीम के साथी नई संपत्ति के बारे में जानें जैसे ही वे उपयोग करते हैं companyObj
।
यदि नई संपत्ति वैकल्पिक है, हालांकि, चीजें कम स्पष्ट हैं। आपके पास इसके लिए उपयुक्त डिफ़ॉल्ट मान हो सकता है या नहीं भी हो सकता है। बाद के मामले में, मैं अभी भी आपको सुझाव दूंगा कि जब भी उपयुक्त हो नई संपत्ति सेट करने के लिए सभी उदाहरण कृतियों को अपडेट करें। यह सुनिश्चित करना है कि कोड को हर समय एक सुसंगत स्थिति में रखा जाए ।
अपने साथियों के लिए बदलाव का संचार करना यहाँ एक और दूर की बात है। फुर्तीली टीमें आमने-सामने संचार को प्राथमिकता देती हैं , और, IMHO एक अच्छे कारण के लिए। दस्तावेजों पर भरोसा करना एक टीम के चारों ओर जानकारी फैलाने का बहुत धीमा और अप्रभावी साधन है । एक विकी कुछ हद तक बेहतर है, लेकिन फिर भी, हर एक वर्ग विशेषता का दस्तावेजीकरण IMHO ओवरकिल है। यह केवल टीम पर एक बड़ा बोझ बनने जा रहा है, और जल्दी से अविश्वसनीय और बेकार बनने के लिए बाध्य है, क्योंकि हम इंसान हैं इसलिए हम कभी-कभी अपडेट को भूल जाते हैं, इसके अलावा मैं शर्त लगाता हूं कि टीम के कई सदस्य नियमित रूप से नहीं जा रहे हैं। नवीनतम कोड परिवर्तनों से अवगत कराने के लिए दस्तावेज़ीकरण (जो भी रूप में हो) की जाँच करें।
उत्तरार्द्ध भी उदाहरण के लिए Javadoc या Doxygen के माध्यम से स्वचालित रूप से उत्पन्न दस्तावेज़ के लिए सही है। यद्यपि उन्हें हर समय अद्यतित प्रलेखन को बनाए रखने के लिए एक स्वचालित बिल्ड में कॉन्फ़िगर किया जा सकता है, मैंने कभी भी एक विकास दल को सदस्यों के साथ नहीं देखा है जो नियमित रूप से दस्तावेज़ के माध्यम से ब्राउज़ करते हुए नवीनतम कोड परिवर्तनों के बारे में सूचित करते हैं। और यदि आप किसी भी स्रोत नियंत्रण प्रणाली का उपयोग कर रहे हैं, तो परिवर्तनों को नोटिस करने का पहला स्थान तब है जब आप कोड की अपनी स्थानीय कॉपी को किसी भी तरह से अपडेट करते हैं - फिर आप परिचित कक्षाओं में परिवर्तनों की जांच कर सकते हैं और ठीक-ठीक देख सकते हैं कि कैसे और कैसे बदल गया है (साथ में संक्षिप्त विवरण और / या किसी कार्य आईडी का संदर्भ, यदि आपकी टीम सार्थक चेकइन टिप्पणियों को जोड़ने की आदी है - जो स्वतः उत्पन्न डॉक्स से गायब होने वाली है)।
संचार एक प्रमुख कारण है कि चरम प्रोग्रामिंग टीमें जोड़ी प्रोग्रामिंग करती हैं। यदि आप टीम के साथी के साथ मिलकर बदलाव करते हैं, तो आप में से दो ऐसे हैं जो प्रत्येक परिवर्तन के बारे में जानते हैं, और अगली बार जब आप में से प्रत्येक किसी और के साथ जोड़ी बनाने जा रहा है, तो उपयोगी जानकारी बहुत तेज़ी से फैलती है। यह विभिन्न कारणों से हमेशा लागू नहीं होता है। इसे छोड़कर, आप अपने पड़ोसियों से एक उपयुक्त क्षण में परिवर्तन के बारे में बात कर सकते हैं (जैसे दोपहर के भोजन के दौरान, यदि आप एक साथ दोपहर का भोजन करते हैं), या यह एक बड़ा, अधिक महत्वपूर्ण या अधिक जटिल परिवर्तन होने पर मेल भेजें।
उत्तरार्द्ध मामले में, इसे ठीक से दस्तावेज करने का एक अच्छा कारण हो सकता है। IMHO डिज़ाइन दस्तावेज़ सबसे अच्छे होते हैं जब वे एक मोटे दाने वाले, सिस्टम के उच्च स्तरीय अवलोकन की पेशकश करते हैं, जबकि कार्यान्वयन विवरण कोड में होते हैं ( DRY सिद्धांत का पालन )।