Size: a a a

2020 January 10

SA

Shuhrat Akramov in PHP DevConf
Serik RAKHMETOV
приезжай в Алматы, объясню
Когда человек сам хорошо понимает ему объяснить легко. Я так думаю
источник

AD

Alexandr Dubickiy in PHP DevConf
Shuhrat Akramov
Я хочу понять разницу. Компьютер можно объявить как абстрактный класс, в то же время как говорится можно объявить как интерфейс
А можно реализовать без абстрактного класса и интерфейса
источник

SA

Shuhrat Akramov in PHP DevConf
Alexandr Dubickiy
А можно реализовать без абстрактного класса и интерфейса
Да знаю. Но пока не пойму разницу между абстрактным классом и интерфейсом душа не успокаивается. Спасибо всё равно
источник

SA

Shuhrat Akramov in PHP DevConf
😊
источник

GS

Gabit SM in PHP DevConf
интерфейс ты имплементируешь
Абстрактный класс наследуешь
источник

GS

Gabit SM in PHP DevConf
источник

GS

Gabit SM in PHP DevConf
вот в чем разница
источник

AD

Alexandr Dubickiy in PHP DevConf
Абстрактный класс может уже иметь какой-то функционал и свойства, которые унаследуют потомки, но при этом сам по себе не может функционировать
источник

DS

Damir Sarbayev in PHP DevConf
Мне нравится рассматривать интерфейс как некий контракт, реализуя ее ты обязуешься реализовать его методы, полезно когда ты пишешь код, вызываешь методы класса, и вдруг у тебя меняется в бизесе что то и ты можешь легко написать новый класс реализовав интерфейс, далее тебе не придется переписывать весь код, потому что все методы одинаковые везде
источник

SA

Shuhrat Akramov in PHP DevConf
Некоторые знания придут после хорошей практики. Я думаю, что это приведет меня к пониманию вещи
источник

DS

Damir Sarbayev in PHP DevConf
Например казах и узбек полетели в Турцию, они оба реализую интерфейс Турист и они оба должны реализовать метод датьПаспорт, для таможенника не важно кто перед ним, главное что бы он реализовал метод датьПаспорт и для него ничего никогда не поменяется
источник

SA

Shuhrat Akramov in PHP DevConf
Damir Sarbayev
Например казах и узбек полетели в Турцию, они оба реализую интерфейс Турист и они оба должны реализовать метод датьПаспорт, для таможенника не важно кто перед ним, главное что бы он реализовал метод датьПаспорт и для него ничего никогда не поменяется
Хороший пример 👍
источник

DS

Damir Sarbayev in PHP DevConf
Абстрактный класс удобно когда есть семейство классов но есть некоторые отличия в реализации
источник

AD

Alexandr Dubickiy in PHP DevConf
Damir Sarbayev
Например казах и узбек полетели в Турцию, они оба реализую интерфейс Турист и они оба должны реализовать метод датьПаспорт, для таможенника не важно кто перед ним, главное что бы он реализовал метод датьПаспорт и для него ничего никогда не поменяется
Но они оба могут наследоваться от абстрактного "Туриста", и абстрактный класс турист также будет требовать научиться давать паспорт
источник

DS

Damir Sarbayev in PHP DevConf
Например абстрактный класс узбек у него всегда метод национальность который будет возврщать узбек для каждого человека, а вот место проживания для каждого может быть разным
источник

DS

Damir Sarbayev in PHP DevConf
Alexandr Dubickiy
Но они оба могут наследоваться от абстрактного "Туриста", и абстрактный класс турист также будет требовать научиться давать паспорт
Ну любой интерфейс абстрактный класс но не наоборот, или как там)
источник

VK

Vlad Kim in PHP DevConf
методы в интерфейсе ты обязан выполнять. публичные методы в абстрактном классе ты можешь реализовать, или переписать в реализации
источник

SA

Shuhrat Akramov in PHP DevConf
Vlad Kim
методы в интерфейсе ты обязан выполнять. публичные методы в абстрактном классе ты можешь реализовать, или переписать в реализации
В интерфейсе бывают только публичные методы )
источник

VK

Vlad Kim in PHP DevConf
Shuhrat Akramov
В интерфейсе бывают только публичные методы )
опечатка, но суть уловил надеюсь
источник

SA

Shuhrat Akramov in PHP DevConf
👍
источник