Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: limalimon1 en 17 Diciembre 2011, 17:49 pm



Título: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: limalimon1 en 17 Diciembre 2011, 17:49 pm


hola

Tengo el manual de referrencia de Phil Hanna , lo conpre hace 10 años y planeo usar el codigo y lo que enseña.


tendria sentido que me ponga a desarrrollar aplicaciones JSP con ese codigo que se propone ??


lo digo por que hay tendencia por hacer las paginas segun la ultima manera de hacerlas, como por ejemplo hoy se usa mucho php...



no tengo nada contra esa filosofia pero si algo funciona por que no usarlo ?


saludos.


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Jenhyal en 26 Diciembre 2011, 21:40 pm
Nadie te va a decir nada sobre el código si tu te enteras y te funciona. Es más, para cuatro frikis que miramos los códigos de las webs, no te merece la pena, de verdad.


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: darkaos en 27 Diciembre 2011, 00:31 am
yo te recomendaría que no lo hicieras, las tecnologías cambian constantemente, y lo mismo pasa con lenguajes de desarrollo, algunas funciones han quedado obsoletas por ciertos motivos, y lo más seguro que un código JSP de hace diez años tenga ciertas funciones obsoletas. Yo te recomendaría que si quieres realizar aplicaciones para la web, comiences a estudiar nuevas tecnologías de desarrollo web y a lo que se le esta dando fuerte en las grandes empresas, estas serian Django (Python) y Ruby&Rails (Ruby), te recomendaría más Django que tiene una gran comunidad de apoyo y hasta google apoya las tecnologias desarrolladas en este lenguaje.


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Stoya en 27 Diciembre 2011, 15:28 pm
JSP se sigue usando mucho y al ser Java es mucho más eficiente que python, php, perl, ruby o cualquier lenguaje de scripting.

Lo que sí es cierto es que desde hace 10 años se han desarrollado muchos frameworks y librerías que pueden facilitarte la vida mucho, no los dejes de lado y míralos también, los que te interesen para lo que te propongas hacer.


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Kase en 28 Diciembre 2011, 10:21 am
JSP se sigue usando mucho y al ser Java es mucho más eficiente que python, php, perl, ruby o cualquier lenguaje de scripting.

Lo que sí es cierto es que desde hace 10 años se han desarrollado muchos frameworks y librerías que pueden facilitarte la vida mucho, no los dejes de lado y míralos también, los que te interesen para lo que te propongas hacer.

mas eficiente que python o ruby?  creo que me esta dando un infarto x__x


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Jenhyal en 28 Diciembre 2011, 14:06 pm
Otra aportación más:

Seguramente, aunque el código sea viejo, te servirá para aprender. Luego iras evolucionando, creando tu propio framework, mirando todo lo que hay.

Creo que tener un apoyo para aprender es fundamental, y no enfrentarte tú solo con código puro y duro.



Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: #!drvy en 28 Diciembre 2011, 15:04 pm
Pues yo te sugeriria que aprendas con tutoriales en internet (o en su default te compres otro libro) y el que tienes le dejes como una reliquia.

Porque ?

Ese libro es viejo. Hay muchas formas nuevas de hacer las cosas y que son mas correctas que las otras. Muchas funciones habrán desaparecido o se habrán reemplazado por otras.

Vamos, que lo mas probable es que aprendas técnicas y/o maneras de programar que ya no se consideran muy correctas digamos.

Saludos


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Stoya en 28 Diciembre 2011, 20:35 pm
mas eficiente que python o ruby?  creo que me esta dando un infarto x__x

¡MUERE!

http://shootout.alioth.debian.org/u32/which-programming-languages-are-fastest.php?calc=chart&java=on&yarv=on&python3=on


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Kase en 29 Diciembre 2011, 02:46 am
¡MUERE!

http://shootout.alioth.debian.org/u32/which-programming-languages-are-fastest.php?calc=chart&java=on&yarv=on&python3=on

