Auzef Sunucu Tabanlı Programlama 2025-2026 Final Soruları
https://lolonolo.com/2026/07/02/sunucu-tabanli-programlama-2025-2026-final-sorulari/
https://lolonolo.com
Show More Show Less View Video Transcript
0:00
Selamlar. Bu görsel incelememize hoş
0:02
geldiniz. Bakın bugün burada 2025-2026
0:05
sunucu tabanlı programlama final
0:06
sınavını adeta parçalamanız için gereken
0:08
her şeyi masaya yatırıyoruz. Öyle sıkıcı
0:10
sıradan sayfalara falan bakmayacağız.
0:12
Bir web sitenin o arka plandaki
0:13
büyüleyici yolculuğunu adım adım
0:15
izleyeceğimiz gerçekten harika bir
0:17
analize dalıyoruz. Hazırsanız hadi
0:18
başlayalım. Evet bugün haritasına
0:20
hızlıca bir göz atalım. Önce mimari ve
0:22
orkestra şefi diyeceğiz. Sonra rotalar
0:24
ve güvenlik duvarına geçeceğiz. Ardından
0:26
oturumlar ve kullanıcı yönetimi kısmına
0:27
dalıp son olarak modern web ve
0:29
iletişimle işi bağlayacağız. O zaman
0:32
hemen birinci bölümle mimari ve orkestra
0:34
şefi ile başlıyoruz. Temel mimariyi
0:37
nasıl inşa ettiğimize bir bakalım.
0:39
Biliyor musunuz? Her web isteğinin o
0:41
güzemli yolculuğu aslında 4. nesil o
0:43
devasa kasamızla başlar. Yani veri
0:46
tabanı yönetim sistemleri kısaca VTS ile
0:48
verilerimizi sakladığımız,
0:50
güncellediğimiz, sildiğimiz o hayati
0:51
yazılımlar var ya işte onlar sistemin
0:54
tam kalbi. Ve işin güzel tarafı ne
0:56
biliyor musunuz? Laravel gibi güçlü
0:58
yapılarda bu devasa kasaya bağlanmak
1:00
gerçekten çocuk oyuncağı. Uygulamanızın
1:02
kök dizindeki basit bir nokta env
1:04
dosyasına ayarlarınızı giriyorsunuz ve
1:06
bum bağlandınız. Şimdi burada gerçekten
1:09
ilginç olan bir şey var. meşhur MBC
1:11
mimarisindeki kontrolcü yani controller
1:14
katmanı. O sadece basit bir kod bloğu
1:17
falan değil. O kelimenin tam anlamıyla
1:19
bir orkestra şefi. Şöyle düşünün. Bir
1:21
orkestra şefi sadece tek bir enstrümanı
1:24
mı yönetir? Tabii ki hayır. Aynı şekilde
1:27
bir kontrolcü de asla tek bir modele
1:29
bağlı kalmak zorunda değil. birden fazla
1:31
modeli aynı anda ustaca yönetir, veriyi
1:34
işler ve günün sonunda kullanıcıya
1:35
sunulacak olan o görünümü muazzam bir
1:38
ahenkle ortaya çıkarır. Peki ya bu
1:40
mimarları Java dünyasında kuruyor
1:42
olsaydık? İşler biraz değişiyor tabii.
1:44
Java tabanlı web uygulamaları
1:46
geliştiriyorsak sahneye Java Server
1:48
Faces yani JSF çıkıyor. JSF yeniden
1:52
kullanılabilir kullanıcı arayüzü
1:53
bileşenleri sunan Java'nın o resmi
1:56
mimari iskeleti yani devasa sistemler
1:58
inşa ederken aynı kod parçasını tekrar
2:01
tekrar nasıl yazarım derdinden sizi
2:02
kurtarıyor. Modülleri alıp hatasız bir
2:05
şekilde defalarca kullanabiliyorsunuz.
2:07
Ve madem Java mimarisinden bahsettik,
2:10
sınavda kesinlikle hayat kurtaracak
2:12
altın değerinde o katı kurallara da bir
2:14
bakalım. Bir Java sınıfının gerçekten
2:16
bir Java bin olabilmesi için harfiyen
2:18
uyması gereken üç net kural var. Bir,
2:20
özellikleri yani değişkenleri kesinlikle
2:23
private olmalı. 2. Sınıfın içinde
2:25
mutlaka boş bir kurucu metot bulunmalı.
2:28
Ve 3. Nesnelerin A üzerinde güvenle
2:30
dolaşabilmesi için serializable ağrı
2:32
yüzünü taşıması şart. Bu üçlü arka
2:35
plandaki nesne yönetiminin adeta kutsal
2:37
kasesi. Evet, geldik ikinci bölüme.
2:40
Rotalar ve güvenlik duvarı. Artık
2:42
dışarıdan gelen isteklerin nasıl
2:44
yönetildiğine odaklanıyoruz. Düşünün ki
2:47
bir kullanıcı uygulamanızın kapısını
2:49
çalmak istiyor. Peki bunu nasıl yapıyor?
2:51
Tabii ki her zaman bir URI kullanarak.
2:54
Tek tip kaynak tanımlayıcı dediğimiz bu
2:56
şey aslında internetteki belirli bir
2:59
kaynağın tam ve kesin adresini gösteren
3:01
metin dizeleri. Basitçe tarayıcınızın
3:04
sunucuya dönüp hey tam olarak şunu
3:06
istiyorum deme şekli bu. Şimdi Laravel
3:09
evrenine geri dönersek bu kapıların
3:10
temelde iki ana türü var. Bir tarafta
3:12
sizi oturumlar sayesinde sürekli
3:14
tanıyan, "Aa sen geldin" diyen web PHP
3:17
var. Bu bizim standart tarayıcı tabanlı
3:19
kapımız ama diğer tarafta APHP duruyor.
3:22
AP rotaları tamamen durumsuzdur
3:24
arkadaşlar. Yani sizi asla ve asla
3:26
hatırlamazlar. Balık hafızalıdırlar. Bu
3:28
kapıdan her geçmek istediğinizde dijital
3:30
kimliğinizi yani tokanınızı çıkarıp
3:32
tekrar tekrar göstermek zorundasınız.
3:35
İşte tam da bu yüzden buradaki en kritik
3:37
nokta şu: Biri kapıyı çaldığında öyle
3:40
paldır küldür içeri almayız, değil mi?
3:42
İşte middle yani ara katman tam burada
3:46
tüm karizmasıyla sahneye çıkıyor.
3:48
Middleware'i dışarıdan gelen istekleri
3:50
asıl hedefine ulaşmadan hemen önce
3:53
kapıda durduran, kimlik soran ve sıkı
3:55
bir filtrelemeden geçiren taviz vermez
3:58
bir güvenlik görevlisi gibi
3:59
düşünebilirsiniz. Ama bazen kapıya gelen
4:02
şey niyetini bildiğimiz masum tek bir
4:04
kullanıcı olmuyor maalesef. Bir DOS
4:07
saldırısına düşünün. Sanki gereğinden
4:09
fazla fanatik, kontrolden çıkmış devasa
4:12
bir hayran kulübünün kapınıza aynı
4:14
saniyede yığılması gibi. İnanılmaz
4:16
kaotik değil mi? İşte tam bu anda sessiz
4:19
kahramanımız rate limiting yani hız
4:22
sınırlandırma devreye giriyor. Kapıdaki
4:24
o yığılmayı anında yavaşlatıyor. Gelen
4:26
istek sayısını sınırlandırıyor ve
4:28
sunucunuzun nefessiz kalıp çökmesini
4:30
engelleyerek sistemi ayakta tutuyor.
4:32
Geçiyoruz 3üncü bölüme. Oturumlar ve
4:35
kullanıcı yönetimi. Kapıdan geçenlerin
4:37
kimliğini nasıl doğruladığımıza bir
4:39
bakalım. Bilirsiniz sıfırdan güvenli bir
4:42
kullanıcı giriş ve kayıt sistemi
4:43
kodlamak bazen günlerinizi alabilir. Ama
4:46
neyse ki modern dünyada inanılmaz kısa
4:48
yollarımız var. Laravel Breeze paketi
4:51
mesela geliştiricilere harika bir
4:53
başlangıç noktası sunuyor. Tertemiz bir
4:55
tasarım ve anında kullanıma hazır
4:57
kullanıcı yönetim özellikleri. Yani
5:00
tekerleği baştan icat etmiyorsunuz. O
5:02
değerli zamanınızı uygulamanızın asıl
5:04
havalı işlevlerine saklıyorsunuz. Peki
5:06
bu güvenli yapı adım adım nasıl inşa
5:08
ediliyor? Ona bakalım. Bu 4 adımlık
5:10
süreç var ya sınav için kelimenin tam
5:12
anlamıyla hayat kurtarıcı. 1. request
5:15
sınıfı kullanıcının o gönderdiği form
5:17
veya HTTP verilerini havada kapar. 2. Az
5:20
önce o övdüğümüz güvenlik görevlisi yani
5:22
middleware bu isteği güzelce bir süzer.
5:25
3. Onaylanan kullanıcıyı sunucu
5:26
tarafında hatırlamak için hemen bir
5:28
session yani oturum başlatılır. Ve 4. En
5:31
kritik adım kullanıcının girdiği o
5:32
şifrenin doğruluğu veri tabanındaki
5:34
şifrelenmiş değerle hash 2 nokta üst
5:37
üste çek metodu sayesinde son derece
5:39
güvenli bir şekilde doğrulanır. Süreç bu
5:41
kadar net. Ve işte son bölümümüz 4.
5:44
bölüm. Modern web ve iletişim. Gerçek
5:47
zamanlı büyüye hoş geldiniz. Diyelim ki
5:49
uygulamanız globale hitap ediyor.
5:51
Sunucunun sadece veri yetmez.
5:54
veriyi doğru dille gerekir.
5:56
Değil mi? Blade şamlonlarındaki şu iki
5:58
alt çizgi ve parantez fonksiyonuna bir
6:00
bakın. Bu küçük kod parçası arayüzdeki
6:02
metinleri uygulamanızın dil dosyaları
6:05
yani leng klasörü üzerinden anında
6:07
dinamik olarak çevirmenizi sağlıyor. Tek
6:10
bir kod tabanıyla dünyanın öbür ucundaki
6:12
kullanıcıya kendi dilinde kusursuz bir
6:14
ekran sunabiliyorsunuz. Harika bir olay.
6:17
Ve işte modern web geliştirmenin bence
6:19
en sihirli anlarından birine geldik.
6:21
Hatırlarsınız eskiden güncel bilgiyi
6:24
görmek için tarayıcıda o yenile butonuna
6:26
basıp dururduk. Ama bugün bugün web
6:28
socket teknolojisi ve event broadcasting
6:31
yani olay yayıncılığı var. İstemciyile
6:33
sunucu arasında sayfayı bir kez bile
6:36
yenilemeden sürekli çift yönlü ve anlık
6:38
bir iletişim hattı kurabiliyoruz. O
6:40
telefonunuza düşen anlık bildirimler,
6:43
canlı oynadığınız oyunlar, kripto veya
6:45
borsadaki o saniye saniye değişen
6:47
sayılar hepsini arkasındaki o inanılmaz
6:49
güç tam olarak bu teknoloji. Tabii
6:52
internetteki her iletişimin de bu kadar
6:54
adrenalin dolu, bu kadar anlık olması
6:56
gerekmiyor. Websit'in o çılgın, süper,
6:59
hızlı dünyasının tam karşısında daha
7:01
sakin bir teknoloji duruyor. RSS. ARSS
7:05
sayesinde kullanıcılar sevdikleri
7:07
siteleri tek tek gezmek zorunda
7:08
kalmıyor. Güncellemeler otomatik, temiz
7:11
ve derli toplu bir akış halinde sürekli
7:13
önlerine düşüyor. Yani bilgiyi
7:15
tüketmenin bambaşka, daha pasif ama
7:18
inanılmaz pratik bir yolu. Ama şunu bir
7:21
düşünün. Bugün konuştuğumuz o karmaşık
7:23
mimariler, havalı güvenlik duvarları,
7:26
veri tabanları, gerçek zamanlı web
7:28
soketler falan hiçbiri bir gecede
7:30
olmadı. Aslında her şey 1969 yılına
7:33
dayanıyor. Bugün milyarlarca cihazın
7:35
saniyede milyonlarca veri aktardığı bu
7:38
akıl almaz internet ağının temeli olan
7:40
Arpanet 1969'da o tarihi ilk adımını
7:43
sadece ve sadece dört üniversiteyi
7:45
birbirine bağlayarak atmıştı. Dört
7:47
bilgisayar. Nereden nereye değil mi? Ve
7:50
işte bu muazzam evrim hikayesi bizi size
7:53
sormak istediğim o heyecan verici son
7:55
soruya getiriyor. 1969'da kalın bir
7:58
kabloyla birbirine bağlanan dört
8:00
üniversiteden bugün sınır tanımayan
8:03
gerçek zamanlı küresel web soketlere
8:05
uzandık. Peki sizler final sınavınızı
8:08
başarıyla geçip o bir sonraki büyük
8:10
projenizi, kendi muazzam uygulamanızı
8:13
inşa ettiğinizde sizin ellerinizde bir
8:15
web isteğinin mimarisi tam olarak nasıl
8:17
görünecek? Sınavınızda bu derin mimari
8:20
bilgileri harika bir şekilde
8:22
kullanacağınıza hiç şüphem yok. Hepinize
8:24
şimdiden zihin açıklığı ve başarılar
8:26
diliyorum. öğrenmeye, keşfetmeye ve inşa
8:29
etmeye devam edin.
#Jobs & Education

