eger bu (turkiye_istanbul_kadikoy = {0;5;10}) sekilde tutarsen datayi gereksiz buyutursun cunku ornegin turkiye_istanbul_bakirkoy = {0;5;20} turkiye_istanbul_besiktas = {0;5;50} gibi bir durumda turkiye istanbul hep sabit, sadece sondaki ilce degisken. o nedenle gereksiz tekrar yapmis olursun. hem data artar hem de istanbul degerini degistirmen gerktiginde tum bu tekrarlari degistirmen gerekir. Data buyudugunde buyuk performans kaybi, datada degsiklik oldugunda ciddi is cikar.
Sana onerebilecegim yapi "key-value pair" iceren ve "nested" bir data yapisi olmasi. Bunu sunan iki populer markup var. birincisi XML olarak tutman datayi. ikincisi JSON olarak tutman datayi. Ozellikle JSON oneririm cunku bircok dil tarafindan standart olarak destekleniyor. Javascript tarafindan da herhangi bir kutuphane destegi olmadan okunabiliyor.
www.json.orgJson sayesinde sonsuz sayida ic ice eleman ekleyebilir, data tekrarini en aza indirebilirsin.
Json olarak su sekilde tutabilirsin (duyurunun ayarlarindan dolayi asagidaki yapi karmasik gozukecektir. asagidayi yapiyi
jsonlint.com adresine kopyalayip validate dersen formatli ve okunabilir olarak gorebilirsin)
[{
"isim": "turkiye",
"deger": 0,
"alt-bolge": [{
"isim": "istanbul",
"deger": 5,
"alt-bolge": [{
"isim": "kadikoy",
"deger": 10
}, {
"isim": "besiktas",
"deger": 20
}, {
"isim": "bostanci",
"deger": 25
}]
}, {
"isim": "ankara",
"deger": 7,
"alt-bolge": [{
"isim": "kizilay",
"deger": 10
}]
}]
}, {
"isim": "abd",
"deger": 0,
"alt-bolge": [{
"isim": "newyork",
"deger": 5,
"alt-bolge": [{
"isim": "queens",
"deger": 10
}]
}]
}]