Những khái niệm backend nhất định phải biết khi viết code bằng AI ①
Bạn đang bối rối không biết nên xem phần nào trong mã backend do AI tạo ra? Hãy tìm ra những điều kiện còn thiếu trong yêu cầu, API, dữ liệu, tính đồng thời, xác thực và bộ nhớ đệm, đồng thời học cách truyền đạt yêu cầu nào cho AI và dựa trên cơ sở nào để kiểm tra kết quả.
Có thể tìm ra những điều kiện còn thiếu trong mã API·DB·xác thực do AI tạo ra, chẳng hạn như ai sẽ sử dụng, trạng thái nào được cho phép và cần làm gì khi xảy ra lỗi.
Có thể lần theo đường đi của yêu cầu từ trình duyệt đến máy chủ và DB để phân biệt “máy chủ không hoạt động” là vấn đề ở giai đoạn nào.
Bạn có thể truyền cho AI tài nguyên, hợp đồng, quy tắc và tiêu chí kiểm chứng thay vì tên tính năng, đồng thời xem xét mã được tạo ra dựa trên các căn cứ.
Mọi kiến thức backend trong thời đại AI · Phần 1
Dù AI viết mã, tiêu chuẩn là do tôi quyết định
Mã được tạo ra rất nhanh, nhưng làm thế nào để biết nó đã được tạo đúng?
Khi yêu cầu AI “hãy tạo API mời thành viên”, mã sẽ nhanh chóng được tạo ra. Nhưng không ai quyết định ai có thể mời, phải xử lý thế nào khi số lượng đã đạt giới hạn, hay điều gì sẽ xảy ra nếu cùng một yêu cầu được gửi hai lần. Dịch vụ vẫn vận hành trong khi AI tự lấp đầy những khoảng trống đó theo cách riêng của mình.
Khóa học này không phải là lớp học về cách sử dụng framework. Đây là một khóa học về các nguyên lý, giúp bạn rèn luyện khả năng phát hiện những điều kiện còn thiếu trong mã backend do AI viết, bằng cách lần theo hành trình của một yêu cầu từ trình duyệt đến máy chủ rồi cơ sở dữ liệu.
Thay vì ghi nhớ tên công nghệ, chúng ta cùng xem những gì con người cần quyết định trước.
01 · Nhìn lại vấn đề
Mã chạy được và mã đúng là hai chuyện khác nhau.
Trong các yêu cầu bình thường, hai thiết kế hoạt động giống hệt nhau. Nhưng khi người dùng thuộc tổ chức khác truy cập, khi cùng một yêu cầu được lặp lại, hoặc khi hai người đồng thời nhấn vào chỗ trống cuối cùng, kết quả sẽ khác nhau. Chỉ nói rằng các bài kiểm thử đã vượt qua thì không thể nhận ra sự khác biệt này.
Không phải vì trí tuệ nhân tạo (AI) tạo ra một cách qua loa. Mà vì nó đã tự ý điền vào những điều kiện mà chúng ta chưa xác định. Nguyên lý backend là tấm bản đồ cho biết những điều kiện đó ẩn ở đâu.
Ai
Có thể gửi yêu cầu này, và máy chủ xác minh điều đó như thế nào?
trạng thái nào
Cho phép điều gì, và giá trị nào thì máy chủ phải tự quyết định?
Nếu thất bại thì
Đối phương dựa vào điều gì để quyết định hành động tiếp theo?
Nếu đến đồng thời
Khi hai yêu cầu giống nhau chồng lên nhau, dữ liệu cần được lưu lại như thế nào?
Nếu có thể trả lời bốn câu hỏi này, bạn sẽ có yêu cầu để truyền đạt cho AI, đồng thời có cơ sở để xem xét đoạn mã nhận được. Khóa học lần lượt giải đáp từng câu hỏi theo thứ tự: request, API, dữ liệu, xác thực và bộ nhớ đệm.
02 · Từ yêu cầu đến dữ liệu
Theo dõi một yêu cầu từ đầu đến cuối
Trước hết, hãy xem con đường của một yêu cầu cho đến khi chạm tới máy chủ.
Chúng ta sẽ xem từng phần của URL có tác dụng gì, kết nối DNS và TLS có thể thất bại ở đâu, cũng như khi nào CDN và proxy trả lời thay. Thay vì nói “máy chủ không hoạt động”, bạn sẽ có thể nói ai đã phản hồi và yêu cầu đã đi đến đâu.
Tiếp theo, hãy định nghĩa API và dữ liệu dưới dạng hợp đồng.
Chúng ta sẽ đề cập đến các phương thức HTTP và phản hồi lỗi, tên tài nguyên và việc xác thực đầu vào, truy vấn danh sách và đặc tả API. Về phía dữ liệu, chúng ta phân biệt rõ nên giao phó điều gì cho DB và điều gì mã nguồn phải đảm bảo, bao gồm cả các mối quan hệ và ràng buộc, đơn vị và thời gian, cũng như chính sách xóa.
Cuối cùng, hãy tìm những điểm còn thiếu trong tính đồng thời, xác thực và bộ nhớ đệm.
Hãy xem xét các tình huống khi hai người cùng lúc nhấn, khi đã đăng nhập nhưng không có quyền, và khi bộ nhớ đệm trả về giá trị cũ. Trước tiên, hãy hiểu lý do các công cụ như giao dịch và khóa, session, JWT và passkey, cũng như việc vô hiệu hóa bộ nhớ đệm được tạo ra để giải quyết vấn đề gì.
03 · Một ví dụ xuyên suốt
Tiếp tục xuyên suốt 50 bài học với một dịch vụ quản lý tài liệu nhóm duy nhất
Người dùng, workspace, tư cách thành viên, tài liệu, lời mời, gói cước và mức sử dụng. Từ bài 1 đến bài 50, chúng ta sẽ liên tục sử dụng một dịch vụ duy nhất để quản lý tài liệu nhóm và trò chuyện với AI. Hai tính năng là công khai tài liệu và mời thành viên lần lượt đi qua các lớp yêu cầu, API, dữ liệu, tính đồng thời, xác thực và bộ nhớ đệm.
Không có bài thực hành lập trình hay cài đặt môi trường. Chỉ đọc ngắn gọn HTTP, JSON, SQL ở những phần cần thiết, đồng thời giải thích nguyên lý bằng lưu đồ và bảng so sánh. Tập trung vào các nguyên lý cốt lõi của backend, không bị ràng buộc bởi một ngôn ngữ hay framework cụ thể nào.
Phần 2 tiếp nối với câu chuyện vận hành thực tế.
Toàn bộ series gồm phần 1 với 50 bài và phần 2 với 50 bài, tổng cộng 100 bài. Phần 1 trình bày các nguyên lý xử lý đúng yêu cầu và dữ liệu, còn phần 2 đề cập đến vận hành triển khai và bảo mật, khả năng quan sát và khôi phục, cũng như vận hành các tính năng AI. Cùng một tình huống xuyên suốt cả hai phần.
Trong suốt 50 bài học, chúng ta sẽ đi theo trình tự như thế này.
Chúng ta bắt đầu từ lý do vì sao phán đoán của con người vẫn cần thiết. Sau khi tìm hiểu đường đi của request và HTTP, chúng ta xác định API như một hợp đồng, rồi xem xét tài nguyên thực thi của máy chủ và thiết kế dữ liệu. Đi qua truy vấn và tính đồng thời, xác thực và phân quyền, bộ nhớ đệm, cuối cùng chúng ta kết nối 50 bài học bằng phương pháp truyền đạt yêu cầu cho AI và xem xét kết quả.
04 · Xác nhận trước khi học
Phù hợp với những người như sau
Những người đang xây dựng backend bằng AI nhưng không có tiêu chí để đánh giá kết quả có chính xác hay không
Những người làm frontend hoặc lập kế hoạch sản phẩm và muốn biết server, DB, xác thực hoạt động như thế nào
Những người đã học về framework nhưng vẫn chưa nắm rõ nguyên lý của request, dữ liệu, tính đồng thời và quyền hạn.
Dành cho những ai cảm thấy bối rối không biết nên đưa ra yêu cầu gì cho AI và cần xem xét những gì
Đây không phải là khóa học thực hành chỉ cần làm theo từng bước.
Đây không phải là khóa học tạo dự án bằng một framework cụ thể. Mỗi bài giảng kéo dài 5–10 phút, gồm tổng cộng 50 bài, tập trung vào các nguyên lý thông qua phần giải thích khái niệm, lưu đồ, bảng so sánh và phân tích tình huống. Dù sử dụng ngôn ngữ nào, bạn vẫn có thể áp dụng nguyên vẹn các tiêu chí đánh giá này cho dự án tiếp theo.
Tôi sẽ trả lời trước những điều bạn có thể thắc mắc.
Chưa từng làm backend cũng không sao chứ?
Không sao. Bạn không cần có kiến thức về một ngôn ngữ hay framework cụ thể. Chỉ cần từng sử dụng dịch vụ web và đã nghe qua các thuật ngữ HTTP, JSON là bạn có thể bắt đầu từ những tình huống quen thuộc, rồi làm quen dần với các thuật ngữ và theo kịp nội dung.
Bạn có phải trực tiếp viết code không?
Không. Không có thực hành viết mã, bài tập hay cài đặt môi trường. Chúng ta chỉ cùng đọc các thông điệp HTTP, SQL hoặc mã giả ngắn ở những phần cần thiết. Điều quan trọng không phải là tốc độ viết mã, mà là biết dựa trên tiêu chí nào để xem xét mã do AI viết.
Nghe ở tốc độ nhanh hơn có được không?
Tôi đã dùng AI để xử lý âm thanh, giảm tạp âm và chỉnh sửa phát âm. Tôi đã cải thiện chất lượng âm thanh và phát âm để ngay cả khi nghe ở tốc độ gấp đôi, phần giải thích vẫn rõ ràng.
Khuyến nghị cho những người này
Khóa học này dành cho ai?
Các lập trình viên trình độ sơ-trung cấp đang xây dựng backend bằng AI nhưng không có tiêu chí để đánh giá liệu sản phẩm đầu ra có đúng hay không.
Dành cho những ai muốn hiểu về nguyên lý hoạt động của máy chủ, cơ sở dữ liệu và xác thực khi làm frontend hoặc lập kế hoạch sản phẩm
Dành cho những ai đã học các khóa về framework cụ thể nhưng vẫn còn mơ hồ về những nguyên lý như request, dữ liệu, tính đồng thời và quyền hạn
Cần biết trước khi bắt đầu?
Không cần có kiến thức nền tảng về ngôn ngữ hay framework cụ thể. Cũng không có bài thực hành lập trình hay cài đặt môi trường.
Chỉ cần bạn đã từng sử dụng dịch vụ web và từng nghe đến các thuật ngữ HTTP, JSON là đủ.
Tôi là Haeyeo, người luôn muốn khám phá những khả năng vô tận của AI và kỹ thuật máy tính, đồng thời chia sẻ hành trình đó cùng các bạn.
Thời đại học, với niềm đam mê chuyên ngành lớn đến mức được gọi là "kẻ nghiện khoa học máy tính", tôi đã tốt nghiệp thủ khoa với điểm chuyên ngành trên 4.4. Sau đó, tôi đã nhận bằng Thạc sĩ chuyên ngành AI tại Đại học S và tiếp tục đào sâu chuyên môn thông qua chương trình Tiến sĩ.
Tuy nhiên, vì cảm thấy việc giải quyết các vấn đề thực tế bằng AI cũng đầy sức hút như việc nghiên cứu lý thuyết, tôi đã tạm dừng chương trình tiến sĩ để tích lũy những kinh nghiệm thực chiến quý báu thông qua các dự án về LLM và phân tích video dựa trên AI tại một startup.
Hiện tại, tôi đang làm việc với tư cách là nhà phát triển dự án LLM và PM tại một trong ba tập đoàn hàng đầu Hàn Quốc, góp phần tạo ra những thay đổi tích cực mà công nghệ AI mang lại cho cuộc sống của chúng ta. Tôi sẽ chia sẻ tận tình với các bạn quá trình trăn trở, giải quyết vấn đề cũng như những bí quyết thực tế sống động mà tôi đã tích lũy được tại hiện trường. Tôi sẽ là người dẫn đường tin cậy cho bạn trong hành trình khám phá thế giới AI đầy thú vị này.