Trong hai năm qua, nhóm của tôi tại Work & Co và tôi đã thử nghiệm và dần dần tích hợp các công cụ mã hóa AI như Copilot, Cursor, Claude và ChatGPT để giúp chúng tôi mang đến trải nghiệm web được nhiều người sử dụng. Phải thừa nhận rằng, sau một số hoài nghi ban đầu và một vài khoảnh khắc ngạc nhiên, nhiều công cụ AI khác nhau đã được tôi sử dụng hàng ngày. Theo thời gian, danh sách các ứng dụng mà chúng tôi thấy hợp lý khi để AI tiếp quản bắt đầu phát triển, vì vậy tôi quyết định chia sẻ một số trường hợp sử dụng thực tế cho các công cụ AI mà tôi gọi là “nhà phát triển có trách nhiệm”. Ý tôi là gì khi nói về một nhà phát triển có trách nhiệm? Chúng tôi phải đảm bảo rằng chúng tôi cung cấp mã chất lượng như mong đợi của các bên liên quan và khách hàng. Những đóng góp của chúng tôi (tức là các yêu cầu kéo) không nên trở thành gánh nặng cho các đồng nghiệp của chúng tôi, những người sẽ phải xem xét và kiểm tra công việc của chúng tôi. Ngoài ra, trong trường hợp bạn làm việc cho một công ty: Các công cụ chúng tôi sử dụng cần phải được người sử dụng lao động chấp thuận. Các khía cạnh nhạy cảm như bảo mật và quyền riêng tư cần được xử lý đúng cách: Không dán bí mật, dữ liệu khách hàng (PII) hoặc mã độc quyền vào các công cụ mà không có sự phê duyệt chính sách. Hãy coi nó như mã từ một người lạ trên internet. Luôn kiểm tra và xác minh. Lưu ý: Bài viết này giả định có một số kiến ​​thức cơ bản về các công cụ mã hóa AI như Copilot bên trong VSCode hoặc Cursor. Nếu tất cả những điều này nghe có vẻ hoàn toàn mới và xa lạ với bạn, thì video hướng dẫn Github Copilot có thể là điểm khởi đầu tuyệt vời cho bạn.

Những ứng dụng hữu ích của công cụ mã hóa AI Lưu ý: Các ví dụ sau sẽ chủ yếu tập trung vào cách làm việc trong các ứng dụng web dựa trên JavaScript như React, Vue, Svelte hoặc Angular. Tìm hiểu về một Codebase xa lạ Việc làm việc trên các cơ sở mã đã được thiết lập không có gì lạ và việc tham gia một cơ sở mã kế thừa lớn có thể đáng sợ. Chỉ cần mở dự án và tác nhân AI của bạn (trong trường hợp của tôi là Trò chuyện phi công phụ trong VSCode) và bắt đầu đặt câu hỏi giống như bạn hỏi đồng nghiệp. Nói chung, tôi thích nói chuyện với bất kỳ đặc vụ AI nào giống như tôi nói chuyện với đồng loại. Đây là một lời nhắc ví dụ tinh tế hơn: "Cung cấp cho tôi tổng quan về kiến trúc cấp cao: điểm truy cập, định tuyến, xác thực, lớp dữ liệu, công cụ xây dựng. Sau đó liệt kê 5 tệp cần đọc theo thứ tự. Hãy coi các giải thích như giả thuyết và xác nhận bằng cách chuyển đến các tệp được tham chiếu."

Bạn có thể tiếp tục đặt các câu hỏi tiếp theo như “Định tuyến hoạt động chi tiết như thế nào?” hoặc “Hãy nói cho tôi biết về quy trình và phương pháp xác thực” và nó sẽ dẫn bạn đến những hướng dẫn hữu ích để soi sáng một chút về bóng tối của một cơ sở mã xa lạ. Xử lý các thay đổi đột phá khi nâng cấp phụ thuộc Cập nhật các gói npm, đặc biệt là khi chúng đi kèm với các thay đổi đột phá, có thể là công việc tẻ nhạt và tốn thời gian, đồng thời khiến bạn phải gỡ lỗi một lượng lớn các hồi quy. Gần đây tôi đã phải nâng cấp thư viện trực quan hóa dữ liệu Plotly.js lên một phiên bản phát hành chính từ phiên bản 2 lên 3 và do đó, việc gắn nhãn trục trong một số biểu đồ đã ngừng hoạt động. Tôi tiếp tục hỏi ChatGPT: "Tôi đã cập nhật dự án Angular sử dụng Plotly. Tôi đã cập nhật gói âm mưu.js - gói dist từ phiên bản 2.35.2 lên 3.1.0 - và bây giờ các nhãn trên trục x và y không còn nữa. Chuyện gì đã xảy ra vậy?"

Người đại diện nhanh chóng quay lại với giải pháp (xem bên dưới). Lưu ý: Tôi vẫn xác minh lời giải thích dựa trên hướng dẫn di chuyển chính thức trước khi gửi bản sửa lỗi.

Sao chép các bộ tái cấu trúc một cách an toàn trên các tập tin Cơ sở mã ngày càng phát triển chắc chắn sẽ mở ra cơ hội hợp nhất mã. Ví dụ: bạn nhận thấy mã trùng lặp trên các tệp có thể được trích xuất thành một hàm hoặc thành phần duy nhất. Do đó, bạn quyết định tạo một thành phần dùng chung có thể được đưa vào thay thế và thực hiện công cụ tái cấu trúc đó trong một tệp. Bây giờ, thay vì thực hiện những thay đổi đó theo cách thủ công đối với các tệp còn lại, bạn hãy yêu cầu đại lý triển khai công cụ tái cấu trúc cho bạn. Tác nhân cho phép bạn chọn nhiều tệp làm ngữ cảnh. Sau khi hoàn tất quá trình tái cấu trúc cho một tệp, tôi có thể thêm cả tệp đã được tái cấu trúc và chưa được chỉnh sửa vào ngữ cảnh và nhắc tác nhân triển khai các thay đổi đối với các tệp khác như sau: “Sao chép cả những thay đổi tôi đã thực hiện trong tệp A sang tệp B”. Triển khai các tính năng trong các công nghệ chưa quen thuộc Một trong những khoảnh khắc thú vị nhất của tôi khi sử dụng các công cụ mã hóa AI là khi nó giúp tôi tạo hoạt ảnh chuyển màu khá phức tạp trong GLSL, một ngôn ngữ mà tôi khá xa lạ. Trong một dự án gần đây, các nhà thiết kế của chúng tôi đã nghĩ ra một gradient hoạt hình làm trạng thái tải trên đối tượng 3D. Tôi thực sự thích ý tưởng này và muốn mang đến điều gì đó độc đáo và thú vị cho khách hàng của chúng tôi. cácvấn đề: Tôi chỉ có hai ngày để triển khai nó và GLSL có quá trình học tập khá khó khăn. Một lần nữa, một công cụ AI (trong trường hợp này là ChatGPT) lại rất hữu ích và tôi bắt đầu khá đơn giản là nhắc nó tạo một tệp HTML độc lập cho tôi để hiển thị khung vẽ và dải màu hoạt hình rất đơn giản. Từng bước một, tôi yêu cầu AI bổ sung thêm sự tinh tế cho nó cho đến khi tôi đạt được kết quả tốt để tôi có thể bắt đầu tích hợp trình đổ bóng vào cơ sở mã thực tế của mình. Kết quả cuối cùng: Khách hàng của chúng tôi vô cùng hài lòng và chúng tôi đã cung cấp một tính năng phức tạp trong một khoảng thời gian ngắn nhờ AI. Bài kiểm tra viết Theo kinh nghiệm của tôi, các dự án hiếm khi có đủ thời gian để liên tục viết và duy trì một bộ bài kiểm tra đơn vị và tích hợp thích hợp, và trên hết, nhiều nhà phát triển không thực sự thích thú với nhiệm vụ viết bài kiểm tra. Việc nhắc người trợ giúp AI thiết lập và viết bài kiểm tra cho bạn là điều hoàn toàn có thể thực hiện được và có thể được thực hiện trong một khoảng thời gian ngắn. Tất nhiên, với tư cách là nhà phát triển, bạn vẫn phải đảm bảo rằng các bài kiểm thử của mình thực sự xem xét các phần quan trọng của ứng dụng và tuân theo các nguyên tắc kiểm thử hợp lý, nhưng bạn có thể “thuê ngoài” việc viết bài kiểm thử cho người trợ giúp AI của chúng tôi. Lời nhắc ví dụ: "Viết các bài kiểm tra đơn vị cho chức năng này bằng cách sử dụng Jest. Bao gồm đường dẫn hạnh phúc, các trường hợp cạnh và chế độ lỗi. Giải thích lý do tại sao mỗi bài kiểm tra tồn tại."

