किसी को भी इस तरह से एपीआई या लाइब्रेरी कोड डिजाइन करता है?

वोट
2

मैं कितनी अच्छी तरह एक पुस्तकालय या एपीआई डिजाइन करने के लिए के बारे में कुछ बातें पढ़ने गया था, और गूगल टेक वार्ता पर यहोशू बलोच के महान बात भर में ठोकर खाई। कार्यों के स्पष्ट जुदाई, को कम करने और सुखद उपयोग, स्वच्छ कोड को प्रोत्साहित - अब हालांकि मैं एक पेशेवर API डेवलपर के पास कहीं भी नहीं हूँ, मैं वर्गों / कार्यों का एक समूह प्रोग्रामिंग लगता है कि एक समान है, हालांकि बहुत छोटा-नीचे एक ही बात का संस्करण है , आदि।

मैं कुछ व्यापक रूप से इस्तेमाल खुला स्रोत जावा कोड के माध्यम से जा रहा था और यह विचार आया (कोई नई बात नहीं है, लेकिन बस इसे डाल स्पष्ट रूप से ...)

हमें एक उदाहरण लेते हैं छद्म कोड (या शायद बुनियादी के कुछ बोली):

1. new label
2. set name 'hello world'
3. set color 'blue'
4. show 'topmost'
5. on click hide

अब जावा कोड मैं ऐसा करने में सक्षम होने के लिए चाहते हो जाएगा से प्रेरित कुछ इस तरह:

1. Label l = new Label()
2.          .setName('Hello World')
3.          .setColor('blue')
4.          .show(zindex.top);
5. l.onClick = l.hide() ;

मेरा प्रश्न यह है:
इस तरह छद्म कोड से शुरू होने वाले किसी और डिजाइन एपीआई है?

यह कुछ छोटे के लिए एक अच्छा विचार है? कहो 10 कक्षाएं शायद 10 तरीकों के साथ प्रत्येक, प्रत्येक विधि 5-6 से अधिक नहीं लाइनों कोड इसके अंदर तक। कहीं और बस नहीं एक शौक परियोजना एक पूर्ण एपीआई के करीब - - यही कारण है कि स्पष्ट रूप से सिर्फ कक्षाओं के आकार को दिखाने के लिए करने के लिए संख्या का एक मोटा सेट तैयार किया जा रहा है एक पेशेवर पैकेज है कि कुछ छोटे करता है, लेकिन यह अच्छी तरह से करता है

किसी को भी इस दृष्टिकोण के लिए किसी भी गंभीर कमियां पाया गया है?

मुझे लगता है कि एक वास्तविक लाभ यह है कि यह है आप बलों पहली बार अपने उपयोग-मामले को लिखने के लिए

दूसरी बात यह है कि nouns और verbs सरल रहने , चकमा करने के लिए अपने अंतिम उत्पाद को सक्षम करने MultiPhraseAbstractParadigmDesignPatternImplementor सिंड्रोम :-D

22/01/2010 को 20:40
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


4 जवाब

वोट
0

हाँ, इस तरह से है कि jQuery डिज़ाइन किया गया है, यह हमेशा ही लौटने समाप्त होता है तो आप इस तरह श्रृंखला तरीकों कर सकते हैं।

22/01/2010 को 20:42
का स्रोत उपयोगकर्ता

वोट
0

मैं खाली वर्गों और तरीकों के साथ शुरू करने के लिए करते हैं। इसका वास्तव में शीर्ष नीचे का सवाल बनाम नीचे से ऊपर डिजाइन।

मैं वास्तव में एक बहुत बड़ा व्हाइटबोर्ड स्केच हालांकि पसंद करते हैं।

22/01/2010 को 20:45
का स्रोत उपयोगकर्ता

वोट
3

यह एक बहुत ही आम डिजाइन पैटर्न एक कहा जाता है धाराप्रवाह इंटरफ़ेस । यह कार्यात्मक भाषाओं में आम है और लोकप्रियता कहीं और हो रहा है। मैं पहली बार इस योजना में इसे देखा।

यह एक बहुत ही सुविधाजनक और पठनीय मुहावरा है, लेकिन याद रखें कि वहाँ अक्सर कई बार जहां आप वास्तव में एक भी समारोह कॉल में एक से अधिक चर को प्रारंभ करना चाहते हैं होगा। उदाहरण के लिए, जब वहाँ आंतरिक स्थिति डेटा का एक संयोजन के आधार पर स्थापित किया जाना है, या जब स्थापित करने और मूलभूत मूल्यों को अधिलेखित महंगा है। तो, सभी "पैटर्न" के साथ के रूप में, विवेकपूर्ण तरीके से और पूर्वविवेक के साथ उपयोग करें।

22/01/2010 को 20:52
का स्रोत उपयोगकर्ता

वोट
1

JQuery वास्तव में ऐसा करता है। से http://net.tutsplus.com/tutorials/javascript-ajax/jquery-1-4-released-the-15-new-features-you-must-know/ :

jQuery('<div/>', {  
    id: 'foo',  
    css: {  
        fontWeight: 700,  
        color: 'green'  
    },  
    click: function(){  
        alert('Foo has been clicked!');  
    }  
}); 

या पूर्व 1.4 के लिए:

jQuery('<div/>')  
   .attr('id', 'foo')  
   .css({  
       fontWeight: 700,  
       color: 'green'  
   })  
   .click(function(){  
       alert('Foo has been clicked!');  
   });  

मैं भी कोड में WPF पैदा सी # में इसी तरह के कार्य कर लेते हैं:

new StackPanel {
   Children = {
      new TextBlock { Text = "Hi there", Width = 50 },
      new TextBox { Width = 100 },
      new Border { 
          Content = new ListBox()
      }
   }
};
22/01/2010 को 21:46
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more