JSON is designed for working with JavaScript files. Basically, you have two systems communicating. And so that everyone understands each other, there is a basic format that divides the file into sections where the data is stored.
{
"_version": 330,
"_FontManager__default_weight": "normal",
"default_size": null,
"defaultFamily": {
"ttf": "DejaVu Sans",
"afm": "Helvetica"
},
"afmlist": [
{
"fname": "fonts/afm/phvro8an.afm",
"name": "Helvetica",
"style": "italic",
"variant": "normal",
"weight": "medium",
"stretch": "condensed",
"size": "scalable",
"__class__": "FontEntry"
},
{
"fname": "fonts/afm/pagd8a.afm",
"name": "ITC Avant Garde Gothic",
"style": "normal",
"variant": "normal",
"weight": "demi",
"stretch": "normal",
"size": "scalable",
"__class__": "FontEntry"
},
JSONs carry not only the meaning of the data transmitter, but also some designations to the system. For example, when installing the Matplotlib library (graphics drawing for Python), we use a small file with the .json
extension so that our project builder reads the library version, the main parameters, where to use it when building the project.
- By analogy with HTML, the names of fields and their values ββare specified explicitly (as is customary)
- Similar to the class, there are opening and closing symbols and indents for navigating through the file
{
"fname": "/usr/share/fonts/microsoft/bahnschrift.ttf",
"name": "Bahnschrift",
"style": "normal",
"variant": "normal",
"weight": 400,
"stretch": "normal",
"size": "scalable",
"__class__": "FontEntry"
}
],
"__class__": "FontManager"
}
When closing a large block of data, do not forget to specify which variable (__class__
) you are forming in the description above. Otherwise, the system will not understand you, and without a debugger, you will not notice it.
Some non-obvious uses of JSON:
- In API methods, more often in REST (SOAP uses XML format), this file is added to the request body
- When transferring files directly by systems (via IP/via DB), you can also use this format. There are even special databases that can store this, called NoSQL
- When installing additional libraries for VS/
pip
, if you know, this file type is needed to unpack versioning/content data - Especially for HoD: when you set a task for developers, in addition to bare business parameters, it is convenient to immediately write a small JSON, which will immediately simplify the task
"fname": "/usr/share/fonts/urw-base35/P052-BoldItalic.otf",
- additional parameters and auxiliary files have a place for installation files.
"name": "P052",
Top comments (0)