JSON مخفف “JavaScript Object Notation”، فرمتی سبک وزن برای ذخیره و انتقال دادهها است. این فایل اغلب زمانی استفاده میشود که دادهها از یک سرور به صفحه سایت ارسال میشوند. کدهای JSON بهقدری ساده هستند که بهراحتی توسط عموم درک میشوند.پس در این مقاله با ما همراه باشید تا به جزئیات بیشتری درباره این فایلها و جذابیتشان بپردازیم. ما در این نوشتار «json چیست» را پاسخ میدهیم و مزایای آن، ساختار کدها، آموزش کار با JSON و نحوه باز کردن فایلهای JSON را بررسی میکنیم.
json چیست؟
نشانگذاری شی جاوااسکریپت (JSON)، یک قالب استاندارد مبتنیبر متن برای نمایش دادههای ساختاریافته، براساس سینتکس اشیا جاوااسکریپت است. بهطور معمول، این زبان برای انتقال دادهها در وباپلیکیشنها استفاده میشود. برای مثال، ارسال برخی از دادهها از سرور به کلاینت.
بنابراین میتوان دستورات و محتوای این فایل را در یک صفحه وب نمایش داد.
در این فایل، جفتهای کلید-مقدار باید از نوع رشته (String) بوده و مقدار هم میتواند یکی از انواع دادههای زیر باشد:
- شماره (Number)
- رشته (String)
- بولین (Boolean)
- آرایه (Array)
- شی (Object)
- تهی (Null)
در JSON، دادههای نیمه ساختاریافته – دادههایی که از منابع و دستگاههای مختلف ازجمله تلفنهای همراه، مرورگرهای وب، سرورها و دستگاههای اینترنت اشیا منشا میگیرند – بهعنوان پیامهایی بهنام “Events” جمعآوری میشوند. سپس این پیامها بهطور منطقی در دستههای سازماندهیشده قرار گرفته و به یک پلتفرم داده، از طریق پایپلاین داده ارسال میشوند.
بیشتر بخوانید: apm چیست و چه کمکی به توسعهدهندههای نرمافزار میکند؟
8 مزیت JSON در سناریوهای واقعی
در ادامه به چند مزیت JSON که بسیار مورد توجه قرار گرفتهاند، اشاره خواهیم کرد.
1. سادگی و خوانایی
بهدلیل طراحی و سینتکس بسیار ساده، انعطافپذیری، سهولت استفاده و درک، این فرمت داده یک استاندارد جهانی است. بههمیندلیل یکی از اصلیترین مزیت JSON را ارسال دادهها از سرور به کلاینت و برعکس میدانیم.
2. فرمت سبک وزن
JSON بهطور کلی فشردهتر از فایلهای XML است. همین موضوع منجربه کاهش حجم دادههای در حال انتقال میشود. این فشردگی تجزیه و پردازش سریعتر را در کنار بهبود عملکرد وباپلیکیشنها ارائه میدهد.
3. ساختار بسیار سازگار
برخلاف فایلهای CSV که از ستونها و ردیفهای رابطهای استفاده میکنند، فایلهای JSON دادهها را در اشیا و آرایههای تودرتو ذخیره میکنند که حاوی مقادیر مهمی هستند. این ساختار با انواع پلتفرمها، زبانها و نرمافزارهای مدرن، سازگاری بسیار بالایی دارد؛ چون ستونهای موجود در منبع داده، باعث محدود شدن افزودن دادههای جدید به مجموعه نمیشوند.
4. مناسب توسعه پلتفرمهای آنلاین
هنگامیکه یک کاربر با وباپلیکیشن تعامل میکند – برای مثال خریدی از فروشگاه اینترنتی انجام میدهد – اپلیکیشن ورودی کاربر را با فرمت JSON به سرور میفرستد. سپس دادهها توسط سرور پردازش شده و پاسخی را با همان قالب برمیگرداند.
بیشتر بخوانید: آموزش ساخت فروشگاه اینترنتی و راه اندازی فروشگاه آنلاین
5. مناسب ذخیره تنظیمات پیکربندی
ذخیره تنظیمات پیکربندی برنامهها در فایل JSON، به توسعهدهندگان اجازه میدهد تا تنظیمات برنامه را بدون تغییر کد، اصلاح و ذخیره کنند.
6. استقلال کامل
JSON یک زبان Language-Agnostic است؛ به این معنی که میتوان آن را تقریبا با هر زبان برنامهنویسی دیگری که از تجزیه متن پشتیبانی میکند، ادغام و استفاده کرد.
7. سازگاری بالا با فناوریهای وب
یکی از عمدهترین کاربردهای JSON، سازگاری مطلوب با فناوریهای مدرن ازجمله AJAX، RESTful API و WebSockets است. بسیاری از مرورگرها و سرورهای وب هم بهصورت بومی از JSON پشتیبانی میکنند.
8. پشتیبانی بومی در پایگاههای داده
بسیاری از سیستمهای مدیریت پایگاه داده (dbms چیست؟)، ازجمله NoSQL و RDBMS، JSON را بهعنوان یک نوع داده بومی میشناسند و از آن استفاده میکنند. بنابراین امکان ذخیره کردن و کوئری زدن را بهشکل آسان و غنی تجربه خواهیم کرد؛ جاییکه دیگر دغدغه کار با دادههای نیمه ساختاریافته را نداریم.
ساختار کدهای JSON چگونه است؟
ساختار کدهای JSON از همان سینتکس نشانهگذاری شی در جاوااسکریپت مشتق شده است و خصوصیات زیر را دارد:
- دادهها بهصورت جفت کلید/مقدار هستند؛
- داده ها با کاما از هم جدا میشوند؛
- بریسهای مواج – {} – آبجکتها را نگه میدارند؛
- براکتهای مربع محلی برای نگهداری آرایهها هستند.
بر این اساس، ساختار کدهای JSON بدون محدودیت نیست و باید اطلاعات ارائهشده برای کلیدها و مقادیر، از فرمت خاصی تبعیت کنند. برای مثال، همه کلیدها باید رشتههایی باشند که با جفت گیومهها نوشته میشوند. این موضوع درباره مقادیر با یک تفاوت جزئی هم صادق است.
یک نمونه واقعی از ساختار کدهای JSON، دستورات زیر است:
JSON } ,"squadName": "Super hero squad" , "homeTown": "Metro City" , "formed": 2016 , "secretBase": "Super tower" , "active": true ] : "members" } ,"name": "Molecule Man" , "age": 29 , "secretIdentity": "Dan Jukes" "powers": ["Radiation resistance", "Turning tiny", "Radiation blast"] ,{ } ,"name": "Madame Uppercut" ,"age": 39 ,"secretIdentity": "Jane Wilson" ] : "powers" ,"Million tonne punch" , "Damage resistance" "Superhuman reflexes" [ ,{ } , "name": "Eternal Flame" , "age": 1000000 , "secretIdentity": "Unknown" ] : "powers" , "Immortality" , "Heat Immunity" , "Inferno" , "Teleportation" "Interdimensional travel" [ { [ {
3 کاربرد فایل JSON در دنیای واقعی
کاربردهای فایل JSON را در ادامه مشاهده میکنید.
1. ذخیره دادهها به شکلی خوانا برای انسان
JSON به دلیل ساختار ساده و خوانایی، به طور گسترده در APIها و سیستمهای مختلف استفاده میشود. یکی از کاربردهای مهم JSON در پلتفرمهای توسعه بکاند مانند Firebase است. در Firebase، دادهها به صورت JSON ذخیره و بازیابی میشوند. برای آشنایی بیشتر با Firebase و نحوه استفاده از آن، به مقاله فایربیس چیست مراجعه کنید. این نوع فایل یک فرمت قابل خواندن برای انسان، ذخیره و اصلاح دادهها است که بهطور گسترده، هنگام ساختن نرمافزار توسط توسعهدهندگان بهکار میرود. بسیاری از زبانهای مختلف برنامهنویسی با دادههای JSON سازگار هستند.
2. تبادل داده میان طیف گستردهای از پلتفرمهای تکنولوژیمحور
قالب داده JSON یک فایل استاندارد منبع باز (json.) است که برای تبادل داده بر بستر اشکال مختلف فناوری استفاده میشود. رایجترین استفاده از دادهها و فایلهای JSON، خواندن دادهها از سرور برای نمایش یک وبسایت یا وباپلیکیشن است. همچنین تغییر دادهها با توجه به مجوزهای صحیح هم از کاربردهای دیگر در این دسته هستند.
3. استفاده در انواع زبانهای برنامهنویسی
بسیاری از نرمافزارهای کامپیوتری، اپلیکیشنها، برنامههای گوشیهای هوشمند و سایر دستگاههای نوین از فایلهای JSON استفاده میکنند. بنابراین آن را یک زبان مشترک بین تمام برنامههای دنیا میدانیم که در هر کشور و توسط هر برنامهنویسی قابل استفاده است.
آموزش کار با کدهای JSON
برای کار با کدهای JSON، به اندک دانشی درباره HTML، CSS و جاوااسکریپت نیاز داریم. همچنین باید مفاهیم شیگرایی را بدانیم تا بهراحتی با این کدها ارتباط برقرار کنیم.
با این پیشفرض که نیازهای بالا را برآورده میکنید، بهسراغ آموزش کار با کدهای JSON میرویم.
رشته
هر مقدار رشته باید همیشه از علامت دو نقلقول استفاده کند. کلیدها هم باید از نوع String باشند. ساختار کدهای JSON برای تعریف این دستور، بهشکل زیر است:
} "name":"John" {
اعداد
مقادیر عددی در JSON باید یک عدد صحیح یا اعداد ممیز شناور (Floating-point) باشند. عدد ممیز شناور عددی است با مقدار اعشار مانند؛ 0، 3.11، 7.3، و -109.5. ساختار تعریف این مقادیر اعدادی را در جدول زیر آوردهایم:
} "Age":"30" {
اشیا
هنگامیکه اشیا را به مقداری در یک جفت اختصاص میدهیم، از بریسهای مواج برای نگهداری اطلاعات آن استفاده میکنیم. بااینحال، حتی اطلاعات درون این بریسها هم با استفاده از قوانین سینتکس فرمتدهی میشوند. اما تعریف شی در JSON، بهطور معمول بهشکل زیر انجام میشود:
} "employee":{"name":"John", "age":30, "city":"New York"} {
آرایهها
آرایهها از چند جنبه مختلف بسیار شبیه یکدیگر هستند؛ ازجمله فرمت و سینتکس رشتهها و اعداد. تنها تفاوت میان هر نوع آرایه این است که چگونه مقادیر را با استفاده از براکتهای مربع، در آرایه اصلی قرار میدهیم.
} "employees":["John", 30, "Peter"] {
بولین
مقادیر Boolean زمانی استفاده میشوند که دادهها یا مقدار درست یا نادرست دارند؛ مانند فروش یک محصول یا مجوزهای لازم برای احراز هویت.
} "Sale":true {
تهی
null یک کلمه کلیدی منحصربهفرد برای مشخص کردن کلیدی است که هنوز مقداری به آن اختصاص داده نشده است؛ اما خالی هم نیست. بهطور معمول از null برای شناسایی تایید کمبود مقدار استفاده میشود. به این ترتیب، هنگامیکه این داده بهعنوان یک Boolean در دسترس قرار میگیرد، false برمیگرداند.
} "Middlename":null {
چگونه فایل JSON را باز کنیم؟
باز کردن فایلهای JSON بسیار سادهتر از آن چیزی است که فکر میکنید. این فایلها ساختار دادهای بسیار ساده و مبتنیبر متن دارند. بههمیندلیل هم میتوانید از هر برنامه متنی برای مشاهده کدها و محتوای فایل JSON استفاده کنید؛ مانند Notepad ویندوز، ویرایشگرهای متن و حتی رابطهای خط فرمان. ما در ادامه لیستی از برنامههایی که امکان باز کردن فایل JSON را فراهم کردهاند، آوردهایم.
- Notepad ویندوز
- Notepad++
- GitHub Atom
- Microsoft Visual Studio Code
بیشتر بخوانید: بوت استرپ چیست و چطور به طراحی سایت کمک میکند؟
جمع بندی
مهمترین نکته درباره فایلهای JSON، سادگی در ساخت و استفاده از آنها است. این امتیاز مزایای زیادی مانند سازگاری در بین پلتفرمها، همخوانی با اپلیکیشنهای مدرن و ادغام یکپارچه با پایگاه دادههای مختلف را ایجاد میکند. از ساختار کدهای JSON در مدیریت تبادل دادهها استفاده میکنیم؛ چون با زبانهای برنامهنویسی رایج سازگاری بالایی دارد و در بسیاری از پلتفرمها و نرمافزارها، تقریبا بدون دردسر کار میکند.
تجربه شما در استفاده از فایل JSON چه بوده است؟ آیا نکتهای را از قلم انداختهایم که مایلید آن را با ما در میان بگذارید؟ بخش نظرات این پست، جایگاهی برای ثبت نظر و دیدگاه شما است. پس همین حالا آن را با ما و سایر مخاطبان بهاشتراک بگذارید.
سوالات متداولی که شما میپرسید
1. فایل JSON چیست؟
فایلی که کدهای آن کاملا مشابه کدهای جاوااسکریپت است و فقط مقادیر عددی و رشتهای را نگه میدارد.
2. مزیت JSON چیست؟
سادگی و خوانایی بالا برای انسان دو مزیت JSON و برجستهترین آنها هستند.
3. آیا میتوان فایل JSON را در ویندوز باز کرد؟
بله. برنامه Notepad برای این کار مناسب است.
منابع: