कुछ बेहतरीन या सबसे लोकप्रिय नियम इंजन क्या हैं? मैं एक प्रोग्रामिंग भाषा पर बस नहीं गया है, इसलिए मुझे नियम इंजन बताएं और यह कौन सी प्रोग्रामिंग भाषा का समर्थन करता है।मुझे किस नियम इंजन का उपयोग करना चाहिए?
उत्तर
मैं ड्रोल के लेखकों में से एक हूं, मैं अपने सामानों को पंप करने से बचूंगा।
लेकिन कुछ अन्य विकल्प जेस (ओपन सोर्स नहीं) हैं लेकिन क्लिप सिंटैक्स का उपयोग करते हैं (जिसे हम एक सबसेट का भी समर्थन करते हैं) - जो कि एक लिस्प बोली है।
यह वास्तव में निर्भर करता है कि आप इसके लिए क्या चाहते हैं, हैली के पास मजबूत प्राकृतिक भाषा तकनीक है (और उन्होंने हाल ही में रूलेबर्स्ट को प्राप्त किया है - जिसमें दिलचस्प प्राकृतिक भाषा तकनीक भी है जो एम्बेडेड नियमों - जैसे कानूनी दस्तावेज के साथ शब्द दस्तावेज़ों से निपट सकती है)। रूलेबर्स्ट भी नेट रनटाइम को लक्षित करने में सक्षम था (एक Drools.net "पोर्ट" भी उपलब्ध है - मैंने नहीं देखा है कि यह हाल ही में क्या हुआ है, हां, पर्याप्त समय नहीं है)। ठीक है, मैं अब अपने पिंप को दूर कर दूंगा ... इसके बारे में खेद है।
मुझे हैली विशेषज्ञ नियमों और हेली कार्यालय नियमों दोनों के साथ थोड़ा सा अनुभव है। दोनों अच्छे सिस्टम, लेकिन मुझे कुछ और जानना होगा कि आप निश्चित रूप से जवाब देने के लिए उनका उपयोग करना चाहते हैं (http://www.haley.com देखें)
वे दोनों सी # और जावा का समर्थन करते हैं (और मुझे लगता है कि एक वेब सेवा एपीआई भी है)।
दोनों के बीच का अंतर ज्यादातर प्राकृतिक भाषा मॉडलिंग में शामिल होना चाहता है। कार्यालय के नियम व्यापार प्रयोक्ताओं को कार्यालय दस्तावेज़ में नियम लिखने देते हैं, और ज्यादातर विधायी आवश्यकताओं मॉडलिंग के आसपास केंद्रित हैं। विशेषज्ञ नियम परिभाषा में थोड़ी अधिक लचीली हो सकती हैं कि यह प्राकृतिक भाषा को कैसे संभालती है, लेकिन इसके सामने भाषा संरचनाओं को परिभाषित करने के लिए और अधिक काम की आवश्यकता होती है।
आशा है कि इनमें से कुछ मदद करता है।
हमने http://jatha.sourceforge.net और http://www.jboss.com/products/rules दोनों का उपयोग किया है। वे दोनों बहुत अच्छे हैं, लेकिन अधिकांश भाग के लिए, जेबॉस के नियम मुझे बहुत से लोगों के लिए अधिक होने लगते हैं। वे दोनों जावा आधारित हैं।
यह याद Greenspun's Tenth Rule of Programming लायक है और इसे आयात करने के लिए आगे बढ़ :)
मैंने checked out JBoss नियम उर्फ Drools और यह बहुत अच्छा लग रहा है। मुझे उत्पादन में इसका इस्तेमाल करने वाले लोगों से सुनना अच्छा लगेगा, क्योंकि मुझे शायद अपने वर्तमान प्रोजेक्ट में नियम इंजन की भी आवश्यकता होगी।
आपकी आवश्यकताओं के आधार पर, Windows Workflow Foundation (.NET 3.5) एक नजर रखने योग्य हो सकता है।
.NET नियम इंजन InRule डब्ल्यूएफ और बिज़टॉक का समर्थन करता है; मैंने कोशिश नहीं की है, हालांकि यह नहीं पता कि यह कोई अच्छा है या नहीं।
डब्ल्यूएफ पहले से ही .NET 3.0 में उपलब्ध है। विजुअल स्टूडियो में डिज़ाइनर-साइड पर हालांकि यह थोड़ी छोटी गाड़ी है और काफी गन्दा हो सकती है। मैं इसे शेयरपॉइंट पर उपयोग करता हूं (जहां डब्ल्यूएफ वैसे भी आपका एकमात्र विकल्प है) और कुल मिलाकर मैं इससे काफी संतुष्ट हूं, भले ही सीखने की वक्र काफी खड़ी हो।
Foundations of WF इसके साथ शुरू करने के लिए एक अच्छी किताब है, क्योंकि वे शुरुआत से अंत तक एक पूर्ण समाधान लागू करते हैं और इसके पीछे की अवधारणाओं को समझाते हैं।
यह मार्टिन फाउलर द्वारा एक महान लेख है, जो नियम इंजन उपयोगी होने के बारे में एक चर्चा है। आप इसे सहायक पा सकते हैं।
भले ही यह एक अच्छा लेख है, यह सवाल का जवाब नहीं देता है यानी "किस नियम इंजन का उपयोग करना चाहिए?"। मुझे लगता है कि यह एक नियम इंजन का उपयोग करने के लिए और किस हद तक ध्यान केंद्रित करता है। – Swapnil
Inrule see website बहुत अच्छा है!
यह एक ठोस एसडीके के साथ एक .NET आधारित नियम इंजन है और गैर तकनीकी उपयोगकर्ताओं के लिए एक अच्छा यूआई है। अतीत में मेरे लिए बहुत अच्छा काम किया - मेरे विकास लागत में आधे से ज्यादा कटौती।
मुझे एक और नियम इंजन मिला जो विभिन्न प्रकार के नियमों का समर्थन करता है; प्रक्रियात्मक, अनुमान (आरईटीई) और फ्लोरुले। यह काफी लचीला और एक्स्टेंसिबल नियम इंजन (घटना संचालित भी है)। उनके पास पहले संस्करण के रूप में स्वतंत्र संस्करण के रूप में व्यक्त संस्करण था।
तो सरल निर्णय टेबल एक डोमेन विशिष्ट भाषा के साथ प्रदर्शन और सादगी दे सकते हैं (पात्रता नियमों, बीमा नियमों, लेखा परीक्षा नियम, आदि) की तरह बहुत अच्छी तरह से समझ, प्रक्रियात्मक नियमों के लिए http://www.flexrule.com
पर एक नजर डालें आरईटीई आधारित इंजन के ऊपरी हिस्से के बिना।
एक जावा sourced खुला इस तरह के नियम इंजन DTRules
- 1. मुझे किस गेम इंजन का उपयोग करना चाहिए?
- 2. मुझे किस डीबी का उपयोग करना चाहिए?
- 3. मुझे किस पायथन का उपयोग करना चाहिए?
- 4. क्या मुझे कैस्केड डेलीट नियम का उपयोग करना चाहिए?
- 5. मुझे किस फ्लोटिंग-पॉइंट छवि प्रारूप का उपयोग करना चाहिए?
- 6. लगातार बनाम गैर-निरंतर - मुझे किस का उपयोग करना चाहिए?
- 7. सीएसएस में मुझे किस कोटेशन मार्क का उपयोग करना चाहिए?
- 8. मुझे किस डक्ट टाइप का उपयोग करना चाहिए?
- 9. enum या परिभाषित, मुझे किस का उपयोग करना चाहिए?
- 10. मुझे किस वीएमवेयर एपीआई का उपयोग करना चाहिए?
- 11. मुझे किस कोड का उपयोग करना चाहिए, CodeContract या CuttingEdge.Conditions?
- 12. गुई टूलकिट, मुझे किस का उपयोग करना चाहिए?
- 13. मुझे किस ग्रहण सबवर्जन प्लगइन का उपयोग करना चाहिए?
- 14. ओएथ/ओपनआईडी - मुझे किस का उपयोग करना चाहिए?
- 15. मुझे किस प्रकार का संग्रह उपयोग करना चाहिए?
- 16. मुझे किस जावास्क्रिप्ट रिपोजिटरी का उपयोग करना चाहिए?
- 17. वीआईएम में मुझे किस मोड़ का उपयोग करना चाहिए?
- 18. मुझे किस स्क्रीन रिज़ॉल्यूशन का उपयोग करना चाहिए?
- 19. मुझे किस पायथन स्थापना का उपयोग करना चाहिए?
- 20. मुझे किस ओपनएसएल का संस्करण उपयोग करना चाहिए?
- 21. मुझे किस दस्तावेज़म एपीआई का उपयोग करना चाहिए?
- 22. मुझे किस पर्ल डेटाबेस इंटरफ़ेस का उपयोग करना चाहिए?
- 23. मुझे किस चेकसम एल्गोरिदम का उपयोग करना चाहिए?
- 24. एनएलटीके में मुझे किस शब्द स्टेमर का उपयोग करना चाहिए?
- 25. मुझे GC.SuppressFinalize() का उपयोग कब करना चाहिए?
- 26. मुझे डोलॉल्स का उपयोग क्यों करना चाहिए?
- 27. क्या मुझे एकाधिक ज्ञान अड्डों का उपयोग करना चाहिए?
- 28. मुझे किस निर्भरता को इंजेक्ट करना चाहिए?
- 29. नियम इंजन के लिए डीएसएल बनाने में किस तकनीक का उपयोग करना है?
- 30. रिकॉर्ड को संग्रहीत करने के लिए मुझे किस डेटाबेस का उपयोग करना चाहिए, और मुझे इसका उपयोग कैसे करना चाहिए?
में पाया जा सकता आप हमारे हाल में जारी Gandalf (http://gndf.io) को देखने के लिए कोशिश कर सकते हैं। यह एक ओपन-सोर्स निर्णय इंजन है जो आपको किसी भी डेटा मॉडल पर किसी भी नियम को परिभाषित करने और निर्णय तालिका के रूप में या अपने ग्राहकों को स्कोर करने के लिए उपयोग करने की अनुमति देता है। यह शीर्ष PHP लैरवेल ढांचे पर निर्मित है और मोंगोडीबी में डेटा स्टोर करता है। –