मुझे अक्सर उपयोगकर्ता-संपादन योग्य कुछ प्रकार की नियम प्रणाली को लागू करने की आवश्यकता होती है - आवश्यकताएं आम तौर पर पर्याप्त होती हैं कि एक ही प्रणाली सीधे लागू नहीं होती है, इसलिए मैं अक्सर एक ही समस्या में भाग लेता हूं - मैं कैसे डिजाइन करूं शासन प्रणाली है किनियम प्रणालियों को डिजाइन करने के लिए अच्छे संदर्भ/सुझाव?
- पोषणीय
- है ठीक से उपयोग
- आसानी से बढ़ाया है की आसानी के साथ अभिव्यक्ति को संतुलित करता है (/ जब मैं (2) गलत है)।
मुझे लगता है कि नियम प्रणाली/डीएसएल बेहद मूल्यवान हैं, लेकिन मुझे उनकी डिजाइन करने की क्षमता के साथ सहज महसूस नहीं होता है।
आपको क्या संदर्भ/सुझाव देना है जो इसे आसान बनाने में मदद कर सकता है?
समस्याओं की प्रकृति की वजह से मैं चल रहा हूं, मौजूदा भाषाएं आम तौर पर लागू नहीं होती हैं। (उदाहरण के लिए, आप की आवश्यकता नहीं है कि सामान्य कंप्यूटर उपयोगकर्ता ईमेल फ़िल्टर लिखने के लिए पाइथन सीखें।) इसी तरह, भाषा, जैसे JESS, केवल आंशिक समाधान हैं, क्योंकि कुछ (सरल) उपयोगकर्ता इंटरफ़ेस की ज़रूरत है नियम भाषा के शीर्ष पर बनाया जाना चाहिए ताकि गैर-प्रोग्रामर इसका उपयोग कर सकें। इस इंटरफ़ेस में हमेशा कुछ विशेषताओं को हटाने, या उन सुविधाओं को उपयोग करने में अधिक कठिन बनाना शामिल है, और process ऊपर वर्णित वही समस्याएं उत्पन्न करता है।
संपादित करें: स्पष्ट करने के सवाल के बारे में डिजाइन एक नियम के इंजन, मैं पहले से बने नियम इंजन के लिए नहीं देख रहा हूँ। यदि आप एक नियम इंजन का सुझाव देते हैं, तो कृपया बताएं कि यह कैसे अच्छे डिजाइन निर्णय लेने के बारे में प्रश्न को संबोधित करता है।
मुझे यकीन नहीं है कि मैं अभिव्यक्ति पेड़ों की प्रयोज्यता को समझता हूं। क्या आप उन्हें नियम भाषा दुभाषिया के पहलू के रूप में सुझाव दे रहे हैं, या आप प्रत्येक नियम के विकल्पों का प्रतिनिधित्व करने के लिए उनका उपयोग करते हैं? मैं थोड़ा उलझन में हूँ। – rcreswick