DevTools'daki Yeni Neler Var?

Yayınlanan: 2022-03-10
Kısa özet ↬ Chrome, Edge, Safari ve Firefox'taki yenilikler neler? Patrick Brosset, tarayıcılar arasında DevTools'taki en yeni özelliklerle bunu bozuyor.

Geçen yıl Eylül ayında, Firefox, Chrome, Safari ve Edge genelindeki sevgili DevTools'umuzdaki en son güncellemelerden bazılarını yazmıştım. O zamandan beri dört ay geçti ve DevTools üzerinde çalışan farklı ekipler meşguldü! Bu dört ayda, kullanmamız için birçok yeni şey inşa ettiler. Güçlü üretkenlik iyileştirmelerinden tamamen yeni panellere kadar, parite açığını kapatmaya ve web deneyimlerimizi iyileştirme ve hata ayıklama için yeni araçlarla yenilik yapmaya devam ediyorlar.

Bu, başka bir DevTools güncellemesinin tam zamanı olduğu anlamına geliyor, o yüzden hemen atlayalım!

  • Krom
  • Köşe
  • Safari
  • Firefox

Krom

Chrome ekibi, kullanıcı akışlarını kaydetmeyi ve yeniden oynatmayı çok basit hale getiren yeni bir panel yayınladı: Kaydedici paneli.

Kullanıcı Akışlarını Kaydedin, Tekrar Oynatın ve Ölçün

Bir hatayı araştırmak için bir web uygulamasında aynı gezinme adımlarını defalarca tekrarlamanız gerektiğini fark ettiyseniz, bu hayatınızı değiştirebilir!

Devtools kaydedici paneli

Ama dahası var! Adımlar kaydedildikten sonra, performansı ölçerken bunları tekrar oynatabilirsiniz. Bu şekilde, her test ettiğinizde her zaman aynı senaryoyu çalıştırdığınızdan emin olarak kodunuzu optimize etmeye çalışabilirsiniz.

Kaydedici hakkında daha fazla bilgiyi buradan edinebilirsiniz. Ve bu araç hakkında geri bildiriminiz varsa, ekip bu krom sorunu hakkındaki düşüncelerinizi duymaktan çok mutlu olacaktır.

Erişilebilirlik Ağacında Gezin

Sayfaları ekrana işlemek, tarayıcıların yaptığı tek şey değildir. Ayrıca süreçte oluşturdukları DOM ağacını başka bir ağaç oluşturmak için kullanırlar: erişilebilirlik ağacı. Erişilebilirlik ağacı, ekran okuyucular gibi yardımcı teknolojiler tarafından kullanılabilen geçerli sayfanın başka bir temsilidir.

Bir web geliştiricisi olarak bu erişilebilirlik ağacına erişiminiz olması çok faydalıdır. Seçtiğiniz işaretlemenin ekran okuyucuların sayfayı yorumlama şeklini nasıl etkilediğini anlamanıza yardımcı olur.

Chrome DevTools, bir süredir Öğeler panelinin kenar çubuğunda, erişilebilirlik ağacını içeren bir Erişilebilirlik paneline sahiptir. Ancak son zamanlarda ekip, hem erişilebilirliği hem de DOM ağacını aynı yerde görüntülemeyi deniyor ve geliştiricilerin ikisi arasında gidip gelmesine izin veriyor.

Bu denemeyi etkinleştirmek için Erişilebilirlik kenar çubuğu paneline gidin ve "Tam sayfa erişilebilirlik ağacını etkinleştir"i işaretleyin. Ardından, DOM ağacının sağ üst köşesinde, DOM ve erişilebilirlik ağaçları arasında geçiş yapmanızı sağlayan yeni bir düğme görüntülenecektir.

Burada daha fazla bilgi edinin ve ekibe geri bildiriminizi bildirin.

CSS'ye Genel Bakış Artık Varsayılan Olarak Açık

CSS genel bakış paneli yeni değil, ancak aralarından seçim yapabileceğiniz çok sayıda panel olduğu için onu hiç kullanmamış olabilirsiniz. Bu çok uzun bir süredir bir deneydi, yani kullanmadan önce etkinleştirmek için DevTools ayarlarına gitmeniz gerekiyordu.

Bu artık gerekli değil. CSS'ye Genel Bakış paneli artık yalnızca normal bir özelliktir ve onu … > More tools > CSS Overview bölümüne giderek açabilirsiniz.

