Ana içeriğe geç

Linting ve Formatlama

İdeal bir dünyada, kodunuz her zaman temiz, tutarlı ve can sıkıcı hatalardan arınmış olur. Bu, Deno'nun yerleşik linting ve formatlama araçlarının vaadidir. Bu özellikleri doğrudan çalışma zamanına entegre ederek, Deno projelerinizdeki dış bağımlılıkları ve karmaşık konfigürasyonları ortadan kaldırır. Bu yerleşik araçlar hızlı ve performanslıdır; yalnızca zaman kazandırmakla kalmaz, aynı zamanda her kod satırının en iyi uygulamalara uygun olmasını da sağlar.

deno fmt ve deno lint ile harika kod yazmaya odaklanabilirsiniz, çünkü Deno sizin yanınızdadır. Bu, kod tabanınızı en iyi şekilde tutan dikkatli bir asistanınız varmış gibi, gerçekten önemli olan şeye—eşsiz uygulamalar inşa etmeye—odaklanmanıza olanak tanır.

Linting

Linting, kodunuzun potansiyel hatalarını, bugları ve stil sorunlarını analiz etme sürecidir. Deno'nun yerleşik linter'ı, deno lint önerilen kural setini destekleyerek ESLint ile kapsamlı geri bildirim sağlar. Bu, sözdizimi hatalarını tanımlamayı, kodlama kurallarını zorlamayı ve hatalara yol açabilecek potansiyel sorunları vurgulamayı içerir.

ipucu

Linter'ı çalıştırmak için terminalde aşağıdaki komutu kullanın:

deno lint

Varsayılan olarak, deno lint mevcut dizindeki ve alt dizinlerindeki tüm TypeScript ve JavaScript dosyalarını analiz eder. Özellikle dosyaları veya dizinleri lintlemek istiyorsanız, bunları komutun argümanları olarak geçebilirsiniz. Örneğin:

deno lint src/

Bu komut, src/ dizinindeki tüm dosyaları lintleyecektir.

Linter, bir deno.json dosyasında yapılandırılabilir. Lint sürecini ihtiyaçlarınıza göre özelleştirmek için özel kurallar, eklentiler ve ayarlar belirtebilirsiniz.

Formatlama

Formatlama, kodunuzun tutarlı bir stile uyması için düzenini otomatik olarak ayarlama sürecidir. Deno'nun yerleşik formatlayıcısı deno fmt, kodunuzun her zaman temiz, okunabilir ve tutarlı olmasını sağlamak için güçlü dprint motorunu kullanır.

Kodunuzu formatlamak için terminalde aşağıdaki komutu çalıştırın:

deno fmt

Varsayılan olarak, deno fmt mevcut dizindeki ve alt dizinlerindeki tüm TypeScript ve JavaScript dosyalarını formatlar. Belirli dosyaları veya dizinleri formatlamak istiyorsanız, bunları komutun argümanları olarak geçebilirsiniz. Örneğin:

deno fmt src/

Bu komut, src/ dizinindeki tüm dosyaları formatlayacaktır.

Formatlamanızı Kontrol Etme

deno fmt --check komutu, kodunuzun Deno'nun varsayılan formatlama kurallarına uygun bir şekilde doğru biçimlendirilip biçimlendirilmediğini doğrulamak için kullanılır. Dosyaları değiştirmek yerine, onları kontrol eder ve herhangi bir formatlama sorununu bildirir. Bu özellikle sürekli entegrasyon (CI) süreçlerine veya ön-commit kancalarına entegre etmek için yararlıdır, böylece projeniz boyunca kod tutarlılığını sağlamış olursunuz.

bilgi

Formatlama sorunları varsa, deno fmt --check formatlama gerektiren dosyaları listeleyecektir. Tüm dosyalar doğru biçimlendirilmişse, yalnızca herhangi bir çıktı olmadan çıkacaktır.

CI ile Entegrasyon

Formatlama sorunlarını otomatik olarak kontrol etmek için CI pipeline'ınıza deno fmt --check ekleyebilirsiniz. Örneğin, bir GitHub Actions iş akışında:

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- run: deno fmt --check

Bu, herhangi bir kod değişikliğinin projenin formatlama standartlarına uymasını sağlar.

Kullanılabilir Seçenekler

KuralTanımVarsayılanOlası Değerler
indent-widthGirinti genişliğini tanımlama2sayı
line-widthMaksimum satır genişliğini belirleme80sayı
no-semicolonsGerekli yerler dışında noktalı virgül kullanmamafalsetrue, false
prose-wrapProzanın nasıl sarılacağını tanımlamaalwaysalways, never, preserve
single-quoteTek tırnak kullanmafalsetrue, false
unstable-componentSvelte, Vue, Astro ve Angular dosyalarını formatlama
unstable-cssCSS, SCSS, Sass ve Less dosyalarını formatlama
unstable-htmlHTML dosyalarını formatlama
unstable-yamlYAML dosyalarını formatlama
use-tabsGirinti için boşluklar yerine sekmeler kullanmafalsetrue, false

Formatlayıcı, bir deno.json dosyasında yapılandırılabilir. Formatlama sürecini ihtiyaçlarınıza göre özelleştirmek için özel ayarlar belirtebilirsiniz.