el  margen minimo es solo unas decimas mas que java...   python al igual de java se precompila a bitecode tras su primera ejecucion...  pero tarda bastante mas por que se interpreta por el interprete en lugar de tener el apollo de una maquina java que ocupa el equivalente a una orca en un estanque..

no negare que java gana en velocidad de procesamiento...
pero es desarrollo web, no requiere de calculos enormes que estresen el procesador, solo mantener variables en session y desplegar cosas..


es entonces cuando python vale la pena por simplisidad sobre java..
y en tiempo de respuesta y cantidad de peticiones por segundo se dan su batalla  al igual que RoR. y dejando muy atras a php...

ablamos de solo un par de decimas de segundo que facil pueden ser ignoradas por la estupides del programador al no elegir bien el algoritmo

no me molesta decir que java es mas eficiente, lo es si  te tomaste la molestia de estudiarlo varios años y leerte toda la documentacion de los modulos que usas
lo que me causa el infarto es el "mucho mas eficiente" sacrificar meses de tiempo de desarrollo para un par de decimas de segundo ganadas no tiene mucho de eficiente, y en python siempre puedes acudir a escribir rutinas en C  



y respondiendo al post

yo te dire que no te sirve... si estas estudiando por hobby mejor salta directamente a un framework como  struts2   es java, usa jsp, es mvc,  y es facil de anexar con springs y hivernate...

no piertas tu tiempo aprendiendo java a secas para web... solo conseguiras que te duela la cabeza n__nU


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: H1jack en 29 Diciembre 2011, 16:55 pm
Bueno yo creo que aunque lo que comente el libro pueda ser interesante y util para aprender algo, tambien tengo que decir que todo lo que ponga está desfasado o se puede hacer de formas mucho más fáciles y rápidas (incluso en Java). JSP ciertamente se sigue usando, pero como bien dicen los compañeros hay formas de hacer cosas que han mejorado mucho, incluso han aparecido lenguajes y frameworks que mejoran la calidad de programar


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Stoya en 30 Diciembre 2011, 05:27 am
el  margen minimo es solo unas decimas mas que java...   python al igual de java se precompila a bitecode tras su primera ejecucion...

¿Unas décimas? La mediana de python3 dice que tarda 58.05 veces más que C, mientras que java tarda 1.65 veces más. Eso es algo más que unas décimas.

pero tarda bastante mas por que se interpreta por el interprete en lugar de tener el apollo de una maquina java que ocupa el equivalente a una orca en un estanque..

¿De qué hablas? ¿La máquina de java ocupa qué? ¿Qué tienes de servidor?

no negare que java gana en velocidad de procesamiento...
pero es desarrollo web, no requiere de calculos enormes que estresen el procesador, solo mantener variables en session y desplegar cosas..

Para muchos usuarios a la vez.


es entonces cuando python vale la pena por simplisidad sobre java..
y en tiempo de respuesta y cantidad de peticiones por segundo se dan su batalla  al igual que RoR. y dejando muy atras a php...

Y esto supongo que me lo tengo que creer porque lo dice una orca desde un estanque.

ablamos de solo un par de decimas de segundo que facil pueden ser ignoradas por la estupides del programador al no elegir bien el algoritmo

No son un par de décimas, es 50 veces más lento. Si tarda 2 décimas entonces pasa a 100, si tarda 1 segundo entonces pasa a 50 segundos.

no me molesta decir que java es mas eficiente, lo es si  te tomaste la molestia de estudiarlo varios años y leerte toda la documentacion de los modulos que usas
lo que me causa el infarto es el "mucho mas eficiente" sacrificar meses de tiempo de desarrollo para un par de decimas de segundo ganadas no tiene mucho de eficiente, y en python siempre puedes acudir a escribir rutinas en C
 

50 veces más rápido es mucho más eficiente, lo mires como lo mires.

