جیسون در برنامه نویسی چیست؟ طریقه ایجاد جیسون با استفاده از کلاس های کاتلین
JSON یا JavaScript Object Notation یک فرمت متنی است که برای انتقال و تبادل داده ها استفاده می شود، این فرمت از زبان برنامه نویسی جاوا اسکریپت الهام گرفته است و به صورت خودکار به شیوه ای ساده و قابل فهم برای انسان ها ترجمه می شود، در این مقاله از نوری اکادمی، درباره جیسون در برنامه نویسی، ساختار و ویژگی های آن صحبت خواهیم کرد و همچنین توضیحاتی در مورد طریقه ایجاد جیسون با استفاده از کلاس های کاتلین ارائه می دهیم.
جیسون در برنامه نویسی
جیسون در برنامه نویسی در اصل یک فرمت داده است که برای نمایش اطلاعات استفاده می شود، اطلاعات در JSON به صورت جفتی از کلید و مقدار (Key & Value) ذخیره می شوند، کلید ها به صورت رشته ها نوشته می شوند و مقادیر می توانند از نوع های مختلفی مانند رشته، عدد، بولین، آرایه و شیء باشند.
یکی از ویژگی های مهم جیسون در برنامه نویسی، سادگی و قابلیت خوانایی آن است، ساختار آن به صورت مفهومی و قالب بندی شده است که برای برنامه نویسان و تحلیل گران داده آسان است، همچنین، JSON قابلیت پشتیبانی از ساختار های داده پیچیده تر مانند آرایه های تودرتو و شیء های تو در تو را داراست.
از آنجا که JSON به سادگی به شیوه ای ساختارمند داده ها را نمایش می دهد، بسیار مناسب برای ارسال و دریافت اطلاعات بین سیستم های مختلف است. به عنوان مثال، در اپلیکیشن های تحت وب، از JSON برای ارسال داده ها بین سمت کاربر (Front-end) و سمت سرور (Back-end) استفاده می شود.
با توجه به رشد روزافزون وب و تبدیل داده به یک عنصر حیاتی در برنامه نویسی، استفاده از JSON به عنوان یک فرمت انعطاف پذیر و رایج در صنعت برنامه نویسی شده است. فرمت JSON در بسیاری از زبان های برنامه نویسی، ابزار ها و پروتکل ها پشتیبانی می شود. از جمله زبان های برنامه نویسی که به طور گسترده از JSON استفاده می کنند، می توان به جاوا اسکریپت، پایتون، کاتلین، سی شارپ، Ruby و زبان های دیگر اشاره کرد.
کاربرد جیسون در برنامه نویسی
پس از این که توضیح مختصری درباره ی جیسون در برنامه نویسی ارائه دادیم، ممکن است سوال داشته باشید که کاربرد های رایج آن چیست، در ادامه به این مورد می پردازیم.
- ارسال و دریافت داده بین سمت کلاینت و سرور: JSON به عنوان یک فرمت ساده و قابل فهم، برای ارسال و دریافت داده ها بین سمت کلاینت و سرور استفاده می شود. این امکان را فراهم می کند تا اطلاعات به صورت یک جیسون از سمت سرور به کلاینت ارسال شده و در سمت کلاینت به راحتی مورد استفاده قرار گیرند.
- ذخیره وبسرویس ها و API: در ساخت وبسرویس ها و API، JSON برای ارسال و دریافت داده ها بین مشتری و سرویس دهنده استفاده می شود. این فرمت متناسب با استاندارد های رایج مانند RESTful API است و امکان تبادل داده های ساختارمند را فراهم می کند.
- ذخیره و تبادل داده های ساختارمند: JSON به عنوان یک فرمت ساختارمند و قابل فهم، در ذخیره و تبادل داده های مختلف استفاده می شود. می توان اطلاعاتی مانند تنظیمات، ترجمه ها، لیست ها، پیام ها و داده های دیگر را در قالب JSON ذخیره و به صورت متن باز تبادل کرد.
-
تبدیل داده ها بین زبان ها و فرمت های دیگر: جیسون در برنامه نویسی می تواند به عنوان یک فرمت میانی برای تبدیل داده ها بین زبان ها و فرمت های مختلف استفاده شود. با تبدیل داده ها به فرمت JSON، می توان آنها را به سادگی به فرمت های دیگری مانند XML، CSV یا YAML تبدیل کرد و بالعکس.
- ذخیره و تحلیل داده: JSON به عنوان یک فرمت قابل فهم و ساختارمند، در ذخیره و تحلیل داده ها نیز استفاده می شود. اپلیکیشن های تحلیل داده می توانند داده های JSON را به راحتی پردازش و تحلیل کنند و اطلاعات مفیدی را از آنها استخراج کنند.
- تبادل اطلاعات در اپلیکیشن های موبایل: در برنامه های موبایل که بر روی سیستم عامل های مختلف مانند iOS و Android اجرا می شوند، JSON برای تبادل اطلاعات بین برنامه و سرور استفاده می شود. با استفاده از JSON، اطلاعات مختلفی مانند تنظیمات کاربر، پروفایل کاربری، اطلاعات محصولات و غیره بین سیستم های مختلف قابل تبادل هستند.
در نهایت، برای استفاده از جیسون در برنامهنویسی، کتابخانه های مختلفی برای تولید، پارس و مدیریت داده های JSON وجود دارند. این کتابخانه ها به برنامه نویسان کمک می کنند تا به راحتی با داده های JSON کار کنند و عملیات مورد نیاز را انجام دهند.
جیسون در اندروید
JSON به عنوان یک استاندارد رایج در برنامه نویسی وب و همچنین موبایل شناخته می شود و برای تبادل داده بین سیستم های مختلف بسیار مناسب است، در زمینه توسعه اپلیکیشن های اندرویدی با کاتلین (Kotlin) و جاوا، JSON بسیار مهم و گسترده ترین فرمت برای تبادل داده ها به شمار می رود، زبان برنامه نویسی کاتلین، که توسط شرکت JetBrains توسعه داده شده است هم مانند برخی از دیگر زبان های برنامه نویسی به طور مستقیم از JSON پشتیبانی می کند و امکان تبدیل داده ها به فرمت JSON و برعکس را فراهم می کند.
یکی از کاربرد های رایج جیسون در برنامه نویسی اندروید، ارتباط با سرویس های وب است. اغلب وبسرویس ها و API ها، داده ها را در قالب JSON ارسال و دریافت می کنند، برای دریافت داده های JSON از سرویس های وب، در اندروید می توان از کتابخانه های مختلفی مانند Retrofit و Volley استفاده کرد. این کتابخانه ها امکان دریافت داده ها را از سرویس های وب در قالب JSON را فراهم می کنند و برنامه نویسان می توانند این داده ها را در قالب شیء های Kotlin استفاده کنند.
همچنین، کاتلین ابزار های قدرتمندی را برای پردازش داده های JSON در اختیار برنامه نویسان قرار می دهد. کتابخانه هایی مانند Gson و Moshi برای تبدیل دادههای JSON به شیء های Kotlin و برعکس استفاده می شوند. Gson، یکی از محبوب ترین کتابخانه ها در این زمینه است. این کتابخانه امکان تبدیل اشیاء Kotlin به رشته JSON و برعکس را فراهم می کند. به عبارت دیگر، با استفاده از Gson می توان اشیاء Kotlin را به صورت خودکار به فرمت JSON تبدیل کرده و همچنین از رشته های JSON شیء های Kotlin را بازیابی کرد.
در دوره نخبگان اندروید نوری آکادمی به اموزش های کامل و حرفه ای درمورد جیسون و رتروفیت و Gson دسترسی خواهید داشت.
طریقه ایجاد جیسون با کلاس های کاتلین
در توسعه اپلیکیشن های اندرویدی با زبان کاتلین، برای ایجاد و استفاده از جیسون با کلاس های کاتلین می توان از کتابخانه های مختلفی مانند Gson و kotlinx.serialization استفاده کرد. در این بخش به شیوه استفاده از کتابخانه ی Gson برای ایجاد جیسون با کلاس های کاتلین می پردازیم:
برای استفاده از Gson، ابتدا باید این کتابخانه را به پروژه اضافه کنید. برای ایجاد یک JSON با استفاده از یک کلاس Kotlin، می توانید مراحل زیر را دنبال کنید:
- تعریف کلاس کاتلین با پراپرتی های مطابق با جیسون
- ایجاد یک شی از کلاس تعریف شده و مقدار دهی به پراپرتی های آن
- ایجاد یک شی از کلاس Gson.
- استفاده از متد
toJson()
بر روی شی Gson و گذاشتن شیء مدربوطه به عنوان ورودی. این متد یک رشته JSON برگشت می دهد که می توانید آن را استفاده کنید.
به عنوان مثال، فرض کنید یک کلاس Person
با پراپرتی های name
و age
داریم:
data class Person(val name: String, val age: Int)
حالا می توانیم از Gson برای تبدیل یک شی از کلاس Person
به یک رشته جیسون استفاده کنیم:
val person = Person("John Doe", 30) val gson = Gson() val json = gson.toJson(person) println(json) // نمایش رشته جیسون حاوی اطلاعات
در این مقاله بطور مختصر به جیسون در برنامه نویسی پرداختیم و توضیحاتی در مورد آنو کاربردش در برنامه نویسی موبایل ارائه دادیم، در دوره ی نوری اکادمی که بالا تز لینکش را قرار دادیم می توانید به طور کامل با جیسون و ابزار هایی مثل gson آشنا شوید.
از این که تا انتهای این مقاله با من همراه بودید سپاس گزارم.