Как стать автором
Поиск
Написать публикацию
Обновить
1
0

Пользователь

Отправить сообщение
Вот код будет)) Один будет так писать, другой так, третий так)))
Просто отличная статейка!
Я до этого на C# танцевал лет 5. ))) я думаю везде танцы с бубном.
Ну не знаю, автор конечно молодец, но я бы использовал уже готовые решения c promise. В целом для чтива не плохой материал, почему бы и нет.
ааа все — это я очень «внимательно» читал=)
«Разместите этот код над методом viewDidLoad():
let user = User(name: „John“)
… но оператор print внутри deinit не был исполнен. Значит, этот объект не был освобождён, так как он не вышел из области видимости (scope).»
Очень странно, вообще deinit сработает, так как область видимости у let user — viewDidLoad.
В данном случае это не играет важной роли, так как у него всего один контроллер.
Глупый ответ, неужели вы бы требовали от разработчика на собеседовании писать такое — «objc_getAssociatedObject и т д».
Сами небось полезли гуглить. Без выкрутасов из коробки язык не позволяет этого делать — ответ верный, остальное только удовлетворение вашего самолюбия.
Странно, что в коде (репозиторий), автор игнорирует написание weak даже на делегаты.
А есть ссылка на код?
Пробовал vapor, но на go пока еще удобней писать сервера.
Еще, как пример для избежания цикла ссылок — это создание контекста перед замыканием:
let context = (
parser: parser,
schema: schema,
titleLabel: titleLabel,
textLabel: textLabel
)

dataLoader.loadData(from: url) { data in
// We can now use the context instead of having to capture 'self'
let model = try context.parser.parse(data, using: context.schema)
context.titleLabel.text = model.title
context.textLabel.text = model.text
}
“Lines logged: 1”...“Lines logged: 4”??
Вроде будет “Lines logged: 2”...“Lines logged: 4”

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность