Phân rã là một kỹ năng khoa học máy tính cơ bản cần thiết để phát triển sự hiểu biết lâu dài của học sinh về cách giải quyết các vấn đề về mã hóa. Bài viết này khám phá phân rã là gì, tại sao nó quan trọng và làm thế nào để tạo điều kiện thuận lợi cho học sinh học phân rã.
phân hủy là gì?
Phân rã là quá trình chia một vấn đề phức tạp thành các phần nhỏ hơn, dễ quản lý hơn. Điều này giúp đơn giản hóa quá trình tạo dự án mã hóa bằng cách cho phép học sinh giải quyết từng thành phần của vấn đề tại một thời điểm.
Tại sao sự phân hủy lại quan trọng?
Khi học sinh bắt đầu học viết mã, các em sẽ phải đối mặt với việc suy nghĩ về ngôn ngữ theo một cách mới và đầy thử thách. Họ phải chuyển từ giao tiếp bằng ngôn ngữ nói, vốn chứa đầy suy luận và sắc thái, sang cấu trúc chính xác và logic cần có trong quá trình viết mã. Sự điều chỉnh này cực kỳ khó khăn đối với sinh viên và thường cản trở sự thành công của họ. Phân rã là một kỹ năng khoa học máy tính quan trọng mà học sinh phải đạt được để viết mã thành công, vì nó cho phép học sinh bắt đầu bằng ngôn ngữ nói và tinh chỉnh nó cho đến khi nó có thể được sử dụng trong một dự án viết mã.
Việc phân tách một vấn đề cho phép giải quyết vấn đề đó theo từng bước nhỏ, giúp tránh việc nó trở nên quá sức đối với học sinh. Khi học sinh phân tách vấn đề thành các phần nhỏ hơn trước khi bắt đầu viết mã, họ có thể xây dựng từng phần nhỏ của dự án và kiểm tra nó để đảm bảo nó hoạt động như mong đợi trước khi chuyển sang phần tiếp theo. Điều này dễ dàng hơn nhiều so với việc cố gắng viết mã tất cả các bước cần thiết để đạt được mục tiêu cùng một lúc và giúp học sinh không bị thất vọng vì lạc lối trong một dự án dài khi cố gắng khắc phục lỗi.
Quá trình phân rã cũng cung cấp cho sinh viên một cách tiếp cận có hệ thống để xây dựng một dự án, loại bỏ sự cám dỗ mà sinh viên có thể phải đoán và kiểm tra để tìm ra giải pháp. Đoán và kiểm tra là một cách không hiệu quả để giải quyết vấn đề và nó trở nên kém hiệu quả khi học sinh bắt đầu tham gia vào các thử thách mã hóa ngày càng phức tạp hơn.
Ngoài ra, việc phân tách một dự án cho phép học sinh xác định các mẫu trong mã của mình và xây dựng, sửa đổi và sử dụng lại các phần mã. Điều này làm cho cả việc xây dựng và xử lý sự cố của dự án trở nên dễ dàng hơn, đồng thời cung cấp cho sinh viên sự hiểu biết sâu sắc hơn về mã mà họ đang tạo, cho phép họ sử dụng sự hiểu biết này trong các dự án trong tương lai.
Cuối cùng, quá trình phân rã cũng tạo điều kiện thuận lợi cho sự hợp tác giữa các học sinh khi họ làm việc cùng nhau để tạo ra các dự án chế tạo robot theo nhóm. Một dự án phân rã được ghi vào sổ tay kỹ thuật cung cấp một hiện vật để học sinh sử dụng khi thảo luận về các dự án nhóm hoặc chia sẻ với các nhóm khác.
Tạo điều kiện cho sự phân hủy
Sự phân rã xảy ra khi học sinh đang trong giai đoạn lập kế hoạch, trước khi các em bắt đầu xây dựng dự án của mình. Học sinh nên ghi lại quá trình phân rã của mình vào sổ tay kỹ thuật và chia sẻ nó với bạn trước khi bắt đầu viết mã. Để biết thêm thông tin về cách sử dụng sổ ghi chép kỹ thuật với sinh viên, hãy xem bài viết này.
Cung cấp cho học sinh khuôn khổ ba bước đơn giản này để tiếp cận quá trình phân rã:
- Xác định mục tiêu chính của dự án bằng cách nêu rõ kết quả mà robot sẽ thể hiện khi dự án thành công. Ghi lại mục tiêu này vào sổ tay kỹ thuật.
- Xác định các bước chính mà robot phải thực hiện để đạt được mục tiêu. Xem xét và ghi lại các bước chính hoặc bức tranh tổng thể mà robot sẽ cần hoàn thành để đạt được mục tiêu. Ghi lại các bước cấp cao này vào sổ tay kỹ thuật.
-
Chia các bước chính thành các bước tăng dần nhỏ nhất có thể của hành vi của robot. Chia từng bước chính thành hành vi nhỏ nhất mà robot có thể hoàn thành. Ghi lại các bước phân tách này vào sổ tay kỹ thuật.
- Mỗi hành vi của robot phải có thể khớp với một khối hoặc lệnh tương ứng. Nếu không, các bước có thể được phân tách thêm.
Trong ví dụ này, học sinh đang phân tách một dự án để hoàn thành một mê cung trong Sân chơi + Mê cung trên tường VEXcode VR.
Bước 1: Xác định mục tiêu chính của dự án. Ghi lại mục tiêu vào sổ tay kỹ thuật.
Bước 2: Xác định các bước chính mà robot phải thực hiện để đạt được mục tiêu.
- Ở đây, học sinh đã suy nghĩ về tất cả các hành vi mà robot sẽ cần thực hiện để lái xe từ điểm bắt đầu đến điểm kết thúc của mê cung và liệt kê chúng theo thứ tự vào sổ tay kỹ thuật.
Bước 3: Chia các bước chính thành các bước nhỏ nhất trong hành vi của robot.
- Học sinh có thể bắt đầu xác định các giá trị gần đúng cần thiết để hoàn thành từng bước. Những giá trị này sẽ cần được kiểm tra và điều chỉnh khi xây dựng dự án trong VEXcode.
- Học sinh nên kiểm tra để đảm bảo mỗi bước phân tách tương ứng trực tiếp với một khối VEXcode. Nếu không, bước này cần được phân tách thêm.
Sau khi học sinh đã phân tách dự án của mình xuống cấp độ các khối hoặc lệnh riêng lẻ, các em có thể chuyển từ giai đoạn lập kế hoạch dự án sang giai đoạn thực hiện. Họ nên chuyển các bước chính được xác định ở bước 2 vào Nhận xét, sau đó thêm các khối hoặc lệnh tương ứng cho từng hành vi được phân tách hoàn toàn từ bước 3 sang từng Nhận xét đó để xây dựng dự án của mình.
Học sinh nên xây dựng dự án của mình theo từng bước được phân tách, kiểm tra từng hành vi (hoặc tập hợp các hành vi được nhóm một cách hợp lý) trước khi chuyển sang bước tiếp theo. Ở giai đoạn này, học sinh sẽ cần sử dụng các tài nguyên mà họ có để xác định các giá trị tham số chính xác. Ví dụ: trong ví dụ VEXcode VR ở trên, các giá trị khoảng cách được xác định bằng cách sử dụng kiến thức rằng mỗi ô vuông mê cung có chiều ngang là 300mm. Phương pháp xác định giá trị sẽ khác nhau tùy theo hoàn cảnh, nhưng luôn cần phải kiểm tra và điều chỉnh các giá trị trong quá trình tạo dự án mã hóa.
Hỗ trợ học sinh học phép phân hủy
Trước khi học sinh bắt đầu thực hiện một thử thách từ Phòng thí nghiệm STEM hoặc dự án VEXcode khác, hãy dành thời gian tự mình giải quyết quá trình phân tách để sẵn sàng trả lời các câu hỏi mà học sinh có thể đặt ra. Khuyến khích học sinh cho bạn xem kế hoạch phân rã cho dự án của họ trước khi bắt đầu viết mã, để bạn có thể củng cố quá trình phân tách và kiểm tra để chắc chắn rằng họ đã chia nhiệm vụ thành những hành vi nhỏ nhất có thể của robot. Nhắc nhở học sinh rằng các em có thể xác định được khối hoặc lệnh tương ứng với từng hành vi.
- Nếu học sinh gặp khó khăn trong việc hình dung các bước chính hoặc bức tranh tổng thể mà robot cần thực hiện để hoàn thành mục tiêu của dự án, hãy khuyến khích họ:
- Vẽ đường đi mà robot cần đi để hoàn thành mục tiêu.
- Thực hiện các bước mà robot cần thực hiện để hoàn thành mục tiêu.
- Nói về các bước mà robot cần thực hiện để hoàn thành mục tiêu.
- Nếu học sinh đang gặp khó khăn trong việc xác định xem các bước của mình đã được chia thành từng khối hoặc cấp độ lệnh hay chưa, hãy hỏi họ:
- Robot sẽ cần bao nhiêu khối hoặc lệnh để hoàn thành hành vi đó?
- Robot có thể hoàn thành bước đó chỉ bằng một khối hoặc lệnh không?
- Làm cách nào bạn có thể phân tách hành vi đó thành các hành động nhỏ hơn nữa của robot?
Hỗ trợ học sinh của bạn khi các em học cách phân rã sẽ đảm bảo các em có nền tảng vững chắc để giải quyết các vấn đề trong khoa học máy tính trong tương lai.
Bạn có thêm câu hỏi nào về việc hỗ trợ học sinh học cách phân rã trong lớp học của bạn không? Yêu cầu họ trong Cộng đồng PD+hoặc lên lịch Phiên 1-1 để nói chuyện với Chuyên gia VEX.