Hiç kullanmadıysanız, kontrast sorunları veya kullanılmayan CSS bildirimleri gibi olası CSS iyileştirmelerini belirlemek için çok yararlı bir araç olduğu için deneyin.

CSS genel bakış paneli.
(Büyük önizleme)

More tools menüsündeyken etrafa bir göz atın. Chrome DevTools, 30'dan fazla bağımsız panele sahiptir! Bu çok fazla, ancak hepsinin belirli bir nedenden dolayı burada olduklarını unutmayın. Web uygulamanızın belirli panellerin size yardımcı olabileceği yönleri olabilir. Meraklı olun ve bir şeyin ne yaptığı hakkında hiçbir fikriniz yoksa okuyabileceğiniz belgeler olduğunu unutmayın.

Atlamadan sonra daha fazlası! Aşağıdan okumaya devam edin ↓

Köşe

Microsoft'un tarayıcı ekibi, Chromium projesine aktif olarak katkıda bulunmaya devam ederken, aynı zamanda yalnızca Edge'in sahip olduğu yeni ve benzersiz özelliklere daha fazla zaman harcıyorlar. Bunlardan ikisini burada inceleyelim.

Ayrılmış Öğeler Paneliyle DOM Bellek Sızıntılarında Hata Ayıklama

Edge, uzun süredir çalışan uygulamalardaki sızıntıları araştırmak için çok yararlı olabilecek, Detached Elements araçları olan bir bellek sızıntısı araştırma aracı başlattı.

Web sayfalarının bellek sızdırmasının birden çok nedeninden biri, ayrılmış DOM öğeleridir: bir noktada ihtiyaç duyulabilecek, ancak DOM'den kaldırılmış ve asla yeniden eklenmemiş öğeler. Bir kod tabanı karmaşıklık içinde büyüdüğünde, hata yapmak ve bu ayrılmış öğeleri temizlemeyi unutmak daha kolaydır.

Kullandıkça uygulamanızın zaman içinde daha fazla belleğe ihtiyaç duymaya devam ettiğini fark ederseniz, Ayrılmış Öğeleri deneyin. Sizi çok hızlı bir şekilde doğru yöne yönlendirebilir.

Ayrılmış elemanlar.
(Büyük önizleme)

Duyuru blog gönderisinde ve dokümanlarda bununla ilgili daha fazla bilgi edinin.

Odak Modu ile DevTools İçin Yepyeni Bir Kullanıcı Arayüzü

DevTool'larımız, Firebug günlerinin ilk günlerinden beri oldukları gibi görünüyor. Elbette, kullanıcı arayüzü zamanla biraz gelişti, daha fazla araç eklendi ve işler yeniden düzenlendi, ancak yüksek düzeyde, hala çoğunlukla aynı.

Edge ekibi, DevTools'un çok bunaltıcı olabileceğini gösteren deneyler ve kullanıcı çalışmaları yürütmüştür (DevTools'un zaten 30'dan fazla paneli olduğunu söylemiş miydim?). Yeni web geliştiricileri nereden başlayacakları ve araçları nasıl keşfedecekleri ve kullanacakları konusunda net bir fikre sahip değilken, daha deneyimli geliştiriciler kendilerini yalnızca bir veya iki tanıdık iş akışında bulma eğilimindedir.

Buna dayanarak, Edge ekibi DevTools'u öğrenmeyi ve kullanmayı kolaylaştıran yeni bir deneysel özellik yayınladı: Focus Mode .

Focus Mode yeni bir etkinlik çubuğu, araç ekleme ve çıkarmanın kolay bir yolu, hızlı görünüm çekmecesi ve yeniden tasarlanmış menüler bulunur.

Focus Mode denemek için önce Settings > Experiments > Focus Mode giderek etkinleştirin.

Bu Edge açıklayıcı belgesinde Focus Mode hakkında daha fazla bilgi edinebilirsiniz.

Safari

Safari'nin kendisi yılda yaklaşık iki kez güncellenirken (son sürüm yeni özelliklerle sonbaharda ve bir diğeri ilkbaharda olmak üzere), Safari Teknoloji Önizleme kanalını kullanarak daha sık güncellemeler almak ve erken özelliklere erişmek mümkündür. Tarayıcının bu sürümü kendini yaklaşık olarak her 2 ila 3 haftada bir günceller.

