viernes, 16 de noviembre de 2012

Comparativa de lenguajes web



Matriz comparativa de lenguajes de programación para el web ( intranet )


Concepto
ASP .NET
PHP
Java
Python
Ruby
Costo de servidor
Alto
Gratuito
Gratuito
Gratuito
Gratuito
Sintaxis de lenguaje base
VB  y C#
C / C++
C/ C++
C/ C++
Perl, Smalltalk, Eiffel, Ada, y Lisp
Orientado a objetos
Si
No completamente
Si
Si
Si
Sistemas operativos
Windows y Linux pero usando el proyecto Mono ( pero solo con C# )[5]
Linux o Windows
Linux o Windows
Linux o Windows
Linux o Windows
Servidor
IIS o Mono
Apache, compilador propio
Apache, Tomcat y Glassfish
Apache, compilador propio
Apache, compilador propio
Empresa
Microsoft y Xamarin ( para Mono)
The PHP Group ( open source)
Oracle
(open source)
Python software foundation
(open source)
Grupo Ruby (open source)
Base de datos (principalmente)
MsSQLServer
Mysql
Oracle, mysql
Mysql y PostgreSQL
Mysql y PostgreSQL
Rapidez de ejecución
Generación de página web [4,12,7, 13].
3er lugar
4to lugar
Último lugar
1er lugar
2do lugar
Propósito
Generar dinámicamente páginas web
Generar dinámicamente páginas web
Generar dinámicamente páginas web
Enfatiza la productividad y la lectura fácil del código
Código “divertido” y fácil de modificar por parte del desarrollador.
Apoyo de aprendizaje
Sitio web, foros, documentos proporcionados por Microsoft. En general buen soporte. Muy centralizada
Mucha, pero descentralizada. No hay una entidad que de forma oficial centralice la ayuda
Mucha, pero descentralizada. No hay una entidad que de forma oficial centralice la ayuda
Mucha, pero descentralizada. No hay una entidad que de forma oficial centralice la ayuda
Menos, pero descentralizada. No hay una entidad que de forma oficial centralice la ayuda
Soporte a móviles
(todos por medio de un browser)
Native: Windows phone

Native: android


Ambiente de desarrollo
Ms Visual Studio à costo
Y herramientas open source [14]
Eclipse y otras herramientas open source
Eclipse, netbeans y otras herramientas open source
Eclipse, netbeans y otras herramientas open source
Eclipse, netbeans y otras herramientas open source
En todos los lenguajes se pueden realizar invocaciones con AJAX y a web services [15 – 20].

Referencias
[1] Steven Sanderson’s Blog. http://blog.stevensanderson.com/
[2]Make de web Faster. Google Developers. https://developers.google.com/speed/articles/?hl=es
[3] Comparativa entre J2EE, ASP.NET y PHP. Anger Rising. http://angerrising.com/2010/01/02/comparativa-entre-j2ee-asp-net-y-php/
[7] Benchmark: PHP vs. Python vs. Perl vs. Ruby, Tim Hentenaar’s Blog. http://hentenaar.com/serendipity/index.php?/archives/27-Benchmark-PHP-vs.-Python-vs.-Perl-vs.-Ruby.html
[10] The 10 best mobile phones ranking 2012. http://www.fraakz.com/top-10-mobile-phones-ranking-2012.html
[11] ¿Cual es el mejor navegador para el celular?. Movilandia. http://blogs.lanacion.com.ar/movilandia/varias/cual-es-el-mejor-navegador-para-el-celular/
[12] PHP vs ASP vs ASP.NET vs Javascript vs CGI. http://www.wrensoft.com/zoom/benchmarks.html
[13] The computer language Benchmarks Game. http://shootout.alioth.debian.org/
[15] ASP .net: Enhanced Interactivity and Responsiveness. Microsoft ASP.Net. http://www.asp.net/ajax
[16] AJAX Tutorial. W3Schools home. http://www.w3schools.com/ajax/default.asp
[17] Philip McCarthy . AJAX for developers: Build dynamic java applications. http://www.ibm.com/developerworks/library/j-ajax1/
[18] Python and AJAX tutorial for beginners with web.py and jQuery. Kooneiform. http://kooneiform.wordpress.com/2010/02/28/python-and-ajax-for-beginners-with-webpy-and-jquery/
[19] AJAX on Rails. RailsGuides. http://guides.rubyonrails.org/ajax_on_rails.html
[20] Deepak Vohra. Create web services with Ruby on Rails and Action web service. http://www.ibm.com/developerworks/opensource/library/os-ws-rubyrails/index.html



2 comentarios:

  1. Buena tabla informativa Ingeniero! Gracias por los aportes!

    ResponderEliminar
    Respuestas
    1. Gracias Black Hamer, algunas personas me han hecho varios aportes, actualizaré pronto esta comparativa.
      buen fin de semana!

      Eliminar