Debate

JSON İşleme Teknikleri

Iniciado por ShadowByte · 12 jul 2026 12:01 · 22 Visitas · 0 Respuestas
Autor del tema #0
JSON İşleme Teknikleri

Modern yazılım dünyasında veri alışverişinin omurgası haline gelen JSON (JavaScript Object Notation), basitliği ve okunabilirliği sayesinde neredeyse her platformda ve dilde karşımıza çıkıyor. Web servislerinden mobil uygulamalara, konfigürasyon dosyalarından büyük veri depolamaya kadar geniş bir yelpazede kullanılması, geliştiricilerin JSON verilerini etkin bir şekilde işleme yeteneğini kritik hale getiriyor. Peki, bu yaygın veri formatını en verimli ve doğru şekilde nasıl ele alabiliriz? Gelin, JSON'ın derinliklerine inelim ve farklı senaryolar için en iyi uygulama tekniklerini inceleyelim.

JSON'ın Anatomisi: Yapısal Temeller

JSON, temelde anahtar-değer çiftlerinden oluşan, insan tarafından okunabilir bir veri formatıdır. Bu yapılar, programlama dillerindeki nesnelerle (object) veya sözlüklerle (dictionary) doğrudan eşleşir. Bir JSON nesnesi süslü parantezler [{ }] ile başlar ve biterken, bir JSON dizisi (array) köşeli parantezler ([ ]) ile çevrelenir. Değerler; metin (string), sayı (number), boolean (true/false), null, başka bir JSON nesnesi veya başka bir JSON dizisi olabilir. Bu iç içe geçme kabiliyeti, karmaşık hiyerarşik verilerin bile şık ve kompakt bir şekilde temsil edilmesini sağlar.

Örneğin, bir kullanıcının temel bilgilerini ve adresini içeren basit bir JSON yapısı şöyle görünebilir:

CODE
123456789101112131415161718192021222324
{
  "kullaniciId": "U12345",
  "ad": "Ali",
  "soyad": "Yılmaz",
  "email": "[email protected]",
  "aktif": true,
  "adres": {
    "sokak": "Deneme Cad. No:15",
    "sehir": "Ankara",
    "postaKodu": "06100",
    "ulke": "Türkiye"
  },
  "telefonlar": [
    {
      "tip": "ev",
      "numara": "0312-1234567"
    },
    {
      "tip": "cep",
      "numara": "0532-9876543"
    }
  ]
}


Bu örnekte gördüğümüz gibi, "adres" bir nesne, "telefonlar" ise iki nesne içeren bir dizi... İşte bu esneklik, JSON'ı bu denli güçlü kılan temel özelliklerden biri.

Serileştirme ve Deserileştirme: Can Damarı

JSON işleme denince akla gelen ilk iki kavram, şüphesiz serileştirme (serialization) ve deserileştirme (deserialization)'dır.
  • Serileştirme, bir programlama dilindeki nesnelerin veya veri yapılarının (örneğin Python'daki bir dictionary, Java'daki bir POJO – Plain Old Java Object, C#'taki bir sınıf örneği) JSON formatında bir metin dizesine dönüştürülmesi işlemidir. Bu işlem, veriyi ağ üzerinden göndermek, bir dosyaya yazmak veya başka bir sistemle paylaşmak için vazgeçilmezdir.
  • Deserileştirme ise tam tersi bir süreçtir: JSON formatındaki bir metin dizesini alıp, bunu programlama dilinin anlayabileceği yerel bir veri yapısına veya nesneye çevirmektir. Gelen bir API yanıtını işlemek, bir konfigürasyon dosyasını okumak veya bir veritabanından çekilen JSON verisini kullanmak için bu adımı atmamız gerekir.

Bu iki işlem, JSON'ın herhangi bir uygulamada kullanılabilmesinin temelini oluşturur.

Farklı Dillerde Yaklaşımlar ve Kütüphaneler

Neredeyse her modern programlama dilinin JSON işlemek için yerleşik veya üçüncü taraf kütüphaneleri bulunur. Bu kütüphaneler, serileştirme ve deserileştirme işlemlerini son derece kolaylaştırır.

[LIST]
  • Python: Python'ın standart kütüphanesinde bulunan
    CODE
    1json
    modülü, bu iş için biçilmiş kaftandır.
    CODE
    1json.dumps()
    ile Python nesnelerini JSON string'e,
    CODE
    1json.loads()
    ile de JSON string'i Python nesnelerine (genellikle dictionary ve list) dönüştürebilirsiniz. Dosyalarla çalışırken
    CODE
    1json.dump()
    ve
    CODE
    1json.load()
    fonksiyonları da oldukça kullanışlıdır.
    CODE
    1234567891011121314151617
    import json
    
    data = {
        "urunAdi": "Laptop",
        "fiyat": 1200.50,
        "stoktaMi": True
    }
    
    [b]Serileştirme (Python dict -> JSON string)[/b]
    json_string = json.dumps(data, indent=4, ensure_ascii=False)
    print(f"Serileştirilmiş JSON:\n{json_string}")
    
    [b]Deserileştirme (JSON string -> Python dict)[/b]
    gelen_json = '{"kategori": "Elektronik", "marka": "XYZ"}'
    parsed_data = json.loads(gelen_json)
    print(f"Deserileştirilmiş Veri: {parsed_data['kategori']}")
    

  • Java: Java ekosisteminde [B]Jackson[/B
  • Debes haber iniciado sesión para responder.

    0 citas seleccionadas