Eloquent Collection содержит () work, но diff () или intersect () считает, что все разные

Хорошо, это старый вопрос, на который был дан ответ на смерть. Мне есть что добавить.

Сначала я просто должен сказать ИСПОЛЬЗОВАТЬ БРАКЫ. Они могут помочь только читабельности, а читаемость (для вас самих и для других!) Должна быть очень высокой в ​​списке приоритетов, если вы не пишете сборку. Нечитаемый код всегда, всегда приводит к ошибкам. Если вы обнаружите, что фигурные скобки заставляют ваш код занимать слишком много места, ваши методы, вероятно, слишком велики. [Или g1]

Теперь для моего добавления: Существует проблема с этим:

Теперь, если вы делаете это правильно, g2]

if (foo) bar();

Попробуйте установить точку останова, которая будет нажата, только если bar () будет запущен. Вы можете сделать это на C #, поместив курсор во вторую половину кода, но это не очевидно и немного больно. В C ++ вы не могли этого сделать вообще. По этой причине один из наших самых старших разработчиков, работающих над кодом на C ++, настаивает на том, чтобы по этой причине разбивать «if» заявления на две строки. И я согласен с ним.

Так сделайте это:

if (foo)
{
    bar(); //It is easy to put a breakpoint here, and that is useful.
}
0
задан senty 29 March 2019 в 14:32
поделиться