¿Qué conocimientos y habilidades debe tener un pasante de Java?
Si lee atentamente el primer volumen de Java Core Technology, encontrará el uso común de clases de colección. Las dos más importantes son ArrayList y HashMap, que pueden cepillar fácilmente leetcode y algunas. Operaciones de clase de colección. El medio todavía está bien. Para ir más allá, puede echar un vistazo al código fuente de ArrayList (esta parte del código fuente casi no es difícil), que le ayudará a comprender el uso de interfaces y clases abstractas.
Además, para las principales entrevistas actuales sobre Java, creo que es necesario comprender el modelo de memoria de Java, el GC, la seguridad de subprocesos y los grupos de subprocesos. Independientemente de si se le preguntará al respecto en la entrevista, al menos necesita saber que Java tiene estas cosas. Puede complementar este conocimiento leyendo sobre la máquina virtual Java y la programación concurrente de Java en el combate real. No deberías estar expuesto a estas cosas durante las pasantías, pero nuevamente, necesitas conocer estos conceptos.
02. Familiarizado con bases de datos y sentencias SQL básicas.
La base de datos principal es MySQL. Familiarizarse con las herramientas de instalación, inicio y visualización de MySQL (workbench, navicat, etc.) y saber qué es el nivel de aislamiento. Las declaraciones SQL se pueden utilizar para escribir selección, inserción, actualización y unión interna básica de dos tablas, además de declaraciones ddl para agregar campos y modificar campos, y comprender el principio de índice y las características de innodb. Si es posible, puede comprar un host en la nube a precio de estudiante, como Tencent Cloud en Alibaba Cloud. Ya estás familiarizado con la instalación y el uso de MySQL desde la línea de comandos en CentOS o Ubuntu.
Como extensión, puedes aprender sobre el uso básico de redis. Como componente popular ahora, en realidad es muy fácil comenzar y a algunas entrevistas técnicas les gusta preguntar al respecto.
03, Comprender un framework web Java.
Recomiendo Spring SpringMVC Mybatis (no se recomienda aprender Sping Boot desde el principio) y construir dicho entorno localmente primero.
Un buen lugar para aprender es github, que le enseña cómo integrar manualmente el marco SSM más elegante y utilizar pacientemente este tutorial para configurar un entorno de desarrollo web paso a paso. En la primavera, nos centraremos en comprender el COI y el AOP.
Se recomienda utilizar Intellij IDEA para codificar y aprender a usar Git. Los comandos incluyen cambiar de rama, crear ramas, agregar, confirmar, empujar y fusionar (aprenda qué son los conflictos y cómo solucionarlos), ya sea usando la línea de comando o la interfaz gráfica proporcionada por IDEA. Recomiendo ampliamente este último porque una vez que lo uses sabrás lo útil que es.
04, conozca algunos conocimientos de front-end.
En mi experiencia, necesitas saber html, css, js (angularjs 1.x) y jQuery simples, entre los cuales necesitas saber bootstrap. Según la documentación, puedes utilizar sus componentes para lograr el efecto deseado. ¿Cuánto tiempo te lleva aprender estas cosas? Quizás tres días. . . Solo necesito conocer los métodos de escritura más básicos para satisfacer las necesidades del proyecto. Si no puedo satisfacer mi futuro trabajo, puedo estudiar en Baidu en cualquier momento, así que creo que no es algo difícil.
05. Implementar proyectos basados en el marco del MUS.
Los malos son las librerías online y los blogs personales. Aunque son veteranos, siempre están familiarizados con las operaciones de bases de datos y están capacitados para agregar, eliminar y verificar la lógica empresarial. Entre ellos, debe prestar atención a algunos puntos:
Estilo de código, incluida la denominación de casos de camello, campos de base de datos, tipos, nombres de tablas, etc. , centrándose en la programación orientada a la interfaz en lugar de la programación orientada a la implementación.
¿Qué está haciendo MVC exactamente? ¿Por qué el código escrito en mi canal y en mi servicio es casi el mismo? Entonces, ¿por qué dos capas? ¿Qué hay que hacer en el controlador?
Además (los requisitos de la pregunta pueden ignorarse pero deben entenderse), ¿cómo almacenar la contraseña al iniciar sesión? ¿Texto plano? ¿Qué pasa con la gestión de sesiones? ¿Cómo configurar la configuración de transacciones? ¿Cómo salté directamente al backend tan pronto como cambié la URL? ¿Cómo puedo controlar los permisos de esta parte? Cómo realizar paginación front-end y paginación back-end, etc.
Finalmente, intente publicar su aplicación en el host de la nube que compró. Familiarícese con los comandos básicos como cd, tar, scp, vi, vim, configuración y operación de tomcat, etc., que serán útiles. para futuras pasantías.
06, repasa algunos problemas simples de algoritmos de escritura a mano.
Estas entrevistas con programadores son casi inevitables. Los temas de alta frecuencia no son más que clasificación rápida, método de búsqueda binaria, topK, recorrido de árbol binario, cola de simulación de doble pila, etc.
07. Escrito al final
Después de lo anterior, creo que todavía es posible postularse para un pasante de Java en una empresa común, y mucho menos en una empresa grande. La única desventaja es que si quieres entrar en una gran empresa, solo puedes ser mejor de lo que dije, pero a la tecnología no le importan demasiado tus antecedentes. Se puede decir que si trabajas duro, tendrás una oportunidad.
Finalmente, antes de la entrevista, debes leer más entrevistas, preparar las preguntas más frecuentes y escribir un currículum conciso y refrescante.