yo te dire que no te sirve... si estas estudiando por hobby mejor salta directamente a un framework como  struts2   es java, usa jsp, es mvc,  y es facil de anexar con springs y hivernate...

Totalmente de acuerdo en esto.


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Kase en 30 Diciembre 2011, 20:57 pm
aver.. parece que no sabes  ver bien tu paginita..  o no leiste bien mi comentario, dije margen minimo


Java 7 -server   1.11           1.11    1.36    1.65   2.02           3.01    5.97
Python 3     1.13    1.13           7.34     58.05   76.85   149.86   149.86

1.13 - 1.11 =.02

literalmente el margen minimo es solo un par mas de decimas

por que en el resto de las mediciones se separa tanto?   por que java tiene una maquina virtual preparada para ejecutar programas...  una maquina que minimo esta hay gastandote 100mgs de ram
mientras que python tiene un interprete, que  es muy distinto a una maquina virtual..
la diferencia radica en eso mismo..  python no esta preparado en ram para ejecutar programas

por que digo que es una orca en un estanque?   anda que si tienes 1g de ram, y la maquina virtual se come 100mg  eso equivale a una orca en un estanque..


Citar
Cita de: Kase en Ayer a las 02:46
no negare que java gana en velocidad de procesamiento...
pero es desarrollo web, no requiere de calculos enormes que estresen el procesador, solo mantener variables en session y desplegar cosas..

Para muchos usuarios a la vez.

la diferencia  entre django, ruby on rails y algun framework de java resolviendo peticiones por segundo es apenas notable... y muy supeior a php...

pero es muy raro encontrar un servidor java economico =P


PD: me intriga saber que pequeñas tareas testearon...  por que de entrada  python no tiene arreglos, tiene listas y tuplas, y si usaron listas en lugar de tuplas  comparandolo contra los arreglos de java es muy natural tanta diferencia...


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Stoya en 31 Diciembre 2011, 19:52 pm
literalmente el margen minimo es solo un par mas de decimas
¿Y? si te vas a fijar en un único valor tienes que fijarte en la mediana, los casos extremos nunca son significativos.

por que en el resto de las mediciones se separa tanto?   por que java tiene una maquina virtual preparada para ejecutar programas...  una maquina que minimo esta hay gastandote 100mgs de ram
mientras que python tiene un interprete, que  es muy distinto a una maquina virtual..
la diferencia radica en eso mismo..  python no esta preparado en ram para ejecutar programas
Mira cómo han hecho las mediciones, porque no tienes ni idea.

por que digo que es una orca en un estanque?   anda que si tienes 1g de ram, y la maquina virtual se come 100mg  eso equivale a una orca en un estanque..
La diferencia en el uso de memoria tampoco es tanta, de hecho python supera a java en algunos tests: http://shootout.alioth.debian.org/u64q/benchmark.php?test=all&lang=python3&lang2=java

la diferencia  entre django, ruby on rails y algun framework de java resolviendo peticiones por segundo es apenas notable... y muy supeior a php...
Y me lo tengo que creer porque lo dices tú...

PD: me intriga saber que pequeñas tareas testearon...  por que de entrada  python no tiene arreglos, tiene listas y tuplas, y si usaron listas en lugar de tuplas  comparandolo contra los arreglos de java es muy natural tanta diferencia...
Pues mira la página, está todo ahí.


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Kase en 31 Diciembre 2011, 22:14 pm
seguro que no me aceptaras este link como respuesta
http://blog.apsl.net/weblog/2010/07/29/va-a-desaparecer-python/ (http://blog.apsl.net/weblog/2010/07/29/va-a-desaparecer-python/)

pues diras que es un evangelizador de python

intento encontrar una compracion que vi etre  django, ror, zen php,  y otros..
 
dejango  y ror rondaban las 300 peticiones por segundo con cacheo y django mas de 200 sin cacheo

enserio por que te molesta tanto decir que python es bueno?  ::)

ami no me molesta para nada decir que java es superior  :xD

