AI Engineering Tools

Lập trình

Môi trường chạy theo ngôn ngữ

Hướng dẫn tra cứu môi trường chạy, trình biên dịch, trình quản lý gói và tệp cấu hình cần để chạy các ngôn ngữ phổ biến.

34 mục

Khái niệm chung

Runtime

Runtime

node index.js

Ý nghĩa

Một chương trình hoặc môi trường thực thi mã.

Khi dùng

Node.js runs JavaScript, Python runs .py files, and the JVM runs compiled Java bytecode.

Ví dụ

node index.js

Ví dụ yêu cầu

Giải thích môi trường thời gian chạy (runtime) nào mà dự án này cần.

Khái niệm chung

Trình biên dịch

Compiler

gcc main.c -o main

Ý nghĩa

Một công cụ chuyển đổi mã nguồn thành một dạng khác, thường là một tệp thực thi.

Khi dùng

C, C++, Rust, Go và Java thường cần một bước biên dịch trước hoặc trong quá trình thực thi.

Ví dụ

gcc main.c -o main

Ví dụ yêu cầu

Hãy cho tôi biết lệnh biên dịch nào cần thiết cho tệp này.

Khái niệm chung

Trình thông dịch

Interpreter

python3 main.py

Ý nghĩa

Một chương trình đọc và chạy mã nguồn trực tiếp hoặc với sự chuẩn bị tối thiểu.

Khi dùng

Python is commonly run through an interpreter, while C is commonly compiled first.

Ví dụ

python3 main.py

Ví dụ yêu cầu

Giải thích xem ngôn ngữ này được diễn giải (interpreted) hay biên dịch (compiled) trong quá trình sử dụng thông thường.

Khái niệm chung

PATH

PATH

echo $PATH

Ý nghĩa

Một danh sách các thư mục mà trình kết terminal tìm kiếm khi bạn nhập một lệnh.

Khi dùng

Nếu python, node, go, cargo hoặc javac không được tìm thấy, PATH là một trong những cài đặt đầu tiên cần kiểm tra.

Lưu ý

Chỉnh sửa PATH không chính xác có thể khiến các lệnh thông thường biến mất khỏi terminal.

Ví dụ

echo $PATH

Ví dụ yêu cầu

Kiểm tra xem lệnh runtime cần thiết có nằm trong PATH hay không.

Khái niệm chung

Kiểm tra phiên bản

Version check

python3 --version && node -v && go version

Ý nghĩa

Một mẫu lệnh để xác nhận phiên bản môi trường thời gian chạy hoặc trình biên dịch nào đã được cài đặt.

Khi dùng

Sử dụng nó trước khi gỡ lỗi các lỗi biên dịch hoặc gói cụ thể theo phiên bản.

Ví dụ

python3 --version && node -v && go version

Ví dụ yêu cầu

Liệt kê các lệnh kiểm tra phiên bản cho ngôn ngữ này.

Khái niệm chung

Trình quản lý gói.

Package manager

pip install requests

Ý nghĩa

Một công cụ cài đặt và ghi lại các thư viện của bên thứ ba.

Khi dùng

pip, npm, cargo, go modules, Maven, and Gradle all handle dependencies in different ecosystems.

Ví dụ

pip install requests

Ví dụ yêu cầu

Giải thích trình quản lý gói (package manager) nào mà dự án này sử dụng.

Python

python3

python3

python3 main.py

Ý nghĩa

Lệnh phổ biến để chạy các tập lệnh Python 3.

Khi dùng

Sử dụng nó để chạy một tệp .py trực tiếp hoặc để tạo một môi trường ảo.

Ví dụ

python3 main.py

Ví dụ yêu cầu

Hiển thị cách chạy tệp Python này.

Python

venv

venv

python3 -m venv .venv

Ý nghĩa

Một môi trường Python độc lập cho từng dự án để cô lập các gói đã cài đặt.

Khi dùng

Sử dụng khi các dự án khác nhau cần các phiên bản gói khác nhau.

Lưu ý

Sau khi tạo, hãy kích hoạt môi trường trước khi cài đặt các gói.

