{"id":35100,"date":"2025-11-25T16:01:03","date_gmt":"2025-11-25T13:01:03","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/"},"modified":"2025-11-25T16:01:03","modified_gmt":"2025-11-25T13:01:03","slug":"internet-nasil-calisir-client-server-ve-api-rehberi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/","title":{"rendered":"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi"},"content":{"rendered":"<p><body><\/p>\n<p>G\u00fcnl\u00fck ya\u015fant\u0131m\u0131zda interneti nefes al\u0131r gibi kullan\u0131yor, sosyal medyadan bankac\u0131l\u0131k i\u015flemlerine, dizi izlemekten hava durumunu kontrol etmeye kadar her \u015feyi online hallediyoruz. Peki, bu sihirli a\u011f\u0131n perde arkas\u0131nda neler oluyor? Bir web sitesini ziyaret etti\u011finizde ya da bir mobil uygulamay\u0131 kulland\u0131\u011f\u0131n\u0131zda tam olarak hangi mekanizmalar devreye giriyor? Bu rehberimizde, internetin temelini olu\u015fturan Client-Server (\u0130stemci-Sunucu) modelini ve modern uygulamalar\u0131n olmazsa olmaz\u0131 API&#8217;leri (Uygulama Programlama Aray\u00fczleri) s\u0131f\u0131rdan, anla\u015f\u0131l\u0131r bir dille ke\u015ffedece\u011fiz. Haz\u0131rlan\u0131n, internetin bilinmeyen y\u00fcz\u00fcn\u00fc ayd\u0131nlatmaya ba\u015fl\u0131yoruz!<\/p>\n<p>\u0130nternet kavram\u0131, ilk bak\u0131\u015fta karma\u015f\u0131k bir teknoloji y\u0131\u011f\u0131n\u0131 gibi g\u00f6r\u00fcnse de, temelinde olduk\u00e7a basit prensipler yatar. Bilginin d\u00fcnya \u00e7ap\u0131nda payla\u015f\u0131ld\u0131\u011f\u0131 bu devasa a\u011f, asl\u0131nda birbirine ba\u011fl\u0131 milyarlarca bilgisayardan olu\u015fur. Bu bilgisayarlar, belirli kurallar ve protokoller arac\u0131l\u0131\u011f\u0131yla birbiriyle ileti\u015fim kurar. \u0130nternetin hikayesi, so\u011fuk sava\u015f d\u00f6neminde ARPANET ile ba\u015flasa da, Tim Berners-Lee&#8217;nin 1989&#8217;da World Wide Web&#8217;i (WWW) icat etmesiyle ger\u00e7ek anlamda ivme kazanm\u0131\u015ft\u0131r. WWW, belgelerin birbirine ba\u011flant\u0131larla (k\u00f6pr\u00fcler) ba\u011flanabilece\u011fi, kullan\u0131c\u0131 dostu bir sistem olarak tasarlanm\u0131\u015ft\u0131r. Bu sayede, bilgiye eri\u015fim ve payla\u015f\u0131m hi\u00e7 olmad\u0131\u011f\u0131 kadar kolayla\u015fm\u0131\u015ft\u0131r. \u0130nternetin bu h\u0131zl\u0131 y\u00fckseli\u015fi, Client-Server mimarisine ve API&#8217;lerin yayg\u0131nla\u015fmas\u0131na zemin haz\u0131rlam\u0131\u015ft\u0131r.<\/p>\n<p>\u0130nternet sadece web sitelerinden ibaret de\u011fildir; e-postalar, dosya transferleri, \u00e7evrimi\u00e7i oyunlar ve daha bir\u00e7ok servis bu altyap\u0131 \u00fczerinde \u00e7al\u0131\u015f\u0131r. Her bir servis, verinin nas\u0131l paketlenece\u011fi, adreslenece\u011fi ve iletilece\u011fi konusunda farkl\u0131 protokollere dayanabilir. \u00d6rne\u011fin, web sayfalar\u0131 i\u00e7in HTTP (K\u00f6pr\u00fc Metni Transfer Protokol\u00fc), e-posta g\u00f6nderimi i\u00e7in SMTP (Basit Posta Transfer Protokol\u00fc) kullan\u0131l\u0131r. T\u00fcm bu protokoller, farkl\u0131 cihazlar\u0131n (bilgisayarlar, ak\u0131ll\u0131 telefonlar, tabletler) ve uygulamalar\u0131n (web taray\u0131c\u0131lar\u0131, e-posta istemcileri) sorunsuz bir \u015fekilde birbiriyle ileti\u015fim kurmas\u0131n\u0131 sa\u011flar. Bu s\u00fcre\u00e7te, her cihaz\u0131n bir IP adresine (\u0130nternet Protokol\u00fc Adresi) sahip olmas\u0131 kritik \u00f6neme sahiptir. T\u0131pk\u0131 bir evin posta adresi gibi, IP adresi de verinin do\u011fru hedefe ula\u015fmas\u0131n\u0131 temin eder. DNS (Alan Ad\u0131 Sistemi) ise, bizim hat\u0131rlamas\u0131 zor olan IP adreslerini, &#8220;google.com&#8221; gibi okunabilir alan adlar\u0131na \u00e7eviren telefon rehberi g\u00f6revi g\u00f6r\u00fcr. Bu temel ta\u015flar, internetin devasa ve karma\u015f\u0131k yap\u0131s\u0131n\u0131 olu\u015fturan iskeleti in\u015fa eder.<\/p>\n<p>Sonu\u00e7 olarak, internet sadece bir teknoloji de\u011fil, ayn\u0131 zamanda k\u00fcresel bir bilgi ve ileti\u015fim platformudur. Her ge\u00e7en g\u00fcn yeni teknolojilerin ve standartlar\u0131n eklenmesiyle evrimini s\u00fcrd\u00fcrmekte, hayat\u0131m\u0131z\u0131n ayr\u0131lmaz bir par\u00e7as\u0131 olmaya devam etmektedir. Bu sistemin kalbinde yatan istemci-sunucu modeli ve API&#8217;ler, bu devasa a\u011f\u0131n nas\u0131l i\u015fledi\u011fini anlamak i\u00e7in kilit \u00f6neme sahiptir. Bu temel bilgileri \u00f6z\u00fcmsemek, internetin sundu\u011fu olanaklar\u0131 daha iyi kavramam\u0131za ve dijital d\u00fcnyada daha bilin\u00e7li ad\u0131mlar atmam\u0131za yard\u0131mc\u0131 olacakt\u0131r. \u0130\u015fte bu y\u00fczden, internetin i\u015fleyi\u015fini en temelden anlamak, g\u00fcn\u00fcm\u00fcz d\u00fcnyas\u0131nda bir zorunluluk haline gelmi\u015ftir. \u015eimdi bu temelden hareketle, Client-Server modelinin derinliklerine inelim.<\/p>\n<h2>Client-Server Modeli Nedir ve Neden Bu Kadar \u00d6nemlidir?<\/h2>\n<p>\u0130nternetin kalbinde yatan en temel mimarilerden biri, Client-Server (\u0130stemci-Sunucu) modelidir. Bu model, ad\u0131ndan da anla\u015f\u0131laca\u011f\u0131 gibi, iki ana akt\u00f6r \u00fczerine kuruludur: istemciler (clients) ve sunucular (servers). \u0130stemciler, bir hizmeti veya kayna\u011f\u0131 talep eden tarafken, sunucular bu talepleri dinleyen, i\u015fleyen ve yan\u0131tlayan taraft\u0131r. Bu dinamik, g\u00fcnl\u00fck dijital etkile\u015fimlerimizin \u00e7o\u011funun temelini olu\u015fturur. \u00d6rne\u011fin, web taray\u0131c\u0131n\u0131zda bir adres yazd\u0131\u011f\u0131n\u0131zda, taray\u0131c\u0131n\u0131z bir istemci g\u00f6revi g\u00f6r\u00fcr ve o web sitesinin bulundu\u011fu sunucuya bir talep g\u00f6nderir. Sunucu, bu talebi al\u0131r, gerekli bilgiyi (HTML, CSS, JavaScript gibi) bulur ve istemciye geri g\u00f6nderir. \u0130stemci (taray\u0131c\u0131n\u0131z) bu bilgiyi yorumlayarak size web sayfas\u0131n\u0131 g\u00f6sterir.<\/p>\n<p>Bu modelin \u00f6nemi birka\u00e7 ana noktada toplan\u0131r. Birincisi, <strong>merkezi y\u00f6netim<\/strong> sa\u011flar. Sunucular, verileri ve hizmetleri merkezi bir konumda bar\u0131nd\u0131r\u0131r, bu da y\u00f6netimi, g\u00fcncellemeyi ve g\u00fcvenli\u011fi kolayla\u015ft\u0131r\u0131r. \u0130kincisi, <strong>\u00f6l\u00e7eklenebilirlik<\/strong> sunar. Talep artt\u0131k\u00e7a, sunucu kapasitesi art\u0131r\u0131larak daha fazla istemciye hizmet verilebilir. \u00dc\u00e7\u00fcnc\u00fcs\u00fc, <strong>farkl\u0131 platformlar aras\u0131 uyumluluk<\/strong> sa\u011flar. \u0130stemciler (mobil uygulama, web taray\u0131c\u0131, masa\u00fcst\u00fc yaz\u0131l\u0131m\u0131) farkl\u0131 i\u015fletim sistemlerinde veya donan\u0131mlarda \u00e7al\u0131\u015fsa bile, standart protokoller arac\u0131l\u0131\u011f\u0131yla ayn\u0131 sunucuya eri\u015febilirler. Bu sayede, ayn\u0131 hizmete farkl\u0131 cihazlardan eri\u015fim m\u00fcmk\u00fcn olur. T\u00fcm bu avantajlar, Client-Server modelini modern internet altyap\u0131s\u0131n\u0131n vazge\u00e7ilmez bir par\u00e7as\u0131 haline getirmi\u015ftir. Bir \u00f6rnekle a\u00e7\u0131klamak gerekirse, bir e-ticaret sitesinden al\u0131\u015fveri\u015f yaparken, \u00fcr\u00fcnleri taray\u0131c\u0131n\u0131z \u00fczerinden g\u00f6r\u00fcnt\u00fclemeniz, sepetinize eklemeniz ve \u00f6deme yapman\u0131z tamamen bu model \u00fczerinde ger\u00e7ekle\u015fir.<\/p>\n<h3>Bir Garson ve M\u00fc\u015fteri \u0130li\u015fkisi Olarak D\u00fc\u015f\u00fcnmek M\u00fcmk\u00fcn m\u00fc?<\/h3>\n<p>Client-Server modelini daha iyi anlamak i\u00e7in g\u00fcnl\u00fck hayattan bir benzetme kullanabiliriz: Bir restoranda garson ve m\u00fc\u015fteri ili\u015fkisi. Bu senaryoda:<\/p>\n<ul>\n<li><strong>M\u00fc\u015fteri (Client):<\/strong> Restorana gelen, men\u00fcye bakan ve sipari\u015f veren ki\u015fidir. \u0130nternet d\u00fcnyas\u0131nda bu, web taray\u0131c\u0131n\u0131z, bir mobil uygulaman\u0131z veya masa\u00fcst\u00fc program\u0131n\u0131z olabilir. M\u00fc\u015fteri, belirli bir bilgiye veya hizmete ihtiya\u00e7 duyar.<\/li>\n<li><strong>Garson (\u0130leti\u015fim Kanal\u0131\/Protokol):<\/strong> M\u00fc\u015fterinin sipari\u015fini alan ve mutfa\u011fa (sunucuya) ileten ki\u015fidir. Ayn\u0131 zamanda mutfaktan gelen yeme\u011fi (yan\u0131t\u0131) m\u00fc\u015fteriye getirir. \u0130nternette bu rol\u00fc HTTP gibi protokoller \u00fcstlenir.<\/li>\n<li><strong>Mutfak (Server):<\/strong> M\u00fc\u015fterinin sipari\u015fini haz\u0131rlayan yerdir. Men\u00fcdeki t\u00fcm yemeklerin (verilerin ve hizmetlerin) nas\u0131l haz\u0131rlanaca\u011f\u0131n\u0131 ve sakland\u0131\u011f\u0131n\u0131 bilir. \u0130nternet d\u00fcnyas\u0131nda bu, web sitenizin dosyalar\u0131n\u0131, veri tabanlar\u0131n\u0131 ve uygulamalar\u0131n\u0131 bar\u0131nd\u0131ran g\u00fc\u00e7l\u00fc bir bilgisayard\u0131r.<\/li>\n<\/ul>\n<p>M\u00fc\u015fteri, garsona &#8220;Bir pizza istiyorum&#8221; der (talep). Garson, sipari\u015fi mutfa\u011fa iletir. Mutfak pizzay\u0131 haz\u0131rlar ve garsona verir. Garson da pizzay\u0131 m\u00fc\u015fteriye sunar (yan\u0131t). E\u011fer pizza haz\u0131r de\u011filse veya malzeme yoksa, garson m\u00fc\u015fteriye bu durumu bildirir. Bu s\u00fcre\u00e7, internet \u00fczerindeki veri al\u0131\u015fveri\u015finin basit ama etkili bir \u00f6zetidir. \u0130stemci bir talep g\u00f6nderir, sunucu bu talebi i\u015fler ve bir yan\u0131t g\u00f6nderir. Bu ileti\u015fim d\u00f6ng\u00fcs\u00fc, internetin kesintisiz \u00e7al\u0131\u015fmas\u0131n\u0131n temelini olu\u015fturur. \u0130\u015fte bu y\u00fczden Client-Server modeli, internetin en temel ve anla\u015f\u0131lmas\u0131 gereken yap\u0131lar\u0131ndan biridir.<\/p>\n<h3>HTTP Protokol\u00fc Bu S\u00fcre\u00e7te Ne Rol Oynar?<\/h3>\n<p>Client-Server modelinin en kritik ileti\u015fim protokollerinden biri K\u00f6pr\u00fc Metni Transfer Protokol\u00fc, yani HTTP&#8217;dir. \u0130nternet \u00fczerinde veri ileti\u015fiminin temelini olu\u015fturan bu protokol, istemci ve sunucu aras\u0131ndaki taleplerin ve yan\u0131tlar\u0131n nas\u0131l bi\u00e7imlendirilece\u011fini ve iletilece\u011fini tan\u0131mlar. Bir web taray\u0131c\u0131s\u0131na bir URL yazd\u0131\u011f\u0131n\u0131zda veya bir linke t\u0131klad\u0131\u011f\u0131n\u0131zda, taray\u0131c\u0131n\u0131z HTTP kullanarak bir sunucuya istek g\u00f6nderir. \u00d6rne\u011fin, bir web sayfas\u0131n\u0131 talep etti\u011finizde, taray\u0131c\u0131n\u0131z sunucuya bir HTTP GET iste\u011fi g\u00f6nderir.<\/p>\n<p>HTTP, ba\u011flant\u0131s\u0131z (stateless) bir protokold\u00fcr. Bu, her iste\u011fin birbirinden ba\u011f\u0131ms\u0131z oldu\u011fu anlam\u0131na gelir; sunucu, \u00f6nceki istekler hakk\u0131nda bilgi tutmaz. Bu \u00f6zellik, HTTP&#8217;yi web trafi\u011fi i\u00e7in olduk\u00e7a verimli k\u0131lar, ancak baz\u0131 durumlarda (\u00f6rne\u011fin, bir al\u0131\u015fveri\u015f sepetini takip etmek gibi) ek mekanizmalar\u0131n (\u00e7erezler veya oturum y\u00f6netimi) kullan\u0131lmas\u0131n\u0131 gerektirir. HTTP&#8217;nin iki ana t\u00fcr\u00fc vard\u0131r:<\/p>\n<ol>\n<li><strong>HTTP (Hypertext Transfer Protocol):<\/strong> Verinin \u015fifrelenmeden iletildi\u011fi standart protokold\u00fcr. Genellikle URL&#8217;ler &#8220;http:\/\/&#8221; ile ba\u015flar. G\u00fcvenlik hassasiyeti olmayan durumlar i\u00e7in uygundur.<\/li>\n<li><strong>HTTPS (Hypertext Transfer Protocol Secure):<\/strong> HTTP&#8217;nin g\u00fcvenli bir versiyonudur. Veri ileti\u015fimi SSL\/TLS (G\u00fcvenli Yuva Katman\u0131\/Ta\u015f\u0131ma Katman\u0131 G\u00fcvenli\u011fi) protokolleri kullan\u0131larak \u015fifrelenir. Bu, \u00f6zellikle hassas bilgilerin (\u015fifreler, kredi kart\u0131 bilgileri) iletildi\u011fi bankac\u0131l\u0131k, e-ticaret ve sosyal medya gibi sitelerde vazge\u00e7ilmezdir. HTTPS kullanan URL&#8217;ler &#8220;https:\/\/&#8221; ile ba\u015flar ve genellikle taray\u0131c\u0131n\u0131zda bir kilit simgesiyle g\u00f6sterilir.<\/li>\n<\/ol>\n<p>Bir HTTP iste\u011fi genellikle bir ba\u015fl\u0131k (header) ve bazen bir g\u00f6vde (body) i\u00e7erir. Ba\u015fl\u0131k, iste\u011fin t\u00fcr\u00fc (GET, POST, PUT, DELETE vb.), istenen kaynak, kabul edilen i\u00e7erik t\u00fcrleri gibi meta bilgileri i\u00e7erir. Sunucu, bu iste\u011fi i\u015fledikten sonra, bir HTTP yan\u0131t\u0131 d\u00f6nd\u00fcr\u00fcr. Yan\u0131t da benzer \u015fekilde bir ba\u015fl\u0131k ve bir g\u00f6vdeden olu\u015fur. Yan\u0131t ba\u015fl\u0131\u011f\u0131, iste\u011fin ba\u015far\u0131l\u0131 olup olmad\u0131\u011f\u0131n\u0131 g\u00f6steren bir durum kodu (\u00f6rne\u011fin, 200 OK, 404 Not Found, 500 Internal Server Error) ve sunucu hakk\u0131nda bilgiler i\u00e7erir. Yan\u0131t g\u00f6vdesi ise istenen veriyi (HTML belgesi, resim, JSON verisi vb.) bar\u0131nd\u0131r\u0131r.<\/p>\n<p>\u0130\u015fte basit bir JavaScript kodu ile bir HTTP GET iste\u011fi \u00f6rne\u011fi:<\/p>\n<pre><code>\n<script>\n  fetch('https:\/\/api.example.com\/products') \/\/ Belirtilen URL'ye GET iste\u011fi g\u00f6nder\n    .then(response => {\n      if (!response.ok) {\n        throw new Error(<code>HTTP error! status: ${response.status}<\/code>);\n      }\n      return response.json(); \/\/ Yan\u0131t\u0131 JSON format\u0131na \u00e7evir\n    })\n    .then(data => {\n      console.log('\u00dcr\u00fcn Verileri:', data); \/\/ Gelen veriyi konsola yazd\u0131r\n      \/\/ Bu veriyi web sayfan\u0131zda kullanabilirsiniz\n    })\n    .catch(error => {\n      console.error('Veri \u00e7ekme hatas\u0131:', error);\n    });\n<\/script>\n<\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki kod blo\u011fu, bir web sayfas\u0131ndan d\u0131\u015f bir API'ye nas\u0131l HTTP GET iste\u011fi g\u00f6nderilece\u011fini ve gelen JSON yan\u0131t\u0131n\u0131n nas\u0131l i\u015flenece\u011fini g\u00f6stermektedir. Bu, modern web uygulamalar\u0131nda olduk\u00e7a yayg\u0131n bir kullan\u0131m senaryosudur.<\/p>\n<div class=\"uzman-ipucu\">\n  Uzman \u0130pucu: HTTP\/2 ve HTTP\/3 gibi daha yeni HTTP versiyonlar\u0131, performans\u0131 art\u0131rmak ve gecikmeyi azaltmak i\u00e7in tasarlanm\u0131\u015ft\u0131r. \u00d6zellikle mobil cihazlarda ve y\u00fcksek bant geni\u015fli\u011fi gerektiren uygulamalarda bu yeni protokollerin sundu\u011fu avantajlar g\u00f6z ard\u0131 edilmemelidir.\n<\/div>\n<h2>API'ler Ne \u0130\u015fe Yarar: Uygulamalar\u0131n Birbiriyle Konu\u015fma Dili<\/h2>\n<p>\u0130nternet d\u00fcnyas\u0131n\u0131n g\u00fcn\u00fcm\u00fczdeki dinamizmini ve zenginli\u011fini sa\u011flayan en \u00f6nemli bile\u015fenlerden biri de API'lerdir (Application Programming Interfaces - Uygulama Programlama Aray\u00fczleri). Basit\u00e7e ifade etmek gerekirse, API'ler farkl\u0131 yaz\u0131l\u0131mlar\u0131n veya uygulamalar\u0131n birbiriyle g\u00fcvenli ve tan\u0131ml\u0131 bir \u015fekilde ileti\u015fim kurmas\u0131n\u0131 sa\u011flayan kurallar ve protokoller b\u00fct\u00fcn\u00fcd\u00fcr. T\u0131pk\u0131 bir restoran men\u00fcs\u00fc gibi d\u00fc\u015f\u00fcnebilirsiniz; men\u00fc, m\u00fc\u015fterinin (uygulaman\u0131z\u0131n) mutfaktan (ba\u015fka bir uygulaman\u0131n veya servisin) hangi yemekleri (i\u015flevleri veya verileri) isteyebilece\u011fini ve bu yemeklerin nas\u0131l sipari\u015f edilece\u011fini (istek format\u0131n\u0131) belirler. Bu sayede, geli\u015ftiriciler tekerle\u011fi yeniden icat etmek zorunda kalmadan, var olan servislerin yeteneklerini kendi uygulamalar\u0131na entegre edebilirler.<\/p>\n<p>API'ler, modern dijital ekosistemin temelidir. Sosyal medya platformlar\u0131ndan (Facebook, Twitter) hava durumu servislerine, \u00f6deme sistemlerinden (PayPal, Stripe) harita uygulamalar\u0131na (Google Maps) kadar bir\u00e7ok hizmet, API'ler arac\u0131l\u0131\u011f\u0131yla di\u011fer uygulamalarla entegre olur. \u00d6rne\u011fin, bir seyahat sitesinde u\u00e7ak bileti arad\u0131\u011f\u0131n\u0131zda, bu site muhtemelen farkl\u0131 havayolu \u015firketlerinin API'lerini kullanarak ger\u00e7ek zamanl\u0131 fiyat ve uygunluk bilgilerini \u00e7eker. Ard\u0131ndan, bir otel arad\u0131\u011f\u0131n\u0131zda ba\u015fka bir otel rezervasyon servisinin API'sini kullan\u0131r. T\u00fcm bu etkile\u015fimler, arka planda API'ler sayesinde sorunsuz bir \u015fekilde ger\u00e7ekle\u015fir.<\/p>\n<p>API'lerin avantajlar\u0131 saymakla bitmez:<\/p>\n<ul>\n<li><strong>Yeniden Kullan\u0131labilirlik:<\/strong> Geli\u015ftiricilerin s\u0131f\u0131rdan ba\u015flamak yerine mevcut i\u015flevsellikleri kullanmas\u0131na olanak tan\u0131r.<\/li>\n<li><strong>\u0130\u015fbirli\u011fi ve Entegrasyon:<\/strong> Farkl\u0131 \u015firketlerin ve ekiplerin \u00fcr\u00fcnlerini kolayca birle\u015ftirmesini sa\u011flar.<\/li>\n<li><strong>\u0130novasyon:<\/strong> Yeni \u00fcr\u00fcn ve hizmetlerin geli\u015ftirilmesini h\u0131zland\u0131r\u0131r, \u00e7\u00fcnk\u00fc temel yap\u0131 ta\u015flar\u0131 (API'ler) zaten mevcuttur.<\/li>\n<li><strong>G\u00fcvenlik:<\/strong> Hangi verilerin ve i\u015flevlerin d\u0131\u015f d\u00fcnyaya a\u00e7\u0131k olaca\u011f\u0131n\u0131 hassas bir \u015fekilde kontrol etme imkan\u0131 sunar. B\u00f6ylece, sadece izin verilen bilgilere eri\u015filebilir.<\/li>\n<\/ul>\n<p>API'ler sayesinde, bir uygulaman\u0131n t\u00fcm karma\u015f\u0131k i\u00e7 i\u015fleyi\u015fini bilmenize gerek kalmadan, sadece sundu\u011fu belirli i\u015flevsellikleri kullanabilirsiniz. Bu, bir bilgisayar\u0131n USB ba\u011flant\u0131 noktas\u0131 gibidir; hangi cihaz\u0131 takarsan\u0131z tak\u0131n, bilgisayar\u0131n i\u00e7 donan\u0131m\u0131n\u0131 bilmeden o cihaz\u0131 kullanabilirsiniz \u00e7\u00fcnk\u00fc USB standard\u0131, cihaz\u0131n bilgisayarla nas\u0131l ileti\u015fim kuraca\u011f\u0131n\u0131 tan\u0131mlar. API'ler de yaz\u0131l\u0131m d\u00fcnyas\u0131n\u0131n USB ba\u011flant\u0131 noktalar\u0131 gibidir.<\/p>\n<h3>RESTful API'ler En S\u0131k Kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131z T\u00fcr m\u00fcd\u00fcr?<\/h3>\n<p>API'lerin bir\u00e7ok farkl\u0131 t\u00fcr\u00fc ve mimarisi bulunsa da, g\u00fcn\u00fcm\u00fczde en yayg\u0131n ve pop\u00fcler olanlardan biri RESTful API'lerdir (Representational State Transfer). REST, bir mimari stilidir, yani belirli bir teknolojiden ziyade, API'lerin nas\u0131l tasarlanmas\u0131 gerekti\u011fine dair bir dizi kural ve prensip sunar. RESTful API'ler, HTTP protokol\u00fc \u00fczerine kuruludur ve internetin Client-Server, ba\u011flant\u0131s\u0131z (stateless) do\u011fas\u0131ndan faydalan\u0131r. Bu \u00f6zellikleri sayesinde, web hizmetlerinin olu\u015fturulmas\u0131nda ve kullan\u0131lmas\u0131nda son derece esneklik ve \u00f6l\u00e7eklenebilirlik sa\u011flarlar.<\/p>\n<p>RESTful API'lerin temel prensipleri \u015funlard\u0131r:<\/p>\n<ol>\n<li><strong>Kaynak Tabanl\u0131 (Resource-Based):<\/strong> Her \u015fey bir kaynakt\u0131r (\u00f6rne\u011fin, bir kullan\u0131c\u0131, bir \u00fcr\u00fcn, bir sipari\u015f). Bu kaynaklar benzersiz URL'ler (Uniform Resource Locators) arac\u0131l\u0131\u011f\u0131yla tan\u0131mlan\u0131r. \u00d6rne\u011fin, <code>\/users<\/code> t\u00fcm kullan\u0131c\u0131lar\u0131, <code>\/users\/123<\/code> ise ID'si 123 olan kullan\u0131c\u0131y\u0131 temsil edebilir.<\/li>\n<li><strong>HTTP Metodlar\u0131 Kullan\u0131m\u0131:<\/strong> Kaynaklar \u00fczerinde i\u015flem yapmak i\u00e7in standart HTTP metotlar\u0131 kullan\u0131l\u0131r:\n<ul>\n<li><strong>GET:<\/strong> Bir kaynaktan veri okumak i\u00e7in kullan\u0131l\u0131r (\u00f6rne\u011fin, \u00fcr\u00fcn listesini almak).<\/li>\n<li><strong>POST:<\/strong> Yeni bir kaynak olu\u015fturmak i\u00e7in kullan\u0131l\u0131r (\u00f6rne\u011fin, yeni bir kullan\u0131c\u0131 kayd\u0131 yapmak).<\/li>\n<li><strong>PUT:<\/strong> Mevcut bir kayna\u011f\u0131 tamamen g\u00fcncellemek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><strong>PATCH:<\/strong> Mevcut bir kayna\u011f\u0131n sadece belirli bir k\u0131sm\u0131n\u0131 g\u00fcncellemek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><strong>DELETE:<\/strong> Bir kayna\u011f\u0131 silmek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Ba\u011flant\u0131s\u0131z (Stateless):<\/strong> Her istek, sunucunun bir \u00f6nceki istekle ilgili hi\u00e7bir bilgiyi saklamad\u0131\u011f\u0131 anlam\u0131na gelir. Her istek, i\u015flemi tamamlamak i\u00e7in gerekli t\u00fcm bilgiyi i\u00e7ermelidir.<\/li>\n<li><strong>Temsil (Representation):<\/strong> Kaynaklar, istemciye genellikle JSON (JavaScript Object Notation) veya XML gibi standart formatlarda temsil edilir.<\/li>\n<\/ol>\n<p>RESTful API'ler, basitlikleri, \u00f6l\u00e7eklenebilirlikleri ve web standartlar\u0131na uyumlar\u0131 nedeniyle modern web ve mobil uygulamalar\u0131n geli\u015ftirilmesinde en \u00e7ok tercih edilen API mimarisidir. \u00d6rne\u011fin, bir mobil uygulaman\u0131n hava durumu verilerini \u00e7ekmek i\u00e7in kulland\u0131\u011f\u0131 API b\u00fcy\u00fck ihtimalle bir RESTful API'dir. Bir web sitesinde Instagram foto\u011fraf feed'i g\u00f6rd\u00fc\u011f\u00fcn\u00fczde de, Instagram'\u0131n RESTful API'sinin kullan\u0131ld\u0131\u011f\u0131n\u0131 d\u00fc\u015f\u00fcnebilirsiniz. \u0130\u015fte bu y\u00fczden, g\u00fcn\u00fcm\u00fczde \"API\" denildi\u011finde akla ilk gelen genellikle RESTful API'ler olmaktad\u0131r.<\/p>\n<h3>JSON Format\u0131 Veri \u0130leti\u015fiminde Neden Tercih Edilir?<\/h3>\n<p>API'ler arac\u0131l\u0131\u011f\u0131yla istemci ve sunucu aras\u0131nda veri al\u0131\u015fveri\u015fi yap\u0131l\u0131rken, bu verilerin belirli bir formatta olmas\u0131 gerekir. Bu formatlardan en yayg\u0131n ve pop\u00fcler olan\u0131 JSON'd\u0131r (JavaScript Object Notation). JSON, hem insanlar taraf\u0131ndan kolayca okunabilen hem de makineler taraf\u0131ndan kolayca ayr\u0131\u015ft\u0131r\u0131labilen (parse edilebilen) hafif bir veri de\u011fi\u015fim format\u0131d\u0131r. Asl\u0131nda JavaScript'ten t\u00fcremi\u015f olsa da, g\u00fcn\u00fcm\u00fczde neredeyse t\u00fcm programlama dilleri taraf\u0131ndan desteklenir.<\/p>\n<p>JSON'\u0131n bu kadar tercih edilmesinin ba\u015fl\u0131ca nedenleri \u015funlard\u0131r:<\/p>\n<ol>\n<li><strong>Basitlik ve Okunabilirlik:<\/strong> XML gibi di\u011fer formatlara k\u0131yasla daha az \"g\u00fcr\u00fclt\u00fcye\" (etiketlere) sahiptir. Bu, geli\u015ftiricilerin veriyi daha h\u0131zl\u0131 anlamas\u0131na ve hata ay\u0131klamas\u0131n\u0131 kolayla\u015ft\u0131rmas\u0131na yard\u0131mc\u0131 olur.<\/li>\n<li><strong>Hafiflik:<\/strong> Daha az karakter i\u00e7erdi\u011fi i\u00e7in a\u011f \u00fczerinden daha h\u0131zl\u0131 iletilir, bu da \u00f6zellikle mobil uygulamalar ve d\u00fc\u015f\u00fck bant geni\u015fli\u011fine sahip ba\u011flant\u0131lar i\u00e7in \u00f6nemlidir.<\/li>\n<li><strong>Programlama Dili Ba\u011f\u0131ms\u0131zl\u0131\u011f\u0131:<\/strong> JavaScript, Python, Java, C#, PHP gibi pop\u00fcler programlama dillerinin \u00e7o\u011fu, JSON verilerini kendi do\u011fal veri yap\u0131lar\u0131na (nesneler, diziler) d\u00f6n\u00fc\u015ft\u00fcrmek i\u00e7in yerle\u015fik fonksiyonlara veya k\u00fct\u00fcphanelere sahiptir. Bu, geli\u015ftirme s\u00fcrecini b\u00fcy\u00fck \u00f6l\u00e7\u00fcde h\u0131zland\u0131r\u0131r.<\/li>\n<li><strong>Esneklik:<\/strong> Karma\u015f\u0131k veri yap\u0131lar\u0131n\u0131 (i\u00e7 i\u00e7e nesneler ve diziler) temsil etme yetene\u011fi, \u00e7e\u015fitli veri modellerini desteklemesini sa\u011flar.<\/li>\n<\/ol>\n<p>Bir JSON \u00f6rne\u011fi \u015fu \u015fekilde g\u00f6r\u00fcnebilir:<\/p>\n<pre><code>\n<code class=\"language-json\">\n{\n  \"urunler\": [\n    {\n      \"id\": 1,\n      \"ad\": \"Ak\u0131ll\u0131 Telefon X\",\n      \"fiyat\": 7500.00,\n      \"stok\": 150,\n      \"ozellikler\": [\"128GB Depolama\", \"6.1 in\u00e7 Ekran\"],\n      \"yayinda\": true\n    },\n    {\n      \"id\": 2,\n      \"ad\": \"Ak\u0131ll\u0131 Saat Y\",\n      \"fiyat\": 2200.50,\n      \"stok\": 80,\n      \"ozellikler\": [\"Su Ge\u00e7irmez\", \"Kalp At\u0131\u015f Sens\u00f6r\u00fc\"],\n      \"yayinda\": false\n    }\n  ],\n  \"toplam_urun_sayisi\": 2\n}\n<\/code>\n<\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki \u00f6rnekte, \u00fcr\u00fcnlerin bir listesi (\"urunler\" dizisi) her bir \u00fcr\u00fcn\u00fcn ID'si, ad\u0131, fiyat\u0131, stok durumu, \u00f6zellikleri ve yay\u0131n durumu gibi bilgileri i\u00e7eren nesneler halinde d\u00fczenlenmi\u015ftir. Bu yap\u0131, bir e-ticaret uygulamas\u0131n\u0131n \u00fcr\u00fcn bilgilerini API arac\u0131l\u0131\u011f\u0131yla nas\u0131l \u00e7ekebilece\u011fine dair tipik bir \u00f6rnektir. JSON'\u0131n bu kadar pop\u00fcler olmas\u0131, web servisleri ve mobil uygulamalar aras\u0131ndaki veri al\u0131\u015fveri\u015fini standartla\u015ft\u0131rm\u0131\u015f ve kolayla\u015ft\u0131rm\u0131\u015ft\u0131r.<\/p>\n<h2>Ger\u00e7ek D\u00fcnya Senaryolar\u0131: Client-Server ve API'ler Nerede Kar\u015f\u0131m\u0131za \u00c7\u0131kar?<\/h2>\n<p>Client-Server modeli ve API'ler, soyut kavramlar gibi g\u00f6r\u00fcnse de asl\u0131nda g\u00fcnl\u00fck dijital deneyimlerimizin omurgas\u0131n\u0131 olu\u015fturur. \u0130\u015fte bu teknolojilerin ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131na dair birka\u00e7 \u00f6rnek:<\/p>\n<h3>E-ticaret Siteleri ve Al\u0131\u015fveri\u015f Deneyimi<\/h3>\n<p>Bir e-ticaret sitesinden (\u00f6rne\u011fin, Amazon, Trendyol) al\u0131\u015fveri\u015f yaparken, her ad\u0131mda Client-Server ve API'ler devrededir. Siz taray\u0131c\u0131n\u0131zda bir \u00fcr\u00fcn sayfas\u0131n\u0131 a\u00e7t\u0131\u011f\u0131n\u0131zda (istemci talebi), web sunucusu (sunucu) \u00fcr\u00fcn\u00fcn resimlerini, a\u00e7\u0131klamalar\u0131n\u0131 ve fiyat\u0131n\u0131 i\u00e7eren HTML sayfas\u0131n\u0131 g\u00f6nderir. \u00dcr\u00fcn\u00fc sepetinize ekledi\u011finizde, taray\u0131c\u0131n\u0131z sunucuya bir POST iste\u011fi g\u00f6nderir ve sunucu bu bilgiyi veri taban\u0131na kaydeder. \u00d6deme yaparken ise, e-ticaret sitesi kendi API'leri veya bir \u00f6deme sa\u011flay\u0131c\u0131s\u0131n\u0131n (\u00f6rne\u011fin, Stripe, iyzico) API'leri arac\u0131l\u0131\u011f\u0131yla kredi kart\u0131 bilgilerinizi g\u00fcvenli bir \u015fekilde i\u015fler. Bu s\u00fcre\u00e7te, bankan\u0131z\u0131n API'si de \u00f6deme onay\u0131n\u0131 vermek i\u00e7in devreye girer. Her bir mikro-etkile\u015fim, istemci ve sunucu aras\u0131nda bir veri al\u0131\u015fveri\u015fini ve API \u00e7a\u011fr\u0131lar\u0131n\u0131 i\u00e7erir.<\/p>\n<h3>Sosyal Medya Uygulamalar\u0131 ve \u0130\u00e7erik Ak\u0131\u015f\u0131<\/h3>\n<p>Instagram, Twitter veya Facebook gibi sosyal medya uygulamalar\u0131n\u0131 a\u00e7t\u0131\u011f\u0131n\u0131zda, ana sayfan\u0131zda g\u00f6rd\u00fc\u011f\u00fcn\u00fcz t\u00fcm i\u00e7erik (arkada\u015flar\u0131n\u0131z\u0131n g\u00f6nderileri, hikayeler, reklamlar) API'ler arac\u0131l\u0131\u011f\u0131yla \u00e7ekilir. Mobil uygulaman\u0131z (istemci), sosyal medya sunucusuna (sunucu) \"benim takip etti\u011fim ki\u015filerin son g\u00f6nderilerini getir\" \u015feklinde bir API iste\u011fi g\u00f6nderir. Sunucu, veri taban\u0131ndan bu g\u00f6nderileri \u00e7eker, onlar\u0131 JSON format\u0131nda d\u00fczenler ve mobil uygulamaya geri g\u00f6nderir. Siz bir g\u00f6nderiyi be\u011fendi\u011finizde veya yorum yapt\u0131\u011f\u0131n\u0131zda, uygulama sunucuya bu eylemi bildiren bir API iste\u011fi g\u00f6nderir ve sunucu bu bilgiyi g\u00fcnceller. Harici uygulamalar\u0131n sosyal medya hesaplar\u0131n\u0131za eri\u015fim istemesi (\u00f6rne\u011fin, bir foto\u011fraf d\u00fczenleme uygulamas\u0131n\u0131n Instagram'a foto\u011fraf y\u00fcklemesi) de ilgili platformlar\u0131n API'leri arac\u0131l\u0131\u011f\u0131yla ger\u00e7ekle\u015fir. Bu, API'lerin sadece veri \u00e7ekmekle kalmay\u0131p, ayn\u0131 zamanda veri olu\u015fturma ve de\u011fi\u015ftirme yeteneklerini de nas\u0131l sa\u011flad\u0131\u011f\u0131n\u0131 g\u00f6sterir.<\/p>\n<h3>Mobil Bankac\u0131l\u0131k ve G\u00fcvenli \u0130\u015flemler<\/h3>\n<p>Mobil bankac\u0131l\u0131k uygulamalar\u0131, Client-Server ve API modellerinin g\u00fcvenlik ve hassasiyet gerektiren uygulamalardaki \u00f6nemini en iyi g\u00f6steren \u00f6rneklerdendir. Telefonunuzdaki bankac\u0131l\u0131k uygulamas\u0131 (istemci), bankan\u0131n sunucular\u0131yla (sunucu) \u00f6zel olarak tasarlanm\u0131\u015f, \u015fifreli API'ler arac\u0131l\u0131\u011f\u0131yla ileti\u015fim kurar. Giri\u015f yapt\u0131\u011f\u0131n\u0131zda, uygulama kimlik do\u011frulama API'sini kullanarak bilgilerinizi do\u011frular. Hesap bakiyenizi veya i\u015flem ge\u00e7mi\u015finizi g\u00f6r\u00fcnt\u00fcledi\u011finizde, sunucuya bir sorgu g\u00f6nderilir ve hassas veriler \u015fifreli bir \u015fekilde geri gelir. Para transferi gibi i\u015flemlerde ise, uygulaman\u0131n g\u00f6nderece\u011fi API iste\u011fi, kullan\u0131c\u0131n\u0131n yetkileri ve i\u015flemin g\u00fcvenli\u011fi i\u00e7in birden fazla katmandan ge\u00e7er. HTTPS ve g\u00fc\u00e7l\u00fc kimlik do\u011frulama mekanizmalar\u0131, bu t\u00fcr API \u00e7a\u011fr\u0131lar\u0131n\u0131n k\u00f6t\u00fc niyetli ki\u015filerce ele ge\u00e7irilmesini \u00f6nlemek i\u00e7in hayati \u00f6neme sahiptir. Bu \u00f6rnekler, API'lerin sadece veri aktar\u0131m\u0131 sa\u011flamad\u0131\u011f\u0131n\u0131, ayn\u0131 zamanda karma\u015f\u0131k i\u015f s\u00fcre\u00e7lerini otomatikle\u015ftirdi\u011fini ve y\u00fcksek g\u00fcvenlik standartlar\u0131n\u0131 korudu\u011funu a\u00e7\u0131k\u00e7a ortaya koymaktad\u0131r.<\/p>\n<h2>Mobil Uygulamalar ve \u0130nternet: Media Query ile Duyarl\u0131 Tasar\u0131m Nas\u0131l Sa\u011flan\u0131r?<\/h2>\n<p>Mobil cihazlar\u0131n hayat\u0131m\u0131zdaki yerinin artmas\u0131yla birlikte, web sitelerinin ve uygulamalar\u0131n mobil uyumlu olmas\u0131 bir l\u00fcks olmaktan \u00e7\u0131k\u0131p zorunluluk haline geldi. Farkl\u0131 ekran boyutlar\u0131 ve cihaz \u00f6zellikleri, i\u00e7eriklerin her cihazda d\u00fczg\u00fcn g\u00f6r\u00fcnmesini ve kullan\u0131lmas\u0131n\u0131 gerektiriyor. \u0130\u015fte bu noktada \"Duyarl\u0131 Tasar\u0131m\" (Responsive Design) kavram\u0131 ve bu tasar\u0131m\u0131n temelini olu\u015fturan CSS Media Query'ler (Medya Sorgular\u0131) devreye girer. Duyarl\u0131 tasar\u0131m, bir web sitesinin veya uygulaman\u0131n d\u00fczeninin, i\u00e7eri\u011finin ve i\u015flevselli\u011finin, kullan\u0131c\u0131n\u0131n cihaz\u0131n\u0131n ekran boyutuna, \u00e7\u00f6z\u00fcn\u00fcrl\u00fc\u011f\u00fcne ve y\u00f6n\u00fcne (yatay veya dikey) otomatik olarak adapte olmas\u0131n\u0131 sa\u011flar.<\/p>\n<p>Media Query'ler, CSS'in bir \u00f6zelli\u011fidir ve belirli ko\u015fullar alt\u0131nda (\u00f6rne\u011fin, ekran geni\u015fli\u011fi belirli bir piksel de\u011ferinin alt\u0131nda oldu\u011funda) farkl\u0131 stil kurallar\u0131n\u0131n uygulanmas\u0131na olanak tan\u0131r. Bu sayede, ayn\u0131 HTML yap\u0131s\u0131 kullan\u0131larak, farkl\u0131 cihazlara \u00f6zel g\u00f6rsel deneyimler sunulabilir. \u00d6rne\u011fin, bir web sitesi masa\u00fcst\u00fcnde \u00fc\u00e7 s\u00fctunlu bir d\u00fczene sahipken, bir tablet ekran\u0131nda iki s\u00fctunlu, ak\u0131ll\u0131 telefonda ise tek s\u00fctunlu bir d\u00fczene ge\u00e7ebilir. Resimler otomatik olarak k\u00fc\u00e7\u00fclt\u00fclebilir, men\u00fcler dar ekranlar i\u00e7in a\u00e7\u0131l\u0131r men\u00fclere d\u00f6n\u00fc\u015ft\u00fcr\u00fclebilir ve yaz\u0131 boyutlar\u0131 daha okunabilir hale getirilebilir.<\/p>\n<p>\u0130\u015fte bir <code>media query<\/code> \u00f6rne\u011fi:<\/p>\n<pre><code>\n<code class=\"language-css\">\n\/* Genel stil kurallar\u0131 (t\u00fcm ekranlar i\u00e7in ge\u00e7erli) *\/\nbody {\n  font-family: Arial, sans-serif;\n  margin: 20px;\n}\n\n.container {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 20px;\n}\n\n.item {\n  flex: 1;\n  min-width: 300px;\n  background-color: #f0f0f0;\n  padding: 15px;\n  border-radius: 8px;\n}\n\n\/* K\u00fc\u00e7\u00fck ekranlar i\u00e7in medya sorgusu (geni\u015flik 768px veya daha az oldu\u011funda) *\/\n@media screen and (max-width: 768px) {\n  .container {\n    flex-direction: column; \/* \u00d6\u011feleri dikey olarak s\u0131rala *\/\n    gap: 10px;\n  }\n\n  .item {\n    min-width: unset; \/* Minimum geni\u015fli\u011fi kald\u0131r *\/\n    width: 100%; \/* \u00d6\u011fenin tam geni\u015fli\u011fi kaplamas\u0131n\u0131 sa\u011fla *\/\n  }\n\n  h2 {\n    font-size: 1.5em; \/* Ba\u015fl\u0131k boyutunu k\u00fc\u00e7\u00fclt *\/\n  }\n}\n\n\/* \u00c7ok k\u00fc\u00e7\u00fck ekranlar i\u00e7in medya sorgusu (geni\u015flik 480px veya daha az oldu\u011funda) *\/\n@media screen and (max-width: 480px) {\n  body {\n    margin: 10px;\n    font-size: 0.9em;\n  }\n\n  .item {\n    padding: 10px;\n  }\n}\n<\/code>\n<\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki CSS kodu, <code>container<\/code> ve <code>item<\/code> s\u0131n\u0131flar\u0131na sahip HTML \u00f6\u011felerinin, ekran geni\u015fli\u011fine g\u00f6re nas\u0131l farkl\u0131 g\u00f6r\u00fcnece\u011fini g\u00f6stermektedir. Varsay\u0131lan olarak \u00f6\u011feler esnek bir d\u00fczen i\u00e7inde yan yana s\u0131ralan\u0131rken, ekran geni\u015fli\u011fi 768 pikselin alt\u0131na d\u00fc\u015ft\u00fc\u011f\u00fcnde dikey olarak s\u0131ralan\u0131r ve 480 pikselin alt\u0131na d\u00fc\u015ft\u00fc\u011f\u00fcnde daha da k\u00fc\u00e7\u00fck font boyutlar\u0131 ve kenar bo\u015fluklar\u0131 uygulan\u0131r. Bu, mobil cihaz kullan\u0131c\u0131lar\u0131na, i\u00e7eri\u011fin okunabilir ve kullan\u0131labilir oldu\u011fu, optimize edilmi\u015f bir deneyim sunar.<\/p>\n<p>Duyarl\u0131 tasar\u0131m, sadece estetik bir kayg\u0131dan ibaret de\u011fildir; ayn\u0131 zamanda SEO (Arama Motoru Optimizasyonu) i\u00e7in de kritik \u00f6neme sahiptir. Google gibi arama motorlar\u0131, mobil uyumlu siteleri s\u0131ralamada \u00f6nceliklendirir. Bu nedenle, web sitenizin veya uygulaman\u0131z\u0131n farkl\u0131 cihazlarda sorunsuz \u00e7al\u0131\u015fmas\u0131, hem kullan\u0131c\u0131 deneyimi hem de g\u00f6r\u00fcn\u00fcrl\u00fck a\u00e7\u0131s\u0131ndan vazge\u00e7ilmezdir. Media Query'ler, bu uyarlanabilirli\u011fi sa\u011flamak i\u00e7in en g\u00fc\u00e7l\u00fc ve yayg\u0131n kullan\u0131lan ara\u00e7lardan biridir, b\u00f6ylece her kullan\u0131c\u0131n\u0131n cihaz\u0131 ne olursa olsun, internetin sundu\u011fu zengin i\u00e7eri\u011fe tam olarak eri\u015febilmesini sa\u011flar.<\/p>\n<h2>Performans\u0131 Art\u0131ran \u0130pu\u00e7lar\u0131 ve \u0130leri D\u00fczey Konular Nelerdir?<\/h2>\n<p>\u0130nternetin ve uygulamalar\u0131n daha h\u0131zl\u0131, daha g\u00fcvenli ve daha verimli \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamak i\u00e7in Client-Server modelinin \u00f6tesinde baz\u0131 ileri d\u00fczey teknikler ve kavramlar bulunmaktad\u0131r. \u0130\u015fte performans\u0131 art\u0131rmak ve kullan\u0131c\u0131 deneyimini iyile\u015ftirmek i\u00e7in kullanabilece\u011finiz baz\u0131 ipu\u00e7lar\u0131 ve ileri d\u00fczey konular:<\/p>\n<ul>\n<li><strong>\u00d6nbellekleme (Caching):<\/strong> S\u0131k\u00e7a istenen verilerin veya kaynaklar\u0131n (resimler, CSS dosyalar\u0131, API yan\u0131tlar\u0131) ge\u00e7ici olarak saklanmas\u0131 i\u015flemidir. Bu sayede, ayn\u0131 istek tekrar geldi\u011finde sunucuya gitmeye gerek kalmadan \u00f6nbellekten h\u0131zl\u0131ca servis edilebilir. Bu, hem sunucu y\u00fck\u00fcn\u00fc azalt\u0131r hem de kullan\u0131c\u0131 i\u00e7in sayfa y\u00fckleme s\u00fcrelerini \u00f6nemli \u00f6l\u00e7\u00fcde h\u0131zland\u0131r\u0131r. Taray\u0131c\u0131 \u00f6nbelleklemesi, sunucu taraf\u0131 \u00f6nbelleklemesi ve CDN (\u0130\u00e7erik Da\u011f\u0131t\u0131m A\u011f\u0131) \u00f6nbelleklemesi gibi farkl\u0131 t\u00fcrleri bulunur.<\/li>\n<li><strong>\u0130\u00e7erik Da\u011f\u0131t\u0131m A\u011flar\u0131 (CDN'ler):<\/strong> CDN'ler, web sitenizin statik i\u00e7eriklerini (resimler, videolar, CSS, JavaScript dosyalar\u0131) d\u00fcnyan\u0131n farkl\u0131 co\u011frafi konumlar\u0131ndaki sunuculara (Edge Sunucular\u0131) da\u011f\u0131tan a\u011flard\u0131r. Bir kullan\u0131c\u0131 sitenize eri\u015fti\u011finde, i\u00e7erik co\u011frafi olarak kendisine en yak\u0131n sunucudan servis edilir. Bu, verinin kat etmesi gereken mesafeyi k\u0131salt\u0131r, gecikmeyi (latency) azalt\u0131r ve site y\u00fckleme h\u0131zlar\u0131n\u0131 dramatically art\u0131r\u0131r. \u00d6zellikle k\u00fcresel \u00f6l\u00e7ekte hizmet veren uygulamalar i\u00e7in vazge\u00e7ilmezdir.<\/li>\n<li><strong>Asenkron \u0130stekler:<\/strong> Bir web sayfas\u0131n\u0131n veya uygulaman\u0131n, bir sunucu iste\u011finin tamamlanmas\u0131n\u0131 beklerken donup kalmamas\u0131n\u0131 sa\u011flamak i\u00e7in asenkron (e\u015fzamans\u0131z) istekler kullan\u0131l\u0131r. AJAX (Asynchronous JavaScript and XML) ve modern <code>fetch<\/code> API'si, sayfan\u0131n tamam\u0131n\u0131 yeniden y\u00fcklemeden dinamik olarak i\u00e7erik g\u00fcncellemek i\u00e7in kullan\u0131l\u0131r. Bu, kullan\u0131c\u0131 deneyimini \u00f6nemli \u00f6l\u00e7\u00fcde iyile\u015ftirir \u00e7\u00fcnk\u00fc kullan\u0131c\u0131, veri y\u00fcklenirken bile sayfayla etkile\u015fimde kalabilir.<\/li>\n<li><strong>Web Soketleri (WebSockets):<\/strong> Geleneksel HTTP, istemci-sunucu aras\u0131nda tek y\u00f6nl\u00fc, ba\u011flant\u0131s\u0131z bir ileti\u015fim sa\u011flarken, Web Soketleri \u00e7ift y\u00f6nl\u00fc, kal\u0131c\u0131 bir ileti\u015fim kanal\u0131 olu\u015fturur. Bu, sunucunun istemciye herhangi bir zamanda veri g\u00f6ndermesine olanak tan\u0131r (\u00f6rne\u011fin, anl\u0131k bildirimler, sohbet uygulamalar\u0131, canl\u0131 spor skorlar\u0131). Bu, \u00f6zellikle ger\u00e7ek zamanl\u0131 veri ak\u0131\u015f\u0131 gerektiren uygulamalar i\u00e7in HTTP'ye k\u0131yasla daha verimli bir \u00e7\u00f6z\u00fcmd\u00fcr.<\/li>\n<li><strong>G\u00fcvenlik \u00d6nlemleri:<\/strong> \u0130nternet \u00fczerinde veri ileti\u015fimi her zaman g\u00fcvenlik riskleri ta\u015f\u0131r. Bu nedenle, API'lerin ve Client-Server etkile\u015fimlerinin g\u00fcvenli\u011fini sa\u011flamak esast\u0131r:\n<ul>\n<li><strong>HTTPS Kullan\u0131m\u0131:<\/strong> T\u00fcm ileti\u015fimde SSL\/TLS \u015fifrelemesi kullanarak verinin \u015fifrelenmesini sa\u011flar.<\/li>\n<li><strong>Kimlik Do\u011frulama (Authentication):<\/strong> Bir kullan\u0131c\u0131n\u0131n kimli\u011fini do\u011frulamak i\u00e7in kullan\u0131l\u0131r (\u00f6rne\u011fin, kullan\u0131c\u0131 ad\u0131 ve \u015fifre, OAuth, JWT).<\/li>\n<li><strong>Yetkilendirme (Authorization):<\/strong> Kimli\u011fi do\u011frulanm\u0131\u015f bir kullan\u0131c\u0131n\u0131n belirli bir kayna\u011fa veya i\u015flevselli\u011fe eri\u015fim izni olup olmad\u0131\u011f\u0131n\u0131 belirler.<\/li>\n<li><strong>Giri\u015f Do\u011frulama (Input Validation):<\/strong> \u0130stemciden gelen verilerin sunucu taraf\u0131nda do\u011frulanmas\u0131, SQL Injection veya XSS (Cross-Site Scripting) gibi yayg\u0131n g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 \u00f6nler.<\/li>\n<li><strong>API Anahtarlar\u0131 ve Rate Limiting:<\/strong> API'lere eri\u015fimi kontrol etmek ve k\u00f6t\u00fcye kullan\u0131m\u0131 \u00f6nlemek i\u00e7in API anahtarlar\u0131 ve istek h\u0131z s\u0131n\u0131rlamalar\u0131 (rate limiting) uygulanabilir.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"uzman-ipucu\">\n  Uzman \u0130pucu: Web sitenizin veya uygulaman\u0131z\u0131n performans\u0131n\u0131 d\u00fczenli olarak \u00f6l\u00e7mek i\u00e7in Lighthouse, PageSpeed Insights gibi ara\u00e7lar\u0131 kullan\u0131n. Bu ara\u00e7lar, geli\u015ftirmeniz gereken alanlar\u0131 belirlemenize yard\u0131mc\u0131 olacakt\u0131r.\n<\/div>\n<p>Bu ileri d\u00fczey konular, internet uygulamalar\u0131n\u0131n sadece \u00e7al\u0131\u015fmas\u0131n\u0131 de\u011fil, ayn\u0131 zamanda optimum performans, g\u00fcvenlik ve kullan\u0131c\u0131 deneyimi ile \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamak i\u00e7in hayati \u00f6neme sahiptir. \u0130nternet teknolojileri s\u00fcrekli geli\u015fti\u011fi i\u00e7in, bu alanlardaki yenilikleri takip etmek, daha iyi ve daha etkili dijital \u00e7\u00f6z\u00fcmler \u00fcretmek i\u00e7in ka\u00e7\u0131n\u0131lmazd\u0131r.<\/p>\n<h2>\u00d6zet ve S\u0131k\u00e7a Sorulan Sorular<\/h2>\n<p>Bu makalede, internetin temel i\u015fleyi\u015fini, Client-Server modelini ve API'lerin kritik rol\u00fcn\u00fc ba\u015ftan sona inceledik. \u0130nternetin, istemcilerin (taray\u0131c\u0131lar, mobil uygulamalar) sunuculardan (veri ve hizmet sa\u011flayan bilgisayarlar) bilgi talep etti\u011fi ve sunucular\u0131n bu taleplere yan\u0131t verdi\u011fi devasa bir a\u011f oldu\u011funu \u00f6\u011frendik. HTTP protokol\u00fcn\u00fcn bu ileti\u015fimin ana dili oldu\u011funu, API'lerin ise farkl\u0131 uygulamalar\u0131n birbiriyle g\u00fcvenli ve standart bir \u015fekilde konu\u015fmas\u0131n\u0131 sa\u011flayan aray\u00fczler oldu\u011funu anlad\u0131k. Ger\u00e7ek d\u00fcnya senaryolar\u0131yla bu kavramlar\u0131n g\u00fcnl\u00fck hayat\u0131m\u0131zdaki yerini peki\u015ftirdik ve mobil uyumlulu\u011fun \u00f6nemine de\u011finerek duyarl\u0131 tasar\u0131m\u0131n nas\u0131l sa\u011fland\u0131\u011f\u0131na bakt\u0131k. Son olarak, performans\u0131 art\u0131rma ve g\u00fcvenli\u011fi sa\u011flama gibi ileri d\u00fczey konulara de\u011finerek internet teknolojilerine daha derin bir bak\u0131\u015f a\u00e7\u0131s\u0131 kazand\u0131k. Art\u0131k internetin sadece \"sihir\" olmad\u0131\u011f\u0131n\u0131, belirli ve anla\u015f\u0131l\u0131r prensipler \u00fczerine kurulu, m\u00fchendislik harikas\u0131 bir sistem oldu\u011funu biliyorsunuz.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular<\/h3>\n<p><strong>1. \"Bulut Bili\u015fim\" (Cloud Computing) Client-Server modelinden farkl\u0131 m\u0131?<\/strong><\/p>\n<p>Hay\u0131r, asl\u0131nda bulut bili\u015fim, Client-Server modelinin bir uzant\u0131s\u0131 ve geli\u015fmi\u015f bir uygulamas\u0131d\u0131r. Bulut bili\u015fimde sunucular ve veri tabanlar\u0131, fiziksel olarak tek bir konumda olmak yerine, geni\u015f bir a\u011f \u00fczerinde da\u011f\u0131t\u0131lm\u0131\u015f veri merkezlerinde bar\u0131nd\u0131r\u0131l\u0131r. \u0130stemciler yine bu sunuculara talepler g\u00f6nderir, ancak bu sunucular\u0131n y\u00f6netimi ve \u00f6l\u00e7eklenmesi bulut sa\u011flay\u0131c\u0131lar\u0131 (AWS, Azure, Google Cloud) taraf\u0131ndan yap\u0131l\u0131r. Yani, temel Client-Server prensibi ayn\u0131 kal\u0131r, ancak altyap\u0131 y\u00f6netim \u015fekli de\u011fi\u015fir.<\/p>\n<p><strong>2. Bir API anahtar\u0131 neden \u00f6nemlidir? Herhangi bir API'ye eri\u015febilir miyim?<\/strong><\/p>\n<p>API anahtarlar\u0131, bir API'ye eri\u015fim izni vermek ve kullan\u0131m\u0131 denetlemek i\u00e7in kullan\u0131l\u0131r. \u00c7o\u011fu halka a\u00e7\u0131k API, k\u00f6t\u00fcye kullan\u0131m\u0131 \u00f6nlemek, hizmet kalitesini sa\u011flamak ve kullan\u0131m\u0131 izlemek (analiz ve faturaland\u0131rma i\u00e7in) amac\u0131yla API anahtar\u0131 gerektirir. Anahtar olmadan genellikle API'ye eri\u015femezsiniz veya s\u0131n\u0131rl\u0131 eri\u015fiminiz olur. Bir API anahtar\u0131, uygulaman\u0131z\u0131n kimli\u011fini do\u011frular ve hangi kaynaklara eri\u015fim izni oldu\u011funu belirler, bu nedenle g\u00fcvenli bir \u015fekilde saklanmal\u0131d\u0131r.<\/p>\n<p><strong>3. Web Taray\u0131c\u0131s\u0131 bir istemci midir? Ba\u015fka istemciler var m\u0131d\u0131r?<\/strong><\/p>\n<p>Evet, web taray\u0131c\u0131lar\u0131 (Chrome, Firefox, Safari vb.) internet \u00fczerindeki en yayg\u0131n istemci t\u00fcrlerinden biridir. Sunuculardan web sayfalar\u0131n\u0131 (HTML, CSS, JavaScript) ister ve bunlar\u0131 kullan\u0131c\u0131ya g\u00f6sterirler. Ancak istemci sadece taray\u0131c\u0131 de\u011fildir. Bir mobil uygulama (iOS veya Android \u00fczerinde \u00e7al\u0131\u015fan), bir masa\u00fcst\u00fc yaz\u0131l\u0131m\u0131 (\u00f6rne\u011fin, Spotify uygulamas\u0131), hatta ak\u0131ll\u0131 bir IoT (Nesnelerin \u0130nterneti) cihaz\u0131 (ak\u0131ll\u0131 termostat, ak\u0131ll\u0131 hoparl\u00f6r) da, bir hizmeti veya veriyi talep etti\u011finde bir istemci g\u00f6revi g\u00f6r\u00fcr.<\/p>\n<p><strong>4. \u0130nternet ba\u011flant\u0131m koptu\u011funda Client-Server ileti\u015fimi nas\u0131l etkilenir?<\/strong><\/p>\n<p>\u0130nternet ba\u011flant\u0131n\u0131z koptu\u011funda, istemciniz (\u00f6rne\u011fin telefonunuz veya bilgisayar\u0131n\u0131z) sunucuya ula\u015famaz. Bu durumda, g\u00f6nderdi\u011finiz hi\u00e7bir istek sunucuya ula\u015fmaz ve do\u011fal olarak sunucudan herhangi bir yan\u0131t alamazs\u0131n\u0131z. Web taray\u0131c\u0131n\u0131z \"Bu siteye ula\u015f\u0131lam\u0131yor\" veya \"\u0130nternet ba\u011flant\u0131s\u0131 yok\" gibi bir hata mesaj\u0131 g\u00f6sterecektir. Mobil uygulamalar da veri y\u00fckleyemez veya g\u00fcncelleyemez duruma gelir. Client-Server modeli, ad\u0131ndan da anla\u015f\u0131laca\u011f\u0131 gibi, \u00e7al\u0131\u015fmak i\u00e7in istemci ve sunucu aras\u0131nda aktif bir a\u011f ba\u011flant\u0131s\u0131na ihtiya\u00e7 duyar.<\/p>\n<p><strong>5. RESTful API'ler d\u0131\u015f\u0131nda ba\u015fka API t\u00fcrleri var m\u0131?<\/strong><\/p>\n<p>Evet, RESTful API'ler en yayg\u0131n olanlardan biri olsa da, ba\u015fka API t\u00fcrleri de mevcuttur. \u00d6rne\u011fin:<\/p>\n<ul>\n<li><strong>SOAP (Simple Object Access Protocol):<\/strong> Daha eski, daha kat\u0131 ve XML tabanl\u0131 bir protokold\u00fcr. Genellikle kurumsal ve daha karma\u015f\u0131k entegrasyonlarda kullan\u0131l\u0131r.<\/li>\n<li><strong>GraphQL:<\/strong> Facebook taraf\u0131ndan geli\u015ftirilen, istemcinin tam olarak hangi veriyi istedi\u011fini belirtmesine olanak tan\u0131yan esnek bir sorgulama dilidir. Tek bir istekte birden fazla kayna\u011f\u0131 \u00e7ekme yetene\u011fi sunar.<\/li>\n<li><strong>gRPC:<\/strong> Google taraf\u0131ndan geli\u015ftirilen, y\u00fcksek performansl\u0131, dil ba\u011f\u0131ms\u0131z ve ikili protokol tabanl\u0131 bir RPC (Remote Procedure Call) \u00e7er\u00e7evesidir. Mikroservis mimarilerinde pop\u00fclerdir.<\/li>\n<\/ul>\n<p>Her bir API t\u00fcr\u00fcn\u00fcn kendine \u00f6zg\u00fc kullan\u0131m senaryolar\u0131 ve avantajlar\u0131 vard\u0131r.<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"G\u00fcnl\u00fck ya\u015fant\u0131m\u0131zda interneti nefes al\u0131r gibi kullan\u0131yor, sosyal medyadan bankac\u0131l\u0131k i\u015flemlerine, dizi izlemekten hava durumunu kontrol etmeye kadar&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[874],"tags":[],"class_list":{"0":"post-35100","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-server","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi<\/title>\n<meta name=\"description\" content=\"G\u00fcnl\u00fck ya\u015fant\u0131m\u0131zda interneti nefes al\u0131r gibi kullan\u0131yor, sosyal medyadan bankac\u0131l\u0131k i\u015flemlerine, dizi izlemekten hava durumunu kontrol etmeye kadar her \u015feyi online hallediyoruz. Peki, bu sihirli a\u011f\u0131n perde arkas\u0131nda neler oluyor? Bir web sitesini ziyaret etti\u011finizde ya da bir mobil uygulamay\u0131 kulland\u0131\u011f\u0131n\u0131zda tam olarak hangi mekanizmalar devreye giriyor? Bu rehberimizde, internetin temelini olu\u015fturan Client-Server (\u0130stemci-Sunucu) modelini ve modern uygulamalar\u0131n olmazsa olmaz\u0131 API&#039;leri (Uygulama Programlama Aray\u00fczleri) s\u0131f\u0131rdan, anla\u015f\u0131l\u0131r bir dille ke\u015ffedece\u011fiz. Haz\u0131rlan\u0131n, internetin bilinmeyen y\u00fcz\u00fcn\u00fc ayd\u0131nlatmaya ba\u015fl\u0131yoruz!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi\" \/>\n<meta property=\"og:description\" content=\"G\u00fcnl\u00fck ya\u015fant\u0131m\u0131zda interneti nefes al\u0131r gibi kullan\u0131yor, sosyal medyadan bankac\u0131l\u0131k i\u015flemlerine, dizi izlemekten hava durumunu kontrol etmeye kadar her \u015feyi online hallediyoruz. Peki, bu sihirli a\u011f\u0131n perde arkas\u0131nda neler oluyor? Bir web sitesini ziyaret etti\u011finizde ya da bir mobil uygulamay\u0131 kulland\u0131\u011f\u0131n\u0131zda tam olarak hangi mekanizmalar devreye giriyor? Bu rehberimizde, internetin temelini olu\u015fturan Client-Server (\u0130stemci-Sunucu) modelini ve modern uygulamalar\u0131n olmazsa olmaz\u0131 API&#039;leri (Uygulama Programlama Aray\u00fczleri) s\u0131f\u0131rdan, anla\u015f\u0131l\u0131r bir dille ke\u015ffedece\u011fiz. Haz\u0131rlan\u0131n, internetin bilinmeyen y\u00fcz\u00fcn\u00fc ayd\u0131nlatmaya ba\u015fl\u0131yoruz!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-25T13:01:03+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"27 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi\",\"datePublished\":\"2025-11-25T13:01:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/\"},\"wordCount\":5154,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Server\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/\",\"name\":\"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-25T13:01:03+00:00\",\"description\":\"G\u00fcnl\u00fck ya\u015fant\u0131m\u0131zda interneti nefes al\u0131r gibi kullan\u0131yor, sosyal medyadan bankac\u0131l\u0131k i\u015flemlerine, dizi izlemekten hava durumunu kontrol etmeye kadar her \u015feyi online hallediyoruz. Peki, bu sihirli a\u011f\u0131n perde arkas\u0131nda neler oluyor? Bir web sitesini ziyaret etti\u011finizde ya da bir mobil uygulamay\u0131 kulland\u0131\u011f\u0131n\u0131zda tam olarak hangi mekanizmalar devreye giriyor? Bu rehberimizde, internetin temelini olu\u015fturan Client-Server (\u0130stemci-Sunucu) modelini ve modern uygulamalar\u0131n olmazsa olmaz\u0131 API'leri (Uygulama Programlama Aray\u00fczleri) s\u0131f\u0131rdan, anla\u015f\u0131l\u0131r bir dille ke\u015ffedece\u011fiz. Haz\u0131rlan\u0131n, internetin bilinmeyen y\u00fcz\u00fcn\u00fc ayd\u0131nlatmaya ba\u015fl\u0131yoruz!\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi","description":"G\u00fcnl\u00fck ya\u015fant\u0131m\u0131zda interneti nefes al\u0131r gibi kullan\u0131yor, sosyal medyadan bankac\u0131l\u0131k i\u015flemlerine, dizi izlemekten hava durumunu kontrol etmeye kadar her \u015feyi online hallediyoruz. Peki, bu sihirli a\u011f\u0131n perde arkas\u0131nda neler oluyor? Bir web sitesini ziyaret etti\u011finizde ya da bir mobil uygulamay\u0131 kulland\u0131\u011f\u0131n\u0131zda tam olarak hangi mekanizmalar devreye giriyor? Bu rehberimizde, internetin temelini olu\u015fturan Client-Server (\u0130stemci-Sunucu) modelini ve modern uygulamalar\u0131n olmazsa olmaz\u0131 API'leri (Uygulama Programlama Aray\u00fczleri) s\u0131f\u0131rdan, anla\u015f\u0131l\u0131r bir dille ke\u015ffedece\u011fiz. Haz\u0131rlan\u0131n, internetin bilinmeyen y\u00fcz\u00fcn\u00fc ayd\u0131nlatmaya ba\u015fl\u0131yoruz!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/","og_locale":"tr_TR","og_type":"article","og_title":"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi","og_description":"G\u00fcnl\u00fck ya\u015fant\u0131m\u0131zda interneti nefes al\u0131r gibi kullan\u0131yor, sosyal medyadan bankac\u0131l\u0131k i\u015flemlerine, dizi izlemekten hava durumunu kontrol etmeye kadar her \u015feyi online hallediyoruz. Peki, bu sihirli a\u011f\u0131n perde arkas\u0131nda neler oluyor? Bir web sitesini ziyaret etti\u011finizde ya da bir mobil uygulamay\u0131 kulland\u0131\u011f\u0131n\u0131zda tam olarak hangi mekanizmalar devreye giriyor? Bu rehberimizde, internetin temelini olu\u015fturan Client-Server (\u0130stemci-Sunucu) modelini ve modern uygulamalar\u0131n olmazsa olmaz\u0131 API'leri (Uygulama Programlama Aray\u00fczleri) s\u0131f\u0131rdan, anla\u015f\u0131l\u0131r bir dille ke\u015ffedece\u011fiz. Haz\u0131rlan\u0131n, internetin bilinmeyen y\u00fcz\u00fcn\u00fc ayd\u0131nlatmaya ba\u015fl\u0131yoruz!","og_url":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-25T13:01:03+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"27 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi","datePublished":"2025-11-25T13:01:03+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/"},"wordCount":5154,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Server"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/","url":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/","name":"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-25T13:01:03+00:00","description":"G\u00fcnl\u00fck ya\u015fant\u0131m\u0131zda interneti nefes al\u0131r gibi kullan\u0131yor, sosyal medyadan bankac\u0131l\u0131k i\u015flemlerine, dizi izlemekten hava durumunu kontrol etmeye kadar her \u015feyi online hallediyoruz. Peki, bu sihirli a\u011f\u0131n perde arkas\u0131nda neler oluyor? Bir web sitesini ziyaret etti\u011finizde ya da bir mobil uygulamay\u0131 kulland\u0131\u011f\u0131n\u0131zda tam olarak hangi mekanizmalar devreye giriyor? Bu rehberimizde, internetin temelini olu\u015fturan Client-Server (\u0130stemci-Sunucu) modelini ve modern uygulamalar\u0131n olmazsa olmaz\u0131 API'leri (Uygulama Programlama Aray\u00fczleri) s\u0131f\u0131rdan, anla\u015f\u0131l\u0131r bir dille ke\u015ffedece\u011fiz. Haz\u0131rlan\u0131n, internetin bilinmeyen y\u00fcz\u00fcn\u00fc ayd\u0131nlatmaya ba\u015fl\u0131yoruz!","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/internet-nasil-calisir-client-server-ve-api-rehberi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"\u0130nternet Nas\u0131l \u00c7al\u0131\u015f\u0131r: Client-Server ve API Rehberi"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35100","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=35100"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35100\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=35100"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=35100"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=35100"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}