Data Engineering

CI/CD ve Kod Kalitesi

Ruff, Pylint, Poetry, GitHub Actions, CI/CD pipeline'ları, otomatik testler, pre-commit hooks, code coverage

20 mülakat soruları·
Mid-Level
1

Python ekosisteminde Ruff nedir?

Cevap

Ruff, Rust ile yazılmış son derece hızlı bir Python linter ve formatter'ıdır. Flake8, isort ve Black gibi araçların yerini avantajlı bir şekilde alır ve 10 ila 100 kat daha iyi performans sunar. Ruff 700'den fazla linting kuralını destekler ve CI/CD pipeline'larına ve pre-commit hooks'a kolayca entegre olur.

2

Poetry ile pyproject.toml dosyasının ana rolü nedir?

Cevap

pyproject.toml dosyası, Poetry ile bir Python projesinin merkezi yapılandırma dosyasıdır. Proje meta verilerini (ad, sürüm, açıklama), üretim ve geliştirme bağımlılıklarını, scriptleri ve Ruff veya pytest gibi araç yapılandırmalarını tanımlar. Bu standartlaştırılmış dosya setup.py, requirements.txt ve setup.cfg'yi değiştirir.

3

Mevcut bir projenin tüm bağımlılıklarını yükleyen Poetry komutu hangisidir?

Cevap

poetry install komutu, projenin tüm bağımlılıklarını izole bir sanal ortama yüklemek için pyproject.toml ve poetry.lock dosyalarını okur. poetry.lock varsa, yeniden üretilebilirliği sağlamak için tam sürümler kullanılır. Aksi takdirde Poetry bağımlılıkları çözer ve lock dosyasını oluşturur.

4

Git bağlamında pre-commit hook nedir?

5

Bir GitHub Actions workflow'unun temel yapısı nedir?

+17 mülakat soruları

Bir sonraki mülakatın için Data Engineering'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla