PHP - сэкономит ли ресурсы уменшение кода? - Форум успешных вебмастеров - GoFuckBiz.com - Страница 2
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB88.4375
BTC/USD67606.5683
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 29.05.2013, 18:04
Start Post: PHP - сэкономит ли ресурсы уменшение кода? 
  #11
ceif
Жидорептилия с Зазеркалья
 
Аватар для ceif
 
Регистрация: 19.03.2009
Сообщений: 502
Бабло: $102762
По умолчанию

Бразы, сэкономит ли какие-либо ресурсы сервера (трафик, время, ...) простое уменшение кода? То есть тупо вырезать все пробелы и переносы строк, функции и переменные назвать коротко (не "funktsiya" а "f") и т.д. т.е сократить код не оптимизуруя его с точки зрения алгоритма.

Например писать код не так:

PHP код:
<?php 

function funct() {
$funktsiya 100;
  echo 
"<h4>$funktsiya</h4>";
}
funct();

?>
а как-то так:
PHP код:
<?php
function funct() {$f 100;echo "<h4>$f</h4>";}
funct();
?>
Файл предполагается небольшой, строк 200-300. Много ли я сэкономлю таким образом и что именно будет экономиться?
ceif вне форума  
Старый 29.05.2013, 23:29   #12
F17
Ебланнед
 
Регистрация: 09.04.2007
Адрес: Ukraine - EU
Сообщений: 147
Бабло: $38738
По умолчанию

Два года назад случайно нашел статью на русском, там про зависимость времени выполнения ПХП от красоты кода. Некоторые результаты впечатлили. Естественно, разница видна в циклах многотысячных. УРЛ не вспомню, но точно помню, что имя переменной самое быстрое 2-8 символов, циклы foreach() намного медленней чем просто for(). Всего там примерно с десяток гипотез с замерами влияния.

UPD
вот она http://php.spb.ru/php/speed.html
__________________
F17 1100 личный блог
F17 вне форума  
Старый 30.05.2013, 00:13   #13
sspy
главный злодей гофака
 
Аватар для sspy
 
Регистрация: 18.06.2007
Сообщений: 5,737
Бабло: $953848
По умолчанию

Цитата:
Сообщение от F17 Посмотреть сообщение
Два года назад случайно нашел статью на русском, там про зависимость времени выполнения ПХП от красоты кода. Некоторые результаты впечатлили. Естественно, разница видна в циклах многотысячных. УРЛ не вспомню, но точно помню, что имя переменной самое быстрое 2-8 символов, циклы foreach() намного медленней чем просто for(). Всего там примерно с десяток гипотез с замерами влияния.

UPD
вот она http://php.spb.ru/php/speed.html
это тесты 2001 года
__________________
sspy вне форума  
Старый 30.05.2013, 00:44   #14
medar
кодер-энтузиаст
 
Аватар для medar
 
Регистрация: 04.04.2007
Адрес: Джамайка
Сообщений: 3,378
Бабло: $447150
По умолчанию

Да-да, это она, та самая мякотка.

Цитата:
никогда не пишите $a="$b", ибо это затормозит программу (в этой строке) на 40%.
Как говорят наши коллеги-иностранцы в подобных случаях - "моя жопа!"
medar вне форума  
Старый 31.05.2013, 17:23   #15
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,356
Бабло: $470735
По умолчанию

Цитата:
Сообщение от F17 Посмотреть сообщение
да!!! вот ее я читал в 2003 году, когда начал изучать php. Раньше такое было актуально, да и то не особо.

по сабжу: приведенные примеры оптимизаций бесполезны, но я уверен на 100%, что в коде есть гораздо более страшные вещи, чем пробельчики. Особенно это касается переключения контекста и выход php во внешний мир: в БД, сеть, файлы.
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 31.05.2013, 20:45   #16
arma
Пионер
 
Аватар для arma
 
Регистрация: 21.12.2007
Сообщений: 197
Бабло: $37745
По умолчанию

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

Про кавычки, да)
К примеру, нафига делать так для pure текста:
$a = "Вася любит мамбу";

если это будет реально правильнее:
$a = 'И Сережа тоже';

Это все равно как в C: "Подумаешь, int и long int - без разницы, и то и то целочисленное".
__________________
arma вне форума  
Старый 31.05.2013, 21:06   #17
sandy
Сеньор Член
 
Аватар для sandy
 
Регистрация: 11.04.2007
Адрес: The World
Сообщений: 1,125
Бабло: $107796
Отправить сообщение для sandy с помощью ICQ
По умолчанию

Цитата:
Сообщение от arma Посмотреть сообщение
Про кавычки, да)
К примеру, нафига делать так для pure текста:
$a = "Вася любит мамбу";

если это будет реально правильнее:
$a = 'И Сережа тоже';

Это все равно как в C: "Подумаешь, int и long int - без разницы, и то и то целочисленное".
с интами можно напороться на переполнение, со строками ошибок возможных не возникает от способа объявления. так что более верная аналогия - это в какую монаду упаковать результат, Option или Either
sandy вне форума  
Старый 31.05.2013, 21:16   #18
dveredel
Читатель
 
Аватар для dveredel
 
Регистрация: 23.11.2007
Сообщений: 420
Бабло: $48745
По умолчанию

Цитата:
А при трафе ~100k/daily тоже нет смысла так делать? (уменьшать количество знаков кода)
Нет, и я присоединяюсь - это фейспалм вопрос.

Уменьшать имеет смысл количество инклудов, поэтому многие фреймворки дают возможность подключать их как один здоровый файл (с акселератором это не страшно)


Offtopic
dveredel вне форума  
Старый 31.05.2013, 21:49   #19
llittle indian
Ебланнед
 
Регистрация: 28.05.2013
Сообщений: 44
Бабло: $70920
По умолчанию

Цитата:
Сообщение от F17 Посмотреть сообщение
Два года назад случайно нашел статью на русском, там про зависимость времени выполнения ПХП от красоты кода. Некоторые результаты впечатлили. Естественно, разница видна в циклах многотысячных. УРЛ не вспомню, но точно помню, что имя переменной самое быстрое 2-8 символов, циклы foreach() намного медленней чем просто for(). Всего там примерно с десяток гипотез с замерами влияния.

UPD
вот она http://php.spb.ru/php/speed.html
foreach медленнее for не потому, что for 3 буквы, а foreach 7
foreach это перебор массива данных, и он весь массив данных загоняет в память
чем больше массив, тем дольше
зачем это надо?
с foreach можно сортировать эти данные, для сортировки они все должны быть в памяти.
а вот for (и while/unless) просто перебирают массив

ещё передавать в функцию ссылку на переменную (я не знаю, есть ли ссылки в пхп) быстрее, чем саму переменную
особенно, если переменная окажется невъебенным массивом данных
llittle indian вне форума  
Старый 31.05.2013, 22:27   #20
llittle indian
Ебланнед
 
Регистрация: 28.05.2013
Сообщений: 44
Бабло: $70920
По умолчанию

и кстати, ускорители (те, которые пхп-код сразу в память загоняют вместе с запуском сервера) тут не помогут, если данные динамические
вся надежда на качественный код
llittle indian вне форума  
Старый 01.06.2013, 00:10   #21
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,356
Бабло: $470735
По умолчанию

Цитата:
Сообщение от llittle indian Посмотреть сообщение
foreach это перебор массива данных, и он весь массив данных загоняет в память
чем больше массив, тем дольше
зачем это надо?
массив данных уже в памяти как в случае с for, так и с foreach
не понял о чем ты

Цитата:
Сообщение от llittle indian Посмотреть сообщение
с foreach можно сортировать эти данные, для сортировки они все должны быть в памяти.
как foreach-ем можно сортировать данные?
сортировка организуется либо готовыми array-функциями, либо в 0,01% случаев пишется свой алгоритм, использую базовые примитивные функции

Цитата:
Сообщение от llittle indian Посмотреть сообщение
а вот for (и while/unless) просто перебирают массив
unless нету в пхп, но смысл понятен. Эти циклы работают также как foreach, отличие в том, что foreach умеет бегать по более сложным структурам (хеш-массивы), хотя ее также можно представить одномерным массивом.

Цитата:
Сообщение от llittle indian Посмотреть сообщение
ещё передавать в функцию ссылку на переменную (я не знаю, есть ли ссылки в пхп) быстрее, чем саму переменную
особенно, если переменная окажется невъебенным массивом данных
зависит:
1) от версии php
2) от стиля кодинга. Некоторым(мне) нужна изолированность объектов/процессов, качественная инкапсуляцию и соблюдение SOLID. Передача по ссылке усложняет связи, повышает риски ошибиться, и потом такой код приводит к "лапше". В ФП правильно делают
More
3) от конкретной ситуации. здесь по сути надо выбрать какую оптимизацию делаешь: по памяти, или по скорости.
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Закрытая тема