13 puan yazan haenah 2025-02-10 | Henüz yorum yok. | WhatsApp'ta paylaş

eslint’in sort-keys rule kuralı auto-fixable olmadığı için, npm’de eslint-plugin-sort-keys-fix ve eslint-plugin-sort-destructure-keys gibi auto-fixable özellikler ekleyen eklentiler haftalık sırasıyla 330 bin ve 190 binin üzerinde indirmeyle oldukça popüler. Ancak bu iki eklentinin bazı sorunları var.
sort-keys-fix tarafında, eslint’ten fork edilip değiştirilmiş yapısı nedeniyle property düğümlerini swap ederek düzeltme yapılıyor (kod); bu da O(N^2) zaman karmaşıklığına yol açıyor ve düzeltmelerin uzun sürmesine neden oluyor. Ayrıca sort-destructure-keys tarafında da karşılaştırma sürecinde çok sayıda yinelenen hesaplama bulunuyor (kod); bu da performansı yavaşlatan bir unsur.
Bu yüzden bu sorunları çözmek için eslint-plugin-sort-properties geliştirildi; başlıca özellikleri ise şöyle:

  1. fix işlemlerinde Array.prototype.sort kullanarak zaman karmaşıklığını iyileştiriyor. sort-keys-fixten yaklaşık 10 kat daha hızlı
  2. rule uygulama süresinde sort-destructure-keysten 50 kattan fazla daha hızlı
  3. TypeScript type literal ve interface yapılarında da sıralama yapabiliyor (tseslint parser belirtilmesi gerekiyor)
  4. eslint-plugin-react içindeki jsx-sort-props kuralında bulunan callback’leri sona taşıma özelliğini de içeri alıyor
  5. Yorumları da property’nin bir parçası olarak birlikte taşıyarak bozulmayı önleyebilen bir ayar sunuyor
    Hız ölçüm yöntemi için benchmark referans alınabilir.

Henüz yorum yok.

Henüz yorum yok.