Шта је ЈСОН?
ЈСОН се користи за складиштење података на организован и лак приступ. Његов пуни облик је ЈаваСцрипт Објецт Нотатион. Нуди човеку читљиву колекцију података којима се може логично приступити.
У овом упутству за КСМЛ вс. ЈСОН научићете:
- Шта је ЈСОН?
- Шта је КСМЛ?
- Историја ЈСОН-а
- Историја КСМЛ-а
- Карактеристике ЈСОН-а
- Карактеристике КСМЛ-а
- Разлика између ЈСОН-а и КСМЛ-а
- ЈСОН код у односу на КСМЛ код
- Предности употребе ЈСОН-а
- Предности употребе КСМЛ-а
- Мане употребе ЈСОН-а
- Мане употребе КСМЛ-а
Шта је КСМЛ?
КСМЛ је означни језик који је дизајниран за чување података. Популарно се користи или пренос података. Разликује велика и мала слова. КСМЛ вам нуди да дефинишете елементе означавања и генеришете прилагођени језик за означавање. Основна јединица у КСМЛ-у позната је као елемент. Додатак КСМЛ датотеке је .кмл
КЉУЧНА РАЗЛИКА
- ЈСОН објекат има тип, док су КСМЛ подаци безтипски.
- ЈСОН не пружа подршку за простор имена, док КСМЛ пружа подршку за просторе имена.
- ЈСОН нема могућности приказа, док КСМЛ нуди могућност приказивања података.
- ЈСОН је мање заштићен, док је КСМЛ сигурнији у поређењу са ЈСОН-ом.
- ЈСОН подржава само УТФ-8 кодирање, док КСМЛ подржава различите формате кодирања.
Историја ЈСОН-а
Ево важних обележја која чине историју ЈСОН-а:
- Доуглас Цроцкфорд је прецизирао ЈСОН формат почетком 2000-их.
- Званична веб страница покренута је 2002.
- У децембру 2005. Иахоо! почиње да нуди неке од својих веб услуга у ЈСОН-у.
- ЈСОН је постао ЕЦМА међународни стандард 2013. године.
- Најновији стандард формата ЈСОН објављен је 2017. године.
Историја КСМЛ-а
Овде су важни оријентири из историје КСМЛ-а:
- КСМЛ је такође изведен из СГМЛ-а.
- Верзија 1.0 КСМЛ-а објављена је у фебруару 1998.
- Јан 2001: Предложени стандард ИЕТФ: Типови медија КСМЛ
- КСМЛ је прошириви језик за означавање.
- 1970: Цхарлес Голдфарб, Ед Мосхер и Раи Лорие измислили су ГМЛ
- Развој КСМЛ-а започео је 1996. године у компанији Сун Мицросистем
Карактеристике ЈСОН-а
- једноставан за коришћење - ЈСОН АПИ понуде на високом нивоу фасада, који помаже да се поједностави је уобичајени употребну цасес. У
- Перформансе - ЈСОН је прилично брз јер троши веома мање меморијског простора, што је посебно погодно за велике графове објеката или системе.
- Бесплатан алат - ЈСОН библиотека је отвореног кода и бесплатна за употребу.
- Не захтева креирање мапирања - Јацксон АПИ пружа подразумевано мапирање за многе објекте који ће бити сериализовани.
- Чисти ЈСОН - Ствара чист и компатибилан ЈСОН резултат који се лако чита.
- Зависност - ЈСОН библиотека не захтева ниједну другу библиотеку за обраду.
Карактеристике КСМЛ-а
- КСМЛ ознаке нису унапред дефинисане. Морате да дефинишете своје прилагођене ознаке.
- КСМЛ је дизајниран за пренос података, а не омогућава вам приказ тих података.
- Код за означавање КСМЛ-а лако је разумети за човека.
- Па, структурирани формат је лако читати и писати из програма.
- КСМЛ је прошириви језик за означавање попут ХТМЛ-а.
Разлика између ЈСОН-а и КСМЛ-а
Ево основне разлике између ЈСОН-а и КСМЛ-а
ЈСОН | КСМЛ |
---|---|
ЈСОН објекат има тип | КСМЛ подаци су без типова |
ЈСОН типови: стринг, нумбер, арраи, Боолеан | Сви КСМЛ подаци требају бити у низу |
Подаци су лако доступни као ЈСОН објекти | КСМЛ податке треба анализирати. |
ЈСОН подржава већина прегледача. | Анализа КСМЛ-а у више прегледача може бити незгодна |
ЈСОН нема могућности приказа. | КСМЛ нуди могућност приказивања података јер је то маркуп језик. |
ЈСОН подржава само текст и бројеве података. | КСМЛ подржава разне типове података као што су број, текст, слике, графикони, графикони итд. Такође пружа могућности за пренос структуре или формата података са стварним подацима. |
Добијање вредности је једноставно | Добијање вредности је тешко |
Подржани од многих Ајак-ових алата | Не подржава Ајак комплет алата у потпуности |
Потпуно аутоматизован начин десериализације / сериализације ЈаваСцрипт-а. | Програмери морају да напишу ЈаваСцрипт код за сериализацију / де-сериализацију из КСМЛ-а |
Изворна подршка за објекат. | Објект мора бити изражен конвенцијама - углавном пропуштена употреба атрибута и елемената. |
Подржава само УТФ-8 кодирање. | Подржава различита кодирања. |
Не подржава коментаре. | Подржава коментаре. |
ЈСОН датотеке се лако читају у поређењу са КСМЛ-ом. | КСМЛ документи су релативно тежи за читање и тумачење. |
Не пружа никакву подршку за просторе имена. | Подржава просторе имена. |
Мање је осигурано. | Сигурнији је од ЈСОН-а. |
ЈСОН код у односу на КСМЛ код
Погледајмо пример ЈСОН кода
{"student": [{"id":"01","name": "Tom","lastname": "Price"},{"id":"02","name": "Nick","lastname": "Thameson"}]}
Проучимо исти код у КСМЛ-у
01 Tom Price 02 Nick Thameson
Предности употребе ЈСОН-а
Ево важних предности / предности употребе ЈСОН-а:
- Пружите подршку за све прегледаче
- Лако за читање и писање
- Изравна синтакса
- Можете изворно рашчланити у ЈаваСцрипт-у помоћу функције евал ()
- Лако се ствара и манипулише
- Подржани од свих главних ЈаваСцрипт оквира
- Подржава већина позадинских технологија
- ЈаваСцрипт је изворно препознао ЈСОН
- Омогућава вам пренос и сериализацију структурираних података помоћу мрежне везе.
- Можете га користити са модерним програмским језицима.
- ЈСОН је текст који се може претворити у било који објект ЈаваСцрипт-а у ЈСОН и послати овај ЈСОН серверу.
Предности употребе КСМЛ-а
Ево значајних предности / недостатака употребе КСМЛ-а:
- Чини документе преносљивим кроз системе и апликације. Уз помоћ КСМЛ-а можете брзо размењивати податке између различитих платформи.
- КСМЛ раздваја податке од ХТМЛ-а
- КСМЛ поједностављује процес промене платформе
Мане употребе ЈСОН-а
Ево недостатака / недостатака употребе ЈСОН-а:
- Нема подршке за простор имена, отуда је лоша проширивост
- Ограничена подршка за развојне алате
- Нуди подршку за дефинисање формалне граматике
Мане употребе КСМЛ-а
Ево слабости / недостатака употребе КСМЛ-а:
- КСМЛ захтева апликацију за обраду
- Синтакса КСМЛ је врло слична осталим алтернативним форматима преноса података „заснованим на тексту“, што понекад збуњује
- Нема суштинске подршке за тип података
- Синтакса КСМЛ је сувишна
- Не дозвољава кориснику да креира своје ознаке.