Если бы Йода был программистом
Йоды джедаев магистра речи тайна раскрыта — на Форте просто старый программер он есть
йода в программировании придумал Польскую нотацию :)
http://ru.wikipedia.org/wiki/Условия_Йоды
Полезная фича кстати. Я и не знал для чего так пишут.
Полезность относительная. Например, в c# эта фича абсолютно бесполезна, т.к. ты при всем желании не сможешь написать
if (count = 5), не говоря уже про случайность.
if (count = 5), не говоря уже про случайность.
Напиши драйвер на шарпе =)
Ты долбаеб? Я же сказал, что она относительна, а не бесполезна абсолютно везде.
Такие же долбаебы еще и заминусили, которые в контекст не умеют.
Лучше тесты юнит автоматчикам писать получается, мммм! Функции контроль наглядней.
Лучше в сравнении сначала писать lvalue. Если будет пропущено =, то просто ошибка вывалится
Именною. Даже рекомендации есть подобные.
Смотря на чем писать и с какими инструментами работать.
На си-подобных языках же. в языках, где "=" это только присвоить значение, а сравнение происходит оператором "=="
Оператор "равно" в си-подобных языках возвращает значение присваивания, конструкция if ( i = 1) синтаксически верна.
Ты всё неправильно понял. Никто не говорит, что нельзя в if присваивать.
Короче, если писать
if (count == 5)
и случайно пропустить =, то будет как раз legit: if (count = 5), что скомпилируетися, и заебешься отлаживать.
Поэтому лучше писать if (5 == count), тогда если пропустишь =, то компилятор ошибку заметит и не надо будет мозги ебать с её поиском.
Так что Йода дело говорит.
Короче, если писать
if (count == 5)
и случайно пропустить =, то будет как раз legit: if (count = 5), что скомпилируетися, и заебешься отлаживать.
Поэтому лучше писать if (5 == count), тогда если пропустишь =, то компилятор ошибку заметит и не надо будет мозги ебать с её поиском.
Так что Йода дело говорит.
Так ты ж сам сказал про lvalue сначала =)
Я прекрасно это знаю. Дело только в том, что есть еще и не си-подобные языки.
сделал вид, что понял, плюсанул)
если ты не программист, тебе не понять )
Ты думаеш чтобы быть программистом нужно знать современные языки программирования?
Вот этой фичи сиподобных языков я не пойму. Неужели нельзя было конструкции вида if (count = 5) считать синтаксически не правильными? Можно подумать юзкесы есть, когда в условии выполняется присвоение.
ну какбы bool flag = false; if (flag = testSomthing()) { ... } return flag;
ну как бы:
bool flag = testSomthing();
if (flag) {
...
}
return flag;
куда очевиднее, юзкейс же одинфиг сомнительный чуть более чем совсем.
bool flag = testSomthing();
if (flag) {
...
}
return flag;
куда очевиднее, юзкейс же одинфиг сомнительный чуть более чем совсем.
В K&R подробно расписана полезность этого приема.
Ну определение bool flag может быть не тут а где-то раньше (например в определении класса). Поэтому выйдет на одну строку кода больше. Есть много примеров других конструкций типа тернарного оператора и всяких += и ++ которые также не вводят ничего принципиально нового, а просто слегка сокращают код. Но тем не менее их сделали и используют. Ну конечно везде нужно иметь чувство меры и не шифровать код как известный скрипт в виде белочки. Но то отдельная история.
Недооцениваешь светлой стороны силу ты.
считает Йода правильней Так :)
Оба варианта рабочие.
$count = 5;
if (5 == $count)
{
echo "OK"."\n";
}
if ($count == 5)
{
echo "OK"."\n";
}
Результат. OK, OK
$count = 5;
if (5 == $count)
{
echo "OK"."\n";
}
if ($count == 5)
{
echo "OK"."\n";
}
Результат. OK, OK
if(count==5[array]) {
printf("%d",array[5]);
}
printf("%d",array[5]);
}
Что, правда? :)
рабочие, но за 1й вариант надо по ушам давать )
if ("something".equals(str))
Если сторка может быть null, то не вылетит нал-поинтер эксепшен.
Если сторка может быть null, то не вылетит нал-поинтер эксепшен.
Много Йод у нас скажу вам я ибо часто код такой встречается. Обычно так пишут на случай если случайно вместо двух = одно напишут. if (count = 5) попортит значение переменной, а if (5 = count) не скомпилится.
Анекдоты про программистов нет смысла рассказывать, потому что обычные люди их не поймут, а программисты и так их уже все знают.
А если что-то новенькое придумать? Или идеи уже иссякли?
Тайна Йоды магистра раскрыта. На фортране програмист старый он просто.
Чтобы написать коммент, необходимо залогиниться