Sobes.tech
Junior — Middle

Ilovalar server qismi bilan o'zaro aloqada bo'lish uchun interfeyslar ishlab chiqishda tajribangiz bormi?

sobes.tech AI

AIdan javob

Ha, iOS ilovalarini ishlab chiqish doirasida, server bilan o'zaro aloqada bo'lish uchun interfeyslar yaratganman. Bu odatda URLSession yordamida HTTP so'rovlarini yuborish va JSON formatidagi javoblarni qayta ishlashni o'z ichiga olardi. Quvvat va kengaytirilganlik uchun ko'pincha MVC yoki MVVM naqshlari va Codable dan foydalanilgan.

API ga oddiy so'rov misoli:

struct User: Codable {
    let id: Int
    let name: String
}

func fetchUser(completion: @escaping (User?) -> Void) {
    let url = URL(string: "https://api.example.com/user")!
    URLSession.shared.dataTask(with: url) { data, response, error in
        guard let data = data, error == nil else {
            completion(nil)
            return
        }
        let user = try? JSONDecoder().decode(User.self, from: data)
        completion(user)
    }.resume()
}