C# (.NET) मानक पुस्तकालय: पूर्ण अवलोकन
\n\n.NET मानक पुस्तकालय (Base Class Library, BCL) कक्षाओं, इंटरफेस और मान प्रकारों का एक मौलिक सेट है जो .NET प्लेटफ़ॉर्म का हिस्सा है। यह C# डेवलपर्स को सामान्य कार्यों को हल करने के लिए तैयार घटक प्रदान करता है: संग्रह और फ़ाइलों के साथ काम करने से लेकर नेटवर्क संचार और एसिंक्रोनस प्रोग्रामिंग तक। इस लेख में, हम प्रमुख नेमस्पेस और कक्षाओं पर विस्तार से चर्चा करेंगे जिन्हें प्रत्येक C# डेवलपर को जानना चाहिए।
\n\n1. System नेमस्पेस — सब कुछ का आधार
\nमूल नेमस्पेस System में मौलिक प्रकार शामिल हैं:
- \n
- मूल डेटा प्रकार:
Object,String,Int32,Double,Booleanऔर अन्य। \n - उपयोगिताएँ:
Console(इनपुट/आउटपुट),Math(गणितीय फ़ंक्शन),Random(यादृच्छिक संख्या उत्पादन)। \n - त्रुटि प्रबंधन:
Exceptionऔर इसके वंशज (ArgumentException,NullReferenceExceptionआदि)। \n
उपयोग का उदाहरण:
\nusing System;\n\nclass Program\n{\n static void Main()\n {\n Console.WriteLine("नमस्ते, .NET!");\n double result = Math.Sqrt(144);\n Console.WriteLine($"144 का वर्गमूल: {result}");\n }\n}\n\n\n2. System.Collections — संग्रह के साथ काम करना
\nवस्तुओं के समूहों को संग्रहीत और प्रबंधित करने के लिए नेमस्पेस। इसे सामान्यीकृत (generic) और गैर-सामान्यीकृत संग्रहों में विभाजित किया गया है।
\nमुख्य वर्ग:
\n- \n
List<T>— इंडेक्स द्वारा तीव्र पहुँच वाला गतिशील ऐरे। \n Dictionary<TKey, TValue>— साहचर्य ऐरे (हैश टेबल)। \n Queue<T>— कतार (FIFO)। \n Stack<T>— स्टैक (LIFO)। \n HashSet<T>— अद्वितीय तत्वों का सेट। \n
उदाहरण:
\nusing System.Collections.Generic;\n\nvar numbers = new List<int> { 10, 20, 30 };\nnumbers.Add(40);\n\nvar lookup = new Dictionary<string, int>\n{\n ["एक"] = 1,\n ["दो"] = 2\n};\n\nConsole.WriteLine(lookup["दो"]); // 2\n\n\n3. System.Linq — Language Integrated Query
\nLINQ संग्रह, डेटाबेस और XML पर SQL-जैसी क्वेरी निष्पादित करने की अनुमति देता है। मुख्य विस्तार विधियाँ:
\n- \n
Where()— फ़िल्टरिंग। \n Select()— प्रोजेक्शन। \n OrderBy()— सॉर्टिंग। \n GroupBy()— ग्रुपिंग। \n Aggregate()— एग्रीगेट फ़ंक्शन (Sum, Count, Average)। \n
उदाहरण:
\nusing System.Linq;\n\nint[] scores = { 85, 92, 78, 95, 88 };\nvar highScores = scores\n .Where(s => s >= 90)\n .OrderByDescending(s => s)\n .ToList();\n\nConsole.WriteLine(string.Join(", ", highScores)); // 95, 92\n\n\n4. System.IO — फ़ाइलों और स्ट्रीम के साथ काम करना
\nडेटा इनपुट-आउटपुट के लिए नेमस्पेस। मुख्य वर्ग:
\n- \n
File/FileInfo— फ़ाइलों का निर्माण, पढ़ना, लिखना। \n Directory/DirectoryInfo— निर्देशिकाओं के साथ काम करना। \n StreamReader/StreamWriter— टेक्स्ट स्ट्रीम पढ़ना/लिखना। \n FileStream— फ़ाइलों के साथ निम्न-स्तरीय कार्य। \n
लेखन और पढ़ने का उदाहरण:
\nusing System.IO;\n\nstring path = "example.txt";\nFile.WriteAllText(path, "नमस्ते, .NET!");\n\nstring content = File.ReadAllText(path);\nConsole.WriteLine(content); // नमस्ते, .NET!\n\n\n5. System.Threading.Tasks — एसिंक्रोनस प्रोग्रामिंग
\nasync और await कीवर्ड के माध्यम से एसिंक्रोनसिटी का आधुनिक दृष्टिकोण। मुख्य वर्ग