Challenge creado para cuplir con la consigna del challenge de ML.
Model View View Model
Test sobre el parse del json de las respuestas de la búsqueda y de currencies.
Solo integré el package SDWebImage para demostrar como utilizar un paquete.
En caso de no usar paquete podría cargar las imágenes de la siguiente manera:
Cell
DispatchQueue.global(qos: .background).async {
if let url = URL(string: item.thumbnail),
let data = try? Data(contentsOf: url),
let image: UIImage = UIImage(data: data) {
DispatchQueue.main.async {
cell.thumbnail.image = image
}
}
}
Detail:
DispatchQueue.global(qos: .background).async {
if let url = URL(string: item.thumbnail),
let data = try? Data(contentsOf: url),
let image: UIImage = UIImage(data: data) {
DispatchQueue.main.async {
self.thumbnailImageView.image = image
}
}
}
No vi necesario utilizar un package para las llamadas a la API pero en caso de ser necesario podría agregarlo.
Mejoras en UI
Unit Tests en caso de network error