Müşterileriniz muhtemelen yalnızca normal Safari sürümünü yükleyeceğinden, tüm testleriniz için Teknoloji Önizleme kanalını kullanmak istemeyebilirsiniz, ancak yine de zaman zaman kullanmak için çok ilginç bir tarayıcıdır. Bunu yaparak, yeni özelliklere daha erken erişebilecek ve yakında Safari'ye nelerin geleceğini kontrol edebileceksiniz.

Burada, Teknoloji Önizleme kanalında bulunan ve CSS ile çalışmayı çok daha iyi hale getiren Safari Web Denetçisi için yapılan en son güncellemelerden bazıları yer almaktadır.

Stiller Panelinde CSS İçin Bulanık Otomatik Tamamlama

CSS'yi değiştirmek, DevTools'ta en çok yaptığımız şeylerden biridir ve Safari bunu hepimiz için çok daha hızlı hale getirdi.

Artık, CSS için otomatik tamamlamaları, bulanık eşlemeyi destekler; bu, dolgu üstünü eşleştirmek için "pat" veya kenarlık-alt eşleştirmek için "bob" gibi şeyler yazabileceğiniz anlamına gelir.

VS Code veya bulanık otomatik tamamlamayı destekleyen başka bir metin düzenleyici kullanıyorsanız, kendinizi evinizde hissedeceksiniz.

Bulanık otomatik tamamlama
(Büyük önizleme)

Hesaplanan Panelde CSS Değişkenlerinin Türlerine Göre Gruplandırılması

CSS değişkenleri (diğer adıyla Özel Özellikler) artık tüm büyük tarayıcılarda yıllardır desteklenmektedir ve site sahipleri, tasarım sistemleri ve kitaplıklar bunları gerçekten kapsamlı bir şekilde kullanmaya başlamıştır. İyi sebeplerden dolayı harikalar!

Ancak kullanımdaki bu artışla, DevTools'larımızın Styles ve Computed bölmeleri biraz kalabalık hissetmeye başlıyor.

Safari, bu konuda biraz yardımcı olan bir özellik yayınladı. Computed bölmesi şimdi, daraltılabilir bir bölümün içine düzgün bir şekilde yerleştirilmiş ve değer türlerine göre gruplandırılmış tüm CSS değişkenlerini listeler. Örnek olarak, tüm renk değişkenleri birlikte gruplandırılmıştır.

Hesaplanan CSS değişkenleri
(Büyük önizleme)

Esnek Çizgileri ve Izgara İzlerini Görsel Olarak Hizalayın ve Yaslayın

Kısa bir süre önce, Chrome ve Edge, Styles panelinde esnek kutu ve ızgara düzenleri için gerçekten güzel hizalama düzenleyicileri aldı. justify-content veya align-items gibi karmaşık hizalama özellikleriyle çalışmayı daha görsel hale getirir ve bu nedenle anlaşılmasını çok daha kolay hale getirir.

Safari'de artık align-content/items/self ve justify-content/items/self CSS özellikleri için benzer bir görsel düzenleyici var. Kullanımı çok basittir, düzenleyiciyi açmak için Stiller panelinde bir hizalama değerinin yanındaki simgeye tıklamanız yeterlidir. Ardından, esnek çizgileriniz ve ızgara izleriniz için hizalama türünü seçebilirsiniz.

Firefox

Firefox DevTools ekibi, bir süredir DevTools kod tabanını yeniden yapılandırmak için bir yolculuktaydı ve bu, o dönemde daha az özelliğin gönderilmesine neden olsa da, bu proje şimdi tamamlandı. Bu, ekibin gerçekten harika iyileştirmelerle geri döndüğü anlamına geliyor.

Yürütme İçeriğinizi Seçin

Bazen, ister birden çok iframe'den ister web çalışanlarından olsun, sitenizdeki birden çok bağlamla ilgilenmeniz gerekir. Tarayıcı bunları birden çok farklı işlemde çalıştırdığından, bunlara DevTools'tan kolayca erişmek her zaman mümkün değildir.

Bu duruma yardımcı olmak için Firefox, Konsola yazdığınız kodun nerede yürütüleceğini seçmek için kullanabileceğiniz bir bağlam seçici ekledi. Örneğin, bir iframe'deki bazı global değişkenlerin değerini bilmek istiyorsanız, iframe'e geçmek için seçiciyi kullanabilirsiniz.

bağlam seçici
(Büyük önizleme)

Müfettişte hwb() İşlevi Desteği

