Ana içeriğe geç

Kitap 03 · Özet sayfa

Backend ve API'ler

Sunucu tarafı servisler, API tasarımı ve yazılım sistemlerinin birbiriyle konuşma yolları.

01.NET
.NET, Microsoft'un başta C# ile web, masaüstü, mobil, bulut ve oyun uygulamaları geliştirmeye yarayan ücretsiz ve açık kaynaklı platformudur.
  • .NET, Microsoft'un başta C# olmak üzere pek çok uygulama türü için açık kaynaklı platformudur.
  • 2016'da .NET Core onu platformlar arası yaptı; 2020'de .NET 5 çizgiyi birleştirdi.
  • Kod, onu JIT ile derleyen ve belleği yöneten CLR üzerinde çalışır.
02APIUygulama Programlama Arayüzü
API, bir yazılımın başka bir yazılımdan veri ya da işlem talep etmesini sağlayan, belgelenmiş ve öngörülebilir kurallar bütünüdür.
  • API, iki yazılımın birbiriyle nasıl iletişim kuracağını tanımlar.
  • Çağıranların iç uygulamayı bilmesine gerek yoktur.
  • Web API'leri genellikle HTTP üzerinden çalışır ve JSON döndürür.
03API Gateway
API gateway, bir grup backend servisinin önünde duran ve API isteklerini alan, kontrol eden ve yönlendiren tek giriş noktası görevi gören bir sunucudur.
  • API gateway, birçok backend servisini çağıran istemciler için tek giriş noktasıdır.
  • Her isteği yoluna, host'una veya başlıklarına göre doğru servise yönlendirir.
  • Kimlik doğrulama, rate limiting, loglama ve TLS'i merkezileştirir.
04API Versioning
API versioning, bir API'deki değişiklikleri etiketleyip yönetmektir; mevcut istemciler çalışmaya devam ederken yeni sürümler özellik ekler veya değiştirir.
  • Sürümleme, bir API'nin mevcut istemcileri bozmadan uyumsuz değişiklikler yapmasını sağlar.
  • Yaygın yaklaşımlar sürümü URL yoluna, bir başlığa ya da bir sorgu parametresine koyar.
  • İsteğe bağlı alan eklemek geriye dönük uyumludur; alanları kaldırmak veya yeniden adlandırmak uyumsuz bir değişikliktir.
05Arka Plan İşi
Arka plan işi, bir sunucunun normal istek-yanıt döngüsünün dışında çalıştırdığı görevdir; e-posta gönderme gibi yavaş işler kullanıcıları bekletmez.
  • Arka plan işleri yavaş işi istekten çıkarır; kullanıcılar hızlı yanıt alır.
  • Uygulama bir işi kuyruğa ekler; ayrı worker süreçleri onu sonra çalıştırır.
  • Başarısız işler, çoğunlukla exponential backoff ile yeniden denenir.
06Backend
Backend, bir uygulamanın sunucu tarafıdır: veriyi saklayan, iş kurallarını uygulayan ve frontend'in isteklerine cevap veren kod, veritabanları ve servisler.
  • Backend sunucu tarafıdır: veri, iş kuralları ve güvenlik.
  • Frontend'den ve başka programlardan gelen isteklere bir API üzerinden cevap verir.
  • Genellikle uygulama kodunu, veritabanlarını, önbellekleri ve kuyrukları bir araya getirir.
07Backpressure
Backpressure, yavaş tüketicinin hızlı üreticiye yavaşlaması için sinyal vermesini sağlayan, verinin işlenebileceğinden hızlı birikmesini önleyen mekanizmadır.
  • Backpressure, yavaş bir tüketicinin hızlı bir üreticiye yavaşlamasını veya durmasını söylemesini sağlar.
  • Bu olmadan sınırsız tamponlar, gecikme fırlayana veya bellek bitene kadar büyür.
  • Yaygın stratejiler pull tabanlı tüketim, engelleyen sınırlı tamponlar ve load shedding'dir.
08Cron Job
Cron job, beş alanlı bir cron ifadesiyle tanımlanan ve her gece 02.00 gibi tekrarlayan bir zamanlamayla otomatik çalışan bir komut veya betiktir.
  • Cron job, bir komutu zamana dayalı bir zamanlamayla otomatik çalıştırır.
  • Zamanlamalar beş alandan oluşur: dakika, saat, ayın günü, ay ve haftanın günü.
  • 0 2 * * * her gün 02.00 demektir; */15 * * * * her 15 dakika demektir.
09CRUDOluştur, Oku, Güncelle, Sil (Create, Read, Update, Delete)
CRUD, oluşturma, okuma, güncelleme ve silmenin kısaltmasıdır; veritabanı, API ve çoğu iş uygulamasında saklı verilerle çalışmanın dört temel işlemidir.
  • CRUD, oluşturma (create), okuma (read), güncelleme (update) ve silmenin (delete) kısaltmasıdır.
  • SQL'de işlemler INSERT, SELECT, UPDATE ve DELETE'tir.
  • REST API'lerde genellikle POST, GET, PUT veya PATCH ve DELETE ile eşleşir.
10Django
Django, ORM, yönetim paneli, kimlik doğrulama ve güvenlik korumalarıyla gelen açık kaynaklı bir Python web framework'üdür; bu sayede ekipler hızlı geliştirir.
  • Django, açık kaynaklı ve "pilleri dahil" bir Python web framework'üdür.
  • Modeller, view'lar ve şablonlar MTV yapısını oluşturur.
  • ORM'i Python sınıflarını veritabanı tablolarına eşler.
11Endpoint
Endpoint, bir API'nin belirli bir kaynak veya eylem için istek alıp yanıt döndürdüğü, bir HTTP metoduyla birlikte kullanılan belirli bir URL'dir.
  • Endpoint, bir API'nin istek kabul ettiği URL'dir.
  • Aynı URL farklı HTTP metotlarıyla farklı endpoint'ler gibi davranabilir.
  • Endpoint URL'leri bir temel URL, bir kaynak yolu ve isteğe bağlı sorgu parametrelerinden oluşur.
12Event Loop
Event loop, olaylar ve I/O sonuçları hazır oldukça callback'leri tek tek çalıştırarak tek bir iş parçacığının birçok görevi yönetmesini sağlayan mekanizmadır.
  • Event loop, callback'leri tek bir iş parçacığında sırayla çalıştırır.
  • Yavaş I/O arka planda gerçekleşir; bu yüzden iş parçacığı beklemekle vakit kaybetmez.
  • Promise callback'leri gibi mikrogörevler, setTimeout callback'i gibi sonraki görevden önce çalışır.
13Event Streaming
Event streaming, olayları birçok uygulamanın gerçek zamanlı okuyup yeniden oynatabildiği ve işleyebildiği sürekli, sıralı, kalıcı bir log olarak kaydetmektir.
  • Olaylar, kalıcı ve yalnızca eklemeli bir logda sırayla kaydedilir.
  • Birçok tüketici aynı akışı bağımsız okur ve her biri kendi offset'ini izler.
  • Akışlar, saklama süresi içinde herhangi bir noktadan yeniden oynatılabilir.
14Exponential Backoff
Exponential backoff, her başarısız denemeden sonra 1, 2, 4, 8 saniye gibi giderek daha uzun bekleyen yeniden deneme stratejisidir; zorlanan servis toparlanır.
  • Her yeniden deneme bir öncekinden daha uzun bekler; genellikle gecikmeyi ikiye katlar.
  • Rastgele jitter, birçok istemcinin senkron biçimde yeniden denemesini engeller.
  • Hem azami gecikmeyi hem de deneme sayısını sınırlayın.
15ExpressExpress.js
Express, en yaygın Node.js web framework'üdür: yönlendirmeyi, istekleri ve yanıtları bir middleware fonksiyonları zinciriyle ele alan minimal bir katmandır.
  • Express, ilk olarak 2010'da yayımlanan, Node.js için minimal bir web framework'üdür.
  • Route'lar HTTP metotlarını ve yollarını işleyici fonksiyonlara eşler.
  • Middleware fonksiyonları her isteği sırayla işler ve next()'i çağırır.
16FastAPI
FastAPI, standart tür ipuçlarıyla istekleri doğrulayan, veriyi dönüştüren ve OpenAPI dokümantasyonunu otomatik üreten modern bir Python API framework'üdür.
  • FastAPI, standart tür ipuçlarını kullanarak Python'da API'ler kurar.
  • Türler, Pydantic modelleri üzerinden istek doğrulamasını yönlendirir.
  • Etkileşimli OpenAPI dokümantasyonu /docs adresinde otomatik üretilir.
17Flask
Flask, yönlendirme, istek işleme ve şablonlar sağlayan, veritabanı ve proje yapısı gibi seçimleri geliştiriciye bırakan hafif bir Python web framework'üdür.
  • Flask, 2010'da yayımlanan hafif bir Python web framework'üdür.
  • HTTP için Werkzeug, şablonlar için Jinja üzerine kuruludur.
  • Route'lar @app.route gibi dekoratörlerle işaretlenmiş fonksiyonlardır.
18GraphQL
GraphQL, istemcilerin tam ihtiyaç duyduğu veriyi, çoğunlukla tek bir endpoint üzerinden tek istekte istemesini sağlayan API sorgu dili ve çalışma zamanıdır.
  • İstemciler, yanıtta hangi alanları istediklerini tam olarak belirtir.
  • Tip bilgisi içeren bir şema, mevcut tüm veri ve işlemleri tanımlar.
  • Query'ler veri okur, mutation'lar veriyi değiştirir, subscription'lar güncellemeleri akıtır.
19gRPC
gRPC, uzak sunucudaki fonksiyonları yerelmiş gibi çağırmaya yarayan açık kaynaklı framework'tür; Protocol Buffers ve HTTP/2 ile hızlı, tipli mesajlar taşır.
  • gRPC, istemcilerin uzak bir sunucudaki metotları yerel fonksiyonlar gibi çağırmasını sağlar.
  • Servisler ve mesajlar, Protocol Buffers kullanan .proto dosyalarında tanımlanır.
  • İstemci ve sunucu kodu birçok dil için otomatik olarak üretilir.
20Health Check
Health check, bir servisin çalışır durumda olup olmadığını ve isteklere yanıt verebildiğini bildiren, genelde bir HTTP endpoint'i olan küçük otomatik testtir.
  • Health check, bir servisin sağlıklı olup olmadığını bildiren hızlı bir endpoint veya komuttur.
  • Load balancer'lar ve orkestratörler onu düzenli çağırır; trafiği yeniden yönlendirir veya otomatik yeniden başlatır.
  • Liveness kontrolleri yeniden başlatmayı tetikler; readiness kontrolleri trafik gönderilip gönderilmeyeceğini belirler.
21HTTP Caching
HTTP caching, saklanan HTTP yanıtlarının tarayıcılar, CDN'ler ve proxy'ler tarafından, Cache-Control ve ETag başlıklarıyla denetlenerek yeniden kullanılmasıdır.
  • Cache-Control, tarayıcılara ve CDN'lere bir yanıtı yeniden kullanıp kullanamayacaklarını ve ne kadar süreyle kullanabileceklerini söyler.
  • ETag ve Last-Modified, istemcilerin ucuz bir 304 Not Modified yanıtıyla yeniden doğrulama yapmasını sağlar.
  • no-cache her kullanımdan önce yeniden doğrula demektir; no-store asla saklama demektir.
22HTTP Metodu
HTTP metodu, bir HTTP isteğindeki GET, POST, PUT, PATCH veya DELETE gibi fiildir ve sunucuya istenen kaynak üzerinde hangi eylemin yapılacağını söyler.
  • Metot, bir HTTP isteğinin fiilidir; GET, POST, PUT, PATCH veya DELETE gibi.
  • GET okur, POST oluşturur ya da eylem tetikler, PUT değiştirir, PATCH kısmen günceller ve DELETE kaldırır.
  • Güvenli metotlar sunucu durumunu değiştirmez; idempotent metotlar güvenle tekrarlanabilir.
23Idempotency
Idempotency, bir işlemin bir kez de çalışsa çok kez de çalışsa aynı sonucu üretmesi özelliğidir; böylece bir isteğin yanlışlıkla tekrarlanması güvenli olur.
  • Idempotent bir işlem, kaç kez çalışırsa çalışsın aynı etkiye sahiptir.
  • Zaman aşımları, çökmeler ve yinelenen mesajlardan sonra yeniden denemeyi güvenli kılar.
  • HTTP'de GET, PUT ve DELETE idempotenttir; POST değildir.
24JSONJavaScript Object Notation
JSON, yapılandırılmış veriyi anahtar-değer çiftleri ve listelerle saklayıp aktarmaya yarayan, insanın da makinenin de okuyabildiği hafif bir metin biçimidir.
  • JSON, JavaScript Object Notation'ın kısaltmasıdır ancak neredeyse her dille çalışır.
  • Veri; nesneler ({}), diziler ([]), metinler, sayılar, boolean değerler ve null olarak yazılır.
  • Anahtarlar ve metinler çift tırnak kullanmalıdır.