Bạn thậm chí có thể chuyển các phương pháp thử nghiệm tốt nhất của chuyên gia kiểm tra Kent C. Dodds làm hướng dẫn cho đại lý của bạn, như dưới đây:

Dụng cụ nội bộ Tương tự như ví dụ về shader đã đề cập trước đó, gần đây tôi được giao nhiệm vụ phân tích sự trùng lặp mã trong cơ sở mã và so sánh trước và sau khi tái cấu trúc. Chắc chắn không phải là một nhiệm vụ tầm thường nếu bạn không muốn thực hiện con đường so sánh các tệp theo cách thủ công tốn thời gian. Với sự trợ giúp của Copilot, tôi đã tạo một tập lệnh phân tích sự trùng lặp mã cho mình, sắp xếp và sắp xếp đầu ra trong một bảng và xuất nó sang Excel. Sau đó tôi tiến thêm một bước nữa. Khi quá trình tái cấu trúc mã của chúng tôi hoàn tất, tôi đã nhắc nhân viên lấy bảng Excel hiện có của tôi làm đường cơ sở, thêm trạng thái trùng lặp hiện tại vào các cột riêng biệt và tính toán delta. Cập nhật mã được viết từ lâu Gần đây, một khách hàng cũ của tôi đã phản đối tôi vì theo thời gian, một số tính năng không còn hoạt động bình thường trên trang web của anh ấy nữa. Điểm đáng chú ý: Trang web được xây dựng cách đây gần mười năm, JavaScript và SCSS đang sử dụng các công cụ biên dịch khá cũ như requireJS và quá trình thiết lập yêu cầu phiên bản Node.js cũ hơn thậm chí sẽ không chạy trên MacBook 2025 của tôi. Việc cập nhật toàn bộ quá trình xây dựng bằng tay có thể khiến tôi mất nhiều ngày, vì vậy tôi quyết định nhắc nhân viên AI: “Bạn có thể cập nhật quy trình xây dựng JS và SCSS lên một ngăn xếp gọn gàng năm 2025 như Vite không?” Chắc chắn là như vậy, và sau khoảng một giờ tinh chỉnh với đại lý, tôi đã chuyển bản dựng SCSS và JS của mình sang Vite và tôi có thể tập trung vào việc sửa lỗi thực tế. Chỉ cần đảm bảo xác thực chính xác các tệp đầu ra và tệp được biên dịch khi thực hiện các thay đổi không thể thiếu đó đối với quy trình xây dựng của bạn. Tổng hợp và soạn thảo Bạn muốn tóm tắt tất cả các thay đổi mã gần đây của mình trong một câu cho thông báo cam kết hay có một danh sách dài các cam kết và muốn tóm tắt chúng trong ba dấu đầu dòng? Không vấn đề gì, hãy để AI xử lý việc đó nhưng hãy nhớ đọc lại nó. Một lời nhắc ví dụ đơn giản như nhắn tin cho một người đồng loại: “Vui lòng tóm tắt những thay đổi gần đây của tôi về các dấu đầu dòng ngắn gọn”. Lời khuyên của tôi ở đây là hãy thận trọng khi sử dụng GPT để viết và cũng như với mã, vui lòng kiểm tra đầu ra trước khi gửi hoặc gửi. Khuyến nghị và thực tiễn tốt nhất Nhắc nhở Một trong những lợi ích không mấy rõ ràng của việc sử dụng AI là lời nhắc của bạn càng cụ thể và phù hợp thì kết quả đầu ra càng tốt. Quá trình nhắc nhở tác nhân AI buộc chúng tôi phải xây dựng các yêu cầu của mình một cách cụ thể nhất có thể trước khi viết và viết mã. Đây là lý do tại sao, theo nguyên tắc chung, tôi khuyên bạn nên đưa ra lời nhắc càng cụ thể càng tốt. Ryan Florence, đồng tác giả của Remix, gợi ý một cách đơn giản nhưng hiệu quả để cải thiện quá trình này bằng cách kết thúc lời nhắc ban đầu của bạn bằng câu: “Trước khi chúng ta bắt đầu, bạn có câu hỏi nào cho tôi không?”

