2010-07-31 13 views
8

The Pragmatic Programmer कई लोगों द्वारा अत्यधिक recommended है। मैंने इसे अभी पढ़ना समाप्त कर दिया है, और मैं देख सकता हूं कि लोग इसकी सिफारिश क्यों करते हैं, हालांकि मैं यह इंगित करता हूं कि कोड पूर्ण लगभग सभी सामग्री को अधिक गहराई में शामिल करता है।क्या व्यावहारिक प्रोग्रामर के लेखक यज्ञ के बारे में भूल गए थे?

हालांकि, एक चीज जिसने मुझे गड़बड़ कर दिया था, वैसे ही लेखकों ने भविष्य में विकास के लिए लचीलापन, सामान्यीकरण और छोड़ने के कमरे के किसी भी डाउनसाइड्स का उल्लेख नहीं किया था। उन अवधारणाएं बहुत अच्छी हैं, लेकिन यज्ञी के सिद्धांत के साथ क्या हुआ (आपको इसकी आवश्यकता नहीं है), जो डेवलपर्स को लचीलापन लागू करने में अपना समय बर्बाद कर देता है जिसका उपयोग कभी नहीं किया जा रहा है?

एसओ की एक खोज YAGNI के बारे में 400 प्रश्न बताती है, इसलिए मुझे संदेह है कि अवधारणा लेखकों के लिए बहुत अस्पष्ट थी। मैं, निश्चित रूप से, कहीं भी उनके जैसा अनुभवी नहीं हूं, इसलिए उन्होंने पूरे पुस्तक में संयम के किसी भी उपयोग का उल्लेख क्यों नहीं किया?

धन्यवाद।

+2

आपको वास्तव में उनसे पूछना होगा, हालांकि मुझे लगता है कि कारण यह है कि यज्ञनी किताबें नहीं बेचती है। – Oded

उत्तर

2

वे इसे YAGNI फोन नहीं है, लेकिन पृष्ठ 11 पर कीवर्ड है कि वहाँ कम से कम एक ही फोकस:

पता जब रोकने के लिए!

+2

मुझे नहीं लगता कि यह वास्तव में वही बात है। यह जानना कि आपके कोड के साथ झुकाव कब रोकना है, यह जानने से अलग है कि सिस्टम में अत्यधिक लचीलापन क्यों नहीं बनाया जाए। हो सकता है कि मैं उलझन में हूं कि यज्ञानी क्या है। – Dijkstra

+0

मैं केवल अनुमान लगा सकता हूं कि अगर हंट और थॉमस ने उस मार्ग को लिखा था तो "यज्ञी" दिमाग में था, लेकिन मुझे लगता है कि उनका इरादा एक ही दिशा में मजबूत था। –

0

वे नहीं भूल गए। मुझे लगता है कि किताब सिर्फ YAGNI अच्छी तरह से जाना जाता है भविष्यवाणी करता है।

0

[YAGNI] लचीलापन है कि कभी नहीं

लचीलापन को लागू करने में इस्तेमाल किया जा करने के लिए जरूरी और समय लगेगा नहीं करता जा रहा है को लागू करने के लिए अपने समय बर्बाद कर डेवलपर्स से बचाता है। मेरे अनुभव में यह कुछ ऐसा है जो (और होना चाहिए) अपनी प्राकृतिक प्रोग्रामिंग शैली का हिस्सा बनें। आईएमएचओ कोड जो लचीला है आमतौर पर खराब प्रोग्रामिंग प्रथाओं के कारण होता है।