OW Debug - Notice
Message: Trying to access array offset on value of type null
File: /home/romarekl/public_html/sosyallift.com/ow_plugins/forum/controllers/topic.php
Line: 136
XML Nedir, Nasıl kullanılır, XML in kullanım şekli, Faydaları Forum...
Loading...
 
tr
Konu yeri: Forum » General » General Chat
Serkan BEKİROĞULLARI
Serkan BEKİROĞULLARI Mayıs 15 '20
XML NEDİR?
XML (Extensible Markup Language) (genişletilebilir işaretleme dili), hem insanlar tarafından, hem de bilgi işlem sistemleri tarafından kolaylıkla okunabilecek dokümanlar oluşturmaya yarayan bir işaretleme dili ve web teknolojisidir. Bu özelliği ile veri saklamanın yanında farklı sistemler arasında veri alışverişi yapmaya yarayan bir ara format görevi de görür. SGML’in (Standard Generalized Markup Language) (standart genelleştirilmiş işaretleme dilinin) basitleştirilmiş bir alt kümesidir. İçeriğin, doküman yapısının ve şeklin birbirinden ayrı ele alınması XML’i (Extensible Markup Language) (genişletilebilir işaretleme dilini) içerik yönetim sistemlerinin ideal formatı haline getirmiştir.

XML (Extensible Markup Language) (genişletilebilir işaretleme dili) tamamıyla Unicode (evrensel kod) olarak çalışır. Varsayılan olarak UTF-8 (Unicode Transformation Format) (evrensel dönüşüm formatı) karakter setini kullanılır. XML (Extensible Markup Language) (genişletilebilir işaretleme dili) dokümanları ağaç veri yapısında olurlar. Bağımsız tag’lar (etiketler) yapıyı oluştururken, içerik ya tag’ın (etiketin) özelliği olarak ya da iki tag (etiket) arasında gösterilir. Yapıyla ilgili ayrıntılar DTD (Document Type Definition) (belge türü tanımı) ya da XML Schema (Extensible Markup Language Schema) (genişletilebilir işaretleme dili şeması) adı verilen harici dokümanlar ile tanımlanır. XML (Extensible Markup Language) (genişletilebilir işaretleme dili), HTML (Hyper Text Markup Language) (zengin metin işaretleme dili) gibi hiyerarşik bir işaretleme dili olmasına rağmen XML’de (Extensible Markup Language) (genişletilebilir işaretleme dilinde) kullanılan etiketler, HTML’den (Hyper Text Markup Language) (zengin metin işaretleme dilinden) farklı olarak kişiler tarafından belirlenir.

XML (Extensible Markup Language) (genişletilebilir işaretleme dili) dosyalarının işlenmesinde daha doğrusu ayrıştırılmasında SAX (Simple API For Xml) (XML için basit API) ve DOM (Document Object Model) (belge nesne modeli) gibi birçok teknik kullanılmaktadır. SAX (Simple API For XML) (XML için basit API), olay tabanlı sözcüksel işleme yapar. Dosyada, içerisindeki her düğüm bir callback (geri besleme) fonksiyonu aracılığı ile istemci koda yansıtılır. Bu yapısı nedeniyle oldukça hızlı ve etkilidir, ancak XML (Extensible Markup Language) (genişletilebilir işaretleme dili) dosyasından rastgele düğüm ulaşımı oldukça zordur. Hedef düğüme ulaşmak için, her defasında dosyayı en başından işlenmek zorundadır. DOM (Document Object Model) (belge nesne modeli) tekniği ise tamamen arayüz yönelimlidir. Her düğüm ve parçalarına arayüz aracılığıyla ulaşılır. Rastgele ulaşımda etkili olmasına rağmen, büyük boyutlu dosyalar söz konusu olduğunda oldukça hantaldır ve hafıza tüketiminde fazla talepkârdır.

Bilgi üreten programlar bu verileri diskte ikilik sistemde ya da metin olarak tutarlar. Bu dosyaları diskte metin olarak tutmanın avantajı, o dosyayı açmak için oluşturulmuş olduğu programda açılmasının gerekli olmamasıdır. Bu metin dosyaları kişinin istediği bir metin işleme programında açılıp düzenlenebilir. XML’de (Extensible Markup Language) (genişletilebilir işaretleme dilinde) bir metindir. Bu özelliğiyle geliştiriciler XML (Extensible Markup Language) (genişletilebilir işaretleme dili) dosyalarını kolayca yazabilir, düzenlenebilir ve dil hatalarını daha kolay bulabilirler.

