En caso de que calificar totalmente el prefijo de paquete cuando se utiliza ThreeTen-Backport frente java.time?

ktm5124:

Estamos utilizando Tres diez Backport en nuestro proyecto, ya que uno de nuestros clientes está utilizando Java 7. Tres diez Backport nos da la nueva funcionalidad de fecha y hora (java.time. *) Introducido en Java 8.

Me gustaría saber si la siguiente es una práctica buena. Dado que la mayoría de nuestros clientes están usando Java 8, y un día nos podría actualizar todos los clientes a Java 8, ¿realmente tiene sentido para calificar totalmente los nombres de las clases con org.threeten.bp? Eventualmente podríamos uprade todos los clientes a Java 8 y eliminar esta dependencia, y si nos terminan haciendo esto, entonces habrá menos cambios de código si nos limitamos a usar los nombres de clase sin el prefijo de paquete. Para dar un ejemplo de código, lo que quiero decir es esto.

import org.threeten.bp.LocalDate Time;

public class Example {

     public void example() {
          LocalDateTime datetime = // ....
     } 
}

Se puede ver en el ejemplo que me refiero LocalDateTime sin el prefijo de paquete. En Java 8, se cargará la clase java.time.LocalDateTime, o la org.threeten.bp.LocalDateTime? Es un poco confuso ya que en este código, en Java 8, hay dos LocalDateTime de flotando alrededor, uno de java.time y el otro de org.threeten.bp. Asumo que la biblioteca nativa de Java se dará preferencia y se carga, pero podría estar equivocado.

Está haciendo esta buena práctica? O podría generar compilador advertencias / errores? Incluso si no genera las advertencias o errores, podría todavía ser una mala práctica? Estoy tentado de hacer esto porque la clasificación totalmente una clase por un paquete es simplemente feo, y si terminamos la eliminación de la dependencia Tres diez luego vamos a tener que cambiar todas las instancias de ese código, en lugar de borrar declaraciones de importación. Feliz de escuchar sus pensamientos.

Ousmane D .:

Sólo habrá un choque cuando se tiene tanto de las importaciones:

import org.threeten.bp.LocalDateTime;
import java.time.LocalDateTime;

Tener sólo el import org.threeten.bp.LocalDateTime;no debe causar un problema. Por lo tanto, no es necesario para calificar plenamente con cualquier declaraciónLocalDateTime datetime = ...

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=234940&siteId=1
Recomendado
Clasificación