- docx (Microsoft Word formaty);
- pdf (Adobe formaty);
- mobi (köplenç Amazon Kindle enjamlarynda ulanylýar);
- we has köp (ePub, djvu, fb2 ...).
JSON
JavaScript obýekt belligi. Siz eýýäm onuň bilen azajyk tanyş! Bu leksiýada bu hakda gürleşdik we JSON- da seriallaşdyryşa seretdik . Bir sebäbe görä adyny aldy. JSON-a öwrülen Java obýektleri aslynda JavaScript obýektlerine meňzeýär. Obýektimiziň manysyna düşünmek üçin JavaScript-i bilmegiň zerurlygy ýok:{
"title": "Война и мир",
"author": "Лев Толстой",
"year": 1869
}
Bir obýektden geçmek hökman däl. JSON obýektleriň toplumyny hem öz içine alyp biler:
[
{
"title": "Война и мир",
"author": "Лев Толстой",
"year": 1869
},
{
"title": "Бесы",
"author": "Федор Достоевский",
"year": 1872
},
{
"title": "Чайка",
"author": "Антон Чехов",
"year": 1896
}
]
JSON JavaScript obýekti bolany üçin, aşakdaky JavaScript maglumat formatlaryny goldaýar:
- setirler;
- sanlar (san);
- obýektler (obýekt);
- massiwler (massiw);
- bulean bahalary (dogry we ýalan);
- null.
-
Adam okalýan format. Ahyrky ulanyjyňyz adam bolsa, bu aç-açan artykmaçlykdyr. Mysal üçin, serweriňiz uçuş tertibi bilen maglumat bazasyny saklaýar. Adam müşderisi, öýde kompýuterde otyrka web programmasy ulanyp, bu maglumatlar bazasyndan maglumatlary soraýar. Maglumatlary düşünip bilýän görnüşde bermeli bolansoň, JSON gaty gowy çözgüt.
-
Sadalyk. Başlangyç diýip bilersiňiz :) oveokarda iki sany JSON faýlynyň mysalyny berdik. JavaScript-iň (obýektlerini goýman) barlygyny hiç wagt eşitmedik bolsaňyzam, ol ýerde haýsy obýektleriň beýan edilýändigine aňsatlyk bilen düşünip bilersiňiz.
JSON resminamalarynyň hemmesi iki suratly bir web sahypasydyr . -
Giňden ýaýran. JavaScript öňdebaryjy dil bolup, şertlerini kesgitleýär. JSON-ny ulanmak hökmany zat. Şonuň üçin web hyzmatlarynyň köpüsi JSON-y maglumat alyşmak üçin format hökmünde ulanýarlar. Her häzirki zaman IDE JSON formatyny goldaýar (Intellij IDEA-ny goşmak bilen). JSON bilen mümkin bolan programmirleme dilleri üçin işlemek üçin bir topar kitaphana ýazyldy.
YAML
Barlygynyň başynda, başga bir bellik dili - “başga bir bellik dili” diýmekdi. Şol wagt XML bilen bäsdeş hökmünde ýerleşdirilipdi. Indi wagtyň geçmegi bilen “YAML Ain't Markup Language” (“YAML bellik dili däl”) manysyny berýär. Ol nähili? Kompýuter oýnumyz üçin 3 simwol synpyny döretmelidigimizi göz öňüne getireliň: Warrior, Mage we Ogry. Olarda aşakdaky aýratynlyklar bolar: güýç, çeýeligi, çydamlylygy we ýaraglar toplumy. Synp beýany bolan YAML faýlymyz şeýle bolar:classes:
class-1:
title: Warrior
power: 8
agility: 4
stamina: 7
weapons:
- sword
- spear
class-2:
title: Mage
power: 5
agility: 7
stamina: 5
weapons:
- magic staff
class-3:
title: Thief
power: 6
agility: 6
stamina: 5
weapons:
- dagger
- poison
YAML faýlynda agaç gurluşy bar: käbir elementler beýlekileriň içinde höwürtge döredýär. Her derejäni görkezmek üçin belli bir boşluk ulanyp, höwürtge gözegçilik edip bileris. YAML formatynyň haýsy artykmaçlyklary bar?
-
Adam okalýan. Againene-de bir düşündirişsiz ýaml faýly görseňizem, ol ýerde haýsy obýektleriň beýan edilýändigine aňsatlyk bilen düşünip bilersiňiz. YAML, yaml.org- yň baş sahypasynyň adaty ýaml faýlydygyny näderejede okap bolýar :)
-
Ykjamlyk. Faýl gurluşy boşluklar bilen emele gelýär: ýaýlary ýa-da sitatalary ulanmagyň zerurlygy ýok.
-
Programmirleme dillerinde doglan maglumat gurluşlaryna goldaw. YAML-yň JSON we beýleki köp formatlardan has uly artykmaçlygy, dürli maglumat gurluşlaryny goldaýar. Olaryň arasynda:
-
!! karta
Düwmeleriň tertipsiz ýygyndysy: köpeltmek mümkinçiligi bolmadyk baha jübütleri; -
!! omap
Düwmäniň sargyt edilen yzygiderliligi: köpeltmek mümkinçiligi bolmadyk baha jübütleri; -
!! jübütler:
Düwmäniň sargyt edilen yzygiderliligi: köpeltmek mümkinçiligi bolan baha jübütleri; - !!
biri-birine deň bolmadyk bahalaryň tertipsiz yzygiderliligini düzmek; - !! seq
Esassyz gymmatlyklaryň yzygiderliligi;
Bu gurluşlaryň käbiri size Java-dan tanyş bolar! :) Bu aýratynlygyň kömegi bilen, programmirleme dillerinden başlap, YAML formatyna çenli dürli maglumat gurluşlaryny seriallaşdyryp bilersiňiz.
-
-
Gämi we lakam ulanmak ukyby
“Gämi” we “lakam” - “labyr” we “lakam” sözleriniň terjimesi. Aslynda, bu sözleriň manysyny YAML-da gaty takyk suratlandyrýar.
Yamaml faýlyndaky bir elementi kesgitlemäge we gaýtalanýan bolsa faýlyň galan bölegine salgylanmaga mümkinçilik berýär. Gämi nyşan bilen döredilýär
&
we lakam ulanylýar*
.Le Tolstoýyň kitaplaryny suratlandyrýan faýlymyz bar diýeliň. Her gezek awtoryň adyny el bilen ýazmazlyk üçin, diňe "leo" labyryny dörederis we zerur bolanda lakam ulanarys:
books: book-1: title: War and Peace author: &leo Leo Tolstoy year: 1869 book-2: title: Anna Karenina author: *leo year: 1873 book-3: title: Family Happiness author: *leo year: 1859
Bu faýly käbir derňewçi bilen okanymyzda, “Le Tolstoý” bahasy lakamymyzyň ýerine gerek ýerlerde çalşyrylar.
- Maglumatlary YAML-da başga formatlara ýerleşdirip bilersiňiz. Mysal üçin, JSON:
books: [ { "title": "War and Peace", "author": "Leo Tolstoy", "year": 1869 }, { "title": "Anna Karenina", "author": "Leo Tolstoy", "year": 1873 }, { "title": "Family Happiness", "author": "Leo Tolstoy", "year": 1859 } ]
Beýleki seriallaşdyrma formatlary
XML
Bu format bellik agajy diýlip atlandyrylýar.<book>
<title>Harry Potter and the Philosopher’s Stone</title>
<author>J. K. Rowling</author>
<year>1997</year>
</book>
Her element açylyş we ýapmak belliginden (<> we </>) durýar. Her elementiň içindäki elementler bolup biler. XML umumy format, JSON we YAML-dan pes däl (eger hakyky taslamalarda ulanmak barada gürleşsek). XML hakda aýratyn leksiýamyz bar .
BSON (ikilik JSON)
Adyndan görnüşi ýaly, JSON-a gaty meňzeýär, ýöne adam okalmaýar we ikilik formatda işleýär. Bu şekilleri we beýleki goşundylary saklamak we geçirmek üçin örän amatly edýär. Mundan başga-da, BSON JSON-da ýok käbir maglumat görnüşlerini goldaýar. Mysal üçin, senäni (millisekunt formatda) ýa-da hatda JavaScript kodunyň bir bölegini BSON faýlyna ýazyp bilersiňiz. Meşhur NoSQL maglumat bazasy MongoDB maglumatlary BSON görnüşinde saklaýar.Positionerleşiş protokoly
Käbir ýagdaýlarda berlen maglumatlaryň mukdaryny ep-esli azaltmalydyrys (mysal üçin, maglumatlar köp bolsa we ýüküň azaldylmagy zerur). Bu ýagdaýda, pozisiýa esaslanýan protokoly ulanyp bileris , ýagny parametrleriň atlaryny görkezmezden parametr bahalaryny geçirip bileris."Leo Tolstoy" | "Anna Karenina" | 1873
Bu formatdaky maglumatlar doly hukukly JSON faýlyndan has az ýer tutýar. Elbetde, beýleki seriallaşdyrma formatlary hem bar, ýöne şu wagt hemmesini bilmegiň zerurlygy ýok :) Programmany ösdürmek üçin häzirki wagtda pudak standarty bolan formatlar bilen tanyş bolmak we olaryň artykmaçlyklaryny we biri-birinden tapawudyny ýada salmak gowy zat. . Leksiýamyz gutardy :) Şu gün birnäçe meseläni çözmegi ýatdan çykarmaň! Ýene görüşeris! :)
GO TO FULL VERSION