Finnes det en standard for JSON-navngivning? Jeg ser at de fleste eksemplene bruker små bokstaver atskilt med understrek (lower_case). Men kan du bruke PascalCase eller camelCase?
I dette dokumentet Google JSON Style Guide (anbefalinger for bygging av JSON-API-er hos Google),
anbefales det at
Egenskapsnavn må være camelCased, ASCII-strenger.
Det første tegnet må være en bokstav, et understrek (_) eller et dollartegn ($).
Eksempel:
{
"thisPropertyIsAnIdentifier": "identifier value"
}
Teamet mitt følger denne konvensjonen.
Det finnes ingen ENESTE standard, men jeg har sett 3 stiler du nevner ("Pascal/Microsoft", "Java" (camelCase
) og "C" (underscores, snake_case
)) -- samt minst en til, kebab-case
som longer-name
).
Det ser for det meste ut til å avhenge av hvilken bakgrunn utviklerne av den aktuelle tjenesten hadde; de med c/c++-bakgrunn (eller språk som bruker lignende navngivning, som inkluderer mange skriptspråk, ruby etc.) velger ofte underscore-varianten; og resten på samme måte (Java vs. .NET). Jackson-biblioteket som ble nevnt, for eksempel, tar utgangspunkt i navnekonvensjonen for Java-bønner (camelCase
).
OPPDATERING: min definisjon av "standard" er en ENKEL konvensjon. Så selv om man kan hevde "ja, det er mange standarder", er det for meg flere Naming Conventions
, hvorav ingen er "The" standard generelt. En av dem kan betraktes som standarden for en spesifikk plattform, men gitt at JSON brukes for interoperabilitet mellom plattformer, er det ikke sikkert det gir så mye mening.
Det ser ut til at det er nok variasjon til at folk anstrenger seg for å tillate konvertering fra alle konvensjoner til andre: http://www.cowtowncoder.com/blog/archives/cat_json.html
Den nevnte Jackson JSON-parseren foretrekker bean_naming
.