Konu Başlıkları
Yükleniyor...

Flash Öldü, Kullanılabilirlik Sorunları Yerinde Duruyor

Flash Eleştirilerinin Bugünkü JavaScript Arayüzlerindeki Karşılığı

Flash 2020’nin sonunda resmen kapandı, eklentiyi çalıştıran tarayıcı da kalmadı. Ama ona yöneltilmiş eski kullanılabilirlik eleştirilerini bugün tek tek okuyunca tuhaf bir şey oluyor: maddelerin çoğu hâlâ geçerli, sadece adresi değişmiş. O listeyi modern karşılıklarıyla eşleştirmek, Flash hakkında değil bugünkü arayüzler hakkında bilgi veriyor.

Eleştiri aslında Flash’a değil, bir devralma biçimineydi

Flash’ın suçlandığı şeylerin neredeyse tamamı, tarayıcının bedava verdiği bir davranışın uygulama tarafından üstlenilip yerine daha azının konulmasıydı. Aynı devralma bugün JavaScript ile yapılıyor. Karşılaştırma şöyle duruyor:

Flash’a yöneltilen şikayetBugünkü karşılığı
Tarayıcının geri tuşu çalışmıyorYönlendirmesi History API’ye bağlanmamış tek sayfa uygulamaları
Sayfada bul metni göremiyorCanvas’a çizilen içerik, sanallaştırılmış uzun listeler
Ziyaret edilmiş bağlantı ayırt edilemiyorhref taşımayan, tıklanabilirliği script ile eklenen kartlar
Ekran okuyucu içeriği görmüyorRolü ve etiketi verilmemiş div yığınları
Metin büyütülemiyorPiksele sabitlenmiş tipografi, yakınlaştırınca dağılan düzen

Aradaki tek fark önemli olan farktır: Flash’ta bu davranışları geri getirmenin yolu yoktu, bugün var. Yapılmamış olması teknik bir sınır değil, öncelik sorunu.

Peki ya kullanıcı aradığı kelimeyi sayfada bulamıyorsa

Sanallaştırma bunun en net örneği. react-window türü bir çözüm DOM’da yalnızca ekranda görünen satırları tutar, on bin satırlık tabloda kaydırma akıcı hale gelir. Karşılığında Ctrl+F yalnızca o anda görünen yirmi satırda arama yapar. Bu bir hata değil, bilinçli bir takas, ama takas olduğunun farkında olmak gerekiyor.

Ölçüsü basit: kullanıcı bu listede gerçekten arama yapıyor mu? Kendi arama kutunuz varsa ve sorgu sunucuya gidiyorsa takas mantıklı. Liste birkaç yüz satırdaysa sanallaştırmayı tamamen kaldırıp content-visibility: auto ile yetinmek çoğu zaman hem daha ucuz hem de tarayıcının aramasını bozmayan bir çözüm.

Geri tuşu, hâlâ en sık kırılan sözleşme

Rota yönetimini genelde doğrudan History API üzerine kurar, her ekranın kendi adresi olmasını baştan şart koşarım; sonradan eklenen popstate yaması hiçbir projede tam oturmadı. Peki ya modal? Mobilde kullanıcı açılan bir pencereyi kapatmak için sistem geri tuşuna basıyor, dolayısıyla modal da bir durum ve geçmişe yazılması gerekiyor. Peki ya filtreler? Kullanıcı seçtiği filtreyi arkadaşına gönderebilmeli, yani filtre de adreste durmalı. Kural şuraya iniyor: kullanıcı için ayrı bir yer gibi görünen her şey ayrı bir adres olmalı.

Dört dakikalık kontrol

Bu maddelerin hiçbirini ölçmek için araştırma bütçesi gerekmiyor. Arayüzü açın ve sırayla deneyin:

  • Fareye dokunmadan, yalnızca sekme tuşuyla ana akışı baştan sona geçin.
  • Ekranda gördüğünüz bir kelimeyi Ctrl+F ile aratın.
  • Üç ekran ilerleyip geri tuşuna basın, sonra sayfayı yenileyin.
  • Tarayıcının yakınlaştırmasını yüzde 200 yapın.

Dördü de birkaç dakika sürüyor ve kullanıcı testinde ortaya çıkacak sorunların iyi bir kısmını daha ilk turda gösteriyor. Flash’ın hikayesinden kalan asıl ders de burada: sorun eklenti olması değildi, tarayıcının kullanıcıya verdiği garantileri devralıp yerine daha azını koymasıydı.