Saya memiliki Model Car di aplikasi iOS saya di mana parameternya seperti nama, tahun, nilai dll diambil dari layanan web untuk mengisi daftar dengan data mobil.
Di mana saya harus meletakkan metode yang asinkron ke server dan mengembalikan array mobil (metode ini sudah mengubah JSON ke array Mobil)?
Pendekatan saya saat ini adalah metode statis di kelas Mobil saya yang menerima HttpClient (jadi saya dapat mengujinya mengejek klien) dan mengembalikan NSArray mobil, apakah ini bagus?
Apa yang telah kalian lakukan dalam situasi ini?
Saya khawatir karena saya baru-baru ini mulai membaca kode bersih yang mengatakan bahwa Kelas harus melakukan hanya satu hal, dan cara saya sekarang tampaknya melakukan 2 hal (menyimpan informasi tentang Mobil dan mendapatkan daftar mobil).
sumber
Di sini menyimpan objek lain harus disimpan di suatu tempat yang tidak dapat dijamin bahwa orang tua akan selalu hidup untuk memproses respons.
Saya menyarankan untuk menjaga implementasi ini di kelas tunggal. Menjaga kelas ini juga akan berguna untuk beberapa implementasi metode generik yang dapat disebut sangat sering.
sumber
Anda dapat memanggil metode asinkron dalam metode ViewDidLoad ketika array kembali dari web, menyegarkan tampilan. Anda dapat menyimpan array dalam database, jadi Anda tidak perlu memuat data dari web setiap kali beban Viewcontroller dimuat.
sumber