none
¿Qué es JSON? RRS feed

  • Pregunta

  • Tal vez paresca una pregunta tonta para algunos de ustedes pero estoy por titularme de la ing. en mecatornica, mi proyecto final es poder recibir datos de un PLC y mostrarlos en una pagina web, para esto estoy ocupando visual basic como conexion entre el PLC y la base de datos, pero me he topado con algo llamado newtonsoft json, un dia recibi un comentario de que si uso json podria mejorar el sistema o algo asi, he investigado pero me confunde, como les comento soy estudiante de mecatronica por lo cual esto lo estoy estudiando por mi cuenta, espero alguien me pueda explicar , ¿para que sirve?, ¿que beneficios tiene?, ¿ en que se puede aplicar? gracias. pasen buena tarde
    martes, 24 de julio de 2018 22:16

Respuestas

  • JSON es un estándar que describe cómo "serializar" un objeto dando lugar a una representación del mismo en forma de texto.

    Ese "newtonsoft json" que mencionas es una librería que sabe hacer precisamente lo anterior, es decir, le entregas un objeto y te devuelve un string que contiene codificados los datos internos del objeto. Después, puedes entregarle el string y a partir de éste te devuelve un objeto igual al original, cargado con los mismos datos.

    ¿Qué beneficios tiene? Comparado con la alternativa más común, que suele ser XML, el JSON tiene la ventaja de que es más compacto que el XML, a la vez que sigue siendo "legible" para los humanos (a diferencia de las serializaciones binarias, que son todavía más compactas pero son ilegibles).

    ¿A qué se puede aplicar? A los casos en los que hay que salvar y luego volver a recuperar una información que tiene una estructura interna compleja. Esto puede ocurrir localmente, por ejemplo, cuando quieras salvar en un archivo los datos de un programa para luego volverlos a leer. O puede ocurrir remotamente, cuando tomas datos en un ordenador y los transmites a otro. Este último sería el caso de tu aplicación web, en la que si usas código servidor y código en el navegador, los datos que se transmitan desde uno al otro típicamente se suelen transmitir en forma de JSON.

    miércoles, 25 de julio de 2018 6:30

Todas las respuestas

  • JSON es un estándar que describe cómo "serializar" un objeto dando lugar a una representación del mismo en forma de texto.

    Ese "newtonsoft json" que mencionas es una librería que sabe hacer precisamente lo anterior, es decir, le entregas un objeto y te devuelve un string que contiene codificados los datos internos del objeto. Después, puedes entregarle el string y a partir de éste te devuelve un objeto igual al original, cargado con los mismos datos.

    ¿Qué beneficios tiene? Comparado con la alternativa más común, que suele ser XML, el JSON tiene la ventaja de que es más compacto que el XML, a la vez que sigue siendo "legible" para los humanos (a diferencia de las serializaciones binarias, que son todavía más compactas pero son ilegibles).

    ¿A qué se puede aplicar? A los casos en los que hay que salvar y luego volver a recuperar una información que tiene una estructura interna compleja. Esto puede ocurrir localmente, por ejemplo, cuando quieras salvar en un archivo los datos de un programa para luego volverlos a leer. O puede ocurrir remotamente, cuando tomas datos en un ordenador y los transmites a otro. Este último sería el caso de tu aplicación web, en la que si usas código servidor y código en el navegador, los datos que se transmitan desde uno al otro típicamente se suelen transmitir en forma de JSON.

    miércoles, 25 de julio de 2018 6:30
  • Entiendo muchas gracias, entonces esa informacion que quiero recuperar en donde se almacenaria, supongo que si ni sistema no esta funcionando la informacion en donde se aloja para despues recuperarlas ? 
    miércoles, 25 de julio de 2018 18:59
  • No, no se almacena. El JSON solo es un String. Con ese string haces lo que tú quieras. Si lo quieres almacenar, puedes salvarlo en un fichero de texto, o en un campo de texto de una base de datos, por poner un par de ejemplos. Tanto al fichero como a la base de datos les da exactamente igual que eso sea JSON, desde su punto de vista es una simple cadena de texto y no miran el contenido. Pero también puede ser que no quieras almacenarlo, por ejemplo, si es para transmitir datos desde una aplicación web a un navegador, simplemente ese string se envía por la línea de comunicaciones, sin que se almacene en ningún sitio.
    miércoles, 25 de julio de 2018 19:22