• Какие еще преимущества у юнит-тестов, кроме того, что они отлично обеспечивают регрессионное тестирование?

    beem7
    Но ведь реально, автоматические тесты - это либо юнит-. либо UI-.

    А куда потерялось функциональное тестирование? Я имею ввиду тестирование не на уровне юнитов, а на уровне системы в целом, интеграционное тестирование?
  • Правильно ли делать много Joins?

    VitalyChaikin ,
    Надеюсь имеется ввиду LEFT JOIN в противном случае легко получите миллиард записей

    наоборот, при использовании LEFT JOIN будут добавлены все строки из левой таблицы, даже если нет соответствия в правой. Т.е. при LEFT JOIN результирующая выборка будет больше или такая же как и в JOIN.
  • Условие на php?

    Сергей delphinpro,
    давай ты сначала подрастешь (в профессиональном плане), потом будешь спорить.

    ну да, переход на личности, когда нет аргументов, это "просто дал рекомендацию". Впрочем, кому надо подрасти мы выяснили, а как ты будешь общаться с другими людьми - дело твое.
  • Условие на php?

    Сергей delphinpro, и много таких? Если начинать разговор с незнакомым человеком с хамства, вряд ли адекватные люди будут готовы общаться.
  • Условие на php?

    Сергей delphinpro,
    Ну-ну. Это стандартный код выборки Laravel Eloquent =)

    И? Ты хочешь поговорить про статику в ООП? Или ты так признаешь, что слабо представляешь вообще о чем говоришь, не знаешь что такое подготовленные выражения, и опять "я, не я, так в ORM было"? Ты же крутым спецом себя считаешь, но что не возьми своего мнения, да какой там мнение, даже понимания нет.
    Но хотя бы одно ты усвоил, что лучше писать поменьше, чтобы не было стыдно. Быть может со временем научишься не только хамить, но и слушать других людей.
  • Условие на php?

    Сергей delphinpro,
    Будь внимательнее. Эта фраза относилась в автору вопроса...

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


    Да ладно! А почему не так:

    User::whereLogin($login);

    Почему не так? Ты собираешься объект вставлять в sql, причем опять напрямую? И не стыдно людей статическими вызовами пугать? Или ты опять съедишь, что ты не это хотел написать, "хотел проверить", "читайте между строк", "гении объясняются только намеками"? Тебе лучше остановится, а то скоро совсем загонишься.


    Я тебе отвечу почему. Потому что это не имеет отношения к сути заданного вопроса.
    Знаешь что такое упрощение? Когда концентрируются на сути, опуская подробности, не связанные напрямую с темой.

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


    И в качестве заключения — давай ты вернешься сюда через пару лет и напишешь, что думаешь насчет этого:

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

    А чего через "пару лет"? Аргументации нет, и только таким образом можешь слиться? Вопрос на самом деле простой, разработчику проще смотреть со стороны итераций работы интерпретатора и процессора, а тебе, как человеку далекому от разработки проще оперировать математическими шаблонами. Но мой вопрос уже не в этом, ты решил давить авторитетом - ок, давай, доказывай что ты настолько крут, что твои слова нужно принимать как аксиому. Ответь хоть на один мой вопрос? Хотя не стоит, опять чушь сморозишь.
    Итак, верстальщик, которому пошел 4ый десяток, который понимает что нужно залезть во фронт, который думает что освоил js и jquery, но посмотрев в календарь опомнился и пытается изучать react. Ни разу не работавший в полноценной команде и над серьезными проектами, и считающий что все что нужно для этого - git. Который кидает ссылки на свое портфолио с версткой, а на вопрос почему даже в портфолио она кривая, отвечает что забил, причем считает что это нормальный "профессиональный" подход. Уверенный что и пехепе знает, но при адекватной критике убегает в кусты с криками "я не то имел ввиду, вам гения не понять".
    Второй раз спрашиваю, ты реально считаешь что здесь есть чем кичиться, что это верх профессионального развития, и все высказывания подобного субъекта должны восприниматься как истина в последней инстанции?
    Тебя что в детстве обижали сверстиники? И думаешь, теперь ты крутой айтышник и сможешь отыграться на некомпетентных посредственностях? Плохие новости, ничего не изменилось, ты остался таким же, и твои сверстники по-прежнему будут тебя шпынять, хоть онлайн, хоть оффлайн.
  • Условие на php?

    Сергей delphinpro, а ты забавный, "гениальный недооцененный программист, а кругом все дураки"
    Ну извините. Я постоянно забываю, что нужно на пальцах разжевывать очевидные вещи.
    Фанат там от нефиг делать прицепился. Аргумент какой? Показываю боевой пример кода? Да хрен там не валялся.
    SELECT * FROM users WHERE login = '$login' — типичный псевдокод, для иллюстрации. Если до кого-то не доходит, то это его проблемы.
    А синдром Даннинга-Крюгера я давно пережил и вовсе не считаю себя гениальным программистом. Просто иногда бесит, когда не видят элементарных вещей.

    Тебя реально в этих фразах ничего не смущает?
    Заявлять человеку о котором ничего не знаешь, что его профессиональный уровень ниже плинтуса и поэтому он даже не смеет с тобой разговаривать, такой считает себя как минимум гением.
    Ты зря думаешь, что это чьи-то еще проблемы, а не твои. Ты пишешь, что умеешь работать в команде, т.к. знаешь git. Но работа в команде это в первую очередь развитые soft-скилы, т.к. навыки коммуникации крайне важны разработчику, а ты слишком заносчив и не можешь признать свои ошибки. Когда ты напрямую вставляешь переменную php в sql - это ни разу не псевдокод, ты ведь мог написать так:
    SELECT * FROM users WHERE login = :login
    и ни у кого бы не возникло вопросов. Но не признаешь этого, а предпочитаешь обвинять кого-то еще. Такое отношение тормозит твое профессиональное развитие, и это не проблема фаната или моя, она только твоя.
  • Условие на php?

    Сергей delphinpro,
    расслабься, этот сайт не обновляется несколько лет уже.

    И как это меняет ситуацию? Разве только многое говорит о твоем профессиональном отношении к своей работе. А ответ как и прежде, понимаешь, что сел в лужу, аргументов нет, и пытаешься съехать, вместо того, чтобы признать ошибку и попытаться что-то изменить в себе. К тому же, советы по php ты давал месяц назад, где "забыл" проверить пользовательские данные. Прислушайся к совету, чем быстрее ты пройдешь стадию, я "гениальный недооцененный программист, а кругом все дураки", тем раньше сможешь делать реальные шаги в профессиональном развитии.
  • Условие на php?

    Сергей delphinpro,
    давай ты сначала подрастешь (в профессиональном плане), потом будешь спорить.

    А при чем здесь профессиональный уровень, когда речь шла о психологическом восприятии синтаксической конструкции? Или ты достиг такого уровня, что стал оперировать условиями с 2 сравнениями и считаешь что это недостижимая высота для остальных?..
    Переход на личности это жалкий способ переключить внимание, когда нет аргументов. Вполне нормально для неуверенного в себе подростка. Каким будет твой следующий аргумент? Перейдешь на более "взрослые" аргументы измеряемые в сантиметрах?

    Решил последовать совету и посмотреть куда расти, посмотрел твое портфорлио
    http://beon.portfolio.delphinpro.ru/

    605652d4a7ab2694777292.jpeg

    Ну ладно, ничего страшного, распространенная ошибка начинающего верстальщика, забывающего что есть телефоны.
    Описание твоих навыков: "Свободно пишу уникальные плагины для jQuery и дорабатываю существующие по необходимости. Знаком с библиотеками Backbone, React/Redux.". Мда, шел 2021 год, хотя бы пытаешься React изучать, уже хорошо. Фраза про использование git умиляет. Посмотрел твои ответы в теме PHP, писать код "забыв" про sql-инъекции это о многом говорит. Ты действительно считаешь, что здесь есть чем понтоваться? Откуда столько гонора?
    Попробуй критичнее посмотреть на свои навыки, по-умерить заносчивость и тогда сможешь устроиться джуниором в нормальную компанию и начнешь профессионально развиваться в действительности. И тогда продолжим разговор. Удачи!
  • Как хранить подключение к БД для удобного обращения из других классов без глобальной переменной?

    FanatPHP, спасибо, это в принципе понятно, мне просто нужен был пример, без него некоторые моменты неправильно понимал и картинка не складывалась.
  • Условие на php?

    Сергей delphinpro, возможно, только конструкция получилась совсем не MIN < VALUE < MAX, и для компиляции в уме нужно догадаться, что ее кто-то подгонял под математическое выражение.
  • Условие на php?

    Сергей delphinpro, это все дело вкуса, но на мой взгляд запись автора более понятная, сперва сравниваем переменную с одним значением, потом с другим, все таки программный код и математика вещи разные.
  • Как хранить подключение к БД для удобного обращения из других классов без глобальной переменной?

    0x131315, вопрос не как создать объект, вопрос в том, куда и как обратиться чтобы этот объект получить. К примеру, есть код:
    <?php
    
    Class DB {
    	public function get() {
    		return 'getDB';
    	}
    }
    
    function db() {
    	return new DB();
    }
    
    Class A {
    	public function getB() {
    		$b = new B();
    		return $b;
    	}
    }
    
    Class B {
    	private $db;
    	
    	public function __construct() {
    		$this->db = db()->get();
    	}
    }
    
    $a = new A();
    $b = $a->getB();
    
    var_dump($b);


    В классе А нет нужды подключать DB, в классе B подключаем DB через глобальную функцию. Как это должно выглядеть с DI-контейнером, т.е. каким образом мы должны обращаться к нему из класса B чтобы получить DB? Можете, пожалуйста, пояснить?