Сравнение C#, Delphi, PHP ^_^ от Priler

Сравниваем трех титанов мира программирования.

Проводим тест на примере 3х популярных языков, а именно С#, Delphi и PHP.
Тест прост, реализуем вывод цифр от 1 до 1000000, кто же будет быстрее всех?
Запуск каждого скрипта осуществляется по 10 раз из консоли.

У C# и Delphi это стандартная возможность.
В PHP запуск осуществляем посредством CMD в CGI версии PHP из коробки Denwer'а стандартным параметром -f.

Скорость у всех измеряем TImeStamp'ом, то есть двумя точками, при старте и при завершении итераций.

Тесты ведутся на моем компьютере со следующей конфигурацией:
Intel Core i7 3632QM 2.2GHz with Turbo Boost up to 3.2GHz
NVIDIA GeForce GT 730M with 4GB Dedicated VRAM
8 GB DDR3 Memory

 

А вот коды реализаций на 3х языках:

 

C#:

int unixTimeStart = (int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds;
for (int i = 1; i <= 1000000; i++)
Console.WriteLine( i );

int unixTimeEnd = (int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds;

int result = unixTimeEnd - unixTimeStart;

Console.WriteLine("---\nПотрачено - " + result + " секунд.");

Console.ReadKey();

 

Delphi:

try
{ TODO -oUser -cConsole Main : Insert code here }
StartTime := round((Now-EncodeDate(1970,1,1))*24*3600);

for i := 1 to 1000000 do
WriteLn( inttostr( i ) );

EndTime := round((Now-EncodeDate(1970,1,1))*24*3600);

WriteLn('---\nПотрачено - ' + inttostr(EndTime-StartTime) + ' секунд.');

ReadLn;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;

 

PHP:


$start_time = time();

for( $i=1; $i<=1000000; $i++ )
echo $i."\n";

$end_time = time();

echo "---\nПотрачено - ".( $end_time - $start_time ).' секунд.';

 

Победитель выявляется по минимальному времени выполнения задачи.
Также следует учитывать и то, что сравниваются два интерпретатора и один компилятор.

Итак, вот результаты в секундах:

C#
1) 59
2) 34
3) 27 минимальный результат
4) 70
5) 50
6) 35
7) 32
8) 32
9) 36
10) 34

Delphi
1) 56
2) 34
3) 18 минимальный результат
4) 20
5) 29
6) 19
7) 19
8) 19
9) 18
10) 20


Добренький пых не уступает своим братьям, вот его результаты.
PHP
1) 49
2) 35 минимальный результат
3) 35
4) 38
5) 73
6) 53
7) 54
8) 36
9) 39
10) 36

Подводим итоги.

C# показал всю свою мощь с минимальным временем в 27 секунд.
Среднее его время составляет 30 секунд, что очень даже быстро, учитывая что это интерпретатор.

Delphi показал наилучшее минимальное время в 18 секунд.
Его среднее время составило 25 секунд.
Что тут сказать, мощь компиляторов поистине велика, что будет если затестить C++, наверное покажет 1 секунду :D

PHP держится на уровне, как бы его все не обзывали.
Его минимальное время составило 35 секунд.
Среднее время у него составляет 45 секунд.
Совсем даже неплохо для транслирующего интерпретатора.

----------------------------

На первое место встает DELPHI с результатом в 18 секунд.
На второе место встает C# с результатом в 27 секунд.
На третье место встает PHP с результатом в 35 секунд.

Что касается качества кода(читабельность и удобность), то у C# он пожалуй самый лучший.
На втором месте PHP, и на третьем Delphi.

Вот такие вот тесты и их результаты :)

Все тесты проводил Priler, то есть я.

Удачи и до скорых встреч, скоро будут очередные тесты.

 Кодим на всех языках мира   7006     0  4  16.05.2014
 Нравится?
 Расскажи друзьям
 Комментарии