¡Mi objetivo es hacer aplicaciones web!
Terminé de leer los libros "Headfirst - Java" y "Headfirst - Servlets y JSP".
Debido a que este tema (aplicaciones web) es tan grande y complicado, me gustaría preguntar qué debo aprender a continuación. Me siento sobrecargado cuando leo palabras clave como Java EE, EJB, JSF, JPA, Glassfish ... pero no me rendiré.
¿Alguien puede decirme cómo debo proceder con el aprendizaje? ¿Debería agarrar un libro como este? Comenzando la plataforma Java EE 6 con GlassFish 3: de principiante a profesional o debería simplemente hacer algunos tutoriales en línea?
¡Gracias!
java
jakarta-ee
web-applications
creativz
fuente
fuente
Respuestas:
Incluso si sé que esto será controvertido, mi consejo sería comenzar solo con Java EE 6. Entonces, tome GlassFish v3 y obtenga el libro Beginning Java EE 6 Platform with GlassFish 3: From Novice to Professional o siga el tutorial de Java EE 6 . En mi opinión, el libro (que comencé a leer, así que sé de lo que estoy hablando) brinda más orientación que podría ser preferible si "todo" es nuevo para usted (cubre tanto la plataforma Java EE como sus API y el entorno para construir, implementar sus aplicaciones).
Ahora, como dije, ya puedo escuchar voces que dicen cosas como "Java EE es pesado, use Spring en su lugar, aprenda Struts o Wicket o Stripes para la capa de presentación, aprenda Hibernate para la persistencia, o no porque no me gusta ORM, use iBatis o JDBC directo en su lugar (verá, está bien con Spring, Spring es tan genial), y use Tomcat (y por qué no Jetty) o JBoss, o simplemente olvídese de todo esto y elija Grails, y bla bla bla ... " .
Pero no creo que esto realmente te esté ayudando y, sin tutoría u orientación (y no encontrarás un recurso único no obsoleto que cubra todas las combinaciones), esto debe sonar muy confuso para un principiante.
Entonces, porque creo que Java EE 6 es una gran mejora con respecto a las versiones anteriores de Java EE, porque proporciona API estándar realmente agradables para todas sus necesidades (Servlet 3.0, JSF 2.0, JPA 2.0, EJB 3.1 lite, Bean Validation 1.0, CDI , etc.), porque estas API son más que decentes, porque no hay nada realmente malo en aprenderlas, porque esto ya es una gran tarea, porque tienes que empezar por algún lado , me concentraría en Java EE 6 solamente y me olvidaría de otros marcos por ahora. Más precisamente, comenzaría con el perfil web Java EE 6 (y luego agregaría cosas si desea ir más allá).
Al hacer esto, 1) comenzará y aprenderá cosas nuevas y 2) le dará algo de tiempo a todos los demás marcos y / o herramientas para adaptarse y demostrar que todavía son necesarios. Y si lo hay, todavía será el momento de experimentar con los supervivientes y podrá comprender mucho mejor por qué existen.
fuente
Mi consejo 1 es dejar de leer libros y empezar a implementar cosas. En mi experiencia, el aprendizaje de libros es un pobre sustituto del conocimiento que se obtiene al hacer cosas.
1 - Contexto: este es un consejo para alguien que acaba de terminar de leer dos libros sobre el tema y está buscando más libros para leer. En la práctica, es necesario equilibrar la lectura y la actividad. Especialmente si tiene un problema específico que está tratando de resolver.
fuente
reading
ypractice
.Java EE 6 es realmente sorprendente. El único problema es que tiene alrededor de 2 semanas y actualmente solo hay 1 contenedor que ofrece sus características: Glassfish.
No tengo nada en contra de Glassfish, lo uso por todos lados, varias instancias de producción, me encanta el producto y el proyecto.
Dicho esto, los detalles de Java EE 6 no se traducen a Java EE 5. Algunos lo hacen, muchos lo hacen, pero el Perfil Web, Servlet 3.0, los nuevos tipos de Bean, JPA 2, etc. Esos no están ahí.
Entonces, al aprender Java EE 6 primero, simplemente se limita a un solo contenedor. Vienen más, pero aún no están aquí.
Tomcat, JBoss, OpenEJB, Glassfish, Jetty, Resin, Geronimo, etc., funcionan bien con la especificación Java EE 5 (al menos aquellas partes de la especificación que admiten, Tomcat no tiene EJB, por ejemplo).
No puedo pensar en nada en Java EE 5 que no se haya trasladado a Java EE 6. Java EE 6 hizo que algunos aspectos muy antiguos fueran opcionales, y los que simplemente no aprenderías hoy de todos modos. Java EE 6 hizo que algunas cosas de Java EE 5 fueran aún más fáciles (empaquetado notablemente, EJB Lite, por ejemplo).
Aprenda Java EE 5 ahora para que pueda aplicar lo aprendido en una variedad de entornos, en lugar de aprender Java EE 6 ahora y descubrir que es posible que no pueda usar mucho de lo que aprende.
Ningún libro le enseñará lo que necesita saber. Los servlets, por ejemplo, son una buena base, pero para algo más grande que un par de páginas o un punto final, querrá usar uno de los muchos marcos de terceros, o JSF, y ningún libro cubre el núcleo y luego un marco en la parte superior. de eso.
El tutorial de Java EE 5 es bueno para establecer las bases, mi principal queja es que no te muestran el código fuente. Más bien esperan que lo descargues y ejecutes. No se trata en el tutorial. He descubierto que los libros de Head First son bastante buenos.
Para la programación web, los servlets sin procesar son lo suficientemente importantes solo para comprender el ciclo de solicitud / respuesta, pero no es necesario un conocimiento profundo para dar un salto a un marco de terceros.
Soy un gran admirador de Stripes para un marco de acción (frente a un marco de componentes), y el único libro de Stripes disponible es excelente (lo que hace que elegirlo sea una elección fácil).
No puedo sugerir un libro de marco de componentes, y en realidad no recomendaría uno de inmediato. Los marcos de componentes realmente entierran las estructuras centrales de solicitud / respuesta HTTP. Los entierran por una razón, y ganan valor al enterrarlos, pero creo que para ser efectivo es necesario tener una comprensión sólida de estos conceptos desde el principio. Es por eso que no sugiero aprender primero un marco de componentes.
El marco JAX-RS REST, incluido en Java EE 6, pero fácilmente instalable en Java EE 5 o cualquier contenedor de servlets, es excelente. Podría decirse que es lo que debería haber sido Servlet 3.0. Pero no conozco ningún libro para eso.
fuente
Para Tomcat, lea el manual en el sitio web. Es muy bueno. En particular, los primeros capítulos sobre organización e implementación de aplicaciones web, y los capítulos sobre la API de Servlets y JSP.
Para Spring, el libro de Manning Spring in Action es muy bueno. De manera similar para Hibernate (el libro de Manning), pero creo que Hibernate está mayormente fuera del alcance de las aplicaciones web. Sin embargo, es tu decisión.
Wicket - Libro de Manning también. Pero en realidad, solo escribe tu código front-end en Javascript. Será menos doloroso, en mi opinión.
fuente
No comentaré sobre otras tecnologías, pero si quieres aprender Hibernate, obtén "Hibernate Made Easy" de Cameron McKenzie (www.hiberbook.com). Vale cada centavo. Puedes terminar de leer ese libro en 2 días (literalmente). es como una novela y al final te encuentras tratando con Hibernate como un Semi-Pro.
fuente
Jpassion proporciona buenos videos y material para aprender Java EE 6 y otras cosas.
También debería ver ejemplos de aplicaciones:
fuente
Si solo desea crear aplicaciones web en Java, consulte Play Framework . Es similar a "Ruby on Rails"
fuente