Günümüzde birçok yazılım, diğer yazılımlarla veri alışverişini XML (Extensible Markup Language) (genişletilebilir işaretleme dili) formatı üzerinden yapmaktadır. XML’i (Extensible Markup Language) (genişletilebilir işaretleme dilini) esas format olarak kullanan uygulamalara çoğunlukla rastlamak mümkündür. Rastgele veri erişimine uygun olmadığından veritabanı amaçlı kullanılmamaktadır. Microsoft'un geliştirdiği .NET teknolojisinde kullanılan DataSet (veri seti) nesneleri XML (Extensible Markup Language) (genişletilebilir işaretleme dili) formatındadır. XML (Extensible Markup Language) (genişletilebilir işaretleme dili), Microsoft Office uygulamalarının alt yapısı haline getirilmiştir. Ayrıca XML (Extensible Markup Language) (genişletilebilir işaretleme dili), web uygulamalarında, web servislerde, API’lerde, (Application Programing Interfaces) (uygulama programlama arayüzlerinde) mobil uygulamalarda, Java uygulamalarında, .NET uygulamalarında, PHP (Hypertext Preprocessor) (üstün yazı ön işlemcisi) (Personal Home Page) (kişisel ana sayfa) uygulamalarında, ASP (Active Server Pages) (aktif sunucu sayfaları) uygulamalarında, veri transferlerinde vs. birçok ortamda kullanılmaktadır.



XML’İN TARİHÇESİ
Bir yazılımda veya veritabanında kullanılan verilerin başka bir platforma taşınması sırasında birçok problemle karşılaşılıyordu. İletilen bilgi kümesindeki veri yapısının, diğer sistemdeki yapıya uygun hale getirilmesi işlemi uzun zaman alıyor ve karmaşık süreçler gerektiriyordu. Ayrıca tasarlanan bu sistem ve fonksiyonların işlem sonucunda başka alanlarda kullanılması mümkün olmuyordu. Bu durumun önlenmesi amacıyla standart bir veri iletim teknolojisinin geliştirilmesi gerekliliği üzerine CERN'de (Conseil Européen pour la Recherche Nucléaire) (avrupa nükleer araştırma merkezinde) görevli olan Tim Berners - Lee 1996 yılında XML’i (Extensible Markup Language) (genişletilebilir işaretleme dilini) tasarlamaya başlamıştır.

XML (Extensible Markup Language) (genişletilebilir işaretleme dili), W3C (World Wide Web Consortium) (dünya çapında ağ konsorsiyumu) tarafından Şubat 1998’de yayınlanmıştır. XML’in (Extensible Markup Language) (genişletilebilir işaretleme dilinin) çıkış tarihi Microsoft’un .NET teknolojisinin çıkış tarihiyle kesiştiği için bir çok kişi tarafından Microsoft tabanlı bir teknoloji olarak bilinmektedir. Fakat sanılanın aksine bu teknoloji W3C (World Wide Web Consortium) (dünya çapında ağ konsorsiyumu) tarafından tasarlanan bir veri iletişim standardıdır.

XML’in (Extensible Markup Language) (genişletilebilir işaretleme dilinin) çok uzun yıllara dayanan bir geçmişi olmaması nedeniyle daha gelişmemiş bir dil olduğu düşünülebilir, ancak XML’in (Extensible Markup Language) (genişletilebilir işaretleme dilinin) yapımcıları SGML’in (Standard Generalized Markup Language) (standart genelleştirilmiş işaretleme dilinin) en güçlü bölümlerini aldı ve HTML’in (Hyper Text Markup Language) (zengin metin işaretleme dilinin) deneyimleriyle birleştirerek SGML (Standard Generalized Markup Language) (standart genelleştirilmiş işaretleme dili) kadar güçlü bir işaretleme dili olan XML’i (Extensible Markup Language) (genişletilebilir işaretleme dilini) tasarladıkları için, XML (Extensible Markup Language) (genişletilebilir işaretleme dili) son derece gelişmiş, çok güçlü, çok esnek ve kullanımı da oldukça basit bir dildir.

XML (Extensible Markup Language) (genişletilebilir işaretleme dili) günümüzde hayatımızın vazgeçilmezi olan internetin başlıca veri transfer formatlarından birisi olmuştur.


