PHP vs. Python vs. Ruby vs. Groovy
От: SergeyGotsulyak  
Дата: 22.08.10 08:57
Оценка:
Холивар на тему лучшего языка для вебдева можно вести бесконечно. Объективных данных в Сети гораздо меньше, чем необоснованных шапкозакидательских постов.

По ссылке находится сравнительный тест свежайших сборок динамических языков: PHP, Python, Ruby, Groovy. Анализируется быстродействие, расход памяти и размер скриптов для решения одной и той же задачи.

http://www.gotsulyak.com/2010/08/post404

Краткий вывод: и все-таки Python круче!
Re: PHP vs. Python vs. Ruby vs. Groovy
От: Гест Украина https://zverok.github.io
Дата: 22.08.10 09:37
Оценка:
Здравствуйте, SergeyGotsulyak, Вы писали:

SG>Холивар на тему лучшего языка для вебдева можно вести бесконечно. Объективных данных в Сети гораздо меньше, чем необоснованных шапкозакидательских постов.


SG>По ссылке находится сравнительный тест свежайших сборок динамических языков: PHP, Python, Ruby, Groovy. Анализируется быстродействие, расход памяти и размер скриптов для решения одной и той же задачи.


SG>http://www.gotsulyak.com/2010/08/post404


SG>Краткий вывод: и все-таки Python круче!


Сравнение LoC (длины скрипта) — результат либо некомпетентности, либо злонамеренности: по крайней мере, скрипт на Руби написан очень плохо, за такое по пальцам бьют (его можно переписать раза в два короче, пожалуй).

Не в том суть, что я защищаю Руби, а в том, что эта часть сравнения вызывает большие сомнения.
Re: PHP vs. Python vs. Ruby vs. Groovy
От: Mr.Cat  
Дата: 22.08.10 09:44
Оценка:
Здравствуйте, SergeyGotsulyak, Вы писали:
SG>вебдев
SG>http://www.gotsulyak.com/2010/08/post404
А где по ссылке вебдев? Да и померяно уже все давно на шутауте.
Re[2]: PHP vs. Python vs. Ruby vs. Groovy
От: neFormal Россия  
Дата: 22.08.10 09:51
Оценка:
Здравствуйте, Гест, Вы писали:

SG>>http://www.gotsulyak.com/2010/08/post404

SG>>Краткий вывод: и все-таки Python круче!

Г>Сравнение LoC (длины скрипта) — результат либо некомпетентности, либо злонамеренности: по крайней мере, скрипт на Руби написан очень плохо, за такое по пальцам бьют (его можно переписать раза в два короче, пожалуй).


на питоне тоже не айс.. range(100000) создаст список из 100к элементов.. зачем — хз..
...coding for chaos...
Re[2]: PHP vs. Python vs. Ruby vs. Groovy
От: SergeyGotsulyak  
Дата: 22.08.10 11:45
Оценка:
Г>Сравнение LoC (длины скрипта) — результат либо некомпетентности, либо злонамеренности: по крайней мере, скрипт на Руби написан очень плохо, за такое по пальцам бьют (его можно переписать раза в два короче, пожалуй).

Так и любой скрипт можно сократить раза в два. Тут скорее показательный пример, какого размера код получается, если писать as is, без глубоких познаний языка и без оптимизации.
Re[3]: PHP vs. Python vs. Ruby vs. Groovy
От: SergeyGotsulyak  
Дата: 22.08.10 12:05
Оценка:
F>на питоне тоже не айс.. range(100000) создаст список из 100к элементов.. зачем — хз..

Прогнал тест, изменив на xrange. Производительность почти не изменилась.
Re[4]: PHP vs. Python vs. Ruby vs. Groovy
От: SergeyGotsulyak  
Дата: 22.08.10 12:06
Оценка:
SG>Прогнал тест, изменив на xrange. Производительность почти не изменилась.

Но! Важный апдейт — размер потребляемой памяти уменьшился с 4 до 2 мегабайт
Re[3]: PHP vs. Python vs. Ruby vs. Groovy
От: Гест Украина https://zverok.github.io
Дата: 22.08.10 12:30
Оценка:
Здравствуйте, SergeyGotsulyak, Вы писали:

Г>>Сравнение LoC (длины скрипта) — результат либо некомпетентности, либо злонамеренности: по крайней мере, скрипт на Руби написан очень плохо, за такое по пальцам бьют (его можно переписать раза в два короче, пожалуй).


SG>Так и любой скрипт можно сократить раза в два. Тут скорее показательный пример, какого размера код получается, если писать as is, без глубоких познаний языка и без оптимизации.


Эксперимент, в котором погрешность измерения больше точности измеряемых величин, не имеет смысла.
Re[4]: PHP vs. Python vs. Ruby vs. Groovy
От: SergeyGotsulyak  
Дата: 22.08.10 12:40
Оценка:
Г>Эксперимент, в котором погрешность измерения больше точности измеряемых величин, не имеет смысла.

Погрешность измерений минимальная. Время выполнения итераций и расход памяти практически не меняются от запуска к запуску.
Re[5]: PHP vs. Python vs. Ruby vs. Groovy
От: Гест Украина https://zverok.github.io
Дата: 22.08.10 13:14
Оценка:
Здравствуйте, SergeyGotsulyak, Вы писали:

