फ्यूचर्स / मोनाड्स बनाम इवेंट्स


10

एक आवेदन ढांचे में जब प्रदर्शन प्रभाव को नजरअंदाज किया जा सकता है (अधिकतम 10-20 घटनाएं प्रति सेकंड),
क्या मॉड्यूल के बीच संचार के लिए एक पसंदीदा माध्यम के रूप में उपयोग करने के लिए अधिक रखरखाव योग्य और लचीला है - इवेंट या फ्यूचर्स / प्रॉमिस / मोनाड्स ?

यह अक्सर कहा जा रहा है, कि ईवेंट्स (पब / सब, मध्यस्थ) ढीली-युग्मन की अनुमति देते हैं और इस प्रकार - अधिक बनाए रखने योग्य ऐप ... मेरा अनुभव इस बात से इनकार करता है: एक बार जब आपके पास 20+ इवेंट - डिबगिंग कठिन हो जाता है, और इसलिए रीफैक्टरिंग है - क्योंकि यह देखना बहुत कठिन है: कौन, कब और क्यों क्या उपयोग करता है।

प्रॉमिस (मैं जावास्क्रिप्ट में कोडिंग कर रहा हूं) इवेंट्स की तुलना में बहुत बदसूरत और डम्बर है। लेकिन: आप फ़ंक्शन कॉल के बीच कनेक्शन स्पष्ट रूप से देख सकते हैं, इसलिए एप्लिकेशन तर्क अधिक सीधे-आगे हो जाता है। मुझे क्या डर है? हालांकि, यह है कि वादे उनके साथ अधिक कठिन-युग्मन लाएंगे ...

पीएस: उत्तर को जेएस पर आधारित होने की आवश्यकता नहीं है, अन्य कार्यात्मक भाषाओं से अनुभव बहुत स्वागत है।


2
यह अक्सर कहा जा रहा है, कि घटनाक्रम (पब / उप, मध्यस्थ) ढीली-युग्मन की अनुमति देता है जो नरक कहता है? उन्हें सुनना बंद करो! आप माता-पिता को जाने बिना किसी घटना की सदस्यता नहीं ले सकते -> तंग युग्मन। कमजोर घटनाओं (= मध्यस्थ?) में देखें।
लुई कोट्टमन

@ बाबून मैं आमतौर पर मानता हूं कि ईवेंट स्वचालित रूप से ढीले-कपलिंग का उत्पादन नहीं करते हैं, लेकिन अगर आप एक इवेंट बस शुरू करते हैं, तो आप "माता-पिता" को जाने बिना घटनाओं की सदस्यता ले सकते हैं। इसे कौन कहता है? Google IO 2009 पर रे रयान, 13:50 पर google.com/events/io/2009/session/… देखें ।
स्कारफ्रिज सेप

जैसा कि मैंने अपनी टिप्पणी में कहा, @scarfridge हाँ, यदि आप किसी तरह के ईवेंटग्रेगलेटर को लागू करते हैं, तो यह युग्मन खो देता है।
लुइस कोट्टमन

.net rx एक ईवेंट एग्रीगेटर है, मैं मोबाइल पर हूं, बाद में अधिक विवरण पोस्ट
करूंगा

जवाबों:


1

मोनाड और ईवेंट काफी अच्छी तरह से एक साथ खेलते हैं, उदाहरण के लिए .NET Rx पर एक नज़र है। मुझे लगता है कि जावास्क्रिप्ट कार्यान्वयन भी होना चाहिए। http://msdn.microsoft.com/en-us/data/gg577609.aspx


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

यह निर्भर करता है कि आप क्या देख रहे हैं: कुछ परिचय या विशिष्ट उदाहरण। किसी भी मामले में मैं आपको इस विषय पर एरिक मीजर और ब्रायन बेकमैन द्वारा चैनल 9 वीडियो और वार्ता का पता लगाने की सिफारिश कर सकता हूं।
एंड्रियासचिनर्ट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.