Nette Documentation Preview

syntax
Nette X-Ray
***********

.[perex]
[X-Ray |https://github.com/nette/xray] projenizin Nette ekosistemini tam olarak nasıl kullandığını gösterir: hangi metotları, Latte filtrelerini ve yapılandırma anahtarlarını gerçekten kullanıyorsunuz.

En çok hangi Nette metotlarını çağırdığınızı hiç merak ettiniz mi? Gerçekten hangi Latte filtrelerini kullanıyorsunuz? O eski yapılandırma anahtarına hâlâ dokunan var mı? X-Ray kodunuzu statik çözümlemeyle tarar ve bunu anlaşılır bir HTML raporuyla yanıtlar.


Neler Çözümleniyor
==================

X-Ray, regex ya da tahmin yerine statik çözümleme kullanır: tipleri kalıtım üzerinden çözer, bildiren sınıfları saptar ve argüman kalıplarını izler. Sonuç, projenizin Nette ile nasıl etkileştiğinin doğru bir resmidir.

| PHP ve PHPT | Latte şablonları | NEON yapılandırması |
|--------------|-----------------|--------------------|
| metot ve fonksiyon çağrıları | etiketler ve n:nitelikler | DI servis kalıpları |
| argümanlar (konumsal, adlandırılmış) | filtreler ve argümanları | uzantı kaydı |
| dönüş değeri kullanımı | fonksiyonlar ve sabitler | bölüm kullanımı |
| özellik erişimi | sözdizimi çeşitleri | yapılandırma anahtarları |
| sınıf kalıtımı ve trait'ler | | |
| metot geçersiz kılmaları | | |


Kurulum
=======

Onu Composer ile bir dev bağımlılığı olarak kurun:

```shell
composer require --dev nette/xray
```

PHP 8.2 ya da daha yenisini gerektirir ve PHPStan 2.1 üzerinde çalışır. Nette, Latte, Tracy, Dibi ya da Texy kullanan her projeyle çalışır.


Kullanım
========

Onu kaynak dizinlerinize yöneltin:

```shell
vendor/bin/xray app/ src/
```

Kısa sürede, tarayıcınızda açabileceğiniz etkileşimli bir HTML raporu (`xray-report.html`) ve ayrıca makine tarafından okunabilir veri (`xray-report.json`) elde edersiniz:

```


Nette X-Ray
===========

Scanning PHP files ... 142/142 done
Scanning NEON files ... 4/4 done
Scanning Latte files ... 87/87 done

Reports saved to:
  xray-report.json
  xray-report.html
```


Yapılandırma
============

Davranışı özelleştirmek için proje kökünüzde bir `nette-xray.neon` dosyası oluşturun:

```neon
# Varsayılan çözümleme yolları (hiçbir CLI argümanı verilmediğinde kullanılır)
paths:
	- app
	- src

# Dışlanacak ek dizinler (vendor, temp, node_modules, .git varsayılan olarak dışlanır)
excludeDirs:
	- generated

# Sormadan otomatik yükleme
upload: false
```

/--comment


Nette'i Geliştirmeye Yardım Edin
================================

Çözümlemeden sonra, framework'ün gelişimine yön vermeye yardım etmek için raporu isteğe bağlı olarak gönderebilirsiniz; gerçek kullanım verisi anketlerden çok daha güvenilirdir. Yalnızca toplu sayılar gönderilir: her API'nin kaç kez çağrıldığı ve hangi kalıpları kullandığınız. Kod yok, dosya yolu yok, değişken değeri yok. Veri yalnızca açıkça onaylarsanız gönderilir ve JSON raporu her zaman önce yerel olarak kaydedilir, böylece onu rahatça gözden geçirebilirsiniz.
\--

Nette X-Ray

X-Ray projenizin Nette ekosistemini tam olarak nasıl kullandığını gösterir: hangi metotları, Latte filtrelerini ve yapılandırma anahtarlarını gerçekten kullanıyorsunuz.

En çok hangi Nette metotlarını çağırdığınızı hiç merak ettiniz mi? Gerçekten hangi Latte filtrelerini kullanıyorsunuz? O eski yapılandırma anahtarına hâlâ dokunan var mı? X-Ray kodunuzu statik çözümlemeyle tarar ve bunu anlaşılır bir HTML raporuyla yanıtlar.

Neler Çözümleniyor

X-Ray, regex ya da tahmin yerine statik çözümleme kullanır: tipleri kalıtım üzerinden çözer, bildiren sınıfları saptar ve argüman kalıplarını izler. Sonuç, projenizin Nette ile nasıl etkileştiğinin doğru bir resmidir.

PHP ve PHPT Latte şablonları NEON yapılandırması
metot ve fonksiyon çağrıları etiketler ve n:nitelikler DI servis kalıpları
argümanlar (konumsal, adlandırılmış) filtreler ve argümanları uzantı kaydı
dönüş değeri kullanımı fonksiyonlar ve sabitler bölüm kullanımı
özellik erişimi sözdizimi çeşitleri yapılandırma anahtarları
sınıf kalıtımı ve trait'ler    
metot geçersiz kılmaları    

Kurulum

Onu Composer ile bir dev bağımlılığı olarak kurun:

composer require --dev nette/xray

PHP 8.2 ya da daha yenisini gerektirir ve PHPStan 2.1 üzerinde çalışır. Nette, Latte, Tracy, Dibi ya da Texy kullanan her projeyle çalışır.

Kullanım

Onu kaynak dizinlerinize yöneltin:

vendor/bin/xray app/ src/

Kısa sürede, tarayıcınızda açabileceğiniz etkileşimli bir HTML raporu (xray-report.html) ve ayrıca makine tarafından okunabilir veri (xray-report.json) elde edersiniz:



Nette X-Ray
===========

Scanning PHP files ... 142/142 done
Scanning NEON files ... 4/4 done
Scanning Latte files ... 87/87 done

Reports saved to:
  xray-report.json
  xray-report.html

Yapılandırma

Davranışı özelleştirmek için proje kökünüzde bir nette-xray.neon dosyası oluşturun:

# Varsayılan çözümleme yolları (hiçbir CLI argümanı verilmediğinde kullanılır)
paths:
	- app
	- src

# Dışlanacak ek dizinler (vendor, temp, node_modules, .git varsayılan olarak dışlanır)
excludeDirs:
	- generated

# Sormadan otomatik yükleme
upload: false