Data Engineering

CI/CD và chất lượng mã

Ruff, Pylint, Poetry, GitHub Actions, pipeline CI/CD, kiểm thử tự động, pre-commit hooks, code coverage

20 câu hỏi phỏng vấn·
Mid-Level
1

Ruff trong hệ sinh thái Python là gì?

Câu trả lời

Ruff là một linter và formatter Python cực kỳ nhanh được viết bằng Rust. Nó thay thế các công cụ như Flake8, isort và Black với hiệu suất nhanh hơn 10 đến 100 lần. Ruff hỗ trợ hơn 700 quy tắc linting và dễ dàng tích hợp vào pipeline CI/CD và pre-commit hooks.

2

Vai trò chính của tệp pyproject.toml với Poetry là gì?

Câu trả lời

Tệp pyproject.toml là tệp cấu hình trung tâm cho dự án Python với Poetry. Nó định nghĩa metadata dự án (tên, phiên bản, mô tả), các phụ thuộc production và development, scripts và cấu hình công cụ như Ruff hoặc pytest. Tệp chuẩn hóa này thay thế setup.py, requirements.txt và setup.cfg.

3

Lệnh Poetry nào cài đặt tất cả các phụ thuộc của một dự án hiện có?

Câu trả lời

Lệnh poetry install đọc các tệp pyproject.toml và poetry.lock để cài đặt tất cả các phụ thuộc của dự án trong một virtual environment cô lập. Nếu poetry.lock tồn tại, các phiên bản chính xác được sử dụng để đảm bảo khả năng tái tạo. Nếu không, Poetry sẽ giải quyết các phụ thuộc và tạo tệp lock.

4

Pre-commit hook trong ngữ cảnh Git là gì?

5

Cấu trúc cơ bản của một workflow GitHub Actions là gì?

+17 câu hỏi phỏng vấn

Các chủ đề phỏng vấn Data Engineering khác

Nắm vững Data Engineering cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí