Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, Tarık Ney tarafından sunulan teknik bir eğitim içeriğidir. Eğitmen, RESTful servisler konusunu detaylı bir şekilde anlatmaktadır.
- Video, RESTful servislerin ne olduğunu, SOAP protokolünden nasıl farklılaştığını ve REST API'nin temel prensiplerini açıklamaktadır. İçerikte REST'in resmi açılımı olan "Representational State Transfer" kavramı, client-server ilişkisi, statelesslik, önbellekleme, katmanlı yapı, kod talep üzerine ve ortak arayüz gibi temel kısıtlamalar örneklerle anlatılmaktadır.
- Video ayrıca HTTP metodlarını (GET, POST, PUT, DELETE), URL'lerin kullanımını, JSON/XML formatlarının işlenmesini ve SOAP ile REST arasındaki farkları karşılaştırmalı olarak ele almaktadır. İçerik, yaklaşık 30 dakika sürmekte ve Wikipedia örneği üzerinden HTTP istekleri ve header'lar incelenmektedir.
- Restful Servisler ve Rest Mimarisi
- Videoda Restful servisler, SOAP protokolünden farkları, REST nedir, REST API (Application Programming Interface) ve REST ile HTTP arasındaki ilişki anlatılacaktır.
- Rest mimarisinin anlatıcısı olan kişi, U.C. Üniversitesi'nde doktora tezi olarak bu konuyu anlatmıştır.
- Rest'in resmi açılımı "Representational State Transfer" (Temsil Durum Aktarımı) olarak geçmektedir.
- 01:46Representation Kavramı
- Representation, bir veriyi nasıl gösterdiğimiz anlamına gelir ve Türkçe'de "temsil", "simgeleme", "gösterme" gibi manalara sahiptir.
- Bilgisayar dünyasında farklı formatlar (resim, XML, JSON, YAML) verilerin farklı gösterimleridir.
- JSON ve XML formatları, bir müşteri verisini farklı şekilde göstermek için kullanılabilir.
- 05:26Content Type ve Metadata
- Bilgisel dünyada farklı tipler için kurullar oluşturulur ve bunlar bir ortak anlaşılan format tanımlamak için çalışır.
- MIME (Multi-Purpose Internet Mail Extensions) tipleri, mail göndermek için kullanılan protokollerde tanımlanmış tiplerdir.
- Content Type, bir veriyi tanımlamak için kullanılan verilerdir ve meta veri olarak adlandırılır.
- 08:06Resource Kavramı
- Resource (kaynak), bir veri kaynağıdır ve statik veya dinamik olarak oluşturulan bir veri olabilir.
- Bir adrese giderek bir kaynağa ulaşmak mümkündür ve bu kaynak farklı gösterimlerde (presentation) döndürülebilir.
- Server'da bulunan bir resource, istenilen format (JSON, XML) olarak farklı gösterimlerle gönderilebilir.
- 10:28REST ve RESTful Servisler
- REST bir mimari yaklaşımdır ve bir konsept oluşturur, bu konseptin kısıtlamalarına uyarak farklı implantasyonlar geliştirilebilir.
- REST mimarisinin en önemli özelliği, birden fazla bilgisayar sistemi arasında beraber çalışabilirlik sağlamasıdır.
- 12:20REST Mantığı ve İnteroperabilitas
- İki farklı bilgisayar mimarisi (Macintosh ve Windows) arasında REST mantığı, birbirlerini anlayabilme imkanı sağlar.
- REST, farklı cihazlar arasında ayrışma sağlayarak herkesin sorumluluğunu ayırarak beraber çalışabilirliği artırır.
- REST mantığı sayesinde, kullanıcı hangi platformu kullandığına bakmadan ortak bir dil üzerinden veri alabilir.
- 13:53REST'un Temel Özellikleri
- RESTful servisler için gerekli olan ilk özellik, client ve server ilişkisi olmasıdır.
- İkinci özellik olan stateless, server'ın client hakkında hiçbir bilgi tutmamasını gerektirir.
- Client, her istekte gerekli bilgileri server'a gönderir, böylece server client'ı tanır ve istenen veriyi gönderir.
- 17:46Önbellekleme ve Katmanlı Yapı
- Önbellekleme (cache), daha önce üretilmiş ve değişmemiş verileri tekrar üretmek yerine saklamak ve kullanmak anlamına gelir.
- Katmanlı yapı (layered system), aradaki farklı cihazların (proxy, load balancer) verileri önbellekleme imkanı sağlar.
- Load balancer, birden fazla sunucu arasında istekleri dengeler ve böylece daha hızlı cevap alma şansı sağlar.
- 21:39REST'un Diğer Özellikleri
- Code on demand, istek üzerine kod gönderimi anlamına gelir ve client tarafında çalıştırılmak üzere kod parçası gönderilebilir.
- Uniform interface, herkesin anladığı ortak bir arayüz anlamına gelir ve dört farklı açıdan incelenebilir.
- Kaynakların tanımlanabilmesi, manipüle edilebilmesi ve mesajların kendilerini tanımlayabilmesi REST'un temel prensipleridir.
- 24:54RESTful Architecture
- RESTful architecture, bir web servis mimarisi tarzıdır ve HTTP protokolünü kullanır.
- RESTful servisler, API tasarlarken kullanılan ve HTTP yöntemlerini (GET, POST, PUT, DELETE) belirli amaçlar için kullanır.
- GET metodu veri almak için, PUT metodu veriyi güncellemek için, DELETE metodu veriyi silmek için kullanılır.
- 28:51HTTP Yöntemleri ve Veri Tipleri
- RESTful servislerde verinin tipi (JSON, XML) belirtilmelidir çünkü sunucu ve istemci arasında hangi veri tipinin kullanılacağını bilmek önemlidir.
- PUT metodu, mevcut bir veriyi tamamen değiştirir veya yerine koyar.
- REST mimarisi HTTP protokolüne bağlı değildir, kendi REST protokolünü yazabilirsiniz.
- 29:50SOAP ve REST Karşılaştırması
- SOAP, XML tabanlı bir protokoldür ve WSDL kullanır, REST ise bir mimari tarzıdır.
- SOAP, uzaktaki bir bilgisayardaki kodu çalıştırırken (RPC), REST basit servis kolları kullanır.
- SOAP, HTTP, SMTP, FTP gibi farklı protokoller üzerinden transfer yapabilirken, REST sadece HTTP kullanır.
- 32:24Kullanım Yaklaşımları
- SOAP yaklaşımında, WSDL dosyaları araçlar aracılığıyla CP class'larına dönüştürülür.
- RESTful yaklaşımında, URL'ler üzerinden HTTP metodları kullanılarak web sunucusuna istekler gönderilir.
- RESTful yaklaşımında, metodlar doğrudan URL'ler olarak dönüştürülür ve HTTP yöntemleri ile istekler yapılır.