Trong bài này
Khi dự án Scratch lớn dần, nếu mọi lệnh đều nằm trong một kịch bản dài, chương trình sẽ khó đọc và khó sửa. Khối tự tạo giúp em gom một nhóm lệnh có ý nghĩa thành một khối riêng, đặt tên rõ ràng, rồi gọi lại nhiều lần ở nhiều vị trí.
Mục tiêu bài học
Sau bài này, em cần:
- Hiểu khối tự tạo là cách chia nhỏ chương trình thành các hành động có tên.
- Biết dùng tham số để cùng một khối xử lý nhiều giá trị khác nhau.
- Nhận ra lúc nào nên tách một đoạn lệnh lặp lại thành khối tự tạo.
- Hiểu giới hạn quan trọng: khối tự tạo trong Scratch không trả về giá trị như hàm trong Python.
- Tránh lỗi gọi khối chưa định nghĩa hoặc đặt tên khối quá mơ hồ.
Khối tự tạo là gì?
Khối tự tạo giống một thao tác mới do em đặt tên. Ví dụ thay vì lặp lại bốn cặp lệnh di chuyển và xoay để vẽ hình vuông, em tạo khối veHinhVuong, rồi gọi khối đó khi cần.

Trong ảnh, dòng màu hồng phía trên là phần định nghĩa khối. Lệnh veHinhVuong (80) phía dưới là nơi gọi khối.
Tham số giúp khối linh hoạt

Tham số là dữ liệu đưa vào khối tự tạo. Cùng một khối veDaGiac có thể nhận độ dài cạnh, góc xoay và số cạnh khác nhau.
Tái sử dụng khối

Khi gọi cùng một khối nhiều lần với tham số khác nhau, chương trình ngắn hơn và ý nghĩa rõ hơn.
Tách logic khởi tạo

Khối tự tạo không chỉ dùng cho vẽ hình. Em có thể dùng để chuẩn bị màn chơi, đặt lại biến, nạp danh sách câu hỏi hoặc gom các bước thường dùng.
Giới hạn cần nhớ
Khối tự tạo trong Scratch chủ yếu thực hiện hành động. Nó không trả về giá trị như hàm return trong Python. Nếu muốn lưu kết quả, em thường cập nhật biến hoặc danh sách bên trong khối.
Lỗi thường gặp
| Lỗi | Hậu quả | Cách sửa |
|---|---|---|
| Gọi khối nhưng chưa định nghĩa | Người đọc không biết khối làm gì. | Tạo định nghĩa khối trước khi dùng trong bài giải. |
| Tên khối quá chung chung | Dự án khó hiểu. | Đặt tên theo hành động: veHinhVuong, chuanBiManChoi. |
| Quên tham số | Khối chỉ dùng được cho một trường hợp. | Thêm tham số cho giá trị thay đổi. |
| Dùng khối tự tạo như hàm trả kết quả | Logic bị sai vì Scratch không có return. | Cập nhật biến hoặc danh sách để lưu kết quả. |
Tóm tắt
Khối tự tạo giúp chương trình ngắn, rõ và dễ bảo trì. Khi thấy một nhóm lệnh xuất hiện nhiều lần hoặc có ý nghĩa riêng, hãy cân nhắc tách thành khối tự tạo.