تعريف للغة الاستعلامات json


- ما هو JSON؟
- JSON هو تنسيق نصي يُستخدم لتبادل البيانات بين الخادم والعميل. إنه سهل القراءة والكتابة بالنسبة للبشر وسهل التحليل والتوليد بواسطة الآلات.

### التركيب

- الهيكل الأساسي لـ JSON:
- يتم تمثيل البيانات في JSON كأزواج من المفتاح والقيمة. يمكن أن تكون القيم نصوصًا، أرقامًا، كائنات، مصفوفات، أو قيم Boolean.

- المثال الأساسي:

```json
{
"name": "أحمد",
"age": 30,
"isStudent": false,
"courses": [
"رياضيات",
"فيزياء"
],
"address": {
"street": "123 شارع الأمل",
"city": "القاهرة"
}
}
```

#### التعريفات الأساسية:
- الكائنات (Objects): محاطة بأقواس معقوفة `{}` وتتكون من مجموعة من الأزواج المفاتيح/القيم.
- المصفوفات (Arrays): محاطة بأقواس مربعة `[]` وتحتوي على قائمة من القيم.

### القواعد الأساسية

1. المفاتيح دائماً تكون نصوص موضوعة بين علامات اقتباس مزدوجة.
2. القيم يمكن أن تكون نصوص، أرقام، كائنات، مصفوفات، أو قيم Boolean.
3. الأزواج المفاتيح/القيم مفصولة بفواصل.
4. لا تستطيع استخدام تعليقات في JSON.

### الاستخدامات

1. تبادل البيانات بين الخادم والعميل:
- تُستخدم بشكل شائع مع واجهات برمجة التطبيقات (APIs) الخاصة بتطبيقات الويب.

2. تخزين الإعدادات:
- يُمكن استخدام ملفات JSON لتخزين الإعدادات والتكوينات في التطبيقات.

3. تمثيل البيانات:
- يُستخدم لتمثيل البيانات المعقدة في التطبيقات، مثل قواعد البيانات.

### التحليل وإنشاء JSON

- في JavaScript:
- يمكنك استخدام `JSON.parse()` لتحليل سلسلة نصية إلى كائن JavaScript، و`JSON.stringify()` لتحويل كائن إلى نص JSON.

```javascript
// تحليل JSON
const jsonString = '{"name": "أحمد", "age": 30}';
const obj = JSON.parse(jsonString);

// إنشاء JSON
const newObj = { name: "علي", age: 25 };
const jsonStringified = JSON.stringify(newObj);
```

### أهداف الدورة

- فهم مبادئ JSON.
- القدرة على قراءة وكتابة بيانات JSON.
- استخدام JSON للتواصل بين مكونات البرمجيات المختلفة.

### خاتمة

هذه كانت مقدّمة مختصرة حول JSON، تشكّل أساسيات التعامل مع هذا التنسيق الشائع. يُمكنك استكشاف المزيد من المصادر والكتب لتعمق أكثر في مفاهيم JSON واستخداماتها في البرمجة.

المشاركات الشائعة من هذه المدونة

تطبيق simple clinic للاندرويد وانظمة سطح المكتب وابل

مجموعة مكونات TMS فايرمونكي للبرمجة متعددة المنصات

Resizekit مكون لتغيير حجم النموذج