JavaRush /Blog Java /Random-ES /Nivel 33. Respuestas a las preguntas de la entrevista sob...
Afli
Nivel 41
Санкт-Петербург

Nivel 33. Respuestas a las preguntas de la entrevista sobre el tema del nivel.

Publicado en el grupo Random-ES
Se aceptan preguntas, adiciones y críticas. Nivel 33. Respuestas a las preguntas de la entrevista sobre el tema del nivel - 1
  1. ¿Qué es JSON?

    JSON (Notación de objetos JavaScript) es un formato de intercambio de datos simple basado en un subconjunto del lenguaje de programación JavaScript.

  2. ¿Cuáles son las diferencias entre Java y JavaScript?

    Se trata de 2 lenguajes de programación diferentes, a pesar de la similitud de sus nombres. Ambos tienen una sintaxis similar a la de C. Las diferencias son las siguientes:

    • Java implementa un enfoque de programación orientada a objetos basado en clases, JavaScript, en prototipos;
    • Java tiene escritura estática, JavaScript tiene escritura dinámica;
    • Java se carga desde el código de bytes compilado; JavaScript se interpreta directamente desde el archivo.

    Tu texto para vincular...

  3. ¿Cuáles son las diferencias entre JSON y XML?

    JSON es un formato de intercambio de datos.

    XML es un lenguaje de marcado (en el que puede especificar sintaxis, estructura, tipos de datos y su modelo en general).

    Ambos se pueden utilizar para transferir datos. Naturalmente, para trabajar con ambos estándares, se utilizan marcos diferentes y la sintaxis es diferente.

  4. ¿Qué frameworks para trabajar con JSON conoces?

    El nivel 33 nos presentó el marco de Jackson. Además, daré 3 más, y un enlace a un artículo en el que se comparan:

    1. Jackson de FasterXML
    2. JSON.simple por Yidong Fang
    3. GSON de Google
    4. JSONP de Oracle

    Comparación de bibliotecas Java para trabajar con JSON: JSON.simple, GSON, Jackson y JSONP

  5. ¿Qué marcos para trabajar con XML conoces?

    Dado que XML es un formato de representación de datos, existen tecnologías más diversas para trabajar con él. Daré las tecnologías utilizadas para serializar objetos Java en XML:

    1. JAXB (incluido en J en el JDK)
    2. Xstream

    Enlace con una breve descripción de varios marcos para trabajar con xml: JAVA + XML

  6. ¿Qué anotaciones de Jackson conoces?

    Veamos los que se utilizaron en las conferencias:

    • @JsonAutoDetect : colocado frente a la clase. Le dice a Jackson que use los campos de esta clase al escribir o leer. Entre paréntesis, puede establecer un parámetro (fieldVisibility = JsonAutoDetect.Visibility.ANY) para configurar la visibilidad de los campos que se utilizarán (de forma predeterminada, solo se utilizan campos públicos).
    • @JsonIgnore : colocado antes del campo. Le dice a Jackson que ignore este campo al leer/escribir.
    • @JsonProperty : se coloca antes del campo, captador o definidor. Le permite especificar un nombre de campo diferente durante la serialización.
    • @JsonWriteNullProperties : colocado delante de la clase. Los campos de objeto que sean nulos no se ignorarán.
    • @JsonPropertyOrder : colocado delante de la clase. le permite definir el orden en el que los campos de un objeto java se serializarán a JSON.
    • @JsonDeserialize : colocado antes del campo. Le permite definir la clase en la que se deserializa el objeto JSON. Por ejemplo, en Java, las matrices y listas se serializan en matrices y, durante la deserialización, podemos elegir qué queremos recibir exactamente.

    Aquí hay un enlace a un sitio con algunas anotaciones: Jackson Annotations

  7. ¿Qué anotaciones JAXB conoces?

    También analizaré solo aquellos que se utilizaron en la conferencia:

    • @XmlRootElement : colocado antes de la clase. Indica que este objeto puede ser un elemento de nivel superior, es decir todos los demás elementos se encuentran dentro de él.
    • @XmlType : colocado antes de la clase. Agrega información adicional al esquema XML. Puede especificar algunos atributos, como el orden de los elementos, el nombre, etc.
    • @XmlElement : colocado antes del campo. Le permite configurar el nombre del elemento xml, el valor predeterminado, etc.
    • @XmlAttribute : colocado antes del campo. El campo se representará como un atributo XML.
    • @XmlElementWrapper : se coloca antes del campo o captador. Le permite crear una etiqueta de borde para un grupo de elementos.
    • @XmlJavaTypeAdapter : colocado antes de la clase. La clase de adaptador auxiliar necesaria para ordenar/desordenar esta clase se indica entre paréntesis.
    • @XmlEnum : colocado antes de enumeración. Entre paréntesis puede especificar el tipo en el que se representarán los valores de enumeración.
    • @XmlEnumValue : colocado antes del valor de enumeración. Le permite especificar un valor especial para un valor de enumeración determinado.

    Aquí hay un enlace a un sitio con algunas anotaciones (pido disculpas por no poder crear una traducción correcta para las anotaciones, la información es comprensible, pero no tengo ni idea de cómo decirlo correctamente en ruso): https:// jaxb.java.net/tutorial/index.html

  8. ¿Cuál es la diferencia entre serialización y deserialización en JSON?

    No entendí la esencia de la pregunta. No veo ningún sentido en comparar 2 procesos recíprocos. Quizás esto tenía como objetivo comparar JSON y XML; en la siguiente pregunta se proporciona un enlace a este tema.

  9. ¿Cuál es mejor JSON o XML? ¿Por qué?

    Aquí hay un gran artículo que compara JSON y XML: JSON y XML. ¿Que es mejor?

    Quizás sea imposible decir que algo es mejor. Al elegir, debe tener en cuenta la tarea en sí y qué será más efectivo de usar. Además, la elección puede depender de las preferencias personales del desarrollador.

  10. ¿Qué es la DTO?

    DTO (Objeto de transferencia de datos) es un patrón de diseño que contiene datos sin ninguna lógica para trabajar con ellos. Los DTO se utilizan normalmente para transferir datos entre diferentes aplicaciones o entre capas dentro de la misma aplicación. Pueden verse como un depósito de información cuyo único propósito es transmitir esa información al destinatario.

Nivel 33. Respuestas a las preguntas de la entrevista sobre el tema del nivel - 2
Actualizado el 10/11/2016 a las 15.50

preguntas No. 2, No. 3 corregidas, según el comentario

Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION