Ruby:
Робота з JSON

Як:

Ruby, зі своєю стандартною бібліотекою, надає безшовні способи розбору та генерування JSON. Основний модуль для цих операцій - json, який можна легко інтегрувати в будь-який додаток Ruby.

Розбір JSON:

Щоб перетворити рядок JSON на хеш Ruby, ви можете використовувати метод JSON.parse.

require 'json'

json_string = '{"name": "John Doe", "age": 30, "city": "New York"}'
ruby_hash = JSON.parse(json_string)

puts ruby_hash
# Вивід: {"name"=>"John Doe", "age"=>30, "city"=>"New York"}

Генерування JSON:

Навпаки, щоб перетворити хеш Ruby на рядок JSON, використовуйте метод JSON.generate або метод to_json, доступний на об’єктах Ruby після того, як бібліотека json є підключеною.

require 'json'

ruby_hash = { name: "Jane Doe", age: 25, city: "Los Angeles" }
json_string = ruby_hash.to_json

puts json_string
# Вивід: {"name":"Jane Doe","age":25,"city":"Los Angeles"}

Бібліотеки сторонніх розробників:

Хоча стандартна бібліотека Ruby покриває базову обробку JSON, багато проектів покладаються на бібліотеки сторонніх розробників для розширеної функціональності та продуктивності. Одним з популярних варіантів є Oj (Optimized JSON).

Розбір з Oj:

require 'oj'

json_string = '{"name": "Alex", "age": 40, "city": "Chicago"}'
ruby_hash = Oj.load(json_string)

puts ruby_hash
# Вивід: {"name"=>"Alex", "age"=>40, "city"=>"Chicago"}

Генерування з Oj:

Oj також пропонує швидкий спосіб генерування JSON з об’єктів Ruby:

require 'oj'

ruby_hash = { name: "Samantha", age: 35, city: "Miami" }
json_string = Oj.dump(ruby_hash)

puts json_string
# Вивід: {"name":"Samantha","age":35,"city":"Miami"}

Ці приклади ілюструють прямолінійний характер роботи з JSON у Ruby, що робить його доступним для завдань від простої маніпуляції даними до складних комунікацій API.