2 puan yazan GN⁺ 2024-10-16 | 1 yorum | WhatsApp'ta paylaş
  • Web tarayıcısı mühendisliğine giriş

    • Web tarayıcıları günlük olarak kullanılır, ancak çalışma prensipleri karmaşıktır. Bu kitap, ağ iletişiminden JavaScript'e kadar birkaç bin satırlık Python koduyla temel ama eksiksiz bir web tarayıcısının nasıl oluşturulacağını açıklar.
  • Önsöz

    • Web tarayıcılarının ve web'in tarihine dair bir genel bakış sunar.
  • 1. Bölüm: Sayfa yükleme

    • Web sayfası indirme
      • URL ve HTTP istekleri aracılığıyla bir web sayfasının nasıl indirileceğini açıklar.
    • Ekrana çizme
      • Bir pencerenin nasıl oluşturulacağını ve canvas üzerine nasıl çizim yapılacağını açıklar.
    • Metin biçimlendirme
      • Sözcük kaydırma ve satır aralığının nasıl ayarlanacağını açıklar.
  • 2. Bölüm: Belgeyi görüntüleme

    • HTML ağacını oluşturma
      • HTML'in nasıl parse edileceğini ve değiştirileceğini açıklar.
    • Sayfa yerleşimi
      • Inline ve block yerleşimlerin nasıl uygulanacağını açıklar.
    • Yazar stillerini uygulama
      • CSS'in nasıl parse edilip uygulanacağını açıklar.
    • Buton ve bağlantıları işleme
      • Hiperbağlantıların ve tarayıcı chrome'unun nasıl işlendiğini açıklar.
  • 3. Bölüm: Uygulama çalıştırma

    • Sunucuya bilgi gönderme
      • Form gönderimi ve web sunucusuyla etkileşimin nasıl gerçekleştirileceğini açıklar.
    • Etkileşimli script çalıştırma
      • DOM değişiklikleri ve olaylara nasıl tepki verileceğini açıklar.
    • Veri koruma
      • Cookie'ler, oturum açma, XSS ve CSRF'yi açıklar.
  • 4. Bölüm: Modern tarayıcılar

    • Görsel efektler ekleme
      • Blending, clipping ve compositing yöntemlerini açıklar.
    • Görev ve thread planlama
      • Event loop ve rendering pipeline'ı açıklar.
    • Animasyon ve compositing
      • GPU kullanılarak akıcı animasyonların nasıl sağlandığını açıklar.
    • İçerik erişilebilirliği sağlama
      • Klavye girişi, yakınlaştırma/uzaklaştırma ve erişilebilirlik ağacını açıklar.
    • Gömülü içerik desteği
      • Görseller, iframes ve script desteğinin nasıl sağlandığını açıklar.
    • Önceki hesaplamaları yeniden kullanma
      • Geçersiz kılma, düzenleme ve doğruluğu açıklar.
  • Sonuç

    • Ele alınmayan konuları ve değişen ortamı açıklar.
  • Ek

    • Terimler sözlüğü, kaynakça, yazar tanıtımı, katkıda bulunanlar listesi ve bu kitaba dayanan derslerin listesi yer alır.

GN⁺ Özeti

  • Bu kitap, web tarayıcılarının nasıl çalıştığını anlamak isteyenler için faydalıdır. Python kullanarak tarayıcı oluşturma süreci üzerinden ağ iletişimi, HTML parse etme, CSS uygulama gibi çeşitli teknikler öğrenilebilir.
  • Web tarayıcılarının tarihini ve modern tarayıcıların işlevlerini anlamaya yardımcı olur. Özellikle web güvenliği ve erişilebilirlik konularını içermesi sayesinde pratikte uygulanabilecek bilgiler sunar.
  • Bu kitap, web geliştiricileri veya yazılım mühendisleri için ilgi çekici ve faydalı olabilir; ayrıca web tarayıcılarının iç çalışma mantığını anlamaya büyük katkı sağlar.

1 yorum

 
GN⁺ 2024-10-16
Hacker News görüşleri
  • 'Yapmadığım şeyler' bölümü bu kitabın harika yanlarından biri

    • Yerleşim çalışması çok zor
    • CSS, yerleşimi daha da karmaşık hale getiriyor
    • CSS, HTML ve JavaScript artık çok karmaşık yazılımlar
    • Video kod çözme donanıma offload edildiği için pil tüketimi azalıyor
  • 15 yıl önce headless browser üzerinde çalışmaya başlamış ve SpiderMonkey'yi JS yorumlayıcısı olarak kullanmış

    • Özel bir DOM uygulaması ve bir Flash runtime eklemiş
    • Bu proje çok eğlenceliydi
    • Bu kitap ilgisini çekiyor
  • Bu kitap, MITRE ATT&CK'i hatırlatan kapsamlı bir kaynak

  • Browser engineering'in trend haline gelmesi ferahlatıcı

    • Şu anda buna Google, Apple ve Mozilla öncülük ediyor
    • Daha fazla bağımsız browser engine olmasını umuyor
  • Yazarın neden Python'ı seçtiğini açıkladığı bir yazı var

    • Bunun bir kısmında Python, JS'ye derlenip tarayıcıda çalıştırılıyor
  • Yazarlardan biri teşekkürlerini iletiyor ve soruları yanıtlamaya hazır olduğunu söylüyor

  • Eğlenceli bir proje arıyormuş ve bu kitaptan keyif alıyor

    • Chrome'un nasıl çalıştığını anlatan çizgi roman da başlamak için iyi bir kaynak
  • Bu tür kaynakların üretilmesi çok ilgi çekici

    • Tarayıcılar gizemli ve çözmesi zor kara kutular gibi görünüyor
    • Ladybird gibi projeler bu duvarı yıkıyor
    • Bir gün katkıda bulunmak istiyor ve bu kitap bunun için harika bir başlangıç noktası
  • Tarayıcının iç yapısını öğreniyor ve bu kitap çok faydalı

    • Tarayıcıların nasıl çalıştığına dair sezgisel bir anlayış geliştirmeye yardımcı oluyor
  • Güzel bir kitap ve 9. bölümün iki ayrı bölüme ayrılmasını öneriyor

    • JavaScript yürütmesini ve DOM ile event etkileşimini ayrı ayrı ele almak iyi olur