Avatar ·

C# में डिक्लेरेटिव और इम्पेरेटिव प्रोग्रामिंग में क्या अंतर है?

सभी को नमस्ते! मैं एक शुरुआती C# डेवलपर हूं, और मुझे "इम्पेरेटिव" और "डिक्लेरेटिव" प्रोग्रामिंग शब्दों से लगातार भ्रम होता है। मैंने अलग-अलग लेख पढ़े, लेकिन व्यवहार में अंतर पूरी तरह से समझ नहीं आया।\n\nउदाहरण के लिए, मैं संख्याओं की सूची को फ़िल्टर करने के लिए यह कोड लिखता हूं:\n\n
List<int> numbers = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };\nList<int> evenNumbers = new List<int>();\n\nfor (int i = 0; i < numbers.Count; i++)\n{\n    if (numbers[i] % 2 == 0)\n    {\n        evenNumbers.Add(numbers[i]);\n    }\n}
\n\nयह इम्पेरेटिव दृष्टिकोण है, है ना? मैं स्पष्ट रूप से बता रहा हूं कि कैसे करना है: लूप बनाना, शर्त जांचना, सूची में जोड़ना।\n\nलेकिन फिर मैं दूसरा तरीका देखता हूं:\n\n
var evenNumbers = numbers.Where(n => n % 2 == 0).ToList();
\n\nयह पहले से ही डिक्लेरेटिव है।