Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
Angular Geliştiricisi için React: Library mi Framework mü, Zihinsel Model Farkları ve Ekosistem Haritası
React bir framework değil, UI library'si: component, state ve render'ı veriyor; router, veri çekme, form ve global state'i ekip ekosistemden seçiyor. Bookstore'un kitap kartını Angular ve React'te yan yana yazıyor, bir tıklamada React'in component fonksiyonunu yeniden çağırıp DOM'da yalnız iki text node'u değiştirdiğini gerçek çıktıyla gösteriyor, Angular kavramlarının React karşılıklarını tablo hâlinde veriyoruz.
İlk React Projesi: Vite + TypeScript, Proje Yapısı, StrictMode ve React DevTools
Vite'ın react-ts template'i, feature klasörleri ve Vite 8'in resolve.tsconfigPaths ayarıyla tek kaynaktan @/ alias'ı, Oxlint'in hook kuralları ve /api isteklerini Bookstore API'ye aktaran dev proxy ile seriye yetecek bir proje iskeleti kuruyoruz. StrictMode'un geliştirmede render'ı iki kez, effect'i kurulum-temizlik-kurulum sırasıyla çalıştırdığını, production build'de ise her şeyin bir kez çalıştığını ve proxy olmadan tarayıcının CORS yüzünden yanıtı okumadığını gerçek çıktılarla gösteriyoruz.
Bookstore SPA'yı Uçtan Uca Bitirmek: Feature Klasörleri, Authentication, Environment'lar ve Deploy
Bir React SPA'yı production'a hazırlamak, feature sınırlarını lint kuralıyla korumak, VITE_ değişkenlerinin build sırasında bundle'a yazıldığını bilip secret'ı tarayıcıdan uzak tutmak ve oturumu token yerine HttpOnly cookie taşıyan bir BFF'e vermek demek. Bookstore'a ASP.NET Core ve YARP ile küçük bir BFF ekliyor, sign in akışını, SPA fallback'i, cache header'larını, nginx yapılandırmasını ve bundle analizini gerçek çıktılarla gösteriyoruz.