‫Tekrar hoş geldiniz.
‫Bu videoda XML ile bağlantı kullanacağız.
‫Ve burada küçük bir dosya ya da XML ile Bağlantı adında küçük bir proje oluşturdum.
‫Ayrıca burada Students XML adında küçük bir dize oluşturdum ve bir XML dizesi içeriyor.
‫Yani bu, içinde birden fazla nesne barındıran ve students olarak adlandırılan bir XML nesne türüdür.
‫Dolayısıyla, bu örnek için adı Toni, yaşı 21 ve üniversitesi Yale olan bir öğrenci nesnesi içerir.
‫Ve onlardan üç tane var.
‫XML'in açılımı Genişletilebilir Biçimlendirme Dili olup, aşağı yukarı veri oluşturmak ya da veriyi
‫yapılandırmak için kullanılan bir dildir.
‫Ve bu durumda, neredeyse bir tablo gibi görebileceğiniz yapılandırılmış verilerimiz var.
‫Bu, öğrenciler adlı bir tablodur ve birden fazla öğrenci veya tekil öğrenciler içerir ve Ad ve A adlı
‫bir sütunları veya H adlı başka bir sütunları ve Üniversite adlı üçüncü bir sütunları vardır.
‫Ve sadece farklı bir şekilde yapılandırılmıştır ve XML'i birçok durumda bulacaksınız.
‫Örneğin, birçok web sitesi verilerini paylaşmak için XML kullanır.
‫Dolayısıyla, XML kullanan API'ler vardır ve basitçe devam edip İnternet'ten veri okumak için XML'lerini kullanabilir ve ardından
‫programınızda kullanabilirsiniz.
‫Diyelim ki içinde bulunduğunuz ayın en iyi 100 filmini göstermek istiyorsunuz.
‫Daha sonra bunu bir XML dosyası sağlayan bir web sitesinden yükleyebilir ve kodunuzu XML
‫dosyasının bu belirli yapısı etrafında oluşturabilir ve programınızda veya uygulamanızda veya web sitenizde
‫kullanabilirsiniz.
‫Bu yüzden burada Baidu mice dot com adında bir web sitesi açtım.
‫Canlı bir futbol XML dosyası var, yani bu XML dosyasına sahipsiniz.
‫Bu elbette çok daha büyüktür ve birçok ek bilgi içerir, ancak genel olarak aynı yapıdadır.
‫Yani futbol sporunun bu gidişatına sahipsiniz.
‫Daha sonra güncellendiğinde, hangi fincanda olduğu kategorisine sahip olursunuz.
‫Örneğin bu Arnavutluk kupasıydı.
‫Ardından eşleşmeler, tarih formatı, tarih, ardından eşleşme durumu ve benzeri bilgiler gelir.
‫Yani bu çok daha karmaşıktır, ancak genel olarak aynı yapıdadır.
‫Yani burada açılan ve tam burada kapanan bu eşleşmeler etiketine sahipsiniz ve bu belirli kategoride bu belirli
‫tarihte yalnızca bir eşleşmeniz var ve harita durumunuz var, bu da ne zaman başladığını gösteriyor.
‫Ve sonra hedefleri de görüyorsunuz.
‫Bu seferki olayda bir soru işareti var.
‫Göründüğü üzere, bu maçta gollerle ilgili herhangi bir ek bilgi yoktu.
‫Ama sonra burada bir Arjantin maçı var ve burada birden fazla etkinlik var.
‫Yani 19. dakikada bir gol vardı.
‫Peki yerel takımın attığı golü kim attı, o zaman oyuncu olarak golü kim attı?
‫Bu oyuncu El Bima'ydı, sonra o noktadaki sonuç ve diğerleri.
‫Gördüğünüz gibi, devam edip okuyabileceğiniz ve ardından uygulamanızda veya programınızda gösterebileceğiniz
‫pek çok bilgi var.
‫Ve bu çok güzel.
‫Yani XML oldukça güçlü ve sadece futbol için değil, görüntülenmesi gereken her türlü
‫veri için kullanılıyor ve sadece API'lerini almanız gerekiyor.
‫Yani bu sadece bir örnek olan bir XML dosyasıdır, ancak aksi takdirde API anahtarlarını almanız gerekir ve ardından
‫devam edip bu XML dosyalarını çağırabilir ve programınızda kullanabilirsiniz.
‫Hava durumu için de aynı şey geçerli.
‫İşte Pixel nokta com adında bir web sitesi.
‫Ve örneğin hava durumu bilgileri de var.
‫Yani bu durumda, JSON ve XML dosyaları için bu API'ye sahipler.
‫Ancak bu konuya derinlemesine girmeyeceğim.
‫Sadece size bazı örnekler göstermek istedim.
‫Ve genel olarak XML'in gücü budur ve bu yüzden onu kontrol ediyoruz.
‫Dolayısıyla, verileri yeterli bir şekilde kullanmak için bir veritabanına erişmeniz gerekmez, ancak aslında XML dosyalarına
‫erişebilir veya kendi XML dosyalarınızı oluşturabilirsiniz.
‫Ama kullanacağımız yapı bu.
‫Yani bir öğrencinin sınıfı ya da tablosu var ve burada birden fazla girişimiz var.
‫Toni adında 21 yaşında bir öğrencimiz var ve bu üniversite Yale.
‫Tamam.
‫Şimdi devam edelim ve bunu kullanalım.
‫Bunu yapmak için de buraya bir isim alanı eklememiz gerekiyor.
‫Ve isim alanı System Dot, XML, Dot Link olarak adlandırılır ve şimdi devam edebilir ve bu sınıfı kullanabiliriz çünkü aksi takdirde X belgesi olarak
‫adlandırılan bu sınıfı kullanamayız.
‫Böylece bu öğrencilerden bir XML belgesi oluşturuyoruz.
‫Burada sahip olduğumuz XML dizesi.
‫Bu yüzden burada bir öğrenci x dock dosyası veya nesnesi oluşturacağım.
‫Ve bu bir X belgesi olmalıdır.
‫Tamam.
‫Şimdi devam edip bu X belgesini başlatabiliriz ve bunu aşağıdaki şekilde yaparız.
‫Yani X belgesi, nokta ayrıştırma.
‫Yani bu dizeden, bu öğrenci XML dizesinden ayrıştırma yapıyoruz.
‫Şimdi bunu bağlantıda kullanabiliriz.
‫Bu çok güzel.
‫Bağlantıyı sadece nesneler için ya da daha sonra göreceğimiz gibi sadece veritabanları veya SQL için değil, aynı zamanda
‫XML için de kullanabiliriz ve bu onun gücüdür.
‫Biliyorsunuz, XML kendi başına güçlüdür, ancak link daha da güçlüdür çünkü tüm bunları bizim için aynı şekilde yapar ve
‫bizim ona sadece verileri vermemiz gerekir.
‫XML olması, C diyezde bir nesne olması ya da bir tür veritabanı olması fark etmez.
‫Bu çok güzel.
‫Şimdi students adında yeni bir değişken oluşturabilirim ve bu otomatik olarak bir koleksiyon olacaktır.
‫Şimdilik sadece bir değişken.
‫Ne tür bir değişken olduğunu bilmiyor.
‫Ve burada bu XML belgesinden bir bağlantı kullanacağım.
‫Yani students x doc dot descendants içindeki student öğesinden ve burada student öğesinden.
‫Peki bu torunlar nedir?
‫Üzerine gelirseniz, bu belge için alt öğelerin filtrelenmiş bir koleksiyonunu veya belge sırasındaki
‫öğeleri döndürdüğünü görürsünüz, yalnızca eşleşen bir x adına sahip öğeler koleksiyona dahil
‫edilir ve x adı buradaki öğrenci değişkeni veya verdiğimiz bu argümandır.
‫Burada görebileceğiniz gibi, bu bir numaralandırılabilir ve.
‫Buradaki öğrenci.
‫Yani burada görebileceğiniz gibi tam olarak aynı yazım.
‫Yani öğrenciler x dokümanımızdaki her bir öğrenciyi kontrol eder ve öğrencinin x dokümanı öğrencinin x html dizesini
‫alır, değil mi?
‫Şimdi her bir öğrenciyi teker teker kontrol ediyor.
‫Bu yüzden buradaki şey kendi başına zaten bir liste.
‫Ve bu öğrenci listesindeki her bir öğrenciyi kontrol ediyoruz.
‫Biz de bu hatla bunu yapıyoruz.
‫Yani her bir hat türü için bir tane var ve şimdi devam edip yeni bir giriş oluşturabiliriz.
‫Bu yüzden yeniyi seçin.
‫Peki neyi seçmek istiyoruz?
‫Peki, isme sahip olmak istiyoruz ve isim öğrenci nokta öğesi olacak.
‫Ve burada gördüğünüz gibi, öğrencinin kendisi bir X öğesidir.
‫Yani üzerine geldiğinizde, bunun bir X tipi öğe olduğunu görürsünüz.
‫Şimdi element adı verilen bu yöntemi kullanabiliriz ve burada bir x adı vermemiz gerekir.
‫Yani tabiri caizse x küçük bir isim.
‫Ve bu durumda, örneğin, H Üniversitesi adı.
‫Yani burada isim bizim ismimiz olacak.
‫Ve değere sahip olmak istiyorum, yani bu belirli ismin değer özelliğine, sonra öğrenci nokta öğesi olan H'ye ve H'ye
‫sahip olmak istiyorum ve burada da değere sahip olmak istiyorum.
‫Şimdi size küçük bir meydan okuma olarak, aynı şeyi üniversite için de yapın.
‫Tamam.
‫Umarım denemişsinizdir.
‫Üniversite öğrencisi unsuru, bu üniversite değeri.
‫Ve burada noktalı virgülümüzü unutmamalıyız.
‫Pekala, bu şimdiden oldukça havalı.
‫Bu yüzden öğrencilerimiz için böyle bir koleksiyonumuz var.
‫Gördüğünüz gibi, name adında bir dize, H adında bir dize ve university adında bir dize içeren
‫sayısız bir koleksiyon.
‫Yani A yeni.
‫Ve görüyorsunuz ki burada anonim tipler var.
‫Şimdi devam edebilir ve bunu kullanabiliriz.
‫Örneğin, students koleksiyonumuzdaki her bir öğrenciyi kontrol etmek ve ekrana yazdırmak için
‫bir for each döngüsü kullanabiliriz.
‫Yani her bir öğrenci için ve burada da öğrenciler için.
‫Yani bunun içinde.
‫Peki ben ne yapmak istiyorum?
‫Ben sadece konsola bir şeyler yazmak istiyorum.
‫Bu yüzden çift sekmeye bakın ve iki numaralı üniversiteden bir numaralı H ile sıfır numaralı öğrenci
‫gibi bir şey söyleyeceğim.
‫Peki bu numaralar kim?
‫Bunlar öğrenci nokta adı, öğrenci nokta H ve öğrenci nokta üniversitesidir.
‫Bu çok güzel.
‫Böylece, bir öğrenci koleksiyonu içinde yer alan bu öğrenci nesnesini alıyoruz.
‫Yani bu koleksiyonun her bir nesnesini ve özelliklerini burada kullanabiliriz.
‫Gördüğünüz gibi, name adında bir özellik var ve şimdi bu oldukça havalı.
‫Bu yüzden konsolun doğru satırı düşündüğünü kontrol edebiliriz ve şimdi kodu çalıştıralım.
‫Ve işte buradayız, Yale Üniversitesi'nden 21 yaşındaki öğrenci Tony.
‫Sonra Karla, 17 yaşında Yale'de ve Leila 19 yaşında Beijing Tech'te oldukça genç.
‫İşte buradasın.
‫Bu tür verileri, yani XML verilerini basitçe kullanabilir ve istediğiniz veya istediğiniz şekilde kullanabilirsiniz.
‫Bizim durumumuzda, biz bunu sadece görüntülemek için kullandık, ancak siz bunu, örneğin bir
‫kullanıcının veya üniversitede sahip olduğunuz tüm öğrencilerinizin tüm bilgilerine sahip olduğunuz uygulamanızda görüntülemek için
‫kullanabilirsiniz.
‫Diyelim ki profesörünüz ve siz öğrencileriniz hakkında daha fazla bilgi edinmek ve kendinizi bir sonraki döneme
‫hazırlamak istiyorsunuz.
‫Daha sonra bu öğrenci hakkında bilgi almak ve onu kontrol etmek için bu XML yapısını kullanabilirsiniz.
‫Şimdi küçük bir meydan okuma olarak, bu son videoda gördüğünüz bir şey, yani sıralama.
‫Bu yüzden lütfen devam edin ve öğrencileri yaşlarına göre sıralayın.
‫XML dosyamızda bulunan öğrenciler, lütfen devam edin ve bunu deneyin.
‫Tamam.
‫Umarım denemişsinizdir.
‫Bu yüzden, öğrencilerdeki öğrencilerden gelen sıralanmış öğrenciler adlı bu yeni değişkeni kullanıyoruz ve
‫bunu öğrenci nokta yaşına göre sıralıyoruz.
‫Ve sadece öğrencinin kendisini seçiyoruz.
‫Yani öğrenciyi seçin ve hepsi bu kadar.
‫Ve şimdi öğrencileri H'ye göre görüntülemek için yine bir for each döngüsü kullanıyoruz.
‫Bu yüzden öğrenciyi değil, öğrencileri sıralayan mağazayı kullanacağım.
‫Şimdi konsola daha önce yaptığımız gibi aynı şeyi yazacağım, ancak yaşa göre sıralayacağım.
‫İşte bu yeni yöntem de bunu yapacak.
‫Carla 17, Layla 19 ve 2021'de öğrenciyiz.
‫Gördüğünüz gibi, daha önce yaşa göre sıralanmıyorlardı, ama şimdi sıralanıyorlar.
‫Umarım bunu kendiniz yapmayı dener ve başarırsınız.
‫Oldukça hızlı geçtim, ancak bunun nedeni yapıyı ve yaklaşımı zaten kullanmış olmamızdır, bu
‫nedenle belirli bir değişkene göre sıralayabilirsiniz.
‫Yani bu durumda H tarafından.
‫Tamam.
‫Şimdi bir sonraki şey, biraz daha fazla zorluk veya ek zorluk, lütfen buraya başka bir bilgi türü ekleyin
‫ve başka bir öğrenci ekleyin.
‫Yani bilgi derken isim, yaş veya üniversite gibi şeyleri kastediyorum.
‫İçinde bulundukları yıl ya da dönem olabilir.
‫Bu yüzden lütfen devam edin ve bunu bu XML dosyasıyla deneyin.
‫Bu yüzden her bir öğrenci için genişletin ve ardından devam edip başka bir öğrenci oluşturun.
‫Böylece biraz pratik yapmış olursunuz.
‫Tamam.
‫Umarım denemişsinizdir.
‫Bu yüzden burada sömestr kullanacağım.
‫Diyelim ki Tony altıncı yarıyılda ve bu yarıyılı kapatmamız gerekiyor.
‫Bu yüzden dönemi kaçırdık ve şimdi aynı şeyi diğer öğrencilerimiz için yapıyoruz.
‫Aslında, tüm satırı bu şekilde kopyalayalım.
‫Bu şekilde biraz daha iyi olacak.
‫Diyelim ki Karla birinci yarıyılda ve Leyla da üçüncü yarıyılda.
‫Tamam.
‫Ve şimdi dedim ki, bir öğrenci daha ekleyin.
‫Bu öğrenci parçasını buraya kopyalayacağım ve 25 yaşında ve 10. sömestrinde
‫olan Frank'i yaratacağım.
‫O da yüksek lisans yapıyor.
‫Evet.
‫Bazı doktor dereceleri ya da onun gibi bir şey.
‫Ve evet, şimdi devam edebilir ve kodumuzu burada genişletebiliriz.
‫Bu da size vermek istediğim başka bir meydan okuma.
‫Bu nedenle, lütfen devam edin ve dönemleri de gösterecek şekilde buradaki kodu genişletin.
‫Yani sadece buradaki kod değil, aslında her biri için de.
‫Tamam.
‫Umarım denemişsinizdir.
‫Ve ben buna öğrenci nokta öğesi olan sömestr adını vereceğim.
‫Ve burada dönem nokta değeri.
‫Ve tabii ki burada virgülü eklememiz gerekiyor.
‫Ve metni ekleyelim onun slush'unda onu basit tutacağım çünkü burada cinsiyetimiz
‫yok onun onu.
‫Ve burada üçüncü ya da üçüncü sömestr.
‫Üçüncü, ikinci ya da bunun gibi şeyler yazmayacaktır.
‫O kadar karmaşık hale getirmeyeceğim ama basit tutacağım.
‫Ve işte öğrenci nokta dönemi ve işte buradayız.
‫Şimdi kontrol edebiliriz.
‫Kodu çalıştıralım ve öğrencimizin dönem değerini de görelim.
‫Ve bu arada, kodu çalıştırdığımda bir hata alıyorum.
‫Ve bu gerçekten çok iyi çünkü gördüğünüz gibi burası çok hassas.
‫Burada sömestr var ve burada da sömestr var ve bunu zaten fark etmiş olabilirsiniz.
‫Bu yüzden tam olarak aynı tiplemeye sahip olmanız çok önemlidir.
‫Bu yüzden tam olarak aynı şekilde yazılmalıdır çünkü aksi takdirde hata alırsınız.
‫Diyor ki, Hey, başlangıç etiketi ve bitiş etiketi, eşleşmiyorlar.
‫Bu yüzden tekrar başlayacağım.
‫Ve sonra biz.
‫Yani üniversiteden 21 yaşında bir öğrenci Tony var.
‫Yale altıncı sömestrinde.
‫Bir de Carla var, o da ilk döneminde.
‫Layla'nın üçüncü dönemi.
‫Ve son olarak Frank, sonsuza dek çalışıyor.
‫Onuncu sömestrinde ve hala burada sipariş veriliyor.
‫Ve bu diğer her döngü için herhangi bir ek bilgi kullanmadı, bu yüzden sömestr hakkında bilgi sahibi değildi
‫çünkü burada da sömestr kullanmadık.
‫Tamam.
‫Gördüğünüz gibi, bu süper genişletilebilir, XML dosyanızı genişletmek çok kolay.
‫Buraya başka bir etiket ekleyebilir ve bilgi ekleyebilirsiniz.
‫Hatta programınızda kullanmanıza gerek kalmaması için bunu açık bırakabilirsiniz.
‫Diyelim ki elimizde başka türde bir bilgi var.
‫Bunu eklemenize gerek yok.
‫Yani sömestr ve yaşı kullanmak istemiyorsak, bu sorun değil.
‫Dolayısıyla, burada bulunan her bir etiketi nesnemizde kullanmamız gerekmez, ancak bunu yapabiliriz ve bu oldukça
‫güçlüdür.
‫Pekala, harika.
‫Artık XML ile bağlantının nasıl kullanıldığını gördünüz ve okula gitmeye hazırız.
‫Dolayısıyla, işleri yapmanın daha genişletilmiş ve daha güçlü yolu, diyelim ki, bir veritabanıyla kendiniz çalışmaktır.
‫Bunu bir sonraki videoda yapalım.
‫Orada görüşürüz.