si yo tuviera que elegir  entre python y  java para un proyecto web grande elegiria python...  por que simplifica mucho la programacon de este. escribo menos codigo... django esta muy bien ordenado.
y bien optimizado puede llegar a 300 peticiones por segundo, y ni me imagino cuanto mas soportaria teniendo el motor sql en una maquina distinta y  el servidor de  archivos 'media' en otra...

e leido.. (intento encontrar las fuentes pero no se donde) que  java tiene un rendimiento que ronda tambien las 300 peticiones por segundo? si es mucho mas espero me corrijas.. y la verda no me sorprenderia que fueran 400 o 500

es solo que la complejidad de programar algo en java contra la simplisidad de programar algo en django es avismal..

en java solo e probado   jsf,  icefaces, struts1, struts2,  y en persistencia hybernate...
de jsf  y icefaces solo puedo hablar pestes.... hay que  configurar de 3 a 4 clases para cada cosa que quieres hacer   e importar un monton de beans por todos lados.

struts 1 me gusto un poco.. pero struts 2  y el uso de pojos simplifico demasiado la codificacion.. si me obligaran a usar java en un proyecto web usaria struts 2 o me daria un tiro.

aun asi que puede superar a algo tan simple como python-django

modelo
Citar
class Noticias (models.Model):
    titulo = models.CharField(max_length=120)
    post = models.TextField()
    fecha = models.DateField()
    def __unicode__(self):
        return self.titulo

controlador noticias con paginacion.
Citar
def noticias (request,n=1):
    noticias = Noticias.objects.filter(fecha__lte = datetime.now()).order_by('-fecha')[(n-1)*10:n*10]
    pagina = []
    for np in range(int(ceil(float(Noticias.objects.count())/10.0))):
        pagina += [{'url':np+1,'numero':np+1}]
    return render_to_response('noticias/noticias.html', locals(),RequestContext(request))
   
    
vista
Citar
{%for noticia in noticias%}
<h1><a  href='/noticia/{{noticia.id}}/{{noticia.titulo|slugify}}'>{{noticia.titulo}}</a></h1>
<p>{{noticia.post|safe|urlizetrunc:35}}</p>
<br><small>{{noticia.fecha}}</small>
<hr>
{%endfor%}
 <div id='paginador'> pagina:{%for n2  in pagina%}
{%if n != n2.numero%}
<a href=/noticias/{{n2.url}}>{{n2.numero}}</a>
{%else%}
    {{n2.numero}}
{%endif%}
podria simplificarse usando javascript para paginar y mejoraria el rendimiento del servidor al no tener que paginar el mismo y delegarlo al cliente... pero me gusta que mis clientes no sufran

y nisikiera tengo que programarlo cada que lo ocupo..  las app de django son plug and play y django ya me esta dando 300 pps...
hacer lo mismo en java me causa dolor de cabeza.. y solo  para conseguir unas cuantas mas de pps?  

PD: si hablamos de calculos matematicos complejos y extremadamente largos.. si python es 10 veces mas lento (5 veces mas lento con numeros muy grandes) que C
pero tienes librerias  como numpy  que estan escritas en C  y por eso mismo se acercan a su velocidad


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Stoya en 1 Enero 2012, 06:22 am
Muy bien el código en python es muy bonito, pero no estás explicando (y el blog tampoco explica) de dónde salen afirmaciones como éstas:

Citar
pasando de las más de 300 peticiones por segundo que aguanta un proyecto mínimo de Django a las 34 peticiones por segundo del mismo proyecto desarrollado en uno de estos frameworks PHP.

Que es lo que me importa.

Dame una referencia a un benchmark fiable si la tienes y si no la demagogia puedes dejarla para otros.

Por otro lado tengo entendido que grok es mejor que django, pero no lo he probado, así que no lo puedo afirmar, la comparativa que vi se basaba en lo que proporcionaba cada framework, pero no hacían ninguna alusión al rendimiento obtenido.


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Kase en 1 Enero 2012, 09:38 am
Muy bien el código en python es muy bonito, pero no estás explicando (y el blog tampoco explica) de dónde salen afirmaciones como éstas:

