Hace solo unos días , se lanzó la nueva versión del artefacto de desarrollo de software Java IDEA 2020.1 :
Lo actualicé y experimenté durante unos días en la máquina por primera vez, ¡y todavía se siente un poco fragante! ¿Qué pasa? Después de experimentar las nuevas características, no puedo evitar suspirar: IDEA se está volviendo realmente más inteligente y comprende mejor a los desarrolladores ahora.
UI / actualización de interfaz
1. La interfaz es compatible con chino
El efecto después de haber terminado en chino es este aspecto simple:
Cada flor entra en sus propios ojos, sin buen o mal juicio, puede ajustarla según sus preferencias.
Hay que decir que esta localización china no es compatible de forma nativa con el software, pero necesita descargar e instalar un Chinese (Simplified) Language Pack
complemento llamado , afortunadamente, este complemento se JetBrains
proporciona oficialmente
2. La evolución de la barra de navegación.
Ahora la barra de navegación de nivel de código puede localizar directamente un método o campo específico en el archivo, esto es realmente muy eficiente
3. Soporte de Javadocs
renderizado en el editor
Solía ser Javadoc
muy inconveniente leer en IDEA , porque el estado original Javadoc
contiene varias marcas, lo que no es fácil de leer. Esta nueva versión de IDEA 2020 tiene una nueva Javadocs
función de renderizado que se puede habilitar haciendo clic en el pequeño botón a la izquierda
Después de renderizar, Javadoc
es muy intuitivo y fácil de leer, y también puede ajustar el tamaño de fuente
4. Nuevos temas y fuentes.
En primer lugar, admite su JetBrains
propia JetBrains Mono
fuente nueva de forma predeterminada . Esto no es nada que decir. Lo he experimentado antes. Para obtener más información, consulte el artículo anterior "¡Pruebe la nueva fuente de programación oficial de JetBrains de agua, realmente fragante!" 》
Luego se adopta el IntelliJ Light
tema unificado , y el tema se ha unificado completamente en diferentes sistemas operativos
¿Te gusta ver los hábitos personales de todos?
5. El nuevo modo LightEdit del barco
LightEdit
Como su nombre indica, edición de código liviana.
Sí, esta IDEA actualizada admite la apertura de un único archivo de código para editar sin abrir todo el proyecto. El archivo se puede abrir en una ventana de edición separada, y esta ventana puede coexistir con otras ventanas (de proyecto). Así:
Más poderoso es que admite directamente la apertura rápida del proyecto completo donde se encuentra este archivo único :
Incluso puede abrir un solo archivo a través de la línea de comando, lo cual está bastante bien:
6. Admite el modo "Zen"
El modo de visualización de código actual es lo suficientemente rico como para admitir cuatro tipos:
Por supuesto, el modo Zen es el más completo. Tan pronto como abres este modo, todo el mundo está limpio ...
7. El terminal soporta columnas
Ahora puede dividir arbitrariamente el terminal que viene con IDEA en columnas, lo cual es muy conveniente
Admite la instalación directa de JDK y Git en IDEA
Muchos socios pequeños comunicaron que su entorno JDK parece tener problemas, y hay problemas en varios experimentos. Para este asunto, el trastorno obsesivo compulsivo está casi comprometido, es muy molesto.
A partir de IntelliJ IDEA 2020.1, podemos descargar y configurar directamente el entorno JDK desde IDEA al crear un proyecto, lo cual es muy conveniente.
Experimenté especialmente, descargué e instalé un Open JDK 14 en IDEA. No hay problema, es fácil de usar y cambiar también es muy conveniente.
Además, IDEA también admite directamente la instalación de Git.
Admite las nuevas características de Java 14
Hace algún tiempo, se lanzó Java 14 y se agregaron algunas características nuevas. Esta vez IDEA 2020.1 siguió rápidamente y admitió algunas de las nuevas características de Java 14. Aquí hay dos ejemplos típicos.
1. instanceof
Mejora de uso
En la versión antigua de Java, generalmente usamos instancia de sintaxis como esta:
private void test( Object obj ) {
if( obj instanceof String ) {
String str = (String) obj; // 需手动强制转换!
System.out.println( str.isEmpty() );
}
}
Y Java 14 ha instanceof
mejorado el uso. Con la ayuda de uno nuevo IDEA 2020
, podemos reestructurar rápidamente el código anterior de la siguiente manera:
Finalmente, se convirtió en este hijo secundario:
private void test( Object obj ) {
if( obj instanceof String str ) { // 校验通过,直接后面定义变量,无需强转!
System.out.println( str.isEmpty() );
}
}
2. record
Nuevo soporte gramatical
Java 14 añade una record
nueva sintaxis, record
el significado léxico "registro" , que se utiliza principalmente para registro fijo formalizado, es principalmente a través de antes de la clase inmutable para lograr, dar un ejemplo.
Por ejemplo, definimos una clase de registro de registro inmutable LogRecord
, que contiene ID de registro ( id
), tiempo de registro ( date
), detalles de registro ( detail
), según la práctica anterior, solo se pueden usar class
para definir:
public final class LogRecord { // 不可变类
private final int id;
private final LocalDate date;
private final String detail;
public LogRecord(int id, LocalDate date, String detail) {
this.id = id;
this.date = date;
this.detail = detail;
}
public int getId() {
return id;
}
public LocalDate getDate() {
return date;
}
public String getDetail() {
return detail;
}
@Override
public String toString() {
return "LogRecord{" +
"id=" + id +
", date=" + date +
", detail='" + detail + '\'' +
'}';
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
LogRecord logRecord = (LogRecord) o;
return id == logRecord.id &&
Objects.equals(date, logRecord.date) &&
Objects.equals(detail, logRecord.detail);
}
@Override
public int hashCode() {
return Objects.hash(id, date, detail);
}
}
Java 14 piensan encima de este final
tipo class
definido rutinas están completamente fijos, rutinas fijas escrito una gran cantidad de código, incluyendo: constructor, Getter
método, toString()
métodos, hashCode()
y equals()
métodos, etc., muy aburrido.
Con este fin, Java 14 introdujo una nueva record
sintaxis, que se puede hacer con una sola línea de código, lo cual es muy conveniente:
record LogRecord( int id, LocalDate date, String detail ) {
}
Esta vez, IDEA 2020 ya es totalmente compatible con la recod
gramática y también puede record
generar automáticamente varios métodos explícitos :
Apoye una inspección y reconstrucción más inteligente
1. Apoyar la firma de cambio de método local
A que te refieres Toma un ejemplo.
Cuando desee modificar directamente los parámetros de un método existente, sin importar 3, 21, 21, puede modificar directamente la firma del método, y luego hacer clic en Actualizar, todos los siguientes pasos IDEA pueden ayudarlo a completar.
2. Análisis inteligente del formato de cadena de fecha
Por ejemplo, en este ejemplo, cuando formateé una fecha, yyyy/MM/dd
escribí accidentalmente las cadenas de año, mes y día yyyy/mm/dd
, y MM
olvidé las mayúsculas y minúsculas, IDEA lo analizó automáticamente para nosotros:
3. Gramática inteligente y corrector ortográfico
Esta característica debe Grazie
usarse junto con este complemento, que es una herramienta integral de gramática, ortografía y revisión de estilo.
Por ejemplo, estreché mi mano en este lugar y escribí una gramática inglesa incorrecta, y nos impulsó de inmediato.
Depuración mejorada
1. El asistente de análisis de flujo de datos puede predecir directamente los siguientes resultados de operación
IDEA 2020.1 agrega directamente análisis de flujo de datos al depurador JVM. Cuando el programa se detiene en el punto de interrupción, IDEA puede ejecutar un análisis de flujo de datos basado en el estado actual del programa para predecir lo que sucederá a continuación.
2. Admite campos de objetos fijos al depurar
Cuando un objeto tiene demasiados campos, por lo que es difícil encontrar el campo requerido durante la depuración, podemos colocarlo directamente en la parte superior para facilitar su visualización.
3. Almacene la configuración en ejecución en forma de archivo
La nueva versión de IDEA admite archivar directamente la configuración actual de depuración / ejecución y elegir volver a cargarla más tarde
Control de versiones más avanzado.
La primera gran mejora es rediseñar la ventana de envío de código, en lugar de la antigua ventana emergente modal. De esta manera, cuando el código se envía para comparación, el editor se sentirá más cómodo.
La segunda mejora es apoyar la búsqueda , actualizar las ramas de código local y remoto:
Además, dejar rastros en este registro histórico es bastante bueno:
Actualizaciones de importación de Maven y Gradle
Tome la herramienta Maven como ejemplo aquí, aparece una notificación flotante en la esquina superior derecha del editor. Después de modificar el archivo de compilación, puede usar este mini icono de notificación para cargar los cambios.
Mejoras en el procesamiento de la base de datos.
La nueva versión de la gestión de bases de datos incorporada de IDEA ahora puede exportar datos a un Excel(.xlsx)
archivo y verlos directamente como texto en el editor
Cliente HTTP mejorado
Después de la actualización, es HTTP Client
más inteligente, los ejemplos típicos son: soporte para emparejamiento automático y finalización
Y también puede Contoller
generar automáticamente archivos de solicitud HTTP en el lado izquierdo del código de una manera rápida
Y para el proyecto Spring, también puede Endpoints
generar rápidamente archivos de solicitud HTTP en la ventana inferior .
Otras mejoras
1. Apoyo y mejora de diversos marcos, tales como: Spring WebFlux/Selenium/JMS/Micronaut/RxJava
etc.
2. Docker/Kubernetes
Mejoras de soporte
3. Scala 3
Apoyo
4. Android Volley
Apoyo
5. JavaScript
Mejora y apoyo
Resumen
Después de cierta experiencia, descubrí que la nueva versión de IDEA 2020.1 tiene muchas mejoras visuales y es muy fragante.
Sin embargo, hay otro problema práctico: después de actualizar, descubrí que no había una gran cantidad de complementos disponibles, por lo que la compatibilidad del soporte periférico tuvo que esperar.