Ví dụ

python3 -m venv .venv

Ví dụ yêu cầu

Tạo và giải thích một môi trường ảo Python cho dự án này.

Python

Kích hoạt môi trường ảo (venv)

activate

source .venv/bin/activate

Ý nghĩa

Chuyển đổi terminal để sử dụng Python và pip trong môi trường ảo.

Khi dùng

Sử dụng nó trước `pip install` hoặc các lệnh Python trong dự án đó.

Ví dụ

source .venv/bin/activate

Ví dụ yêu cầu

Cho tôi biết môi trường ảo Python có đang hoạt động hay không.

Python

pip

pip

pip install requests

Ý nghĩa

Python's package installation tool.

Khi dùng

Sử dụng để cài đặt các thư viện được liệt kê bởi một dự án hoặc cần thiết cho một tập lệnh.

Lưu ý

Đảm bảo rằng pip thuộc cùng một môi trường Python mà bạn sẽ chạy.

Ví dụ

pip install requests

Ví dụ yêu cầu

Kiểm tra môi trường Python nào mà lệnh pip này đang sử dụng.

Python

requirements.txt

requirements.txt

pip install -r requirements.txt

Ý nghĩa

Một tệp văn bản liệt kê các gói Python cần cài đặt.

Khi dùng

Sử dụng nó để tạo lại môi trường gói Python của một dự án.

Ví dụ

pip install -r requirements.txt

Ví dụ yêu cầu

Cài đặt các gói từ requirements.txt trong môi trường ảo (venv) đang hoạt động.

C

gcc

gcc

gcc main.c -o main

Ý nghĩa

Một trình biên dịch phổ biến cho các tệp nguồn C.

Khi dùng

Sử dụng nó để chuyển đổi tệp main.c thành một tệp thực thi.

Lưu ý

Quá trình biên dịch tạo ra một tệp thực thi; nó không tự động chạy nó.

Ví dụ

gcc main.c -o main

Ví dụ yêu cầu

Biên dịch tệp C này và giải thích tệp thực thi được tạo ra.

C

clang

clang

clang main.c -o main

Ý nghĩa

Một trình biên dịch C thường có sẵn trên macOS thông qua Xcode Command Line Tools.

Khi dùng

Sử dụng nó như một lựa chọn thay thế cho `gcc` để biên dịch các tệp C.

Ví dụ

clang main.c -o main

Ví dụ yêu cầu

Kiểm tra xem clang có được cài đặt hay không và biên dịch tệp C này.

C

.h: Tệp tiêu đề.

.h header file

#include "math_utils.h"

Ý nghĩa

Một tệp thường khai báo các hàm, kiểu, hằng số hoặc giao diện dùng chung cho mã C.

Khi dùng

Sử dụng khi nhiều tệp .c cần chia sẻ các khai báo.

Ví dụ

#include "math_utils.h"

Ví dụ yêu cầu

Giải thích cách tệp tiêu đề này kết nối với các tệp nguồn C.

C

Makefile

Makefile

make

Ý nghĩa

Một tệp định nghĩa các lệnh và phụ thuộc xây dựng cho make.

Khi dùng

Sử dụng khi biên dịch một dự án C hoặc C++ cần nhiều lệnh lặp lại.

Ví dụ

make

Ví dụ yêu cầu

Giải thích những gì Makefile này xây dựng.

C++

g++

g++

g++ main.cpp -std=c++20 -o main

Ý nghĩa

Một lệnh trình biên dịch phổ biến cho các tệp nguồn C++.

Khi dùng

Sử dụng `g++` thay vì `gcc` khi biên dịch mã C++.

Ví dụ

g++ main.cpp -std=c++20 -o main

Ví dụ yêu cầu

Biên dịch tệp C++ này với tùy chọn tiêu chuẩn chính xác.

C++

Tiêu chuẩn C++

C++ standard

-std=c++20

Ý nghĩa

Một cài đặt cho biết trình biên dịch nên sử dụng phiên bản ngôn ngữ C++ nào.

Khi dùng

Sử dụng khi mã phụ thuộc vào các tính năng từ C++17, C++20 hoặc một tiêu chuẩn khác.

Lưu ý

Một dự án có thể thất bại nếu trình biên dịch quá cũ so với tiêu chuẩn đã chọn.

Ví dụ

-std=c++20

Ví dụ yêu cầu

Hãy cho tôi biết tiêu chuẩn C++ nào mà mã này cần tuân theo.

C++

CMake

CMake

cmake -S . -B build

Ý nghĩa

Một công cụ cấu hình xây dựng thường được sử dụng cho các dự án C và C++.

Khi dùng

Sử dụng nó khi một dự án có CMakeLists.txt thay vì một lệnh biên dịch đơn giản.

Ví dụ

cmake -S . -B build

Ví dụ yêu cầu

Giải thích các lệnh cấu hình và xây dựng CMake cho dự án này.

Go

go

go

go version

Ý nghĩa

Lệnh chính để chạy, build, kiểm tra và quản lý các mô-đun Go.

Khi dùng

Sử dụng nó cho `go run`, `go build`, `go test`, `go mod` và quản lý phụ thuộc.

Ví dụ

go version

Ví dụ yêu cầu

Kiểm tra phiên bản Go đã cài đặt.

Go

go run

go run

go run main.go

Ý nghĩa

Biên dịch và chạy mã Go trong một lệnh.

Khi dùng

Sử dụng nó khi phát triển một chương trình Go nhỏ hoặc kiểm tra nhanh một gói chính.

Ví dụ

go run main.go

Ví dụ yêu cầu

Chạy chương trình Go này và giải thích bất kỳ lỗi nào.

Go

go.mod

go.mod

go mod init example.com/my-app

Ý nghĩa

Tệp định nghĩa mô-đun Go và các yêu cầu phụ thuộc của nó.

Khi dùng

Sử dụng nó như ranh giới dự án cho việc giải quyết phụ thuộc và nhập liệu của Go.

Ví dụ

go mod init example.com/my-app

Ví dụ yêu cầu

Giải thích những gì tệp go.mod này định nghĩa.

Go

go mod tidy

go mod tidy

go mod tidy

Ý nghĩa

Thêm các yêu cầu mô-đun Go bị thiếu và loại bỏ các mô-đun không sử dụng.

Khi dùng

Sử dụng nó sau khi thay đổi các thư viện hoặc trước khi thực hiện các thay đổi về phụ thuộc của Go.

Ví dụ

go mod tidy

Ví dụ yêu cầu

Chạy `go mod tidy` và tóm tắt các thay đổi về phụ thuộc.

JavaScript / Node.js

Node.js

Node.js

node index.js

Ý nghĩa

Một môi trường thực thi để chạy JavaScript bên ngoài trình duyệt.

Khi dùng

Sử dụng nó cho các script backend, công cụ xây dựng và các công cụ framework web như Next.js.

Lưu ý

JavaScript của trình duyệt và Node.js không có chính xác cùng một API.

Ví dụ

node index.js

Ví dụ yêu cầu

Kiểm tra xem mã JavaScript này dành cho Node.js hay trình duyệt.

JavaScript / Node.js

npm

npm

npm install

Ý nghĩa

Trình quản lý gói mặc định được cài đặt với Node.js.

Khi dùng

Sử dụng để cài đặt các gói và chạy các tập lệnh được định nghĩa trong package.json.

Ví dụ

npm install

Ví dụ yêu cầu

Giải thích các lệnh npm trong tệp package.json này.

JavaScript / Node.js

package.json

package.json

"scripts": { "dev": "next dev" }

Ý nghĩa

Một tệp dự án Node.js ghi lại các tập lệnh, phụ thuộc và siêu dữ liệu gói.

Khi dùng

Sử dụng nó để hiểu các lệnh npm run dev, npm run build và các gói cần thiết.

Ví dụ

"scripts": { "dev": "next dev" }

Ví dụ yêu cầu

Cho tôi biết các lệnh nào mà package.json này cung cấp.

JavaScript / Node.js