Que es lo que me importa.

Dame una referencia a un benchmark fiable si la tienes y si no la demagogia puedes dejarla para otros.

Por otro lado tengo entendido que grok es mejor que django, pero no lo he probado, así que no lo puedo afirmar, la comparativa que vi se basaba en lo que proporcionaba cada framework, pero no hacían ninguna alusión al rendimiento obtenido.

googleando un poco
http://letsgetdugg.com/2009/04/19/catalyst-vs-rails-vs-django-cook-off/
72 por segundo.

http://www.rkblog.rk.edu.pl/w/p/simple-python-frameworks-benchmark/

segun de 100 a 400 sin problemas

http://brainacle.com/benchmark-of-django-deployment-techniques.html


depende mucho del hardware ( ._.)   como te dije asumo que java es mucho mejor... pero en relacion  simplisidad-rendimiento prefiero python + django

y el modulo de memcach esta muy bien desarrollado... n__nU  ¿me intriga saber como andara con tornado?

aparte en programacion web no requires calculos complejos... y para calculos complejos mejor usar los modulos escritos en C que tratar de resolverlo con python puro...  su carencia de arreglos de manera natural  es  un fail ala hora de potencia de calculo

bueno, sin rencores..  no era mi intencion comenzar una guerra.. xD  solo defendi un poco mi lenguaje main....


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Stoya en 1 Enero 2012, 23:48 pm
Lo que pasa es que los benchmarks tienen que comparar dos lenguajes, si no no se tiene la referencia y para otro puede ser otro hardware el que se use, es decir, si no están ambos lenguajes incluidos en el benchmark no sirve para la comparción, ya quieras comparar python con php o java.

No hay rencores, simplemente es un tema que me interesa. Pero no le puedo decir a mis jefes: "vamos a usar python que me ha dicho un tío en un foro que mola mucho", con un benchmark sí podría, pero igualmente, tampoco me es una prioridad, simplemente sería algo que podría venirme bien en el futuro, si me lo das lo tengo, si no, lo tendré que buscar, si es que en algún momento realmente me compensa el esfuerzo de buscarlo.


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: adastra en 2 Enero 2012, 11:57 am
Respondiendo a la pregunta original,
Depende del código que este en tu libro y los conocimientos que tengas sobre Java, si dominas JSP y Servlets, puedes comenzar a aprender frameworks como JSF, pero si no tienes las bases de conocimiento necesarias Servlets y JSP, pues es recomendable adquirirlas primero...

Sobre la "disputa" entre Pyton y Java... En realidad creeis que hay uno mejor que otro? llevo programando en ambos lenguajes desde hace 10 años y os puedo asegurar que las diferencias en rendimiento dependen en gran medida de la plataforma en la que se ejecutan, el "tunning" realizado y en el entorno, las diferencias son minimas, ambos tienen caracteristicas "buenas" y "malas", los utilizo dependiendo de lo que quiera hacer y ya esta.
son HERRAMIENTAS, no un fin en si mismo.


Título: Re: Tiene validez aun codigo JSP de un libro de hace 10 años ?
Publicado por: Stoya en 15 Enero 2012, 19:26 pm
Sin embargo python como herramienta parece mucho más fácil de utilizar, tiene una sintaxis más escueta que supuestamente optimiza el tiempo del programador.

El problema es que no hay datos reales del rendimiento del programador y el rendimiento de los programas generados, y sin datos no se puede convencer al jefe de nada.

En el momento en que haya datos buenos estoy seguro de que muchos lenguajes incluso desaparecerán, ante otros que tal vez existan ya o se creen a la luz de los datos.

Hasta entonces habrá gente haciendo las cosas no tan bien como sería posible teniendo los datos y tomando mejores decisiones.