Ver Mensaje Individual
  #3 (permalink)  
Antiguo 06/10/2011, 11:48
Avatar de HackmanC
HackmanC
 
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 3 meses
Puntos: 260
Sonrisa Respuesta: Java: Por donde empezar si se conoce C++

Hola,

Cita:
Iniciado por jcginer Ver Mensaje
...
1.- Sabiendo C++ hace falta meterme con algún manual básico a saco??? No quisiera meterme en Swing y demás puesto que esa parte no me interesa (quiero aprender a programar aplicaciones web). No digo que no tenga que volver a algún manual básico a buscar información concreta ( en los manuales que ya tengo) por si me falla la base en algo determinado, pero lo básico ya lo domino con C++ y creo que es muy similar.
La sintaxis del lenguaje es similar con C++ y algunas partes de la semántica del lenguaje, técnicamente es lo único que necesitas para crear aplicaciones de 'consola', pero las aplicaciones AWT, Swing y Web no se basan simplemente en la estructura del lenguaje. La API de J2EE, es decir, el conjunto de clases que componen Java para web, es un concepto diferente que aún los programadores experimentados en Java JSE tiene que aprender por aparte.

Por decirlo de otra forma, el conjunto de clases API, es tan extenso que sobrepasa en una cantidad muy grande el tiempo que tienes que invertir en aprender simplemente el lenguaje, que es para lo único que te sirve el conocimiento que ya tienes de C++.

Cita:
Iniciado por jcginer Ver Mensaje
2.- Por donde empezar??? Hay mogollón de tecnologías Java, frameworks y demás historias, por lo que se me hace un mundo empezar y concrétamente no se por donde. Se que debo pasar por JSP, JSF, spring, hibernate,... pero no se el orden más apropiado. Quizas el ordén empleado por el compañero del otro post sea el correcto... que pensáis....
El orden que yo propondría sería el siguiente:
  • El lenguaje Java propiamente (es decir, desarrollo de algoritmos para solucionar problemas de consola, la parte similar a C++).
  • Las API de Java mas utilizadas (java.io, java.lang, java.math, java.net, java.util, etc.)
  • La API de Java de base de datos (java.sql).
  • La API de Java básica de la capa web Servlets (javax.servlet), acá pasamos a J2EE.
  • La API de Java de JSP e integración de páginas con Servlets y JavaBeans.
  • De aquí en adelante es a gusto o necesidad, etc.
  • La API de seguridad (javax.security).
  • La API de imágenes.
  • La API de Hibernate.
  • La API de Spring.
  • La API de JSF.
  • La API de Struts.
  • Esta lista podría crecer increiblemente.

Y por supuesto el conocimiento a profundidad de cada inciso, no simplemente una breve reseña, por lo menos deberías ser capaz de crear una aplicación completa en cada capa sin necesidad de recurrir a manuales o tutoriales; y si es posible, sin recurrir a consultar la documentación sino es brevemente.

Cita:
Iniciado por jcginer Ver Mensaje
3.- Libros, manuales, webs donde encontrar los contenidos a seguir???
En mi caso solamente la documentación original de Sun Microsystems, actualmente desaparecida y fusionada con Oracle. Es decir, The Java Tutorial, The J2EE Tutorial, la API de Java en Oracle, etc. Aunque algunos la encuentran difícil y buscan libros donde den explicaciones más detalladas, dependerá de tu percepción a los conceptos y tu dedicación a aprender.

Cita:
Iniciado por jcginer Ver Mensaje
4.- Ya he creado proyectillos pequeños utilizando jsp, tomcat y mysql, pero cuando me meto en algo más grande (Java Pet Store) me pierdo mucho. Necesito tener algún conocimiento extra para meterme a saco con J2EE???
Técnicamente si conoces lo que puse anteriormente no necesitas nada más, pero si lo conoces bien; aparte allí se aplican conceptos adicionales, como por ejemplo aplicaciones de varias capas y otros. Inclusive no esperes entenderlo a la primera, leer el código de otra persona normalmente lleva un poco de tiempo comprenderlo en su totalidad.

Saludos,