![](http://q.miximages.com/53500/Career Advice in Java Programming/main-qimg-d03fcc3033f21baa4257cec3e7ed8693.png)
¿Qué libro o plan de estudios usaste para aprender Java? ¿Cuánto aprendiste antes de los hilos?
Yo diría que el núcleo de Java con el que todos deberían estar familiarizados debería ser:
-
java.util.Collections
: conozca sus diversos tipos de contenedores e interfaces como: secuencias de acceso aleatorio – java.util.List
y sus implementaciones como ArrayList
y secuencias asociativas de Vector
– java.util.Map
y sus implementaciones como HashMap
y HashTable
Otras interfaces de colección y tipos como Set
, Queue
y Stack
- Genéricos de Java
- Manejo de excepciones, y cuál es la diferencia entre las excepciones marcadas y no marcadas
- Pruebas unitarias con JUnit (y tal vez Mockito para burlarse)
- Concurrencia “tradicional” en Java –
java.lang.Runnable
para subprocesos, y también java.lang.Thread
– Thread
rara vez se usa debido a las restricciones en la herencia, y también porque el concepto de subclasificación de Thread es un poco anti-OO.
-
ConcurrentHashMap
moderna de Java (desde Java 5): las colecciones y tipos de simultaneidad de java.util.concurrent
y java.util.concurrent.atomic
como ConcurrentHashMap
, ConcurrentSkipList
, Executor
classes, Future
y los tipos Atomic
.
- Conceptos reales de diseño de lenguaje y software como herencia, implementación, accesibilidad y visibilidad (
private
, protected
, public
, etc.), patrones de diseño y algoritmos, paquetes, inyección de dependencia (que es bastante enorme en el código Java real)
- Funciones de Lambda (solo Java 8, aunque esto es bastante nuevo y no extremadamente importante como las otras cosas en la lista)
Eso es solo lo básico. A continuación, deseará demostrar competencia en el uso del lenguaje , por lo que querrá escribir una gran cantidad de código de muestra para practicar el uso de esos conceptos. En cualquier empresa, aprenderá y usará muchas más cosas dependiendo de lo que esté haciendo:
- Cómo crear y construir proyectos Java a gran escala utilizando cosas como
ant
, maven
o ivy
para la gestión de proyectos y dependencias
- Utilizando más que solo Java, el JVM es anfitrión de una variedad de idiomas, incluidos Scala, Clojure, JRuby, Groovy, Rhino y Jython, que se han convertido en opciones populares para interactuar con Java o reemplazar a Java en situaciones como falta de rendimiento. código crítico
- Usando marcos principales como Spring, o Apache Commons, o Google Guava, etc.
- Usando bibliotecas Java más específicas como JDBC e Hibernate (para acceso a la base de datos), implementaciones JAX-RS como Jersey o RESTeasy para crear servicios web RESTful, o trabajando con las clases
nio
para el código de E / S.
- Una base de datos real: saber cómo consultar una base de datos sin una muleta como Hibernate. También conceptos sobre bases de datos como la optimización de consultas y la agrupación de conexiones (generalmente proporcionadas por bibliotecas como
c3p0
).
- Servidores de aplicaciones y contenedores como Tomcat, embarcadero, glassfish, JBoss, Weblogic
- Java Servlet API, que es la biblioteca intermedia para el desarrollo web
- Hacer cosas web con cosas como Wicket, o Tapestry, o Play, o Struts 2, o CXF, etc.
- Inyección de dependencia e inversión de marcos de control como Google Guice o Spring DI
- Haciendo Enterprise Java (cosas JEE)
- Familiarizarse íntimamente con el sistema Java y la máquina virtual
- Uso de código y bibliotecas específicos de la empresa.
Recomiendo tener en sus manos el Java efectivo de Joshua Bloch, la Concurrencia de Java de Brian Goetz en la práctica y el Desarrollador de Java bien fundamentado de Benjamin Evans si desea ampliar su conocimiento y conocimiento idiomático de Java.
Mientras tanto, aquí hay 3 trabajos en línea fáciles a tiempo parcial:
1. Empleos remunerados en redes sociales: visite el sitio web oficial
¿Sabía que las empresas de todo el mundo contratan a personas como usted para ayudarles a administrar sus cuentas de redes sociales como Facebook, Twitter y YouTube?
Hay mucho dinero en él, y la mejor parte es que no necesita ninguna calificación, experiencia previa o habilidades especializadas. Todo lo que necesita es unas pocas horas libres por semana, una computadora con conexión a Internet y un buen conocimiento de cómo usar Facebook, Twitter o YouTube.
¡Están contratando personas como tú para que lo hagan por ellos! Están pagando a personas como usted un gran dinero para trabajar desde casa haciendo tareas simples como:
- Creando su página de Facebook Fan
- Publicar actualizaciones de estado y comentarios
- Crear perfiles de Twitter
- Tuiteando ofertas especiales y promociones
- Comprometerse con sus clientes a través de comentarios y publicaciones
- ¡Pasa el tiempo jugando en Facebook y Twitter!
2. Redacción de trabajos en línea: visite el sitio web oficial
El sitio web Writing Jobs Online es un lugar donde los trabajadores independientes pueden encontrar un montón de diferentes trabajos de escritura. Aquí, incluso cualquier persona (escritores sin experiencia) puede comenzar a trabajar, haciendo muchos trabajos de escritura diferentes. Algunos ejemplos de trabajos son escribir contenido para sitios de blogs, libros electrónicos, libros, sitios web, revistas, etc.
Si ya es un buen escritor o tiene algún conocimiento sobre la escritura en línea, tendrá una gran ventaja sobre las personas que no lo hacen. Podrá comenzar a trabajar de inmediato. La plataforma en línea ofrece una amplia gama de temas que se actualizan todos los días. Por lo tanto, podrá elegir temas y escribir sobre temas que generen su interés.
En palabras simples, funciona así: escribir trabajos en línea cómo funciona: elige un trabajo de escritura, envía su trabajo, le pagan.
3. Obtenga dinero para jugar juegos – Visite el sitio web oficial
Y supongo que has escuchado que algunas cookies inteligentes se están pagando para jugar videojuegos y te preguntas si es solo un mito urbano. Así que estoy feliz de decirte que NO.
Verás, el negocio de los videojuegos ahora es más grande que el negocio de las películas, con un valor aproximado de $ 62 BILLONES actualmente . Y con ese tipo de dinero en juego, los juegos tienen que ser tan perfectos como sea humanamente posible. Porque si se lanza un juego con algunos errores, las malas noticias se extenderán como un incendio en línea, las ventas se dispararán y los creadores del juego perderán millones.
Entonces, con ese tipo de dinero en juego, es una gota en el océano para que los fabricantes de juegos le paguen hasta $ 30 por hora para probar sus juegos hasta la destrucción, para que puedan solucionar cualquier error antes del día del lanzamiento. Y aunque $ 30 puede ser una gota en el océano para las compañías de juegos, pronto se convierte en un ingreso útil para usted, particularmente cuando TAMBIÉN disfruta de juegos que nadie más en su vecindario ha visto aún.