Prima di proseguire...
Potrebbe interessarti la nostra collezione di esercizi C risolti?
Abbiamo testato un semplice ciclo in diversi linguaggi(interpretati e compilati), senza considerare le velocità di compilazione i tempi(sotto linux) sono stati i seguenti:
php : 0.344
php usando gli oggetti : 0.372
c : 0.120
c++ : 0.340
java : 1.968
python : 0.744
perl : 0.288
mentre le velocità di compilazione sono state le seguenti:
c = 0.236
c++ = 0.743
java = 1.444
a scopo informativo vengono allegati i vari programmi utilizzati :
php :
#!/usr/bin/php <?php for($i=0;$i<100000;$i++) print("ciao\n"); ?>
php ad oggetti :
#!/usr/bin/php <?php class prova{ public function __construct(){ for($i=0;$i<100000;$i++) print("ciao\n"); } } $pp = new prova(); ?>
c :
#include<stdio.h> int main(){ int i; for(i=0;i<100000;i++) printf("ciao\n"); }
c++ :
#include <iostream> class prova { public: prova(); }; prova::prova() { for(int i=0;i<100000;i++) std::cout << "ciao" << std::endl; } int main(){ prova pp; }
java :
public class test { public static void main(String[] args) { int i; for(i = 0; i < 100000;i++) System.out.println("ciao"); } }
python :
#! /usr/bin/env python for i in range(100000): print "ciao"
perl:
#!/usr/bin/perl for($i=0;$i<100000;$i++) { print "ciao\n"; }
Ciò che risulta da questi test è che, come c’era da aspettarsi, il miglior linguaggio è il c, dato che il programma compilato è simile ad un programma scritto direttamente in assembler, in modo ottimizzato.
Ma ciò che è interessante notare è che compilato non vuol dire per forza più veloce, infatti il perl è più veloce del c++. Il php normale eguaglia il c++, anche se usato ad oggeti(per un confronto reale) è un po’ più lento; c’è anche da considerare che il php non ha usato ottimizzatori. solo il python, tra i linguaggi interpretati, è molto più lento del c++.
Infine come peggior linguaggio c’è il java che nonostante la sua pseudo-compilazione ha ottenuto cattivi tempi, funziona bene solo nelle macchine sun dove è presente l’interperetatore hardware.
P.S. naturalmente il php è stato eseguito come applicazione di shell
velocità linguaggi by cardinale claudio is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
bhé se volevamo trovare un motivo x il quale php fa schifo l’abbiamo trovato: è + lento del c++ xD
ma dove scusa??? ti ricordo che il php è non ottimizzato ed è a parimeto
Guarda che si può ottimizzare anche c++…
come ottimizzazione intendo la pseudo compilazione in bytecode