0Pricing
C# Academy · درس

العمل مع JSON وXML

عالج البيانات المنظمة باستخدام JSON وXML في تطبيقات C#

العمل مع JSON وXML درس مجاني في C# Academy على CoddyKit. هذا هو الدرس 2 من أصل 5. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C# Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C# Academy 5 دروس في المجموع.

مقدمة إلى JSON وXML

التعامل مع JSON وXML

مرحبًا بكم في الدرس التالي! ستتعلّمون في هذا الدرس كيفية التعامل مع JSON وXML باستخدام C#، وهما تنسيقان شائعان لتخزين البيانات وتبادلها. لنبدأ!

العمل مع JSON وXML — رسم توضيحي 1

ما المقصود بـ JSON؟

ما المقصود بـ JSON؟

JSON (JavaScript Object Notation) هو تنسيق خفيف لتبادل البيانات. يسهل على البشر قراءته وكتابته، وعلى الآلات تحليله وإنشاءه.

مثال:

{
  "name": "Alice",
  "age": 25,
  "city": "New York"
}

نصيحة: يُستخدم JSON عادةً مع واجهات API ولتبادل البيانات بين التطبيقات.

التعامل مع JSON باستخدام C#

التعامل مع JSON باستخدام C#

يمكنكم استخدام مساحة الأسماء System.Text.Json للتعامل مع JSON باستخدام C#. مثال:

نقطة مهمة: استخدموا JsonSerializer لمعالجة JSON بطريقة بسيطة وفعالة.

using System;
using System.Text.Json;

class Program {
    static void Main() {
        string json = "{\"name\":\"Alice\",\"age\":25,\"city\":\"New York\"}";

        // Deserialize JSON to an object
        var person = JsonSerializer.Deserialize<Person>(json);
        Console.WriteLine($"Name: {person.Name}, Age: {person.Age}, City: {person.City}");

        // Serialize an object to JSON
        string newJson = JsonSerializer.Serialize(person);
        Console.WriteLine("Serialized JSON: " + newJson);
    }
}

class Person {
    public string Name { get; set; }
    public int Age { get; set; }
    public string City { get; set; }
}

ما المقصود بـ XML؟

ما المقصود بـ XML؟

XML (eXtensible Markup Language) هو تنسيق نصي مرن للبيانات المهيكلة. ويُستخدم عادةً لتخزين البيانات وملفات الإعدادات.

مثال:


  Alice
  25
  New York

نصيحة: XML أكثر إسهابًا من JSON، لكنه يدعم بُنى أكثر تعقيدًا وبيانات وصفية.

التعامل مع XML باستخدام C#

التعامل مع XML باستخدام C#

يمكنكم استخدام مساحة الأسماء System.Xml للتعامل مع XML باستخدام C#. مثال:

نقطة مهمة: استخدموا XmlSerializer لتحويل الكائنات إلى XML ومنها.

using System;
using System.Xml.Serialization;
using System.IO;

class Program {
    static void Main() {
        string xml = "<Person><Name>Alice</Name><Age>25</Age><City>New York</City></Person>";

        // Deserialize XML to an object
        var serializer = new XmlSerializer(typeof(Person));
        using (var reader = new StringReader(xml)) {
            var person = (Person)serializer.Deserialize(reader);
            Console.WriteLine($"Name: {person.Name}, Age: {person.Age}, City: {person.City}");
        }

        // Serialize an object to XML
        var newPerson = new Person { Name = "Bob", Age = 30, City = "San Francisco" };
        using (var writer = new StringWriter()) {
            serializer.Serialize(writer, newPerson);
            Console.WriteLine("Serialized XML: " + writer.ToString());
        }
    }
}

public class Person {
    public string Name { get; set; }
    public int Age { get; set; }
    public string City { get; set; }
}

مقارنة بين JSON وXML

مقارنة بين JSON وXML

إليكم مقارنة بين JSON وXML:

  • JSON: خفيف، وسهل القراءة والكتابة، ومثالي لواجهات API والتطبيقات الحديثة.
  • XML: أكثر إسهابًا، ويدعم البُنى المعقدة، ويُستخدم على نطاق واسع في الأنظمة القديمة وملفات الإعدادات.

نصيحة: اختاروا التنسيق بناءً على حالة الاستخدام وتعقيد البيانات.

تحدي تدريبي

تحدي تدريبي

أنشئوا برنامجًا يحوّل قائمة من الكائنات إلى تنسيقي JSON وXML، ثم يعيد تحويلها إلى كائنات. مثال:

using System;
using System.Collections.Generic;
using System.Text.Json;
using System.Xml.Serialization;
using System.IO;

class Program {
    static void Main() {
        var people = new List<Person> {
            new Person { Name = "Alice", Age = 25, City = "New York" },
            new Person { Name = "Bob", Age = 30, City = "San Francisco" }
        };

        // Serialize to JSON
        string json = JsonSerializer.Serialize(people);
        Console.WriteLine("JSON:\n" + json);

        // Serialize to XML
        var serializer = new XmlSerializer(typeof(List<Person>));
        using (var writer = new StringWriter()) {
            serializer.Serialize(writer, people);
            Console.WriteLine("XML:\n" + writer.ToString());
        }
    }
}

public class Person {
    public string Name { get; set; }
    public int Age { get; set; }
    public string City { get; set; }
}

أفضل الممارسات لاستخدام JSON وXML

أفضل الممارسات لاستخدام JSON وXML

إليكم بعض أفضل الممارسات:

  • استخدموا JSON لتبادل البيانات الخفيفة والقابلة للقراءة من قِبل البشر.
  • استخدموا XML للبُنى المعقدة وملفات الإعدادات الغنية بالبيانات الوصفية.
  • تحقّقوا من صحة تنسيقات البيانات لضمان التوافق.

نصيحة: استخدموا مكتبات مثل Newtonsoft.Json عند الحاجة إلى معالجة متقدمة لـ JSON.

مراجعة JSON وXML

أحسنتم!

تهانينا! لقد تعلّمتم كيفية التعامل مع JSON وXML لتخزين البيانات وتبادلها باستخدام C#. في الدرس التالي، سنستكشف معالجة الاستثناءات لجعل برامجكم أكثر متانة. لنواصل البرمجة!

العمل مع JSON وXML — رسم توضيحي 10

الأسئلة الشائعة

هل درس «العمل مع JSON وXML» مجاني؟

نعم — نص درس «العمل مع JSON وXML» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة C# Academy، انتقل إلى CoddyKit PRO. تتضمن دورة C# Academy 5 دروس في المجموع.

ماذا ستتعلم في «العمل مع JSON وXML»؟

عالج البيانات المنظمة باستخدام JSON وXML في تطبيقات C# تتمرن على C# Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ C# Academy؟

لا تُشترط خبرة سابقة. C# Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 5.

كم من الوقت يستغرق درس «العمل مع JSON وXML»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس C# Academy هذا؟

نعم. كل درس في C# Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. قراءة الملفات وكتابتها
  2. العمل مع JSON وXML
  3. فهم معالجة الاستثناءات
  4. العمل مع قواعد البيانات
  5. استخدام LINQ لاستعلامات البيانات
← العودة إلى C# Academy