Lenguajes de Programación y su factor rapidez [ Era: Re: Jabber server & client. ]

Rodrigo Fuentealba darkprox en gmail.com
Vie Nov 16 00:39:30 CLST 2007


El 16/11/07, Leonardo Soto M. <leonardosoto en tutopia.com> escribió:
> On Nov 15, 2007 11:16 PM, Rodrigo Fuentealba <darkprox en gmail.com> wrote:
> > El 15/11/07, Cristian Rodríguez <crrodriguez en suse.de> escribió:
>
> [...]
>
> > >
> > > Logico, C es de bajo Nivel y java de alto nivel, comparando peras y
> > > manzanas...
> >
> > I know, por ende un cliente escrito a más bajo nivel anda rápido; java
> > sí pesa bastante. Python también es de alto nivel y consigue ser 3x
> > más lento que C solamente. A eso apunto.
>
> Espero haber entendido mal, pero no estarás sugiriendo que Python es
> en general más rapido que las JVMs modernas? Esa no la compro...

Los tipos de Python hacen esfuerzos sobrehumanos por que su lenguaje
interpretado sea todo lo rápido posible, algo que me gustaría ver en
PHP algún día. Las JVMs modernas en todo caso han mejorado muchísimo.

> Por otra parte, no necesariamente bajo nivel => mayor rendimiento. Hoy
> en día la tienes difícil si quieres ir a requete-bajo-nivel y escribir
> en ensamblador código más eficiente que el que genera tu compilador de
> C.

¿Para qué? Con C es suficiente; de hecho, la idea de todos estos
frameworks nuevos (Ruby on Rails, Django, Symfony, PRADO, etecé,
etecé, etecé...) es hacer que el desarrollo sea más rápido, porque ya
la velocidad de procesadores no es un problema.

El problema es que (como lo apuntaba Cristian en un correo anterior)
los tipos que no tienen idea de programación tienden a comparar
lenguajes con frameworks, e inclusive lenguajes que están en distintas
fases de la cadena entre ellos, cuando en realidad las comparaciones
son malas; es preferible mirar caso a caso dependiendo de parámetros
para nuestras aplicaciones. Los que yo mido (tanto para frameworks
como para lenguajes) son:

1.- ¿qué tan fácil es?
2.- ¿qué tan rápido es?
3.- ¿qué tan caro es?
4.- ¿qué tanto cuesta conseguir soporte?
5.- ¿qué tanto cuesta conseguir hosting, en el caso de ser Web?
6.- ¿qué tanto soporte para el trabajo específico tiene?
7.- ¿cuál es su historial de seguridad?
8.- ¿qué tan bien documentado está?
9.- ¿qué tan grande es su comunidad de usuarios?
10.- ¿qué tan bien se ajusta a los requerimientos de lo que programaré?

Saludos,

-- 
Rodrigo Fuentealba



Más información sobre la lista de distribución Linux