Tại thời điểm này, AI thường đưa ra những câu hỏi hữu ích để bạn có thể làm rõ ý định cụ thể của mình, hướng dẫn tổng đài viên cung cấp cho bạn cách tiếp cận phù hợp hơn cho nhiệm vụ của bạn.

Sử dụng Kiểm soát phiên bản và làm việc theo từng đoạn có thể tiêu hóa được Việc sử dụng kiểm soát phiên bản như git không chỉ hữu ích khi cộng tác theo nhóm trên một cơ sở mã duy nhất mà còn cung cấp cho bạn như mộtngười đóng góp cá nhân có điểm ổn định để quay lại trong trường hợp khẩn cấp. Do tính chất không xác định của nó, AI đôi khi có thể trở nên bất hảo và thực hiện những thay đổi không hữu ích cho những gì bạn đang cố gắng đạt được và cuối cùng phá vỡ mọi thứ mà không thể khắc phục được. Việc chia công việc của bạn thành nhiều lần xác nhận sẽ giúp bạn tạo ra những điểm ổn định mà bạn có thể quay lại trong trường hợp mọi thứ không ổn. Và đồng đội của bạn cũng sẽ cảm ơn bạn vì họ sẽ dễ dàng xem lại mã của bạn hơn khi nó được chia thành các phần có cấu trúc tốt về mặt ngữ nghĩa. Xem xét kỹ lưỡng Đây là một phương pháp hay nhất nói chung, nhưng theo tôi, nó càng trở nên quan trọng hơn khi sử dụng các công cụ AI cho công việc phát triển: Hãy là người đánh giá quan trọng đầu tiên về mã của bạn. Đảm bảo dành chút thời gian để xem xét từng dòng thay đổi của bạn, giống như bạn xem lại mã của người khác và chỉ gửi tác phẩm của mình sau khi nó vượt qua quá trình tự đánh giá của chính bạn. "Có hai điều đều đúng với tôi lúc này: Các tác nhân AI thật tuyệt vời và tăng năng suất rất lớn. Chúng cũng là những cỗ máy khổng lồ nếu bạn tắt não và buông bỏ hoàn toàn."- Armin Ronacher trong bài đăng trên blog của mình Bệnh tâm thần đặc vụ: Chúng ta có điên không?

Kết luận và suy nghĩ phê phán Theo tôi, các công cụ mã hóa AI có thể cải thiện năng suất của chúng ta với tư cách là nhà phát triển hàng ngày và giải phóng năng lực tinh thần để lập kế hoạch và tư duy cấp cao hơn. Chúng buộc chúng ta phải trình bày rõ ràng kết quả mong muốn của mình một cách tỉ mỉ và chi tiết. Đôi khi, bất kỳ AI nào cũng có thể gây ảo giác, điều đó về cơ bản có nghĩa là nó có giọng điệu tự tin. Vì vậy, hãy đảm bảo kiểm tra và kiểm tra, đặc biệt là khi bạn nghi ngờ. AI không phải là viên đạn bạc và tôi tin rằng sự xuất sắc và khả năng giải quyết vấn đề của một nhà phát triển sẽ không bao giờ lỗi mốt. Đối với các nhà phát triển mới bắt đầu sự nghiệp, những công cụ này có thể rất hấp dẫn để thực hiện phần lớn công việc cho họ. Điều có thể bị bỏ sót ở đây là công việc thường xuyên mệt mỏi và đau đớn khi xử lý các lỗi cũng như các vấn đề khó gỡ lỗi và giải quyết, hay còn gọi là “việc nghiền nát”. Ngay cả Lee Robinson của Cursor AI cũng đặt câu hỏi về điều này trong một trong những bài đăng của anh ấy:

Các công cụ mã hóa AI đang phát triển với tốc độ nhanh chóng và tôi rất hào hứng với những gì sẽ xảy ra tiếp theo. Tôi hy vọng bạn thấy bài viết này và các mẹo trong đó hữu ích và rất hào hứng muốn tự mình thử một số trong số này.

You May Also Like

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free