ویدیو json چیست
در این ویدیو با مفهوم جیسان (json) آشنا خواهید شد. json یک روش پرکاربرد برای انتقال داده بین برنامه ها و سیستم ها میباشد. نوع داده json ابتدا برای جاوااسکریپت ساخته شد اما حالا مستقل شده و میتوانید در زبان های دیگر از آن استفاده کنید. برنامه نویس آمریکایی Douglas Crockford در اوایل سال 2000 نوع داده جیسان را معرفی کرد.
# ساختار داده json چیست؟
ساختار داده json یک فرمت مبتنی بر متن برای ذخیره و انتقال داده ها است به شکلی که برای انسان قابل خواندن و برای ماشین قابل تجزیه باشد. در نتیجه یادگیری و عیب یابی json نسبتا آسان است. اگرچه json اولین بار برای جاوااسکریپت ساخته شد اما به یک ساختار داده بسیار توانا تبدیل شده است که تبادل اطلاعات را در پلتفرم ها و زبان های برنامه نویسی مختلف ساده میکند. اگر در زمینه توسعه وب، تجزیه تحلیل دادهها یا مهندسی نرم افزار مشغول هستید مطمئنا یادگیری json برای شما مفید خواهد بود.
نوع داده json معمولا توسط برنامه نویسان وب برای انتقال داده ها بین سرور و کاربر استفاده میشود. معمولا مرورگر درخواست خود را توسط json به سرور ارسال کرده و سرور پس از پردازش داده ها، میتواند پاسخ را دوباره به شکل json برگرداند.
از آنجایی که json مستقل از زبان برنامه نویسی است برای تبادل اطلاعات بین پلتفرم ها ایده آل است. به عنوان مثال، برنامه ای که با جاوا نوشته شده است میتواند داده های json را به برنامه ای که با پایتون نوشته شده است ارسال کند. یا یک برنامه تلفن همراه که با جاوا اسکریپت نوشته شده است می تواند از JSON برای برقراری ارتباط با یک سرور back-end نوشته شده به زبان PHP استفاده کند.
# مثال از نوع داده json
فرمت json داده ها را به شکل سلسله مراتبی نمایش میدهد و هر بخش از اطلاعات را به شکل key-value ذخیره میکند. داده های json در یک آکولاد قرار گرفته و هر جفت از اطلاعات با کاما از یکدیگر جدا میشوند. به عنوان مثال، JSON زیر اطلاعات تماس یک شخص را نشان می دهد:
{
"name": "Jane Smith",
"age": 35,
"city": "San Francisco",
"phone": "014158889275",
"email": "janesmith@sample.com"
}
در مثال بالا name یک کلید و jane smith یک مقدار در داده json میباشد.
# انواع داده در json
در زمینه توسعه نرم افزار، شما میتوانید از انواع داده مختلفی برای ذخیره اطلاعات استفاده کنید. هر نوع داده مجموعه ای از ویژگی ها و رفتارهای خاص خود را دارد. json نیز از انواع داده string, number, object, array, boolean, null پشتیبانی میکند. در این قسمت از هر نوع داده یک مثال میزنیم:
برای ذخیره رشته یا string در json باید از علامت دو نقل قول استفاده کنید:
{"name":"John"}
برای اعداد میتوانید آنها را به شکل صحیح یا اعشاری در json ذخیره کنید:
{"age":30}
شما میتوانید از نوع داده object برای ایجاد کردن json تودرتو استفاده کنید. دقت کنید که آبجکت ها از همان سینتکس json استفاده میکنند:
{
"employee":{"name":"John", "age":30, "city":"New York"}
}
برای ذخیره چند مقدار در یک کلید json میتوانید از نوع داده آرایه استفاده کنید:
{
"employees":["John", "Anna", "Peter"]
}
میتوانید از نوع داده boolean برای ذخیره مقدار true یا false استفاده کنید:
{"sale":true}
در نهایت میتوانید برای خالی گذاشتن مقدار یک کلید از null استفاده کنید:
{"middlename":null}
نکته ای که باید دقت کنید این است که شما نمیتوانید از json برای ذخیره تابع(function) یا تاریخ(date) استفاده کنید.
# موارد استفاده از json
نوع داده json بسیار محبوب است و به طور گسترده توسط توسعه دهندگان استفاده میشود از جمله کسانی که مجبور به استفاده از api ها هستند. هر درخواستی که به api ارسال میشود و هر پاسخی که از api دریافت میشود، در اکثر مواقع به شکل json ذخیره شده است.
1. JSON برای انتقال داده ها بین سیستم ها و زبان های برنامه نویسی مختلف ایده آل است.
2. میتوانید از json برای ذخیره داده های موقت استفاده کنید. مثلا داده هایی که کاربر در فرم ارسال کرده است را میتوانید داخل json ذخیره کنید.
3. از json برای ذخیره و مدیریت پیکربندی های برنامه نیز استفاده میشود. برای مثال، فایلهای پیکربندی نوشته شده در قالب JSON میتوانند حاوی اطلاعات ضروری مانند جزئیات اتصال پایگاه داده، کلیدهای API یا تنظیمات برگزیده کاربر باشند.
# تفاوت انواع داده JSON و XML
باید بدانید که json تنها روش برای دخیره و انتقال داده های نیست. روش های دیگری مانند xml و yaml وجود دارد که میتوانید از آنها نیز استفاده کنید. xml نیز یک روش متنی مستقل از نرم افزار و سخت افزار است که برای انتقال و ذخیره داده ها بسیار پرکاربرد است. هر دو json و xml داده ها را به شکل سلسله مراتبی ذخیره کرده و به راحتی میتوانند توسط انسان خوانده شوند. همانند json شما میتوانید از xml در زبان های برنامه نویسی مختلف استفاده کنید.
با وجود تمام شباهت ها، json و xml تفاوت هایی نیز دارند. json کوتاه تر و برای خواندن و نوشتن سریعتر از xml است. در json میتوانید از آرایه استفاده کنید اما این امکان در xml وجود ندارد. در نهایت، پیشنهاد میشود که از json به جای xml استفاده کنید زیرا کار کردن با xml کندتر از json است.
در مثال پایین دو قطعه از json و xml را میبینید که هر دو اطلاعات مشابهی را نمایش میدهند:
#----- JSON Example
{"employees":[
{ "firstName":"John", "lastName":"Doe" },
{ "firstName":"Anna", "lastName":"Smith" },
{ "firstName":"Peter", "lastName":"Jones" }
]}
#----- XML Example
<employees>
<employee>
<firstName>John</firstName> <lastName>Doe</lastName>
</employee>
<employee>
<firstName>Anna</firstName> <lastName>Smith</lastName>
</employee>
<employee>
<firstName>Peter</firstName> <lastName>Jones</lastName>
</employee>
</employees>
ارسال نظر