ظهور data classها در کاتلین ساخت کلاسهای مدل رو خیلی ساده کردن. پلاگین JsonToKotlinClass بار ساخت data classها رو هم از دوش برنامهنویسها برداشته و فقط با paste کردن رشته JSON، کلاسها رو به صورت اتوماتیک برامون میسازه.
در ادامه نحوه نصب و کار با این پلاگین رو توضیح میدم.
در اندروید استودیو از طریق مسیر Settings > Plugins قسمت MarketPlace رو انتخاب کرده و JsonToKotlinClass رو سرچ کنید. بعد از نصب اندروید استودیو میگه که باید ریاستارت بشه تا بتونید از این پلاگین استفاده کنید.
فرض کنید جوابی که از api میگیریم به صورت زیر هست و قراره کلاسهای مدل رو ایجاد کنیم:
{ "results": [ { "gender": "male", "name": { "title": "mr", "first": "brad", "last": "gibson" }, "location": { "street": "9278 new road", "city": "kilcoole", "state": "waterford", "postcode": "93027", "coordinates": { "latitude": "20.9267", "longitude": "-7.9310" }, "timezone": { "offset": "-3:30", "description": "Newfoundland" } }, "email": "brad.gibson@example.com", "login": { "uuid": "155e77ee-ba6d-486f-95ce-0e0c0fb4b919", "username": "silverswan131", "password": "firewall", "salt": "TQA1Gz7x", "md5": "dc523cb313b63dfe5be2140b0c05b3bc", "sha1": "7a4aa07d1bedcc6bcf4b7f8856643492c191540d", "sha256": "74364e96174afa7d17ee52dd2c9c7a4651fe1254f471a78bda0190135dcd3480" }, "dob": { "date": "1993-07-20T09:44:18.674Z", "age": 26 }, "registered": { "date": "2002-05-21T10:59:49.966Z", "age": 17 }, "phone": "011-962-7516", "cell": "081-454-0666", "id": { "name": "PPS", "value": "0390511T" }, "picture": { "large": "https://randomuser.me/api/portraits/men/75.jpg", "medium": "https://randomuser.me/api/portraits/med/men/75.jpg", "thumbnail": "https://randomuser.me/api/portraits/thumb/men/75.jpg" }, "nat": "IE" } ], "info": { "seed": "fea8be3e64777240", "results": 1, "page": 1, "version": "1.3" } }
روی پکیج مورد نظر کلیک راست کرده و Kotlin data class File from JSON رو انتخاب میکنیم. کد JSON بالا رو توی صفحه باز شده paste کرده، اسم مد نظرمون برای کلاس رو نوشته و generate رو میزنیم و تامام!
کلاسهای مدل به همین سادگی ساخته شد :)