Data Engineering

CI/CD i jakość kodu

Ruff, Pylint, Poetry, GitHub Actions, pipeline'y CI/CD, testy automatyczne, pre-commit hooks, code coverage

20 pytań z rozmów·
Mid-Level
1

Czym jest Ruff w ekosystemie Python?

Odpowiedź

Ruff to niezwykle szybki linter i formatter Pythona napisany w Rust. Zastępuje z korzyścią narzędzia takie jak Flake8, isort i Black, oferując wydajność 10 do 100 razy lepszą. Ruff obsługuje ponad 700 reguł lintingu i łatwo integruje się z pipeline'ami CI/CD oraz pre-commit hooks.

2

Jaka jest główna rola pliku pyproject.toml z Poetry?

Odpowiedź

Plik pyproject.toml jest centralnym plikiem konfiguracyjnym projektu Python z Poetry. Definiuje metadane projektu (nazwa, wersja, opis), zależności produkcyjne i deweloperskie, skrypty oraz konfiguracje narzędzi takich jak Ruff czy pytest. Ten ustandaryzowany plik zastępuje setup.py, requirements.txt i setup.cfg.

3

Które polecenie Poetry instaluje wszystkie zależności istniejącego projektu?

Odpowiedź

Polecenie poetry install odczytuje pliki pyproject.toml i poetry.lock, aby zainstalować wszystkie zależności projektu w izolowanym wirtualnym środowisku. Jeśli poetry.lock istnieje, używane są dokładne wersje, aby zapewnić powtarzalność. W przeciwnym razie Poetry rozwiązuje zależności i tworzy plik lock.

4

Czym jest pre-commit hook w kontekście Git?

5

Jaka jest podstawowa struktura workflow GitHub Actions?

+17 pytań z rozmów

Opanuj Data Engineering na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo