0
0
Lập trình
Hưng Nguyễn Xuân 1
Hưng Nguyễn Xuân 1xuanhungptithcm

Hành Trình Xây Dựng Ứng Dụng Get Donee với Kiro

Đăng vào 2 tháng trước

• 5 phút đọc

Giới Thiệu

Khi lần đầu tiên tôi tiếp cận Kiro, cảm giác như tôi đang sở hữu một mã cheat trong lập trình. Thời điểm đó, Kiro vẫn đang trong giai đoạn thử nghiệm, không có giới hạn và những ràng buộc kỳ lạ. Tôi bắt đầu khám phá khả năng lập trình dựa trên đặc tả của nó và cảm thấy như đang sống trong một giấc mơ — như thể tôi có thể hướng dẫn AI chính xác những gì tôi muốn và chỉ cần ngồi lại quan sát.

Trước khi biết đến Kiro, tôi thường đi theo vòng lặp quen thuộc: trò chuyện với AI, rà soát từng dòng mã, sửa từng lỗi một cách thủ công. Nhưng lần này thì khác. Với sự kết hợp giữa Kiro và Claude Sonnet 4, mọi thứ trở nên hoàn hảo. Cảm giác như tôi không còn lập trình, mà chỉ đang... cảm nhận. Tôi chưa bao giờ nghĩ mình có thể giao phó hoàn toàn cho AI, nhưng tôi đã làm — và tôi đã tận hưởng nó.

Giai Đoạn Giấc Mơ Ngọt Ngào 🌙

Trước đây, tôi luôn sử dụng AI theo kiểu trò chuyện truyền thống — rà soát từng đoạn mã, kiểm tra từng dòng một. Nhưng Kiro đã giới thiệu cho tôi một khái niệm mới: phát triển dựa trên đặc tả. Thay vì giải thích dài dòng trong chat, tôi có thể định nghĩa các yêu cầu và Kiro sẽ thực hiện chúng ngay lập tức.

Đây là lần đầu tiên tôi trải nghiệm cái mà tôi thích gọi là “lập trình theo vibe.” Nó không chỉ đơn thuần là tạo ra mã; mà là để AI thực sự hòa nhập vào dự án. Kết hợp với Claude Sonnet 4, Kiro cảm thấy như một sự phát triển hoàn hảo. Tôi gần như không thể tin được những ngày đầu êm đềm đó — như thể có một cuộc kiểm tra bảo mật tích hợp trước khi ý tưởng của tôi trở thành mã thực sự.

Kiểm Tra Thực Tế ⚖️

Nhưng khi tôi xây dựng ứng dụng quản lý công việc — mà tôi gọi là Get Donee — mối quan hệ của tôi với Kiro bắt đầu có sự thay đổi. Trong khi việc lập trình theo vibe cảm thấy tự do, những bất cập bắt đầu xuất hiện khi tôi đến giai đoạn tinh chỉnh giao diện và gỡ lỗi.

Việc điều chỉnh giao diện thường trở thành một trò chơi đoán. Tôi cung cấp JSON, hình ảnh hoặc mô tả chi tiết, nhưng Kiro đôi khi lại trả về thiết kế hoàn toàn khác với những gì tôi hình dung. Một chút khoảng cách ở đây, những widget không mong muốn ở đó.

Và phần đau nhất? Gỡ lỗi.
Vì hệ thống của tôi không thể chạy mô phỏng, tôi phải xây dựng và kiểm tra trên điện thoại mỗi lần. Mỗi khi tôi yêu cầu Kiro sửa lỗi, nó thường tạo ra những tệp tin ngẫu nhiên — tệp kiểm tra, tệp thiết kế, thậm chí cả tệp thực hiện mà tôi không cần. Đôi khi nó chạm vào những tệp mà tôi chưa bao giờ yêu cầu. Và nhiều “sự sửa chữa” không hề hoạt động.

Tôi nhanh chóng nhận ra: nếu bạn muốn gỡ lỗi hiệu quả, bạn phải cực kỳ nghiêm ngặt. Như kiểu, “thay đổi dòng mã chính xác này, trong tệp chính xác này, thành mã chính xác này.” Không có không gian cho sự linh hoạt, không có lập trình theo vibe.

Lần khác, nó đã xóa toàn bộ widget thay vì sửa chữa đúng cách.🙃 Một cách sửa chữa thật thông minh! LOL

🤔 Cảm Xúc Đan Xen

Tôi sẽ không nói dối — Kiro vẫn cảm thấy cách mạng ở một số khía cạnh. Lập trình dựa trên đặc tả là điều tôi chưa bao giờ nghĩ mình sẽ thích đến vậy. Nhưng cùng lúc đó, mã dự phòng quá phức tạp, những rắc rối về giao diện và sự hỗn loạn của các tệp ngẫu nhiên đã làm mọi thứ trở nên khó khăn hơn tôi tưởng.

Mức giá mới và giới hạn số lượng đặc tả cũng tạo ra một số rắc rối (dù họ đã cải thiện điều này bây giờ). Hơn nữa, việc bị khóa chỉ trong các phiên bản Sonnet 3.7 và 4.0 bên trong IDE cảm thấy khá hạn chế.

🌟 Những Suy Nghĩ Cuối Cùng

Vì vậy, trải nghiệm của tôi là... đan xen. Một mặt, Kiro đã mang đến cho tôi giấc mơ ngọt ngào của việc lập trình theo vibe mà tôi cảm thấy không thể bị ngăn cản. Mặt khác, khi đến lúc tinh chỉnh và gỡ lỗi, nó đã trở thành một cơn ác mộng.

Dù sao đi nữa, việc xây dựng Get Donee với Kiro là một trong những trải nghiệm phát triển thú vị nhất mà tôi từng có. Tôi không hối hận khi đã thử nghiệm nó — thực tế là tôi đã học được rất nhiều về cách AI phù hợp với quy trình làm việc của tôi.

Thực Hành Tốt Nhất

  • Đặt yêu cầu rõ ràng: Khi làm việc với Kiro, hãy chắc chắn rằng yêu cầu của bạn được định nghĩa một cách rõ ràng và chi tiết.
  • Kiểm tra trước khi chạy: Luôn kiểm tra mã được tạo ra trước khi triển khai để tránh lỗi không mong muốn.

Những Cạm Bẫy Thường Gặp

  • Thao tác không chính xác: Đừng để Kiro tự động hóa quá nhiều; có thể gây ra lỗi không mong muốn.
  • Thiếu rõ ràng: Không mô tả rõ ràng có thể dẫn đến kết quả không chính xác.

Mẹo Hiệu Suất

  • Sử dụng tệp tin mẫu: Giúp Kiro hiểu rõ hơn về yêu cầu của bạn.
  • Phân chia công việc: Thay vì yêu cầu một lần cho nhiều tính năng, hãy chia nhỏ thành từng phần.

Giải Quyết Vấn Đề

  • Gỡ lỗi mã: Nếu Kiro tạo ra mã không mong muốn, hãy kiểm tra từng dòng và yêu cầu sửa chữa cụ thể.
  • Lên kế hoạch cho các yêu cầu: Đặt ra các yêu cầu cụ thể và giữ cho chúng rõ ràng để tránh nhầm lẫn.

Câu Hỏi Thường Gặp

Kiro là gì?

Kiro là một nền tảng lập trình dựa trên AI, giúp lập trình viên tạo mã nhanh chóng bằng cách định nghĩa các yêu cầu.

Làm thế nào để tối ưu hóa việc sử dụng Kiro?

Để tối ưu hóa, hãy chắc chắn rằng yêu cầu của bạn rõ ràng và cụ thể, kiểm tra mã trước khi chạy và phân chia công việc thành các bước nhỏ.

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào