2009-12-22 3 views
9

मैं वर्तमान में ऐसी साइट पर काम कर रहा हूं जो भगवान के माध्यम से चला गया जानता है कि कितने डेवलपर्स के हाथ हैं। उन चीज़ों में से एक जो मुझे पसंद नहीं है, डेटाबेस में प्रत्येक तालिका में उपसर्ग "tbl_" और प्रत्येक फ़ील्ड "fld_" है।क्या मुझे खराब नामकरण सम्मेलन रखना चाहिए?

मैंने एक नई सुविधा पर काम करना शुरू कर दिया है और मुझे निम्नलिखित समस्या का सामना करना पड़ रहा है: क्या मेरी नई टेबल पुराने सम्मेलन के साथ जारी रहनी चाहिए, या नहीं?

मुझे लगता है मैं होना चाहिए, लेकिन मैं कर रहा यह :)

+0

क्या आप किसी ऐसे डेटाबेस के बारे में बात कर रहे हैं जहां मौजूदा तालिकाओं का नाम बदला नहीं जा सकता है क्योंकि उन तालिका नामों पर निर्भर कोड के बहुत से प्रोग्राम/लाइन हैं? –

+0

हाँ, परियोजना बहुत बड़ी है, मैं मौजूदा तालिकाओं को बदलने की योजना नहीं बना रहा हूं (हालांकि, मैं सक्षम होना चाहता हूं)। मेरा सवाल यह था कि मुझे एक ही सम्मेलन जारी रखना चाहिए, और आम सहमति यह है कि मुझे चाहिए .... इसलिए मैं –

उत्तर

28

मैं एक ही सम्मेलन रखना होगा बेवकूफ लग रहा है .. अगर यह बुरा है की परवाह किए बिना या नहीं तो कम से कम यह संगत होगा। और अगले डेवलपर के लिए स्थिरता बहुत महत्वपूर्ण होगी जो कोड की रोकथाम करता है।

+7

+1 स्थिरता के लिए – ChrisF

+3

+1 रोम में ... –

+1

मैं एक ही नाव में था, उसमें जिस अनुप्रयोग को मैं विकसित कर रहा था वह ज्यादातर ग्रीनफील्ड था, लेकिन यह मौजूदा डेटाबेस संरचना में रहने वाला था। मैं "अच्छे" स्वच्छ मानकों का उपयोग कर रहा था, और जब तैनाती के लिए समय आया तो मुझे डेटाबेस ऑब्जेक्ट्स नामकरण के "खराब" तरीके से सबकुछ बदलना पड़ा। एक डीएएल के लिए भलाई का शुक्र है जो आसानी से पुनर्जीवित हो जाता है। –

1

धन और संसाधनों में जिस मार्ग से कम लागत कम होती है, उसके साथ जाएं। यदि यह आपको पैसे बचाने और जमीन को फिर से भरने के लिए नहीं जा रहा है, तो नहीं। बस अपने दांतों को दबाओ और आगे बढ़ें।

2

यदि यह पूरे एप्लिकेशन में निरंतर शैली है तो मैं नामकरण सम्मेलन का पालन करता हूं, यह अगले डेवलपर पर इसे अधिक आसान बना देगा।

2

मैं शामिल पैमाने पर ध्यान देता हूं। मेरे लिए एक खराब नामकरण सम्मेलन की स्थिरता, एक ही कोडबेस या डेटाबेस में अलग-अलग लोगों की भीड़ पर बेहतर है।

यदि कुछ मुट्ठी भर हैं और आप उन्हें सुरक्षित रूप से बदल सकते हैं, तो मेरी भावना बदलना है। लेकिन स्केल या एप्लिकेशन के कुछ भी जो आप केवल एक बगफिक्स कर रहे हैं, संभवत: इसमें शामिल समय और प्रयास के लायक नहीं है।

1

"यदि यह टूट गया नहीं है, इसे ठीक नहीं है"

1

मुझे लगता है कि आप स्थिरता पसंद करते हैं और सम्मेलन पहले से उपयोग में पालन करना चाहिए।

गरीब डेवलपर (ओं) के बारे में सोचें जो आपके पीछे आते हैं और दो अलग-अलग नामकरण सम्मेलनों (मूल एक और आपका नया) से निपटने के लिए हैं, जिनमें से कोई भी नए डेवलपर पसंद नहीं करते हैं।

8

ठेकेदार होने के नाते, मुझे इस समस्या का सामना करना पड़ रहा है। यहां मेरे 2 सेंट हैं:

यदि यह टूटा नहीं गया है, तो ग्राहक मेरे पैसे को बर्बाद कर रहा है। जब तक मैं पूरे ऐप को फिर से लिख नहीं रहा हूं, मैं आमतौर पर पुराने (खराब) मानकों को रखता हूं (कम से कम इस तरह, आपके पास एक सम्मेलन और अन्य हिस्सों के साथ ऐप का हिस्सा कुछ अलग नहीं होता है - यह कोड को अन्य द्वारा पठनीय रखता है डेवलपर्स)।

1

रखरखाव की दुनिया में आपका स्वागत है। ;)

कौन कहता है कि साइट पर काम करने वाला अगला व्यक्ति आपके कामों को तुच्छ नहीं करेगा?

3

आपके पास दो विकल्प हैं।

  1. सभी बुरे नामकरण सम्मेलनों को नए में बदलें।
  2. पुराने सम्मेलनों का उपयोग करें।

कोई भी इस कोड को बाद में देखेगा और आपके द्वारा बनाए गए किसी भी अंतर से निपटने की आवश्यकता होगी। इसका मतलब है कि आपको इस बात से अवगत होना चाहिए कि इस निर्णय से अन्य लोग प्रभावित हैं। यदि आपके पास समय है तो सही काम करें, अगर आपके पास समय नहीं है तो बदसूरत चीज करें ... लेकिन इसे लगातार बनाए रखें।

1

कोई नामकरण सम्मेलन कोई/असंगत नामकरण सम्मेलन से बेहतर है।

0

मैं इसे बदलता हूं अगर पुराने कोड और नए कोड के बीच कोई महत्वपूर्ण अंतर है। उदाहरण के लिए, यदि पुराना तरीका बहुत ही घातक अंत था और नया तरीका पूरी तरह से स्वतंत्र है, तो आगे बढ़ें और एक नया सम्मेलन शुरू करें।

नई सामग्री संरचनात्मक रूप से और अर्थात् संगत होने पर दृष्टिहीन रूप से सुसंगत होना अच्छा है, लेकिन यदि आप जो कर रहे हैं वह पहले से आने वाला एक साफ ब्रेक है, तो यह और भी महत्वपूर्ण है कि विभिन्न चीजें अलग दिखें।

0

जैसा कि सभी ने कहा, बुरा सम्मेलन के साथ रहें क्योंकि आप इसे स्क्रैच से नहीं लिख रहे हैं। हालांकि, अगर इसके लिए एक अनिवार्य आवश्यकता है तो "अच्छा अभ्यास" का उपयोग करें (उर्फ अंत उपयोगकर्ता को अन्यथा नकारात्मक रूप से प्रभावित किया जाएगा)। उदाहरण के लिए, यदि "खराब सम्मेलन" एपीआई उपयोगकर्ता मुक्केबाजी का उपयोग करता है, तो तारों के मूल्य और अन्य प्रदर्शन-हिट को एक बड़ी डिग्री में बदलें; समस्या में मत जोड़ें! सॉफ्टवेयर और एपीआई का अंतिम लक्ष्य डेवलपर्स के जीवन को आसान बनाना नहीं है; लेकिन अंत उपयोगकर्ता का। लंबे समय से व्यवसाय में रहने वाले डेवलपर्स इस बारे में बेहद जागरूक हैं और आप उन डेवलपर्स में से एक बनना चाहते हैं।