XML’İN DOSYA YAPISI VE GELİŞTİRİCİLERİ
XML (Extensible Markup Language) (genişletilebilir işaretleme dili), W3C (World Wide Web Consortium) (dünya çapında ağ konsorsiyumu) tarafından standartlaştırılmaktadır. XML’in (Extensible Markup Language) (genişletilebilir işaretleme dilinin) geliştiricileri, dosya uzantısı, mime tipi, kod tipi, format tipi, çalışma ortamı, uzatılan türü ve sürüm bilgisi aşağıda belirtilmiştir.
Geliştirici : W3C (World Wide Web Consortium) (dünya çapında ağ konsorsiyumu)
Dosya uzantısı : .xml
MIME tipi : application/xml
Kod tipi : Text (metin)
Format tipi : Markup Language (işaretleme dili)
Çalışma ortamı : Client (istemci) > Browser (tarayıcı) / Server (sunucu) (Google Chrome, Internet Explorer, Microsoft Edge, Mozilla Firefox, Opera, Safari, Yandex Browser vs.)
Uzatılan türü : SGML (Standard Generalized Markup Language) (standart genelleştirilmiş işaretleme dili)
Güncel sürüm : 1.1
Bir önceki sürüm : 1.0




XML’İN FAYDALARI
• Tamamen ücretsizdir.
• XML’in (Extensible Markup Language) (genişletilebilir işaretleme dilinin) kullanımı oldukça basittir ve metin tabanlı bir formata sahiptir.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili), farklı platformlar arasında veri paylaşımını sağlar.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili) ile farklı kaynaklar ve uygulamalar arasında verilerin bütünleştirilmesi sağlanabilir.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili), yapısal verilerin server’lar (sunucular) arasında da alışverişini sağlar.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili), değişik uygulamaların içindeki verileri tanımlamak içinde kullanılır. Verinin kendisini kendi tanımlayabildiği için veriyi gönderen uygulamaya bağlı kalmadan alıp işleyebilir.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili), verinin taşınması, değiştirilmesi, dönüştürülmesi ve sunulması gibi birçok işlevi yapabilir.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili) ağaç yapısına sahiptir. Bu nedenle oluşturulan tag’ları (etiketleri) iç içe yazarak kökten uçlara kadar erişim sağlanabilir.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili), yazılımcılara kendi anahtarlarını ve kendi yapısını oluşturmasına izin verir.
• Çoğu veritabanı, veri tipi olarak XML’i (Extensible Markup Language) (genişletilebilir işaretleme dilini) destekler.
• Hemen hemen her uygulamada import / export (içe aktarım) / (dışa aktarım) işlemlerinde XML (Extensible Markup Language) (genişletilebilir işaretleme dili) formatı desteklenmektedir.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili) kodlarını eğer herhangi bir IDE (Integrated Development Environment) (tümleşik geliştirme ortamı) programınız bulunmuyorsa, bütün Windows, Linux, Mac vs. işletim sistemlerinde bulunan not defteri programıyla yazabiliriz.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili), çok farklı tiplerdeki verileri orjinal formatlarında tek bir havuzda tutar. Bu sayede bilgiye hızlı, kolay ve ortamdan bağımsız olarak erişebilme imkânı sunar.
• Browser’lar (tarayıcılar), XML (Extensible Markup Language) (genişletilebilir işaretleme dili) tag’larını (etiketlerini) yok sayar ve yalnızca verileri görüntüler.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili) sayesinde yalnızca değişen verilerin güncellenmesi sağlanabilir. Bu sayede değişen verinin görüntülenmesi bütün sayfanın yenilenmesine yol açmaz. Client’in (istemcinin) ve server’ın (sunucunun) yükünü azaltarak minimum internet trafiği sağlar ve ayrıca zaman kaybının da önlenmesine destek olur.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili), veri paylaşımı yapılan web siteleri içerisinde %100'e yakın oranda kullanılan bir dildir ve bu nedenle XML (Extensible Markup Language) (genişletilebilir işaretleme dili), veri paylaşımı yapan web sitelerinin vazgeçilmezlerinden birisidir.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili) verileri birçok özel yazılımda, game engines’da (oyun motorlarında) vs. uygulamalar içerisinde de %100 uyumlu olarak çalışabilmektedir.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili), internet üzerinde en yayın işaretleme dili ve veri aktarım formatı olması nedeniyle, internet üzerinde sayılamayacak kadar çok kaynak, doküman ve makale bulmak mümkündür.




