¡Escribe errores un 200 % más rápido! Colgando habilidades de uso de IDEA

fondo

El proceso de desarrollo de Java a menudo requiere escribir código con un formato fijo, como declarar una variable privada, un registrador o un bean, etc.

Para esta generación de código a pequeña escala, podemos usar la función Plantillas vivas proporcionada por IDEA.

Al principio pensé que era solo un fragmento de código simple, pero luego descubrí que admite la configuración de funciones variables y puede admitir la generación de código muy complejo.

Permítanme presentarles el uso de Live Templates.

uso básico

IDEA viene con muchas plantillas dinámicas de uso común, ingrese fori en el código Java y presione Entrar aparecerá

 
 

para (int i = 0; i < ; i++) { }

Presiona Tabulador para saltar en cada espacio en blanco y completar el valor manualmente.

Plantilla personalizada

Después de todo, las plantillas integradas oficiales no pueden satisfacer las necesidades de nuestro estilo de codificación personal.Live Templates proporciona funciones variables para que las personalicemos.

uso sencillo

Para agregar una plantilla personalizada, primero debe completar la palabra desencadenante (es decir, abreviatura), la descripción es opcional, luego defina el contexto de la plantilla, haga clic en definir para seleccionar Java, de modo que la plantilla actual se active al editar Java , después de definir el contexto, puede completar la plantilla.

Aquí hay algunas plantillas simples que uso comúnmente

 
 

==========
<fuera>
----------
System.out.println($END$)
==========
<pfs>
---- ------
cadena estática final privada $varName$ = "$var$";`
==========
<privateField>
----------
/**
 * $COMENTARIO $
 */
@Getter
@Setter
privado $TYPE$ $NOMBRE$;
==========
<main>
----------
public static void main(String[] args) {      $END$ } ==========


La plantilla admite la definición de variables y los caracteres rodeados por $$ representan una variable. es una variable especial predefinida que representa la última posición de salto del cursor. Se puede saltar a la posición de cada variable.

uso avanzado

Si ha utilizado el complemento Code Sinppet de vim, encontrará que las funciones se pueden ejecutar en la plantilla y, por supuesto, las poderosas plantillas en vivo también lo admiten, e IDEA puede percibir la semántica del código, como los parámetros. de la función editada actualmente. Pero esto es lo que nos permite divertirnos. Exploramos las capacidades de las funciones de plantilla de fácil a difícil.

 

Las variables que mencionamos anteriormente se pueden vincular a funciones, y el método de configuración se muestra en la figura anterior.

Declaración rápida de variables

Declarar variables es una operación común, especialmente si necesita declarar variables que necesitan ser anotadas.Al anotar, estos códigos son muy aburridos de escribir. Aquí está la plantilla que definí:

 
 

<osgiRef>
----------
/**
 * $END$
 */
@OsgiReference
@Setter
privado $TYPE$ $NOMBRE$;

A primera vista, esta plantilla es similar al campo privado que definí anteriormente, la única diferencia es que vinculo funciones a estas variables.

  • portapapeles (): devuelve la cadena del portapapeles actual

  • descapitalizar (): cambie la primera letra de la cadena de entrada a minúsculas

Hagamos una demostración a continuación, primero copiamos el nombre de la clase actual y luego ingresamos osgiRef

Declaración rápida de registrador

Declarar registrador también es una operación común. Anteriormente usamos la función pegar para declarar variables rápidamente. Ahora usamos otra función className(). Como sugiere el nombre, su función es devolver el nombre de la clase actual.

 
 

<registrador>
----------
/** registrador */
registrador final estático privado LOGGER = LoggerFactory.getLogger($CLASS$.class);

El groovyScript() más poderoso

Si las capacidades proporcionadas por las funciones utilizadas anteriormente son limitadas y no son lo suficientemente flexibles, entonces groovyScript() proporciona todas las capacidades que desea. Admite la ejecución de scripts Groovy para procesar la entrada y luego generar las cadenas procesadas.

 
 

groovyScript("código", ...)

| código | Un fragmento de código Groovy o la ruta absoluta del código de script Groovy | |
... | Parámetros opcionales, estos parámetros estarán vinculados a `_1, _2, _3, .. ._n `, utilizado en el código Groovy. |

Echemos un vistazo a su aplicación práctica.

configuración rápida de bean

Para agregar un nuevo servicio, debe registrar un bean en Spring. Generalmente, esta configuración no es más que especificar el id y la clase. Como lo configuramos en xml, no podemos usar la función className(), pero podemos usar el portapapeles. () para obtenerlo Para obtener la referencia completa de la clase, en IDEA, hacemos clic derecho directamente en el nombre de la clase y hacemos clic en Copiar referencia. Luego ejecute el script maravilloso para obtener el nombre de la clase.

 
 

<bean>
----------
<bean id="$id$" class="$REF$" />

id binding decapitalize(groovyScript("_1.tokenize('.')[-1]", portapapeles())), primero tome el valor de portapapeles() para obtener la referencia completa de la clase y luego ejecute el código maravilloso _1.tokenize( '.')[-1] (dividido en una matriz de cadenas por ., luego tome la última para obtener el nombre de la clase y luego use decapitalize() para poner en minúsculas la primera letra para obtener la identificación.

Imprima rápidamente la información de contexto actual

Al imprimir el registro de errores, es necesario imprimir la información de contexto actual, como los parámetros de entrada. A veces, cuando hay muchos parámetros de entrada, es muy doloroso escribirlos. Afortunadamente, hay una función de plantilla methodParameters() que devuelve la lista de los parámetros de la función actual Por supuesto, esta lista no se puede usar directamente, debe convertirse en combinación con groovyScript.

 
 

<printContext>
---------------
LogUtil.$TYPE$(LOGGER, "$MSG$ " + $params$);

Vincular parámetros a groovyScript("'"' + _1.collect { it + ' = [" + ' + it + ' + "]'}.join(', ') + '"'", methodParameters()) , el Los parámetros de la función actual se pueden formatear y generar automáticamente.

Resumir

Anteriormente presentamos brevemente las funciones de plantilla de uso común. De hecho, IDEA tiene muchas otras funciones de plantilla. Para obtener más información, consulte Creación y edición de variables de plantilla.

IDEA es una herramienta muy poderosa. El buen uso de las herramientas puede mejorar en gran medida la eficiencia del trabajo y enfocarse en las cosas clave en lugar de perder el tiempo escribiendo código repetitivo.

Aún no se han descubierto algunos usos más avanzados. Por último, promover una ola de complementos de generación de código CodeMaker escrito por mí. Hacer un buen uso de él también puede ahorrar mucho tiempo para escribir código repetidamente.

Supongo que te gusta

Origin blog.csdn.net/2301_77463738/article/details/131142452
Recomendado
Clasificación