क्या किसी के पास स्कैला मोनैड का पूर्ण काम किया गया उदाहरण है जो वास्तविक दुनिया की समस्या का सामना करता है और जावा में लिखे गए कोड से तुलना करता है?स्कैला मोनाड - पूर्ण काम किया गया उदाहरण
उत्तर
सभी संग्रह मोनैड हैं (यह सामान्य विवरण है, स्कैला-विशिष्ट नहीं है), या "मोनैड है" इस पर निर्भर करता है कि आप इसके बारे में कितना सख्त होना चाहते हैं। स्कैला में Option
एक मोनड के रूप में भी है, और Either
के दाएं और बाएं अनुमान भी हैं। जब भी आप उनके साथ समझदारी देखते हैं तो आप काम पर अपने monadic पहलुओं को देख सकते हैं।
स्कैला में मोनैड का एक और सूक्ष्म उदाहरण पार्सर संयोजक है। यह अधिक सूक्ष्म है क्योंकि ऑपरेटर समानार्थियों के पीछे monadic संचालन छुपाते हैं जो व्याकरण में बेहतर दिखते हैं।
def optionAdd(x:Option[Int], y:Option[Int]):Option[Int] =
for(xx <- x; yy <- y) yield xx+yy
मैं, जावा संस्करण के साथ समय बर्बाद कर हिम्मत नहीं है विशेष रूप से है क्योंकि किसी बहुत होशियार से मुझे पहले से ही http://functionaljava.org/examples/1.5/#Option.bind किया था। लिंक में उदाहरण मूल रूप से क्या कर रहा है optionAdd
असीम रूप से कम संक्षिप्त तरीके से करता है।
for {
user <- getUserById(id)
orders <- getOrdersForUser(user.email)
products <- getProductsForOrders(orders)
stock <- getStockForProducts(products)
} yield stock
Futues monadic कर रहे हैं और comprehensions के लिए अच्छी तरह से जावा में एसिंक्रोनस कोड
रचना के लिए इस्तेमाल किया जा सकता ... शुरुआत:
http://jazzy.id.au/default/2012/11/02/scaling_scala_vs_java.html
जैसे async कॉल monads का उपयोग कर से चार ग्राहकों को देखने के प्रतीक्षा Monads with Java 8
- 1. बड़े मोनाड स्टैक का उदाहरण
- 2. मोनाड
- 3. 'मोनाड ((,) डब्ल्यू)' उदाहरण कहीं भी मानक है?
- 4. क्या डेटा.मैप/डेटा.इन्टैप के लिए एक मोनाड उदाहरण मौजूद है?
- 5. हार्सेल मोनाड
- 6. ExtJS बता गया स्वत: पूर्ण काम नहीं करता है
- 7. jQuery स्वत: पूर्ण आइटम प्रस्तुत नहीं किया गया है
- 8. tastypie पोस्टिंग और पूर्ण उदाहरण
- 9. क्यों स्कैला का ट्रीसेट रिटर्न सॉर्ट किया गया
- 10. एनिमेट का कॉलबैक फ़ंक्शन (पूर्ण) प्रारंभ में निष्पादित किया गया?
- 11. स्कैला ग्रहण स्वत: पूर्ण टूटा हुआ?
- 12. आईओओ गेट मोनाड
- 13. स्कैला contravariance - असली जीवन उदाहरण
- 14. क्लैंग पूर्ण काम नहीं करता
- 15. उदाहरण के लिए पूर्ण URL
- 16. ALSA: पूर्ण डुप्लेक्स सी उदाहरण?
- 17. उदाहरण काम करता है
- 18. एक्सप्रेस स्टॉप काम करना - उपयोग परिभाषित नहीं किया गया है
- 19. मुझे इस स्कैला कोड को समझने में सहायता करें: स्कालाज़ आईओ मोनाड और implicits
- 20. स्कैला जेनरिक और कंसोल ऑटो पूर्ण
- 21. "मोनाड-फ्रेंडली" इवेंट-आधारित आईओ
- 22. पारसी के साथ पूर्ण पार्सर उदाहरण?
- 23. स्कैला में खेलों के किसी भी उदाहरण?
- 24. पूर्ण: नीचे काम नहीं करता
- 25. jQuery फ़ाइल अपलोड नहीं किया गया 'किया'
- 26. केकफ़्पी में पूर्ण पाठ खोज? कोई उदाहरण
- 27. ओरेकल और ट्राइगर्स (डाला गया, अपडेट किया गया, हटाया गया)
- 28. उदाहरण उदाहरण के बिना एक सामान्य उदाहरण बनाने के लिए स्कैला में कोई तरीका है?
- 29. मैवेन प्रदान किया गया स्कोप
- 30. निरंतर मोनाड ट्रांसफार्मर के लिए मोनाडवाइटर के उदाहरण प्राप्त करना असंभव है?
स्कैला उदाहरण नहीं होने पर, यह जावा में शायद मोनैड का गहराई से अध्ययन है (कुछ हास्केल नो के साथ यह देखने के लिए कि कितनी सक्षम भाषाएं इससे निपट सकती हैं): http://logicaltypes.blogspot.com/2011/09/monads-in-java.html –
क्या कोई नहीं करता है? –
मोनाड की अवधारणा उतनी अजीब नहीं है जितनी लगता है (या इसका नाम ऐसा लगता है)। बेहतर या बदतर के लिए, श्रेणी सिद्धांत से यह शब्दावली बेहद व्यावहारिक है, लेकिन आज प्रोग्रामिंग का उत्साही सिद्धांत दृढ़ता से जोर देना (यहां तक कि अपमानित) सिद्धांत है। मेरे दिमाग में, यह "इंजीनियरिंग" के क्षेत्र से एक अपमान और अयोग्यता सॉफ्टवेयर है –