ऐसा लगता है कि ये सभी संबंधित हैं। अंतर क्या है?पाइपिंग, संरचना, और करी
उत्तर
पाइपिंग कुछ मूल्य (बस यूनिक्स में पाइपिंग की तरह) पर कार्रवाई के अनुक्रम प्रदर्शन करने के लिए प्रयोग किया जाता है। प्रत्येक फ़ंक्शन में इनपुट पिछले फ़ंक्शन का आउटपुट होता है। जाहिर है कि प्रत्येक समारोह में एक ही तर्क लेना आवश्यक है।
संरचना (
<<
/>>
) यह अनुक्रम में दो कार्यों कॉल में समान है (यानी, प्रथम के उत्पादन में दूसरे के लिए इनपुट है), लेकिन यह एक समारोह के बजाय रिटर्न तुरंत अनुक्रम लागू की।Currying एन आर्ग
तो के एक समारोह के लिए 1 को एन -1 आर्ग लगाने से एक नया कार्य बनाता है, संरचना और currying पाइप के लिए प्रयोग किया जाता है, जबकि कार्यों बनाने के लिए उपयोग किया जाता है मंगलाचरण। रचना और करीकरण नए कार्यों को बनाने के तरीके में भिन्न होते हैं (तर्क बनाम चेन लागू करके)।
डैनियल क्या लिखा है के अलावा, वहाँ पाइपिंग (|>
और <|
संचालकों) और समारोह संरचना (>>
और <<
ऑपरेटरों) के बीच एक बहुत करीबी पत्राचार है।
आप पाइपिंग का उपयोग करते हैं कार्यों के एक seqence के लिए कुछ डेटा पारित करने के लिए:
nums |> Seq.filter isOdd
|> Seq.map square
|> Seq.sum
... तो यह एक फ़ंक्शन का इनपुट गुजर के बराबर है समारोह रचना का उपयोग कर प्राप्त:
let composed =
Seq.filter isOdd
>> Seq.map square
>> Seq.sum
composed nums
प्रैक्टिस में, इसका मतलब यह है कि आप फ़ंक्शन घोषणा को प्रतिस्थापित कर सकते हैं जो फ़ंक्शन की संरचना के साथ तर्क पर पाइपिंग का उपयोग करता है (और इस तथ्य का उपयोग करें कि फ़ंक्शंस को मानों के रूप में उपयोग किया जा सकता है)। यहां एक उदाहरण दिया गया है:
// Explicit function declaration
foo (fun x -> x |> bar |> goo)
// Equivalent using function composition
foo (bar >> goo)
- 1. पाइपिंग
- 2. पाइपिंग और रीडायरेक्शन
- 3. पाइपिंग
- 4. पाइपिंग
- 5. करी-हावर्ड आइसोमोर्फिज्म
- 6. क्यूटी स्लॉट करी
- 7. पावरशेल फॉरएच/पाइपिंग भ्रम
- 8. पाइपिंग फास्ट निर्देशिका बहिष्करण
- 9. "पाइपिंग" के लिए जावा मुहावरे
- 10. बैश वैरिएबल में "पाइपिंग" मान
- 11. कमांड लाइन: पाइपिंग परिणाम आरएम
- 12. खोजने के लिए पाइपिंग इनपुट
- 13. करी के व्यावहारिक फायदे क्या हैं?
- 14. एक विधि को करी कैसे करें?
- 15. उपप्रोसेसर के पाइपिंग आउटपुट। फ़ाइलों को
- 16. सामान्य हैकेल पाइपिंग बॉयलरप्लेट को हटाकर
- 17. प्रक्रिया संरचना और अपवाद
- 18. कोड डिज़ाइन और संरचना
- 19. NHibernate और संरचना मानचित्र
- 20. बीजगणितीय संरचना और प्रोग्रामिंग
- 21. ट्यूपल और फ़ंक्शन संरचना
- 22. ट्री संरचना और Recursion
- 23. Liskov Substition और संरचना
- 24. पृष्ठ लेआउट और संरचना
- 25. JSON संरचना और jQuery
- 26. इंटरप्रोसेस संचार के रूप में पाइपिंग
- 27. पाइपिंग पूंछ उत्पादन हालांकि ग्रेप दो बार
- 28. क्लोजर संरचना एक और संरचना के भीतर नेस्टेड
- 29. स्थिर संरचना और सामान्य संरचना के बीच क्या अंतर है?
- 30. वेब अनुप्रयोग संरचना और परिनियोजन
क्या आपके पास कोई ऐसा उदाहरण है जिसे उचित दृष्टिकोण ढूंढने की आवश्यकता है? आपका सवाल काफी व्यापक है। – pad
यह "प्रोग्रामर" एसओ साइट पर अधिक फिट हो सकता है। –
मैं पैड से सहमत हूं - यह एक काफी खुले अंत प्रश्न (टॉमस 'और डैनियल के जवाब नहीं हैं)। –