hwb() CSS renk işlevi, CSS Renk Modülü 4 belirtiminin bir parçasıdır ve renkleri belirtmek için çok sezgisel bir yöntemdir. HWB renkleri 3 değer kullanır: ilki, rengin başlangıç ​​noktası olan renk tonudur. İkinci ve üçüncü değerler, nihai rengi oluşturmak için karıştırılması gereken beyaz miktarı ve siyah miktarıdır.

hwb işlevi şu anda Safari ve Firefox'ta desteklenmektedir ve Firefox DevTools ekibi, Inspector'da bunun için destek yayınladı. Artık hwb işlevi doğru bir şekilde tanınır ve ek bir avantaj olarak W ve B değerlerini klavyeyle artırmak ve azaltmak, bunları otomatik olarak 0% 100% arasında tutar.

Seçilemeyen Öğeleri Seç

İlginç bir şekilde, DevTools'dan öğe seçmek, işaretçi olayları CSS özelliğine tabidir. Diğer bir deyişle, bir öğenin herhangi bir işaretçi olayı almaması belirtilirse ( pointer-events:none ile), o zaman DevTools'taki öğe seçiciyi kullanarak onu seçemezsiniz, çünkü fare etkileşimi gerektirir.

Chrome ve Edge'de yapabileceğiniz ve çok az kişinin bildiği özel bir numara var. Öğe seçiciyi kullanırken Shift tuşunu basılı tutarsanız, pointer-events:none öğeleri bile seçilebilir hale gelir.

İyi haber şu ki, Firefox da aynı özelliği uygulamaya koydu. Farklı DevTools'taki özelliklerin eşliği, web sitelerini birden çok tarayıcıda test etmeyi ve hata ayıklamayı çok daha kolay hale getirdiğinden, kullanıcılar için her zaman harika bir haberdir.

Parite konusu üzerindeyken, Firefox'un bireysel olay dinleyicilerini de devre dışı bırakmanın bir yolunu sunduğunu da belirtmekte fayda var.

Denetçi panelinde, öğelerin yanındaki [env] rozetlerine tıklayarak öğelere eklenen olay dinleyicilerini listeleyebilirsiniz. Artık olay dinleyicileri listesi, dinleyicileri değiştirmek için onay kutuları da içeriyor.

Etkinlikleri devre dışı bırak
(Büyük önizleme)

Hata Ayıklayıcıda Tek Satır Kodunu Yoksay

Çerçeveler ve kitaplıklar kullanan büyük bir kod tabanında DevTools'ta JavaScript'te hata ayıklamak için zaman harcarsanız, kaynak dosyaları nasıl yok sayacağınızı zaten biliyor olabilirsiniz. Bu özellik, hata ayıklayıcının dosyalarda duraklaması için tüm dosyaları yoksayıldı olarak işaretlemenize olanak tanır.

Bu, örneğin bir çerçeve paketi dosyasını yoksayılmış olarak işaretleyebileceğiniz ve çerçeve koduna adım atmaktan korkmadan kendi kodunuzda mutlu bir şekilde hata ayıklayabileceğiniz anlamına gelir.

Diğer tarayıcılar da bu özelliği desteklerken, Firefox gerçekten harika bir evrimle yenilik yapıyor: bir dosyadaki satır aralıklarını yok sayma yeteneği! Her zaman çağrılan bir dosyada bir yardımcı program işleviniz olduğunu hayal edin. Yalnızca bu işlevi yoksayıldı olarak işaretlemek yararlı olabilir ve yine de o dosyadaki diğer her şeyde normal şekilde hata ayıklayabilirsiniz. Tüm kaynak kodunuzu ve kitaplıklarınızı aynı dosyada gruplayan bir paketleyici kullanırken de faydalı olabilir.

Bu özellik, yazı yazıldığı sırada hala deneyseldir. Önce about:config sayfasında devtools.debugger.features.blackbox-lines boole değerini true olarak ayarlamanız gerekir.

Etkinleştirildiğinde, kaynak kodunuzun herhangi bir satırına sağ tıklayıp Ignore line seçebilirsiniz.

Şimdilik Bu Kadar!

Umarım bu güncellemeleri beğenmişsinizdir ve web geliştirme yaparken faydalı olacaklardır. Her zaman olduğu gibi, geri bildiriminiz, bildirilecek hatalar veya DevTools için yeni özellik fikirleriniz varsa, sesinizi duyurun! Web platformu hata ayıklama yeteneklerinin ne kadar ilerlediğini görmek etkileyici ve hepimiz onu daha da iyi hale getirmeye yardımcı olabiliriz!