Г>>Эксперимент, в котором погрешность измерения больше точности измеряемых величин, не имеет смысла.


SG>Погрешность измерений минимальная. Время выполнения итераций и расход памяти практически не меняются от запуска к запуску.


Я про раздел «SLoC, Verbosity, Syntactic Sugar»
Re: PHP vs. Python vs. Ruby vs. Groovy
От: c-smile Канада http://terrainformatica.com
Дата: 22.08.10 17:55
Оценка:
Здравствуйте, SergeyGotsulyak, Вы писали:

SG>Холивар на тему лучшего языка для вебдева можно вести бесконечно. Объективных данных в Сети гораздо меньше, чем необоснованных шапкозакидательских постов.


SG>По ссылке находится сравнительный тест свежайших сборок динамических языков: PHP, Python, Ruby, Groovy. Анализируется быстродействие, расход памяти и размер скриптов для решения одной и той же задачи.


PHP, Python, Ruby относятся к одной и той же группе с одними и теми же базовыми характеристиками.
Т.е. расхождение каких-то тестов между ними на порядок — это явная бага тестирующего — значит тест делает что-то другое принципиально.
Например PHP тест использует virtual properties (getters/setters) котрые есть в python и ruby тоже (но в их тестах не используются).

Тесты явно ангажированные, как минимум в отношении PHP.

SG>http://www.gotsulyak.com/2010/08/post404


SG>Краткий вывод: и все-таки Python круче!


Сравнение будет полным если добавить туда же JavaScript. Если рассматриваются server side скрипты то
имеет смысл тестировать скажем node.js ( http://nodejs.org/ ) которая использует V8 машину.
Что-то мне говорит что результаты тебя сильно разочаруют.
Re[2]: PHP vs. Python vs. Ruby vs. Groovy
От: SergeyGotsulyak  
Дата: 22.08.10 18:09
Оценка:
CS>Например PHP тест использует virtual properties (getters/setters) котрые есть в python и ruby тоже (но в их тестах не используются).

См. UPD2 в статье

CS>Тесты явно ангажированные, как минимум в отношении PHP.


Для меня нет никакой выгоды в этом. Используем как PHP так и Python в работе.

CS>Сравнение будет полным если добавить туда же JavaScript.


На самом деле для меня более интересно сравнить быстродействие веб-фреймворков на достаточно сложжных приложениях, но это сложнее — надеюсь, что руки все-таки дойдут.
Re[3]: PHP vs. Python vs. Ruby vs. Groovy
От: c-smile Канада http://terrainformatica.com
Дата: 22.08.10 18:42
Оценка:
Здравствуйте, SergeyGotsulyak, Вы писали:

CS>>Например PHP тест использует virtual properties (getters/setters) котрые есть в python и ruby тоже (но в их тестах не используются).


SG>См. UPD2 в статье


Графики тогда свои тоже UPD2 сделай.

CS>>Тесты явно ангажированные, как минимум в отношении PHP.


SG>Для меня нет никакой выгоды в этом. Используем как PHP так и Python в работе.


Тогда не ясен смысл статьи.

Еще раз: PHP, Python, Ruby и кстати Perl c JS — близнецы братья.
Вопрос при выборе лишь в синтаксических предпочтениях и наличии того или иного framework. Ну и распространенность на целевой платформе.
Скоростные характеристики и память +/- десятки процентов. Ruby в принципе несколько более тормозной из-за набора встроенных фич. Но и более компактный в плане LoC.
Re[3]: PHP vs. Python vs. Ruby vs. Groovy
От: HiSH Россия http://m0riarty.ya.ru
Дата: 23.08.10 07:56
Оценка:
Здравствуйте, SergeyGotsulyak, Вы писали:

CS>>Сравнение будет полным если добавить туда же JavaScript.


SG>На самом деле для меня более интересно сравнить быстродействие веб-фреймворков на достаточно сложжных приложениях, но это сложнее — надеюсь, что руки все-таки дойдут.


А на node.js есть куча веб-фреймворков.
http://expressjs.com/, например
app.post('/', function(req, res){
    if (req.body.name) {
        // Typically here we would create a resource
        req.flash('info', 'Saved ' + req.body.name);
        res.redirect('/?name=' + req.body.name);
    } else {
        req.flash('error', 'Error: name required');
        res.redirect('/');
    }
});

app.put('/', function(req, res){
    // Typically here we would update a resource
    req.flash('info', 'Updated ' + req.body.name);
    res.redirect('/?name=' + req.body.name);
});

app.listen(3000);


И они вполне себе используются на живых сайтах.
Re: PHP vs. Python vs. Ruby vs. Groovy
От: Anton Batenev Россия https://github.com/abbat
Дата: 24.08.10 17:48
Оценка:
Здравствуйте, SergeyGotsulyak, Вы писали:

SG> Холивар на тему лучшего языка для вебдева можно вести бесконечно.


Все тесты проводились на моем домашнем ноутбуке Intel Core2 Duo T5500 (два ядра по 1.66 GHz) с тремя гигабайтами оперативной памяти и быстрым SSD-диском. Управляет парадом свежая инсталляция 32-битной Windows 7 Home Premium.


Веб-дев говоришь? Ну-ну
avalon 1.0rc3 rev 352, zlib 1.2.3
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.