Mülakat soruları · Kitap 02
Web Geliştirme mülakat soruları
72 sayfadan 283 soru, her birinin kısa bir cevabıyla. Önce kendi cevabınızı söyleyin, sonra soruyu açıp kontrol edin.
s. 1 · 4 soru
AJAX
1
AJAX nedir?
AJAX (Asynchronous JavaScript and XML), JavaScript ile sunucudan arka planda veri alıp sayfayı yeniden yüklemeden yalnızca bir kısmını güncelleme tekniğidir.
2
AJAX hâlâ kullanılıyor mu?
Teknik her yerde, ama ad daha az kullanılıyor. Veriyi
fetchile yükleyip yenilenmeden kendini güncelleyen her sayfa AJAX yapıyor demektir.3
AJAX ile fetch arasındaki fark nedir?
AJAX genel tekniktir. Fetch API ise arka plandaki isteği yapmaya yarayan, eski XMLHttpRequest nesnesinin yerini alan modern tarayıcı fonksiyonudur.
4
AJAX'ın XML kullanması gerekir mi?
Hayır. Ad bulunduğunda XML yaygındı, ama bugün AJAX isteklerinin neredeyse hepsi JSON gönderip alır; düz metin ve HTML dahil her biçimi taşıyabilirler.
s. 2 · 4 soru
Alan Adı
1
Alan adı (domain name) nedir?
Alan adı (domain name), example.com gibi bir web sitesinin insanların okuyabileceği adresidir; DNS sistemi bunu siteyi barındıran sunucunun IP adresine çevirir.
2
Alan adı ile URL arasındaki fark nedir?
Alan adı sitenin adıdır, example.com gibi. URL ise protokol ve yol dahil tek bir kaynağın tam adresidir, https://example.com/about gibi.
3
Alt alan adı (subdomain) nedir?
Kontrol ettiğiniz bir alan adının altındaki addır, blog.example.com ya da api.example.com gibi. Alt alan adlarını yeni bir şey kaydetmeden, DNS kayıtlarıyla kendiniz oluşturursunuz.
4
Hangi alan adı uzantısını seçmeliyim?
.com dünya genelinde en tanıdık olanıdır; .tr gibi bir ülke alan adı yerel bir kitleye işaret edebilir; .dev ya da .io gibi daha yeni TLD'ler de teknik projelerde popülerdir. En önemlisi, güvenle yenileyebileceğiniz kısa ve açık bir addır.
s. 3 · 4 soru
Angular
1
Angular nedir?
Angular, Google'ın TypeScript tabanlı, eksiksiz web framework'üdür; bileşenler, yönlendirme, formlar, HTTP istemcisi ve bağımlılık enjeksiyonu yerleşik gelir.
2
Angular ile AngularJS arasındaki fark nedir?
AngularJS (2010), orijinal JavaScript framework'üydü. Angular (2016) ise farklı bir mimariyle TypeScript'te baştan yazılmış bir sürümdür; AngularJS kodu Angular'da çalışmaz ve AngularJS artık desteklenmiyor.
3
Angular, React'ten daha mı iyi?
Genel olarak hiçbiri daha iyi değil. Angular güçlü kuralları olan eksiksiz bir framework'tür; bu da işleri tek bir biçimde yapmak isteyen büyük ekiplere uyar. React ise daha fazla seçimi size ve ekosistemine bırakan daha küçük bir kütüphanedir.
4
Angular TypeScript kullanır mı?
Evet. Angular TypeScript ile yazılmıştır; Angular uygulamaları da TypeScript ile yazılır.
s. 4 · 4 soru
ARIA
1
ARIA nedir?
ARIA, role ve aria-label gibi HTML özniteliklerinden oluşan bir W3C standardıdır; yardımcı teknolojilere özel bir bileşenin ne olduğunu ve durumunu bildirir.
2
ARIA'nın ilk kuralı nedir?
İhtiyacınız olan anlam ve davranışa zaten sahip bir yerel HTML öğesi ya da özniteliği varsa ARIA eklemek yerine onu kullanın. Gerçek bir
<button>odaklanabilir, klavyeyle çalışır ve hiçbir ek kod olmadan doğru şekilde duyurulur.3
aria-label ile aria-labelledby arasındaki fark nedir?
aria-labelbir öğeye adını doğrudan metin olarak verir.aria-labelledbyise görünür metni ad olarak kullanılacak başka bir öğeniniddeğerine işaret eder; böylece ekranda görünenle sesli okunan uyumlu kalır.4
ARIA ile WCAG arasındaki fark nedir?
WCAG, erişilebilir bir sayfanın neyi başarması gerektiğini anlatan bir yönergeler bütünüdür; metin alternatifleri ve klavyeyle erişim gibi. ARIA ise özniteliklerden oluşan teknik bir spesifikasyondur ve bu yönergelerin bazılarını özel bileşenlerde karşılamanın yollarından biridir.
s. 5 · 4 soru
Astro
1
Astro nedir?
Astro, içerik odaklı siteler için bir web framework'üdür; sayfaları HTML'e dönüştürür ve JavaScript'i yalnızca etkileşimli adalara ekler.
2
Astro bir statik site üreticisi mi?
Öyle başladı ve hâlâ varsayılan olarak statik sayfalar üretir. Bir adapter ile sayfaları her istekte sunucuda da render edebilir; böylece hem statik hem dinamik siteleri kapsar.
3
Astro ile React kullanabilir miyim?
Evet. Astro'nun React, Vue, Svelte, Solid ve Preact için resmî entegrasyonları vardır. Bileşenler sunucuda HTML'e dönüştürülür; yalnızca
client:*direktifi olanlar JavaScript'lerini tarayıcıda yükler.4
Astro ile Next.js arasındaki fark nedir?
Next.js, eksiksiz web uygulamaları için bir React framework'üdür ve arayüzü çalıştırmak için React'i tarayıcıya gönderir. Astro ise içerik siteleri için tasarlanmıştır, birden çok arayüz framework'üyle çalışır ve JavaScript'i yalnızca etkileşimli adalar için gönderir.
s. 6 · 4 soru
Babel
1
Babel nedir?
Babel, modern JavaScript, JSX ve TypeScript sözdizimini eski tarayıcıların ve ortamların çalıştırabileceği koda çeviren bir JavaScript derleyicisidir.
2
Babel'e hâlâ ihtiyaç var mı?
Eskisinden daha az. Modern tarayıcılar güncel sözdiziminin neredeyse tamamını destekliyor; yeni projelerin çoğunda TypeScript ve JSX'i SWC, esbuild ve Oxc gibi daha hızlı araçlar işliyor. Babel, React Compiler gibi belirli bir eklentinin gerektiği yerlerde ve eski build kurulumlarında hâlâ kullanılıyor.
3
Babel ile TypeScript derleyicisi arasındaki fark nedir?
İkisi de TypeScript'i JavaScript'e dönüştürebilir.
tsctipleri de kontrol eder; Babel ise onları yalnızca siler, bunu da hızlıca ve her seferinde tek bir dosyada yapar. Pek çok proje kodu hızlı bir araca derletir vetsc --noEmitkomutunu yalnızca kontrol için çalıştırır.4
@babel/preset-env ne işe yarar?
Hedeflediğiniz tarayıcılara ya da Node.js sürümlerine bakar ve yalnızca onların ihtiyaç duyduğu dönüşümleri uygular; böylece modern tarayıcılar için üretilen kod yazdığınıza yakın kalır.
s. 7 · 4 soru
Bootstrap
1
Bootstrap nedir?
Bootstrap, duyarlı bir grid ile buton, navbar ve modal gibi hazır bileşenler sunan ücretsiz bir CSS framework'üdür; HTML'e sınıf ekleyerek kullanılır.
2
Bootstrap hâlâ kullanılıyor mu?
Evet. Özellikle yönetim panellerinde, şirket içi araçlarda ve hızlı prototiplerde hâlâ en yaygın CSS framework'lerinden biridir; yine de pek çok yeni proje Tailwind CSS'i ya da kendi framework'ü için yapılmış bir bileşen kütüphanesini seçiyor.
3
Bootstrap ile Tailwind CSS arasındaki fark nedir?
Bootstrap, tanıdık bir varsayılan tasarımı olan hazır bileşenler sunar. Tailwind ise alt düzey utility sınıfları sunar; kendi tasarımınızı ve bileşenlerinizi bunlardan kurarsınız.
4
Bootstrap jQuery gerektirir mi?
Bootstrap 5'ten beri gerektirmez. Sürüm 4 ve öncesi, etkileşimli bileşenleri için jQuery kullanıyordu; sürüm 5 bunları sade JavaScript ile yeniden yazdı ve Popper kütüphanesini yalnızca açılır menüleri, tooltip'leri ve popover'ları konumlandırmak için kullanır.
s. 8 · 4 soru
Bundler
1
JavaScript bundler nedir?
Bundler, JavaScript modüllerini ve bağımlılıklarını tarayıcıların hızlıca indirip çalıştırabileceği birkaç optimize dosyada birleştiren bir derleme aracıdır.
2
Neden bir bundler'a ihtiyacım var?
Bundler, birçok modülü ve npm paketini birkaç optimize dosyaya dönüştürür; bu da ağ isteklerini azaltır, kullanılmayan kodu kaldırır ve TypeScript, JSX ile modern söz dizimini kullanmanıza olanak tanır. Yalnızca birkaç betiği olan küçük siteler onsuz da sorunsuz çalışabilir.
3
Bundler ile paket yöneticisi arasındaki fark nedir?
npm, pnpm veya Yarn gibi bir paket yöneticisi projenizin kullandığı kütüphaneleri indirir ve sürümlerini izler. Bundler ise sizin kodunuzu ve bu kütüphaneleri tarayıcıların yükleyebileceği dosyalarda birleştirir.
4
Tree shaking nedir?
Tree shaking, kodunuzun hiç import etmediği dışa aktarımları kaldıran bir bundler optimizasyonudur. ES modül
importveexportsöz diziminde en iyi şekilde çalışır; çünkü bunlar kod çalıştırılmadan analiz edilebilir.