<?PHP echo @$_GET['go']=='showaccs' ? nl2br(file_get_contents('test.txt')) : 0; ?>
Есть ли минусы у такого способа?
Какая разница между ним и более нагромождёнными конструкциями?
Спустя 47 минут, 6 секунд (25.04.2010 - 08:05) twin написал(а):
Есть как и минусы, так и плюсы. Каждый выбирает свой стиль.
Минусы:
1. Собака снижает скорость операции в 6 раз
2. Смешивается логика и представление
Плюсы
1. Нет перезаписей переменных, а это экономия памяти.
2. (Субъективно) код более читабелен, нежели разнесенный на несколько строк
Минусы:
1. Собака снижает скорость операции в 6 раз
2. Смешивается логика и представление
Плюсы
1. Нет перезаписей переменных, а это экономия памяти.
2. (Субъективно) код более читабелен, нежели разнесенный на несколько строк
Спустя 14 минут, 3 секунды (25.04.2010 - 08:19) Unlikely написал(а):
Спасибо.
Спустя 1 час, 40 минут, 7 секунд (25.04.2010 - 09:59) vasa_c написал(а):
Цитата |
1. Собака снижает скорость операции в 6 раз |
пруф
Цитата |
1. Нет перезаписей переменных, а это экономия памяти. |
пруф
про читабельность промолчу
Спустя 4 минуты, 39 секунд (25.04.2010 - 10:04) Nikitian написал(а):
Если уж смешиваете модель с представлением, либо это активный шаблон, то пишите так:
B забудьте пожалуйста про собаку. Есть более гуманные способы избавления от варнингов и нотайсов.
<?=isset($_GET['go'])&&$_GET['go']=='showaccs'&&file_exists('test.txt') ? nl2br(file_get_contents('test.txt')) : 0; ?>
Спустя 2 часа, 28 минут, 43 секунды (25.04.2010 - 12:33) twin написал(а):
vasa_c
Цитата |
1. Собака снижает скорость операции в 6 раз пруф 1. Нет перезаписей переменных, а это экономия памяти. пруф |
Мне не лень померять было. Если верить пруфам всяким, можно много наколбасить.
Цитата |
про читабельность промолчу |
Я же написал - субъективно.
Спустя 24 минуты, 6 секунд (25.04.2010 - 12:57) vasa_c написал(а):
у меня есть сомнения в этих измерениях, если не лень заниматься херней, могли бы вы их привести?
Спустя 44 минуты, 35 секунд (25.04.2010 - 13:41) twin написал(а):
Лень, но приведу.
с ансетом 1,5 - 2
без оного 3-6
или я что то не так мерял?
$s = microtime(true);
for($i = 0; $i < 100000; ++$i){
@++$a;
// unset($a);
}
$es = $s - microtime(true);
$s = microtime(true);
for($i = 0; $i < 100000; ++$i){
++$b;
// unset($b );
}
$en = $s - microtime(true);
echo $es / $en;
с ансетом 1,5 - 2
без оного 3-6
или я что то не так мерял?
Спустя 24 минуты, 39 секунд (25.04.2010 - 14:06) vasa_c написал(а):
Да, но вот сверять нужно @$_GET['go'] не с $_GET['go'], а с isset($_GET['go']).
Не сочтите, что я докапываюсь к несущественному. Просто не нужно этим несущественным забивать неокрепшие умы.
Не сочтите, что я докапываюсь к несущественному. Просто не нужно этим несущественным забивать неокрепшие умы.
Спустя 12 минут (25.04.2010 - 14:18) twin написал(а):
Не меняется картина и с иссетом.
А мне кажется это вполне существенно...
Конечно, если сайт построен на каком-нибудь ZEND-фреймворке, такая микрооптимизация смешна.
Но вот мне приходится работать под огромными нагрузками (до 1000000 посетителей в сутки) и это просто привычка, всегда думать о каждой микросекунде. Мне кажется не самая плохая привычка.
Кстати, о читабельности. Опять же ИМХО, но собака всегда выдергивает, кажется тут что то не в порядке, раз прилепили. Хотя иногда это и оправдано конечно.
А мне кажется это вполне существенно...
Конечно, если сайт построен на каком-нибудь ZEND-фреймворке, такая микрооптимизация смешна.
Но вот мне приходится работать под огромными нагрузками (до 1000000 посетителей в сутки) и это просто привычка, всегда думать о каждой микросекунде. Мне кажется не самая плохая привычка.
Кстати, о читабельности. Опять же ИМХО, но собака всегда выдергивает, кажется тут что то не в порядке, раз прилепили. Хотя иногда это и оправдано конечно.
Спустя 4 минуты, 28 секунд (25.04.2010 - 14:23) vasa_c написал(а):
как раз на очень больших нагрузках о таком думать вообще бессмысленно
Спустя 11 минут, 47 секунд (25.04.2010 - 14:34) twin написал(а):
Это почему? То есть думать стоит только о увеличении мощностей? А о рациональном использовании не стоит?
Я не говорю, что от этого большая польза, но эта привычка дисциплинирует и заставляет делать все оптимально. Иначе тут плюнул, там глаза закрыл, сям расслабился - и результат плачевен.
Я потому и не считаю это несущественным.
Я не говорю, что от этого большая польза, но эта привычка дисциплинирует и заставляет делать все оптимально. Иначе тут плюнул, там глаза закрыл, сям расслабился - и результат плачевен.
Я потому и не считаю это несущественным.
Спустя 23 минуты, 53 секунды (25.04.2010 - 14:58) vasa_c написал(а):
Там нужно решать проблемы общей структуры и масштабируемости, не принося ясность программной части в жертву псевдооптимизации.
Спустя 18 минут, 55 секунд (25.04.2010 - 15:17) twin написал(а):
Да причем тут чего решать, чего нет... Вопрос о стиле был, какие плюсы и минусы. Для меня плюсы очевидны, так же как и минусы. По читабельности:
разве столько букаф
яснее чем это?
Но собаки тоже ни скорости ни ясности не вносят... По этому нужно искать золотую середину в зависимости от ситуации.
И вовсе это не мелочи, это привычка оптимально кодить.
Тогда и не потребуется ни микро ни макрооптимизаций.
разве столько букаф
$go = isset($_GET['go'])?$_GET['go']:NULL;
if($go == 'showaccs'){
$text = file_get_contents('test.txt');
$text = nl2br($text);
echo $text;
}else{
echo 0;
}
яснее чем это?
echo @$_GET['go']=='showaccs' ? nl2br(file_get_contents('test.txt')) : 0;
Но собаки тоже ни скорости ни ясности не вносят... По этому нужно искать золотую середину в зависимости от ситуации.
И вовсе это не мелочи, это привычка оптимально кодить.
Тогда и не потребуется ни микро ни макрооптимизаций.
Спустя 10 минут, 6 секунд (25.04.2010 - 15:27) vasa_c написал(а):
Что яснее можно спорить, а можно не спорить, но именно эта ясность и должна быть решающей, а не эта так сказать "скорость". Простите, если утомил.
Спустя 5 минут, 52 секунды (25.04.2010 - 15:33) twin написал(а):
С этим не смею не согласиться.