Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    Kirill Nesmeyanov
    @SerafimArts
    не помню
    Manuk
    @ManukMinasyan
    Привет ребята
    Где могу найти фриланс работу? бесплатно
    Denis Mazur
    @lans8097
    Привет всем.
    Извините за вопрос не в тему, прошу камни не брость =).
    Добавил к blade новый тег @widget('menu...', [])
    всё ок всё работает, но вопрос как добавить подсветку для этого елемента в phpStorm ?
    _shamshod
    @shamego
    всем привет
    есть задачка
    image.png
    есть идеи?
    larry27
    @larry27
    new class {
    public function __invoke()
    {
    return $this;
    }
    }
    AlexeyIM
    @AlexeyIM
    foo($foo = function () use (&$foo) {return $foo;})
    siteprofCF
    @siteprofCF
    @ARMbrain а зачем тебе бесплатно?
    RuSS_lan
    @russandrussky
    Всем привет.
    подскажите может кто сталкивался.
    Для отправки используется sendgrid на все кроме @hotmail.com уходят нормально, только на @hotmail.com попадают в спам.
    Заранее спасибо
    Denis Mazur
    @lans8097
    @russandrussky проверьте ваш ip в спам списках. Также почтовый сервис быть настроена не правильно
    Norn
    @n0rn
    День добрый, есть вопрос не могу найти инфу по нему нормальную. Где в Украине(Харькове) можно пройти тестирование от Зенда (для получения сертификата по php 7.0/7.1)?
    Ghost
    @ghost~5a7ec891d73408ce4f8c87b2
    Hello
    Ruslan Kvashuk
    @rossanoua
    Всем привет
    кто подскажет какой форум или книгу
    по паттернам
    Evgeny
    @tensor146
    Ruslan Kvashuk
    @rossanoua
    какой патерн каким критериям или вопросам должен отвечать
    Evgeny
    @tensor146
    Что значит "критериям или вопросам"?
    Ruslan Kvashuk
    @rossanoua
    @tensor146 спасибо, видел
    но к примеру
    singleton
    обязательно класс должен быть final?
    или
    должен выполнять одно условие создавать один единственный экземпляр на все приложение?
    Evgeny
    @tensor146
    Паттерны - это в первую очередь идеи, некие шаблоны, по которым нужно действовать. Т.е. final не обязателен, методы могут называться по-другому и так далее.

    должен выполнять одно условие создавать один единственный экземпляр на все приложение?

    А это как раз идея синглтона.
    У тебя есть некий объект, который инициализируется только один раз и используется всегда именно он.

    Ruslan Kvashuk
    @rossanoua
    про методы понятно и так...
    а вот саму идею что бы глубоко понять
    для каждого паттерна ни где такого не найти?
    про синглтон спасибо )))
    Evgeny
    @tensor146
    В первую очередь, нужно смотреть на код и описание, а также на применение и задавать вопрос: "почему сделано именно так, а не иначе?"
    Во вторую, можно для каждого из них гуглить статьи вида: https://habrahabr.ru/company/mailru/blog/325492/ После третьей ссылки начинаешь чувствовать идею обычно :)
    В третью, можешь посмотреть тут - это переводы статей Фаулера, а он знает толк в паттернах :) http://design-pattern.ru
    Ruslan Kvashuk
    @rossanoua
    @tensor146 спасибо за помощь!
    Evgeny
    @tensor146

    @rossanoua пожалуйста

    по которым нужно действовать

    Можно действовать*

    Т.к. тот же синглтон, вообще говоря, считается антипаттерном.

    Ruslan Kvashuk
    @rossanoua
    @tensor146 да, это знаю... )
    Renato Marinho
    @renatomarinho
    This message was deleted
    David D Crosby
    @davidc4991vvc
    connectiom.PNG
    I am in need of some help cant connect to my database please check my script
    NitroCode Alex
    @9trocode
    @davidc4991vvc let me help you with that
    mikeevstropov
    @mikeevstropov
    Народ, кто в опенсорсе использует приватные методы классов? Есть такие?
    Я просто хочу узнать, чем руководствуется разработчик опенсорс библиотек, когда пишет private вместо protected.
    Igor
    @1gorsh
    @mikeevstropov мб, тем что хочет уберечь юзверей от бездумного наследования, а соответственно и себя от issues когда неплубличний метод випилии в новой версии а у юзверей все сломалось
    наследоваться от того что тебе неподконтрольно не очень хорошая идея
    mikeevstropov
    @mikeevstropov
    @ishubelko То есть, представим ситуацию: Я разработчик какой-то либы для работы с Curl. Часть методов класса у меня публичные, часть приватные. Я не использую "протектед" методы сознательно, что бы ни кто не мог унаследовать мою библиотеку и расширить ее до нужного функционала, по той причине, что якобы могут появиться какие-то неадекватные issues, по типу - "я переписал методы и теперь это работает не как ожидалось"? Верно?
    Igor
    @1gorsh
    Расширить ето не только унаследовать - декорация, агрегация. Вместо бездумного наследования заведи интерфейс которий удовлетворит требованиям твоего клиентского кода и реализуй его как душе угодно - тогда проблем з зависимостями будет немного меньше
    mikeevstropov
    @mikeevstropov
    @ishubelko По вашему, если мне нужен весь интерфейс библиотеки, мне нужно дублировать все публичные методы в декораторе?
    Igor
    @1gorsh
    я не знаю какой там у вас юз-кейс и что конкретно вас не устраивает, я говорю о том о что хорошой практиктой считаеться завести интерфейс которий удовлетворяет ожиданиям вашего клиентского кода а дальше уже реализуете етот интерфейс так как считаете нужним - нужно проксировать кол к методу либи - проксируете - нужно декорировать - декорируете
    что такое весь интерфейс библиотеки ? может одного класа?
    mikeevstropov
    @mikeevstropov
    @ishubelko Речь не идет о клиентском коде и о моем личном "юзкесе" какой-то либы. Вопрос был про адекватность применения "private" методов в опенсорс библиотеках. Но раз уж вы указали как одну из причин версионирование, тогда еще вопрос. Вы активно используете прилагательное "бездумный". Можно ли его применить к разработчику библиотеки, который будет менять ее интерфейс на минорных версиях и патчах? Потому как других возможных проблем связанных с обновлениями при перезаписи какого-то метода интерфейса не вижу. По вашему последнему вопросу, возникает новый вопрос. Вы не считаете библиотеку таковой, если она содержит всего один класс?
    Igor
    @1gorsh
    без указания юзкейса использования и самой библиотеки я не могу судить о адвекватности или неадекватности
    бил задан вопрос о private в опенсоурсе - мое мнение - ето нормальная практика
    дальше что то обсуждать без конкртеного примера не продуктивно
    mikeevstropov
    @mikeevstropov
    @ishubelko Да бесит просто. Берешь любую популярную либу, все как для людей - наследуй не хочу. А стоит только добавить в зависимости от какого-то Васи Пипсичкина - получаешь геморой. Который раз уже горит от таких умников.
    Igor
    @1gorsh
    не юзайте тогда - если оно вам не подходит
    на счет: менять ее интерфейс на минорных версиях и патчах в том то и дело что интерфей ето публичние методи - остальное детали реализации, они не должни бить доступни и они могут меняться
    mikeevstropov
    @mikeevstropov
    @ishubelko Так про публичные методы и речь. Вы как их расширять собрались, если они вызывают приватные?
    Igor
    @1gorsh
    декорация, агрегация - если есть такая возможность
    если нет OCP принцип
    если поведение метода/функции не подходит под ваш юз-кейс - не нужно в него "впихивать" другую реалицию для того что ето поведение подошло вам, лучше сделать новую реализацию которая вам нужна
    mikeevstropov
    @mikeevstropov
    @ishubelko Для того, что бы ограничивать других в опен либе нужен аргумент. Если этого аругумента нет - это как Вы выражаетесь "бездумный" подход. Я пытался найти хоть один аргумент использовать приватные методы в библиотеках. Пока достойных аргументов не нашел. По поводу декорации и агрегации, еще раз задам вопрос. Мне действительно нужно дублировать интерфейс библиотеки в декораторе, вместо того, что бы его унаследовать, и не плодить кучу бесполезного кода?
    mikeevstropov
    @mikeevstropov
    @ishubelko Прошу прощения, не заметил про "OCP". Почему вы его указали? Он же категорически противоречит присутствие private методов.
    Igor
    @1gorsh
    оо? можно пример?
    mikeevstropov
    @mikeevstropov
    @ishubelko Пример чего? Почему наличие private метода противоречит этому принципу? Даже не знаю... Может потому что там так и написано?
    should be open for extension, but closed for modification