nvm

nvm

nvm use

Ý nghĩa

Một công cụ chuyển đổi phiên bản Node.js cho mỗi dự án.

Khi dùng

Sử dụng nó khi một dự án yêu cầu một phiên bản Node cụ thể.

Ví dụ

nvm use

Ví dụ yêu cầu

Kiểm tra xem dự án này có chỉ định phiên bản Node hay không.

Rust

rustup

rustup

rustup show

Ý nghĩa

Công cụ được khuyến nghị để cài đặt và quản lý các bộ công cụ Rust.

Khi dùng

Sử dụng để cài đặt Rust, chuyển đổi giữa phiên bản ổn định/phiên bản thử nghiệm hoặc thêm các mục tiêu.

Ví dụ

rustup show

Ví dụ yêu cầu

Kiểm tra bộ công cụ Rust đang hoạt động.

Rust

rustc

rustc

rustc main.rs

Ý nghĩa

Trình biên dịch Rust.

Khi dùng

Sử dụng nó cho các thử nghiệm Rust đơn giản, mặc dù các dự án thực tế thường sử dụng `cargo`.

Ví dụ

rustc main.rs

Ví dụ yêu cầu

Giải thích xem dự án Rust này nên sử dụng rustc hay cargo.

Rust

cargo

cargo

cargo run

Ý nghĩa

Trình quản lý gói, công cụ xây dựng, trình chạy kiểm thử và trình chạy dự án của Rust.

Khi dùng

Sử dụng cargo run, cargo build và cargo test cho các dự án Rust thông thường.

Ví dụ

cargo run

Ví dụ yêu cầu

Chạy dự án Rust này với `cargo` và giải thích đầu ra.

Rust

Cargo.toml

Cargo.toml

[dependencies]

Ý nghĩa

Tệp manifest định nghĩa một gói Rust, siêu dữ liệu và các phụ thuộc.

Khi dùng

Sử dụng nó để hiểu các crate mà dự án Rust phụ thuộc vào.

Ví dụ

[dependencies]

Ví dụ yêu cầu

Giải thích các phụ thuộc trong tệp Cargo.toml này.

Java

JDK

JDK

java -version

Ý nghĩa

Bộ công cụ phát triển Java (JDK) bao gồm các công cụ cần thiết để biên dịch và chạy các chương trình Java.

Khi dùng

Sử dụng nó khi một dự án cần javac, java, Maven, Gradle hoặc một công cụ xây dựng Java khác.

Ví dụ

java -version

Ví dụ yêu cầu

Kiểm tra xem JDK có được cài đặt hay không và phiên bản nào đang hoạt động.

Java

javac

javac

javac Main.java

Ý nghĩa

Trình biên dịch Java chuyển đổi các tệp .java thành các tệp bytecode .class.

Khi dùng

Sử dụng nó cho các tệp Java đơn giản hoặc để hiểu các công cụ xây dựng hoạt động như thế nào.

Ví dụ

javac Main.java

Ví dụ yêu cầu

Biên dịch tệp Java này và giải thích tệp lớp được tạo ra.

Java

java

java

java Main

Ý nghĩa

Thực hiện các lớp Java đã biên dịch trên JVM.

Khi dùng

Sử dụng nó sau khi biên dịch một chương trình Java đơn giản bằng `javac`.

Lưu ý

Chạy `java Main`, không phải `java Main.class`.

Ví dụ

java Main

Ví dụ yêu cầu

Hiển thị các lệnh biên dịch và chạy cho tệp Java này.

Java

Maven / Gradle

Maven / Gradle

mvn test / ./gradlew test

Ý nghĩa

Các công cụ xây dựng Java phổ biến cho các phụ thuộc, kiểm thử, đóng gói và các tác vụ của dự án.

Khi dùng

Sử dụng Maven khi dự án có tệp pom.xml và Gradle khi nó có tệp build.gradle hoặc gradlew.

Ví dụ

mvn test / ./gradlew test

Ví dụ yêu cầu

Hãy cho tôi biết dự án Java này sử dụng Maven hay Gradle.