25KafkaApache Kafka
Apache Kafka, olayları kalıcı, sıralı log'larda tutan dağıtık olay akışı platformudur; servisler onları yayımlar, gerçek zamanlı okur ya da yeniden oynatır.
  • Kafka olayları konu adı verilen kalıcı, sıralı ve yalnızca ekleme yapılan log'larda saklar.
  • Konular, bir broker kümesine dağıtılmış bölümlere ayrılır.
  • Tüketiciler kendi offset'lerini izler; kaldıkları yerden devam edebilir ya da geçmişi yeniden oynatabilir.
26Laravel
Laravel, tam web uygulamaları için zarif sözdizimli PHP framework'üdür; yönlendirme, Eloquent ORM, kimlik doğrulama, kuyruklar ve migration'lar yerleşiktir.
  • Laravel, ilk olarak 2011'de yayımlanan en popüler PHP framework'üdür.
  • Route'lar, controller'lar, Eloquent modelleri ve Blade görünümleriyle MVC kullanır.
  • Eloquent ifade gücü yüksek bir active record ORM'idir; migration'lar şemayı sürümler.
27Long Polling
Long polling, istemcinin gönderdiği isteği sunucunun yeni veri hazır olana kadar açık tuttuğu, düz HTTP üzerinden gerçek zamanlı push'u taklit eden tekniktir.
  • Sunucu her isteği, yeni veri olana ya da zaman aşımı dolana kadar açık tutar.
  • İstemci her yanıttan hemen sonra yeni bir istek gönderir.
  • Normal polling'e göre güncellemeleri daha hızlı ve daha az boş yanıtla iletir.
28Mesaj Kuyruğu
Mesaj kuyruğu, bir servisten gelen mesajları bir başkası işlemeye hazır olana kadar saklayan ve sistemin parçalarını eşzamansız çalıştıran bir bileşendir.
  • Üreticiler mesaj gönderir; tüketiciler bunları sonra, kendi hızlarında işler.
  • Kuyruk, servisleri birbirinden ayırır ve trafik artışlarını emer.
  • Tüketiciler mesajları işledikten sonra onaylar; böylece çökerlerse iş kaybolmaz.
29Middleware
Middleware, bir sistemin iki katmanı arasında duran yazılımdır; bir web sunucusunda çoğunlukla gelen istek ile son yanıt arasında çalışan koddur.
  • Middleware, isteğin alınması ile yanıtın gönderilmesi arasında çalışır.
  • Birden fazla middleware fonksiyonu sırayla çalışan bir zincir oluşturur.
  • Her biri isteği değiştirebilir, erken sonlandırabilir ya da bir sonrakine aktarabilir.
30Nginx
Nginx, uygulama sunucularının önünde ters proxy, yük dengeleyici ve HTTP önbelleği olarak da çok kullanılan, hızlı ve açık kaynaklı bir web sunucusudur.
  • Nginx açık kaynaklı bir web sunucusu, ters proxy, yük dengeleyici ve önbellektir.
  • Olay güdümlü tasarımı, binlerce bağlantıyı düşük maliyetle işlemesini sağlar.
  • Statik dosyaları sunar, dinamik istekleri uygulama sunucularına iletir.
31Node.js
Node.js, JavaScript'i tarayıcı dışında çalıştıran, en çok web sunucuları, API'ler ve komut satırı araçları için kullanılan açık kaynaklı çalışma ortamıdır.
  • Node.js, JavaScript'i tarayıcının dışında, sunucularda ve geliştirici makinelerinde çalıştırır.
  • Chrome'un V8 motoru üzerine kurulu bir çalışma ortamıdır; dil ya da framework değildir.
  • Engellemeyen bir event loop, tek bir sürecin birçok eşzamanlı bağlantıyı yönetmesini sağlar.
32OpenAPI
OpenAPI, HTTP API'lerini bir YAML veya JSON dosyasında tanımlayan açık bir standarttır; insanlar ve araçlar her endpoint'i, parametreyi ve yanıtı anlayabilir.
  • OpenAPI, HTTP API'lerini standart bir YAML veya JSON belgesinde tanımlar.
  • Endpoint'leri, parametreleri, istek ve yanıt şemalarını ve kimlik doğrulamayı kapsar.
  • Araçlar onu dokümantasyon, istemci SDK'ları, sunucu iskeletleri, mock sunucular ve testler üretmek için kullanır.
33Oturum
Oturum, sunucunun bir kullanıcıyı birçok istek boyunca hatırlama yöntemidir; genellikle veriler sunucuda tutulur ve tarayıcıya bir oturum kimliği verilir.
  • Oturumlar, bir sunucunun durumsuz HTTP istekleri boyunca bir kullanıcıyı hatırlamasını sağlar.
  • Sunucu oturum verilerini saklar ve istemciye rastgele bir oturum kimliği verir.
  • Oturum kimliği genellikle HttpOnly, Secure bir cookie içinde taşınır.
34Önbellek
Önbellek, sık kullanılan verilerin kopyalarını tutan hızlı ve geçici bir depolama katmanıdır; sonraki istekler yavaş işi tekrarlamadan hızla karşılanır.
  • Önbellek, yavaş işi tekrarlamamak için verilerin kopyalarını hızlı depolamada tutar.
  • Cache hit saklanan veriyi döndürür; cache miss ise asıl kaynağa başvurur.
  • Önbellekler CPU'larda, tarayıcılarda, CDN'lerde ve Redis gibi uygulamalarda bulunur.
35Pub/SubYayın-Abonelik (Publish-Subscribe)
Pub/sub, yayıncıların konulara mesaj gönderdiği ve bir konunun her abonesinin, iki taraf da birbirini tanımadan bir kopya aldığı bir mesajlaşma kalıbıdır.
  • Yayıncılar konulara mesaj gönderir ve bir konunun her abonesi bir kopya alır.
  • Yayıncılar ve aboneler birbirini bilmez; bu da servisleri gevşek bağlı tutar.
  • Yayıncıyı değiştirmeden yeni aboneler eklenebilir.
36RabbitMQ
RabbitMQ, üreticilerin mesajlarını exchange'ler üzerinden kuyruklara yönlendiren açık kaynaklı mesaj aracısıdır; tüketiciler onları alıp işi bitince onaylar.
  • RabbitMQ, Erlang ile yazılmış açık kaynaklı bir mesaj aracısıdır.
  • Üreticiler exchange'lere gönderir; exchange'ler mesajları bağlantılara göre kuyruklara yönlendirir.
  • Direct, topic ve fanout exchange'ler bire bir ve bire çok teslimatı karşılar.
37Rate Limiting
Rate limiting, istemcinin belli bir sürede yapabileceği istek sayısını sınırlayıp sunucuyu ya da API'yi kötüye kullanımdan ve aşırı yükten koruyan tekniktir.
  • Rate limiting, bir istemcinin belirli bir sürede yapabileceği istek sayısını sınırlar.
  • Sınırı aşan istemciler genellikle HTTP 429 Too Many Requests alır.
  • Sınırlar tipik olarak API anahtarı, kullanıcı veya IP adresi başına uygulanır.
38REST APIRepresentational State Transfer API
REST API, verileri URL'lerle tanımlanan kaynaklar olarak sunan ve istemcilerin onları standart HTTP metotlarıyla okuyup değiştirmesini sağlayan web API'sidir.
  • REST bir mimari stildir; protokol ya da resmi bir standart değildir.
  • Kaynaklar /users/42 gibi URL'lerle tanımlanır.
  • HTTP metotları (GET, POST, PUT, PATCH, DELETE) eylemi belirtir.
39RPCUzak Yordam Çağrısı (Remote Procedure Call)
RPC, bir programın başka bir makinede çalışan fonksiyonu yerel bir fonksiyonmuş gibi çağırdığı ve aradaki ağı gizleyen bir iletişim stilidir.
  • RPC, başka bir makinedeki koda yapılan çağrıyı yerel bir fonksiyon çağrısı gibi gösterir.
  • İstemci stub'ları argümanları serileştirir ve gönderir; sunucu fonksiyonu çalıştırır ve sonucu döndürür.
  • gRPC, JSON-RPC ve Apache Thrift yaygın RPC uygulamalarıdır.
40Ruby on Rails
Ruby on Rails, yapılandırma yerine kuralı öne çıkaran, Ruby için tam yığın web framework'üdür; veritabanı destekli web uygulamaları onunla hızla kurulabilir.
  • Rails, 2004'te yayımlanan tam yığın bir Ruby web framework'üdür.
  • Yapılandırma yerine kural, standart bir yapı ve daha az karar demektir.
  • Active Record modelleri tablolara eşler; migration'lar şemayı sürümler.
41Sayfalama
Sayfalama, büyük bir sonuç kümesini daha küçük sayfalara bölme uygulamasıdır; böylece bir API veya web sitesi her istekte yönetilebilir sayıda öğe döndürür.
  • Sayfalama, büyük sonuç kümelerini daha küçük sayfalar halinde döndürür.
  • Offset sayfalama (limit ve offset) basittir ve herhangi bir sayfaya atlamaya izin verir.
  • Cursor sayfalama, görülen son öğeden sonra devam eder ve büyük tablolarda hızlı kalır.
42Serileştirme
Serileştirme, bellekteki veri yapılarını JSON ya da bayt gibi bir biçime dönüştürme işlemidir; böylece veriler saklanabilir veya ağ üzerinden gönderilebilir.
  • Serileştirme, bellekteki veriyi saklama veya aktarma için metne ya da baytlara dönüştürür.
  • Seriden çıkarma (deserialization), bellekteki veriyi o biçimden yeniden oluşturur.
  • JSON, XML ve YAML metin biçimleridir; Protocol Buffers ve MessagePack ikilidir.
43Server-Sent Events
Server-Sent Events, sunucunun tarayıcıya tek bir uzun ömürlü HTTP bağlantısı üzerinden sürekli metin güncellemeleri göndermesini sağlayan web standardıdır.
  • SSE, mesajları sunucudan tarayıcıya tek bir uzun ömürlü HTTP yanıtı üzerinden akıtır.
  • Sunucu text/event-stream verisi gönderir, tarayıcılar onu EventSource API'siyle okur.
  • Tarayıcılar otomatik yeniden bağlanır ve Last-Event-ID başlığını kullanarak devam eder.
44SOAPSimple Object Access Protocol
SOAP, her isteği ve yanıtı genellikle resmi bir WSDL sözleşmesiyle tanımlanan katı bir zarfa saran, XML tabanlı bir web servisi mesajlaşma protokolüdür.
  • SOAP mesajları; bir zarf, isteğe bağlı bir başlık ve bir gövde içeren XML belgeleridir.
  • Bir WSDL dosyası, servisin işlemlerini ve veri tiplerini resmi olarak tanımlar.
  • WS-* standartları mesaj düzeyinde güvenlik ve güvenilir teslimat ekler.
45Spring Boot
Spring Boot, otomatik yapılandırma ve gömülü web sunucusuyla Spring üzerinde production'a hazır servisleri hızla kurmayı sağlayan Java framework'üdür.
  • Spring Boot, Spring Framework üzerinde production'a hazır Java uygulamaları kurar.
  • Starter'lar ve otomatik yapılandırma elle yapılan kurulumun çoğunun yerini alır.
  • Uygulamalar Tomcat gibi gömülü bir sunucuyla tek bir JAR olarak çalışır.
46Web Sunucusu
Web sunucusu, tarayıcılardan ve diğer istemcilerden gelen HTTP isteklerini alıp sayfa, dosya ya da veriyle yanıt veren yazılım veya onu çalıştıran makinedir.
  • Web sunucusu HTTP isteklerini alır ve HTML, dosya ya da JSON gibi yanıtlar döndürür.
  • Genellikle HTTP için 80, HTTPS için 443 numaralı portu dinler.
  • Statik dosyalar doğrudan sunulur; dinamik istekler uygulama koduna iletilir.
47Webhook
Webhook, bir uygulamanın, tamamlanan bir ödeme gibi belirli bir olay gerçekleştiği anda sizin verdiğiniz bir URL'ye otomatik olarak gönderdiği HTTP isteğidir.
  • Webhook, bir olayın tetiklediği HTTP isteğidir.
  • Gönderen veriyi size iletir, dolayısıyla polling yapmanız gerekmez.
  • URL'yi siz verirsiniz; diğer servis onu çağırır.
48XMLGenişletilebilir İşaretleme Dili
XML (Extensible Markup Language), kendi tanımladığınız iç içe etiketlerle yapılandırılmış veriyi tutan, insanın ve makinenin okuyabildiği metin biçimidir.
  • XML, kendi tanımladığınız etiketlerle yapılandırılmış veri için bir metin biçimidir.
  • 1998'de bir W3C standardı oldu.
  • XSD belgeleri doğrular, XPath sorgular, XSLT dönüştürür.
Software Dictionary'den 48 terim. Ayrıntılı açıklamalar, örnekler ve sık sorulan sorular için: softwaredictionary.org/tr/kutuphane/backend

Kitaba dönİpucu: Bir kopyasını saklamak için yazdırma penceresinde “PDF olarak kaydet”i seçin.

Daha fazla

Ayarlar