Интерфейсы и протоколы в Swift разные концепции. Интерфейсы определяют поведение для конкретного типа, а протоколы создают общие требования для типов.
А почему нельзя протоколом определить поведение для конкретного типа?
Нарушает принцип абстракции и интерфейса, протоколы служат для определения "что" должно быть реализовано, а не "как" должно быть реализовано. Это помогает разделять интерфейс от реализации и улучшает модульность кода. Если я правильно понял вопрос
Где бы прочитать определение интерфейса? Не нагугливпется
Ну вот смотри. У тебя есть протокол ApiClient, содержащий метод getProduct(). Ты можешь создать два класса: реализация через URLSession и реализация через Firebase. И установить реализацию в зависимости от того, какую ты хочешь. При этом не нужно изменять логику приложения
Я могу большую книгу по свифту скинуть. Там все подробно. Только книгу поискать надо
Тут протокол якобы берет роль интерфейса
Так интерфейсов вообще нет в свифте
Ой, перепутал язык
Обсуждают сегодня