Chào mọi người, hôm nay tôi muốn chia sẻ với các bạn trải nghiệm thú vị khi sử dụng Amazon Q CLI để xây dựng một ứng dụng học toán cho trẻ lớp 1 chỉ trong vỏn vẹn 45 phút.
Đây là một hành trình đầy bất ngờ khi tôi khám phá sức mạnh của AI trong việc hỗ trợ phát triển ứng dụng Flutter, từ việc tạo giao diện thân thiện với trẻ em đến xây dựng logic phức tạp chỉ qua 5 lần tương tác với Amazon Q (ở bài này chúng ta tạm thời bỏ qua vấn đề liên quan đến clean code, mình sẽ chia sẻ ở bài sau).
Hãy cùng tôi điểm qua quá trình này và xem làm thế nào công cụ AI này có thể thay đổi cách chúng ta phát triển phần mềm!
1. Tại sao lại chọn Amazon Q.
Amazon Q là trợ lý AI được phát triển bởi AWS, mang đến nhiều ưu điểm nổi bật đặt biệt là với AWS cloud (mình sẽ chia sẻ trong các bài sau), nhưng về coding thì nó vẫn rất tuyệt vời:
Ưu điểm:
• Tích hợp CLI nên có thể chạy bash, debug và thao tác được như người dùng trên máy
• Tích hợp tốt với AWS cloud và các dịch vụ AWS khác
• Hiểu sâu về Flutter và Dart, có thể tạo code hoàn chỉnh theo yêu cầu
• Hỗ trợ phát triển ứng dụng đa nền tảng (iOS, Android) với một codebase duy nhất
• Có khả năng tương tác với hệ thống tệp tin và thực thi lệnh bash để cài đặt dependencies
• Đưa ra gợi ý theo best practices và tối ưu hóa code Flutter
Nhược điểm:
• Gencode chậm hơn các AI khác
• Không có GUI (giao diện người dùng đồ họa)
• Đôi khi cần điều chỉnh code Flutter được tạo ra để phù hợp với yêu cầu cụ thể
• Yêu cầu kết nối internet để sử dụng
• Cần có kiến thức cơ bản về Flutter để tận dụng tối đa công cụ
2. Quá trình thao tác.
Prompt lần 1: Xác định ngôn ngữ và chức năng cơ bản
Trong lần prompt đầu tiên, tôi xác định rõ:
- Sử dụng Flutter làm framework phát triển
- Các chức năng cơ bản của ứng dụng học toán cho trẻ lớp 1
- Cấu trúc dự án Flutter cần thiết
Tôi thật bất ngờ khi ngay lần đầu Q đã build được cho tôi gần đúng với những gì tôi đang nghĩ:
Prompt lần 2: Phát triển giao diện người dùng
Trong lần prompt thứ hai, tôi tập trung vào giao diện người dùng:
- Yêu cầu giao diện thân thiện với trẻ em, màu sắc tươi sáng
- Thiết kế màn hình chính với các nút bấm lớn, dễ nhận biết
- Tạo các widget hiển thị phép tính và nhập kết quả
Amazon Q đã giúp tôi tạo các file Dart với các widget tùy chỉnh, sử dụng thư viện Flutter để tạo giao diện hấp dẫn cho trẻ em.
Prompt lần 3: Xây dựng logic ứng dụng
Trong lần prompt thứ ba, tôi tập trung vào logic của ứng dụng:
• Tạo các phép tính ngẫu nhiên phù hợp với trình độ lớp 1
• Xây dựng hệ thống kiểm tra câu trả lời và tính điểm
• Thiết lập trạng thái ứng dụng với Flutter State Management
Amazon Q đã giúp tôi viết các lớp model và logic xử lý, sử dụng Provider hoặc Riverpod để quản lý trạng thái ứng dụng.
Prompt lần 4: Thêm hiệu ứng và tương tác
Trong lần prompt thứ tư, tôi yêu cầu cải thiện trải nghiệm người dùng:
- Thêm hiệu ứng âm thanh khi trả lời đúng/sai
- Tạo hoạt ảnh khi hoàn thành bài tập
- Thêm hệ thống phần thưởng và huy hiệu
Amazon Q đã giúp tôi tích hợp các package Flutter như audioplayers và lottie để thêm âm thanh và hoạt ảnh, tạo trải nghiệm tương tác hấp dẫn.
Prompt lần 5: Hoàn thiện và tối ưu hóa
Trong lần prompt cuối cùng, tôi tập trung vào hoàn thiện ứng dụng:
- Thêm các cấp độ khó tăng dần
- Tạo hệ thống lưu trữ điểm số và tiến độ
- Tối ưu hóa hiệu suất và sửa các lỗi
Amazon Q đã giúp tôi tích hợp shared_preferences để lưu trữ dữ liệu cục bộ và tối ưu hóa code để ứng dụng chạy mượt mà trên các thiết bị.
Đây là thành quả sau 5 lần prompt của mình.
3. Kết Luận
Việc sử dụng Amazon Q CLI đã giúp tôi xây dựng một ứng dụng Flutter học toán hoàn chỉnh cho trẻ lớp 1 chỉ trong 45 phút - một thời gian rất ngắn so với phương pháp phát triển truyền thống. Quy trình 5 lần prompt cho phép tôi dần dần xây dựng và hoàn thiện ứng dụng theo từng bước, từ xác định framework và chức năng cơ bản đến tối ưu hóa trải nghiệm người dùng cuối cùng.
Đặc biệt, khả năng tích hợp CLI của Amazon Q cho phép tôi thực hiện các thao tác bash, debug và tương tác với hệ thống như một người dùng thực sự trên máy. Điều này tạo ra một quy trình phát triển liền mạch, không cần phải liên tục chuyển đổi giữa các công cụ khác nhau. Tuy nhiên, tốc độ sinh code chậm hơn một số AI khác và việc thiếu GUI đôi khi gây khó khăn trong quá trình phát triển.
Mặc dù vẫn cần một số điều chỉnh nhỏ để hoàn thiện ứng dụng, nhưng Amazon Q đã chứng minh là một công cụ mạnh mẽ cho việc phát triển nhanh các ứng dụng giáo dục bằng Flutter. Đây là một minh chứng cho thấy AI có thể hỗ trợ đắc lực trong việc tạo ra các công cụ học tập hiệu quả cho trẻ em với chi phí thời gian tối thiểu, ngay cả khi sử dụng framework hiện đại như Flutter.
Đăng ký nhận tin.
Chúng tôi chỉ gửi tối đa 2 lần trên 1 tháng. Tuyên bố không spam mail!
0 Comments