2008-09-19 11 views

उत्तर

20

टेबल पर ही आधारित तरीकों पर विस्टा वाणिज्यिक पर बिल गेट्स का उल्लेख कर रहे हैं योजनाओं है कि आप के बजाय एक तालिका में जानकारी देखने का उपयोग करने की अनुमति देते हैं तर्क बयान (यानी मामला, अगर)। सरल मामलों में, तर्क तर्कों का उपयोग करना तेज़ और आसान होता है, लेकिन तर्क श्रृंखला अधिक जटिल हो जाती है, इसलिए तालिका-संचालित कोड जटिल तर्क से आसान है, संशोधित करना आसान और अधिक कुशल है।

संदर्भ: McConnell, Steve. Code Complete, Second Edition. Redmond (Washington): Microsoft, 2004. Print. Page 411, Paragraph 1.

+2

यदि यह एक अंधा प्रतिलिपि है, तो कृपया संदर्भ जोड़ने पर विचार करें। – Trix

+0

"लुकअप-टेबल-ड्राइवर विधियां" – aaaaaa

3

एक टेबल पर ही आधारित विधि बहुत सरल है। प्रोग्राम तर्क को चलाने के लिए कथन के बजाय डेटा संरचनाओं का उपयोग करें। उदाहरण के लिए, यदि आप (टीवी केबल बनाम) रिकॉर्ड के दो प्रकार कार्रवाई कर रहे हैं आप ऐसा करते हैं हो सकता है:

hash[tv] = process_tv_records 
hash[cable] = process_cable_records 

कुछ भाषाओं में, रूबी या पर्ल की तरह, इस तकनीक सरल है। जावा में, आपको विधि हैंडल खोजने के लिए प्रतिबिंब का उपयोग करना होगा।

यदि आप निर्णय तालिकाओं के बारे में जानना चाहते हैं, तो http://fitnesse.org/ पर फिटनेस परीक्षण फ्रेमवर्क निवेश करें।

6

संदर्भित वीडियो में बिल गेट्स स्टीव मैककनेल द्वारा कोड पूर्ण पुस्तक से पढ़ते हैं। Jeff Atwood mentioned this in his blog (the YouTube links match up).

कोड पूरा, 2 संस्करण से:

एक टेबल पर ही आधारित विधि एक योजना है कि आप के बजाय तर्क बयान (अगर और मामला) का उपयोग करने से किसी तालिका में जानकारी देखने के लिए अनुमति देता है पता लगाने के लिए।

मैककनेल अपने उदाहरणों में अपनी "तालिका" के रूप में एक सरणी का उपयोग करता है, लेकिन मुझे लगता है कि अवधारणा को डेटाबेस टेबल या किसी अन्य चीज़ पर लागू किया जा सकता है।

अवधारणा वास्तव में एक उदाहरण के माध्यम से सबसे अच्छी तरह से समझाया गया है।

मान लें कि आप एक रेस्तरां चला रहे हैं और प्रत्येक तालिका संख्या के लिए अलग-अलग सीटें हैं।

आपका तर्क एक विशेष तालिका के लिए सीटों की संख्या प्राप्त करने के लिए

if table number == 1 
    table has 4 seats 
else if table number == 2 
    table has 8 seats 
. . . 

की तरह कुछ लग सकता है तो आप 50 टेबल है, तो आप कोड की 100 लाइनों सिर्फ सीटों की संख्या निर्धारित करने के लिए होगा।

मेज पर ही आधारित तरीकों का उपयोग करके आप सूचकांक तालिका संख्या और सीटों की संख्या का प्रतिनिधित्व मान से एक सरणी बना सकते हैं, तो अपने तर्क के बजाय

tables [] = {4, 8, 2, 4, ...} 
table seats = tables[table number] 

जो सरल है कुछ ऐसा दिखाई देगा, कम, और बनाए रखने के लिए आसान है।

संबंधित मुद्दे