Ngôn Ngữ Lập Trình Scratch: Ngôn ngữ lập trình với mục đích giáo dục

Scratch là một ngôn ngữ lập trình mang tính giáo dục miễn phí dựa trên các khối ngôn ngữ lập trình trực quan (VPL) và trang web chủ yếu để giáo dục lập trình, với mục tiêu là hướng tới đối tượng có độ tuổi từ 8 đến 16 tuổi.

Người dùng trên trang web, gọi là Scratcher, có thể tạo ra dự án trên trang web sử dụng giao diện với khối lập trình. Dự án có thể xuất thành các tệp dạng HTML5, JavaScript, Android appsEXE bằng các công cụ bên ngoài. Dự án được phát triển bởi MIT Media Lab, được dịch thành hơn 70 ngôn ngữ, và được sử dụng ở hầu hết các nơi trên thế giới. Scratch được sử dụng và giảng dạy ở các trường học, trung tâm và các trường Cao đẳng cũng như các tổ chức tri thức công cộng khác. Tính tới tháng 12 năm 2021, thống kê cộng đồng trên trang web chính thức của Scratch cho thấy có hơn 92 triệu dự án được chia sẻ bởi hơn 82 triệu người dùng, tổng số 638 triệu dự án đã từng được tạo và hơn 100 triệu lượt truy cập trang web hàng tháng.

Scratch (ngôn ngữ lập trình)
Ngôn Ngữ Lập Trình Scratch: Phần mềm: Scratch 3.0
Mẫu hìnhEvent-driven, Ngôn ngữ lập trình mang tính giáo dục dựa trên khối
Xuất hiện lần đầu2003 (2003) (nguyên mẫu đầu tiên)
2004 (2004) (nguyên mẫu thứ hai)
15 tháng 5 năm 2007; 16 năm trước (2007-05-15) (ra mắt công chúng)
9 tháng 5 năm 2013; 10 năm trước (2013-05-09) (Scratch 2.0)
2 tháng 1 năm 2019; 5 năm trước (2019-01-02) (Scratch 3.0)
Ngôn ngữ thực thiSqueak (Scratch 0.x, 1.x)
ActionScript (Scratch 2.0)
JavaScript (Scratch 3.0)
Hệ điều hànhMicrosoft Windows, macOS, Linux (thông qua renderer), HTML5, iOS, iPadOS, và Android.
Giấy phépGPLv2 và Giấy phép mã nguồn Scratch
Phần mở rộng tên tập tin
  • .scratch (Scratch 0.x)
    *.sb, *.sprite (Scratch 1.x)
    *.sb2, *.sprite2 (Scratch 2.0)
    *.sb3, *.sprite3 (Scratch 3.0)
Trang mạngscratch.mit.edu
Ảnh hưởng từ
MSWLogo, Smalltalk, HyperCard, StarLogo, AgentSheets, AgentCubes, Etoys
Ảnh hưởng tới
Catrobat, ScratchJr, Snap!, mBlock, Turtlestitch

Tên gọi "Scratch" được đặt theo một kỹ thuật được sử dụng bởi DJ được gọi là "scratching", trong đó các bản ghi vinyl được cắt lại với nhau và thao tác trên bàn xoay để tạo ra các hiệu ứng âm thanh và âm nhạc khác nhau. Giống như scratching, trang web của Scratch cho phép người dùng kết hợp các phương tiện khác nhau với nhau (bao gồm đồ họa, âm thanh và các chương trình khác) bằng cách tạo hoặc "phối lại" (remix) các dự án từ những người dùng khác, như trò chơi điện tử, hoạt hìnhmô phỏng.

Phần mềm: Scratch 3.0 Ngôn Ngữ Lập Trình Scratch

Giao diện người dùng

Giao diện Scratch được chia thành ba phần chính: khu vực sân khấu (stage area), bảng màu khối (block palette) và khu vực code (coding area) để đặt và sắp xếp các khối thành các tập lệnh có thể được chạy bằng cách nhấn vào biểu tượng cờ màu xanh lá cây hoặc nhấp vào chính mã. Người dùng cũng có thể tạo các khối mã của riêng họ và chúng sẽ xuất hiện trong "Khối của tôi" (My Blocks).

