Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (4) 1 2 [3] 4  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> interface, в чем польза?
Ron  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1042
Пользователь №: 41686
На форуме: 1 год, 3 месяца, 23 дня
Карма: 13




Цитата (twin @ 8.06.2016 - 19:11)
Так вот именно. А для чего он тогда нужен, если все равно это остается на совести разраба?

Очевидно основная задача - раскутка данного форума. Для этого интерфейсы и содавались. А остальное так, для прикрытия.


--------------------
Жду 5.11.2017
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
chee  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Сын полка
Сообщений: 1780
Пользователь №: 38654
На форуме: 2 года, 10 месяцев, 29 дней
Карма: 40




twin, тебе не нужно использовать интерфейсы, у тебя нету такой сложности, для которой они нужны. Тебе уже выше описали, когда количество строк идёт на миллионы, тогда уже нужно применять интерфейсы, как минимум для того чтобы систематизировать сам код.

Я повторяюсь, но скажу еще раз. Ты остался там, в 2007 году, вместе с Медведевым laugh.gif . Пока ты не сменишь работодателя и не попадешь под влияние серьезных и тяжелых (в плане бизнесс-логики) проектов (а не интернет-магазинов с кучей сателлитов) то все наши споры бесполезны. Ты в болоте, которое сам и создал, можешь оставаться там, но вот болотная вонь, которая исходит от тебя в твоих темах - делает из тебя клоуна.


--------------------
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации

Мой блог
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Dezigo  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Indiana Jones
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1000
Пользователь №: 5429
На форуме: 8 лет, 5 месяцев, 8 дней
Карма: 45




Напоминает формат.
Зачем мне использовать инструменты для починки машины которые лежат в комплекте, возьму как я примотаю скотч, как то держится. Ну вот и классно.

Зачем Вам ООП, пишите на процедурке, там нету всяких 'дурацких interfaces', и не надо делать нагрузку на сервер, а высоко нагруженые проекты оставьте другим дядям, они об этом позаботятся.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Arh  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



146%
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 2102
Пользователь №: 27172
На форуме: 5 лет, 8 месяцев
Карма: 70




Цитата
Напоминает формат.

Нет, напоминает такой формат:
Цитата
Американский форум: задал вопрос - получил ответ.
Израильский форум: задал вопрос - получил вопрос.
Русский форум: задал вопрос и потом долго выслушиваешь какой ты мудак.


--------------------
:)
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15559
Пользователь №: 6543
На форуме: 8 лет, 1 месяц, 29 дней
Карма: 299

Трезвый :
5 лет, 11 месяцев, 9 дней


Цитата (chee @ 9.06.2016 - 06:46)
Пока ты не сменишь работодателя и не попадешь под влияние серьезных и тяжелых (в плане бизнесс-логики) проектов (а не интернет-магазинов с кучей сателлитов) то все наши споры бесполезны

Ну во первых, причем тут магазин? Если мне не изменяет память, магазин, это у тебя. Милионы строооок... Не смеши людей. Ты не видел больших проектов, раз такое заявляешь. Хоть миллиарды, причем тут интерфейсы то. Систематизировать код из миллионов строк нужно не костылями, а грамотной декомпозицией.

У меня совершенно иная сфера, у меня статистика. Но это не важно. Важно другое, я не пытаюсь спорить. Нравятся тебе интерфейсы, да хоть весь проект ими залепи, мне дела нету. Лично у меня такой необхоимости нет. И не из-за того, что логика простая. Отнюдь, она на моем проекте очень сложная. Просто я не вижу в них необходимости.

Тут ведь как. Если проект закончен, то не нужно ничего в него добавлять. И интерфейс - на корове седло. А если проект такой, где нужно часто добавлять однотипные классы, то их функционал уже наизусть знаешь, на кой еще интерфейсы?

Если большая текучка кадров, то интерфейс не поможет, один фиг нужна подробная документация. Что может дать название метода, если не знаешь, что именно от него требуется? А если есть документация, тесты и ответственность разработчика, то интерфейс - только обуза. Естественно, если персонал предполагается "набрали по объявлению", то там не только интерфейсы нужны. Там вообще глаз да глаз.

Но это ИМХО, я в сотый раз говорю. Не умеете писать код без плетки и намордника, конечно они будут полезны. И не хочу я спорить. Для себя я давно все решил. Ставка на минимальное потребление ресурсов дает мне офигенный профит. У вас профит в другом - минимизация ответственности.

И не нужно тут в очередной раз строить из себя героев. Отстал я. biggrin.gif Это от ваших рассуждений воняет болотом, а не от моих. Я каждый инструмент, каждый алгоритм выверяю со всех сторон, прежде чем применить. А не щеголяю в штанах с мотней, раз это на пике моды. Как ты со своим композером, расшаренными сервисами и вот интерфейсами теперь.

Цитата (Dezigo @ 9.06.2016 - 07:05)
Напоминает формат.
Зачем мне использовать инструменты для починки машины которые лежат в комплекте, возьму как я примотаю скотч, как то держится. Ну вот и классно.
Да скотч то как раз больше на интерфейс и похож. Склеил проект, а чтобы не расползался по швам - намотали синей изоленты интерфейсов. Клей давно высох, все классно держится, а лохмотья так и болтаются.

И хватит уже. Давно все понятно. Нет ничего итересного в них, кроме констант. На том и закончим. Каждый волен писать так, как ему хочется, я вовсе не просил проводить тут ликбез по контрактам. Загадили тему.

Отвечу только по существу. Не пытайтесь меня задеть. Надоело.


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Зачем ворошить старое, когда можно наворотить новое?

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
DedMorozzz  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Эникейщик
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 4053
Пользователь №: 19498
На форуме: 7 лет, 1 месяц, 5 дней
Карма: 89




Приведу пример из практики. Работая в достаточно крупной компании, более тыщи человек, работая над 1м проектом (платформа). Там использовалось много разных систем кеширования
И тут в какой-то момент я вижу, что у мемкеша, редиса и ещё 1й системы есть разные методы для сохранения/выборки. Были write/set/add, fetch/get/..., delete/remove..

И после этого приводится всё под единый интерфейс. И замена кеша никак не скажется на логике. Так же и деву. Ему будет совершенно всё равно кто и какоую систему внедрил. Я открываю и нтерфейс и уже понимаю какие методы использовать, что бы достить результата, а не бегать по коду и искать как же тут сохранение кеша реализовано, как метод называется

Недостаточное удобство по твоему?


--------------------
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
PMПисьмо на e-mail пользователюСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 11782
Пользователь №: 23195
На форуме: 6 лет, 4 месяца, 8 дней
Карма: 428

Трезвый :
7 лет, 3 месяца, 9 дней


Цитата (Arh @ 9.06.2016 - 11:21)
Русский форум: задал вопрос и потом долго выслушиваешь какой ты мудак.

Здесь скорее: "долго объясняешь всем, что они мудаки, сделав вид, что задал вопрос".


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Another Reality  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Старик
***

Профиль
Группа: Пользователь
Сообщений: 124
Пользователь №: 41606
На форуме: 1 год, 4 месяца, 15 дней
Карма: 5




Действительно, использование абстрактного класса вместо интерфейса вполне логично и оправдано, и казалось бы, чего дергаться ? Но есть одна разница: при использовании абстрактного класса(ов) мы получаем потомка который имеет жесткое отношение к своему древу классов, интерфейс же освобождает от такого. К тому же под разные нужды мы можем реализовать несколько интерфейсов, использовать их в качестве "ключа доступа" к тем или иным методам, тогда как множественного наследования нет.
Важная деталь: все это имеет смысл при высоком уровне абстракции.

В качестве маленького примера:

Некая страничка показывает нам информацию из базы данных.
Вот только сейчас мы работаем с MySQL, через 5 минут - с Redis, завтра с PostgreSQL, через 36 часов 17 минут уже будет MSSQL Server, а еще чуть позже читать из файла.

В итоге разные объекты, работающие каждый со своей базой реализуют один и тот же интерфейс. Все красиво, приятно, система не понимает что ей подсунули, Она просто вызывает методы которые перечисленые в интерфейсе.

Но я думаю, что это и так всем понятно, а топик просто для веселья wink.gif

Это сообщение отредактировал Another Reality - 9.06.2016 - 22:55
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15559
Пользователь №: 6543
На форуме: 8 лет, 1 месяц, 29 дней
Карма: 299

Трезвый :
5 лет, 11 месяцев, 9 дней


Цитата (DedMorozzz @ 9.06.2016 - 11:40)
Недостаточное удобство по твоему?
С удобством для разработчика я и не спорил. Я про то, что приходится из двух зол выбирать меньшее. Для себя. smile.gif Я об "удобстве" для сервера пекусь.

Вот скажи, ты допустим садишься внедрять в систему Redis.
Цитата (DedMorozzz @ 9.06.2016 - 11:40)
Я открываю и нтерфейс и уже понимаю какие методы использовать, что бы достить результата, а не бегать по коду и искать как же тут сохранение кеша реализовано, как метод называется

Откуда тебе известно, что есть уже мемкэш и тем более интерфейс? Как узнать, что нужно именно от него имплементировать класс редиса?

Один фиг должна быть документация или соглашения. И нет никакой разницы, выполнишь ты требования доки добровольно, или требования интерфейса принудительно, если ты не вредитель конечно.

Цитата (Another Reality @ 9.06.2016 - 18:54)
В итоге разные объекты, работающие каждый со своей базой реализуют один и тот же интерфейс.

Вы все так рассуждаете, что если нет интерфейса, то обязательно все поползет в разные стороны. Я же говорю - всё зависит от самодисциплины и квалификации разработчика. Ну и наличии доки.

Интерфейс, это по сути документация и есть. Только доку можно написать подробнее, и она не повиснет гирей на ногах класса. Другое дело, что "tru-програмимисты" считают доки западлом, а интерфейс - вроде как круто, пальцы веером.

Это такая морковка на самом деле для ленивых. Что бы заставить раздолбаев хоть как то систематизировать код, пообещав печеньку в виде осознания себя эдаким навароченным ООПэшником.

И это осознание не дает понять истину о бесполезности, и даже местами вредности интерфейсов. Как же, какой то олдфаг тут что то бредит. Все крутые так пишут, и я крут. smile.gif


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Зачем ворошить старое, когда можно наворотить новое?

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Arh  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



146%
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 2102
Пользователь №: 27172
На форуме: 5 лет, 8 месяцев
Карма: 70




Цитата
Основное предназначение (контракт) опускаем сразу

И сразу закрываем тему.

Потому что это просто тип данных, контракт.

Можно быть дисциплинированным и писать так
function a ($data) {}
function b ($data) {}
function c ($data) {}


А можно писать так
function a (int $data) {}
function b (array $data) {}
function c (ClassName $data) {}


--------------------
:)
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15559
Пользователь №: 6543
На форуме: 8 лет, 1 месяц, 29 дней
Карма: 299

Трезвый :
5 лет, 11 месяцев, 9 дней


Цитата (Arh @ 10.06.2016 - 06:51)
И сразу закрываем тему.

Ну почему сразу.

Вот допустим идея использовать его как контейнер для констант (конфигуратор) у меня возникла в процессе обсуждения. Я даже знаю, где мне это применить теперь. smile.gif


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Зачем ворошить старое, когда можно наворотить новое?

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Arh  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



146%
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 2102
Пользователь №: 27172
На форуме: 5 лет, 8 месяцев
Карма: 70




twin
Чёто мне кажется это из той оперы когда узнаешь о новом патерне и пытаешься придумать где его использовать =)


--------------------
:)
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
DedMorozzz  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Эникейщик
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 4053
Пользователь №: 19498
На форуме: 7 лет, 1 месяц, 5 дней
Карма: 89




Цитата (twin @ 10.06.2016 - 02:06)
С удобством для разработчика я и не спорил. Я про то, что приходится из двух зол выбирать меньшее. Для себя. smile.gif Я об "удобстве" для сервера пекусь.

А, ну так о чём речь. Для сервера удобнее всё в бинарном виде сразу. Что бы не переводить в машиный код.
Есть повод задуматься об улучшении своего кода, что бы снять нагрузку с сервера и сразу писать в бинарном виде!


--------------------
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
PMПисьмо на e-mail пользователюСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
kaww  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1755
Пользователь №: 20757
На форуме: 6 лет, 10 месяцев
Карма: 184




Цитата (twin @ 10.06.2016 - 06:06)
Я об "удобстве" для сервера пекусь.

Акселераторы? не, не слышал.
Тем более что начиная с 5.5.0 opcache уже включен в php.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15559
Пользователь №: 6543
На форуме: 8 лет, 1 месяц, 29 дней
Карма: 299

Трезвый :
5 лет, 11 месяцев, 9 дней


DedMorozzz
Ну почему всегда, когда кончаются аргументы, люди впадают в крайности. Причем тут бинарный код? Ну принцип у меня такой, писать по максимуму оптимально. Я же не заставляю ни кого. Для вас вон kaww прослышал про акселераторы. Они как раз для вас придуманы.

Мне не нравится наворотить бездумно код, потом кидаться разгребать это акселераторами. Мне нравится, когда акселератор, это НЗ на случай какого-нибудь хабра-эфекта. smile.gif

Да и вообще, успокойтесь уже. А то Invis1ble имеет повод обвинить меня в провокации.

Согласен я, хорошие интерфейсы, хорошие. Полезные и крутые. Только успокойтесь. smile.gif


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Зачем ворошить старое, когда можно наворотить новое?

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (4) 1 2 [3] 4  Ответ в темуСоздание новой темыСоздание опроса