ये दो पुस्तकालय दो अलग-अलग समस्याओं को हल करते हैं।
बोल्ट
बोल्ट पारदर्शी रूप से एक पृष्ठभूमि धागा करने के लिए कोड धक्का द्वारा अतुल्यकालिक प्रोग्रामिंग सरल करता है। बोल्ट भी भयानक कोड घोंसले को कम करने के प्रयासों का एक अच्छा सौदा खर्च करता है जो प्रारूप की तरह नेस्टेड पिरामिड पैदा करता है।
इसलिए, यदि आप विशेष रूप से एसिंक (बहु-थ्रेडिंग) मुद्दों से निपटने के लिए देख रहे हैं, तो बोल्ट अधिक मजबूत समाधानों पर है। बोल्ट कोड घोंसले और कॉलबैक बॉयलरप्लेट को राहत देने में भी प्रभावी है और शायद कॉलबैक मुद्दों को दूर करने की कोशिश करने के लिए शायद यह एक अच्छा समाधान है।
RxJava
RxJava विशेष रूप से एक प्रतिक्रियाशील प्रोग्रामिंग प्रतिमान का समर्थन करने के लिए बनाया गया है। प्रतिक्रियाशील प्रोग्रामिंग जावा में अनिवार्य प्रोग्रामिंग का एक विकल्प है। आप विभिन्न कारणों से एक प्रतिक्रियाशील प्रोग्रामिंग प्रतिमान में स्थानांतरित करना चुन सकते हैं - जिनमें से कई हैं। यदि आप अपने कोड को प्रतिक्रियाशील प्रोग्रामिंग मॉडल में माइग्रेट करना चाहते हैं, या आप अपनी ग्रीनफील्ड परियोजनाओं में प्रतिक्रियाशील उपयोग करना चाहते हैं, तो जावा दुनिया में वास्तविक रूप से प्रतिक्रियाशील मानक - RxJava का उपयोग करने पर विचार करें।
प्रतिक्रियाशील एसिंक्रोनस प्रोग्रामिंग समस्या को भी हल करता है, साथ ही जेनेरिक के माध्यम से कॉलबैक बॉयलरप्लेट को भी कम करता है। लेकिन इसका उपयोग उन समस्याओं को हल करने के लिए नहीं किया जाना चाहिए। उदाहरण के लिए, नेल्टेड पिरामिड कोड संरचना को हल करने की बोल्ट की क्षमता इसे एसिंक प्रोग्रामिंग के लिए एक अधिक व्यवहार्य समाधान बनाती है। दूसरी तरफ, यदि आप आरएक्सजेवा के माध्यम से प्रतिक्रियाशील उपयोग कर रहे हैं, तो एसिंक की समस्याएं पहले ही हल हो चुकी हैं, इसलिए बोल्ट में कोई बात नहीं आ रही है।
धन्यवाद !! क्या यह बोल्ट से rxjava तक एक आसान संक्रमण था? किसी भी नुकसान में मैं भाग सकता हूँ? – reidisaki
आरएक्स-जावा में आप कितने नुकसान करेंगे। यह बहुत शक्तिशाली और अभिव्यक्तिपूर्ण है। व्यक्तिगत रूप से 'कैश' ऑपरेटर ने वही नहीं किया जो मैंने अपेक्षित किया था। साथ ही, 'पर्यवेक्षण योग्य' और 'ऑपरेटर' लिखना मुश्किल है जो बैप्रप्रेस का सम्मान करते हैं। – Andy