Khu vực sân khấu là nơi xuất hiện các kết quả (ví dụ: hình ảnh động, đồ thị con rùa (turtle graphics) ở kích thước nhỏ, bình thường hoặc toàn màn hình, và tất cả các sprites được liệt kê ở khu vực dưới cùng. Tọa độ trên sân khấu là tọa độ x và y, với 0.0 là trung tâm sân khấu.

Ngôn Ngữ Lập Trình Scratch: Phần mềm: Scratch 3.0 
Một chương trình để thay đổi nền và làm cho một nhân vật nói khi nhấp vào

Với một sprites được chọn ở dưới cùng của khu vực sân khấu, các khối lệnh có thể được áp dụng cho nó bằng cách kéo chúng từ bảng màu khối vào khu vực code. Tab Trang phục cho phép người dùng thay đổi giao diện của sprites để tạo ra các hiệu ứng khác nhau, bao gồm cả hoạt ảnh. Tab Âm thanh cho phép gắn âm thanhâm nhạc vào một sprites.

Khi tạo sprites và hình nền, người dùng có thể vẽ sprites của riêng họ theo cách thủ công, chọn sprites từ thư viện hoặc tải lên hình ảnh.

Bảng dưới đây hiển thị các thể loại của các khối lập trình:

Loại Ghi chú Loại Ghi chú
Chuyển động (Motion) Chuyển động của sprites như góc và vị trí. Cảm biến (Sensing) Sprites có thể tương tác với môi trường xung quanh.
Hiển thị (Looks) Điều khiển hình ảnh của sprites. Các phép Toán (Operators) Toán học, so sánh.
Âm thanh (Sound) Phát tệp âm thanh và hiệu ứng. Các biến số (Variables) Biến và Danh sách sử dụng và phân công.
Sự kiện (Events) Trình xử lý sự kiện. Khối của tôi (My Blocks) Một số chức năng được tạo bởi người dùng được xác định bởi các khối khác trong việc xác định tập lệnh.
Điều khiển (Control) Điều kiện và vòng lặp, v.v. Tiện ích mở rộng (Extensions) Giải thích bên dưới.

Phần mềm

Một phần mềm ngoại tuyến của Scratch 3.0 có sẵn cho Windows 10 trong Microsoft Store hoặc tải xuống trực tiếp với tệp .exe, macOS 10.13 của Apple trên App Store hoặc tải xuống trực tiếp với tệp .dmg, Chrome OSAndroid trên Google Play, điều này cho phép tạo và phát các chương trình Scratch ngoại tuyến. Trình chỉnh sửa ngoại tuyến cũng có thể được tải xuống trong các phiên bản trước, chẳng hạn như Scratch 2.0 và Scratch 1.4.

Tiện ích mở rộng

Trong Scratch, tiện ích mở rộng thêm các khối và tính năng bổ sung có thể được sử dụng trong các dự án. Trong Scratch 2.0 và 3.0, các tiện ích mở rộng đều dựa trên phần cứng. Các tiện ích mở rộng dựa trên phần mềm đã được thêm vào Scratch 3.0, cùng với một số tiện ích mở rộng dựa trên phần cứng mới như micro:bit. Các tiện ích mở rộng được liệt kê dưới đây:

  • Music
  • Pen
  • Video Sensing
  • Text to Speech
  • Translate
  • BBC Micro:bit
  • LEGO Mindstorms EV3
  • LEGO WeDo 2.0
  • Makey Makey
  • LEGO SPIKE Prime
  • LEGO BOOST
  • Go Direct Force & Acceleration

Vật lý

  • Lego Mindstorms EV3 – điều khiển động cơ và nhận dữ liệu cảm biến từ Lego Mindstorms EV3.
  • Makey Makey – sử dụng Makey Makey để điều khiển các dự án.
  • Lego Education WeDo 2.0 – điều khiển động cơ và nhận dữ liệu cảm biến từ Lego WeDo.
  • Lego Education SPIKE Prime - ngôn ngữ lập trình chính cho Lego SPIKE Prime, bao gồm điều khiển động cơ và nhận dữ liệu cảm biến.
  • BBC micro:bit – sử dụng bbc micro:bit để điều khiển các dự án.
  • Lego BOOST – mang những sáng tạo robot vào cuộc sống.
  • Go Direct Force & Acceleration – Cảm biến kéo, đẩy, chuyển động và xoay.

Codebase

Scratch 3.0 là một codebase dựa trên JavaScript hoàn toàn mới được tạo thành từ nhiều thành phần như "Scratch-GUI", hiện dựa trên một thư viện từ Blockly, "Scratch-VM" và "Scratch-Render", công cụ kết xuất. Các khối Scratch được thực hiện bằng cách sử dụng Blockly.

Xem thêm

Tham khảo

Liên kết ngoài

Ngôn Ngữ Lập Trình Scratch: Phần mềm: Scratch 3.0  Tư liệu liên quan tới Scratch (programming language) tại Wiki Commons

Tags:

Phần mềm: Scratch 3.0 Ngôn Ngữ Lập Trình ScratchNgôn Ngữ Lập Trình Scratch.exeAndroid (hệ điều hành)Gói ứng dụng AndroidHTML5JavaScriptNgôn ngữPhần mềm miễn phíTrang webTrường họcen:List of educational programming languagesen:MIT Media Lab

🔥 Trending searches on Wiki Tiếng Việt:

GĐà NẵngDương Công MinhQuan VũTruyện KiềuVương quốc Liên hiệp Anh và Bắc IrelandBóng đá tại Đại hội Thể thao Đông Nam Á 2023 – NamTên gọi Việt NamChâu MỹNgô Đình DiệmBảng xếp hạng bóng đá nam FIFAÔ nhiễm môi trườngNguyễn Thị BìnhNgô Minh HiếuHổKhóa chặt cửa nào SuzumeVụ án Thiên Linh CáiPhạm Văn ThiềuBảo Bình (chiêm tinh)Mao Trạch ĐôngBố già (phim 2021)Chân Hoàn truyệnSeventeen (nhóm nhạc)Phân cấp hành chính Việt NamSơn Tùng M-TPĐặng Trần ĐứcBDSMCông an cấp tỉnh (Việt Nam)Ba LanGia Cát LượngPhong trào Đồng khởiĐảng Việt TânDanh sách quốc gia theo diện tíchCuộc đua xe đạp tranh Cúp truyền hình Thành phố Hồ Chí Minh 2022Nhà ĐườngẢ Rập Xê ÚtTỉnh thành Việt NamNgườiHiệp định Paris 1973Danh sách quốc gia theo ý nghĩa tên gọiLê Trọng TấnTạ Đình ĐềKhởi nghĩa Hương KhêSingaporeTổn thất nhân mạng trong Chiến tranh Việt NamĐường lên đỉnh Olympia năm thứ 23Đường Thái TôngKim Keon-heeĐường cao tốc Nội Bài – Lào CaiDanh sách quốc gia Đông Nam ÁTomorrow X TogetherBình PhướcAn Dương VươngSố nguyên tốMinecraftHari WonHán Cao TổTrịnh Ngọc QuyênKim Bình MaiChiến tranh thế giới thứ nhấtTổng công ty Truyền thông đa phương tiện VTCNgô Hoàng NgânGoogle DịchMark ZuckerbergĐịa lý Việt NamLiên Hợp QuốcChủ nghĩa cộng sảnĐàm Vĩnh HưngDanh sách trại giam ở Việt NamQuan hệ tình dụcHồ Chí MinhSuper SentaiAnhChóFukada EimiUkrainaPhố cổ Hội AnDanh sách tập phim Thám tử lừng danh Conan (2016–nay)Danh sách hoàng đế nhà Nguyễn🡆 More