XML İLE NELER YAPILABİLİR?
XML (Extensible Markup Language) (genişletilebilir işaretleme dili) ile sayılamayacak kadar çok işlem yapılabilir. En azından fikir olması için birkaç örnek verecek olur isek; • Mobil programlama içerisinde kullanılabilir.
• Birçok özel yazılımda, game engines’da (oyun motorlarında) vs. uygulamalar içerisinde de kullanılabilir.
• Web siteleri için site map (site haritası) oluşturulabilir.
• Veritabanlarının aktarılması işlemlerinde kullanılabilir.
• Finansal verilerin iletiminde kullanılabilir.
• Yazılım paketleri içerisindeki bağımlılıkların tanımlanmasında kullanılabilir.
• Dosya sistemlerinin oluşturulmasında kullanılabilir.
• XML’i (Extensible Markup Language) (genişletilebilir işaretleme dilini) esas format olarak kullanan uygulamalara, veritabanı olarak da kullanılabilir.
• İnternet arama motorlarında kullanılabilir.
• Aygıt ve uygulamadan bağımsız veri aktarım işlemlerinde kullanılabilir.
• Yazılım geliştirme işlemlerinde kullanılabilir.
• XML (Extensible Markup Language) (genişletilebilir işaretleme dili) ile esnek web uygulamalarının geliştirilebilir.
• E-Ticaret sitelerinin kolay veri alışverişi ve haberleşmesi için kullanılabilir.
• Şirket uygulamalarının bütünleştirmesinde kullanılabilir.



JSON İLE XML ARASINDAKİ FARKLAR JSON (Javascript Object Notation) (Javascript nesne gösterimi) sahip olduğu ağaç yapısıyla XML (Extensible Markup Language) (genişletilebilir işaretleme dili) ile benzerlik gösterse de tamamen farklı bir yapıdadır. En azından fikir olması için birkaç örnek verecek olur isek;

• JSON (Javascript Object Notation) (Javascript nesne gösterimi), XML’e (Extensible Markup Language) (genişletilebilir işaretleme diline) göre daha küçük ve hızlıdır.
• JSON (Javascript Object Notation) (Javascript nesne gösterimi), XML’e (Extensible Markup Language) (genişletilebilir işaretleme diline) göre okunabilirlik açısından daha kolay ve anlaşılabilirdir.
• JSON (Javascript Object Notation) (Javascript nesne gösterimi), XML (Extensible Markup Language) (genişletilebilir işaretleme dili) gibi geliştirilebilir bir yapıya sahip değildir.
• JSON (Javascript Object Notation) (Javascript nesne gösterimi), XML’e (Extensible Markup Language) (genişletilebilir işaretleme diline) göre daha az tekrar demektir.

JSON (Javascript Object Notation) (Javascript nesne gösterimi) ve XML’in (Extensible Markup Language) (genişletilebilir işaretleme dilinin) dosya yapılarını karşılaştıracak olur isek;

JSON (Javascript Object Notation) (Javascript nesne gösterimi) (Karakter Sayısı : 227) XML (Extensible Markup Language) (genişletilebilir işaretleme dili) (Karakter Sayısı : 323)
{
"EgitimSetleri": [
{
"Numara": "1", "Adi": "HTML",
"Seviye": "Herkes için"
},
{
"Numara": "2",
"Adi": "CSS",
"Seviye": "Herkes için"
},
{
"Numara": "3",
"Adi": "Javascript",
"Seviye": "Herkes için"
},
{
"Numara": "4",
"Adi": "PHP",
"Seviye": "Herkes için"
}
]
}
<EgitimSti>
<set>
<Numara>1</Numara>
<Adi>HTML</Adi>
<Seviye>Herkes için</Seviye>
</set>
<set>
<Numara>2</Numara>
<Adi>CSS</Adi>
<Seviye>Herkes için</Seviye>
</set>
<set>
<Numara>3</Numara>
<Adi>Javascript</Adi>
<Seviye>Herkes için</Seviye>
</set>
<set>
<Numara>4</Numara>
<Adi>PHP</Adi>
<Seviye>Herkes için</Seviye>
</set>
</EgitimSeti>


Bu kadar ufak bir kodlama örneğinde dahi JSON (Javascript Object Notation) (Javascript nesne gösterimi), XML’e (Extensible Markup Language) (genişletilebilir işaretleme diline) göre %42.29’luk bir oranda daha az karakterden oluşuyor. Bu da dolayısı ile dosya veri ve dosya boyutunun ufak olmasına neden oluyor ve işlem çok daha hızlı gerçekleşiyor.
Paylaş: