Website được thiết kế tối ưu cho thành viên chính thức. Hãy Đăng nhập hoặc Đăng ký để truy cập đầy đủ nội dung và chức năng. Nội dung bạn cần không thấy trên website, có thể do bạn chưa đăng nhập. Nếu là thành viên của website, bạn cũng có thể yêu cầu trong nhóm Zalo "CNTT" các nội dung bạn quan tâm.

Nên chọn CMS và kết hợp Vibe code – nhưng phải theo đúng quy tắc của CMS

ICT

Sau khi phân tích vì sao vibe code không phù hợp để làm nền tảng cho website bệnh viện, một câu hỏi hợp lý tiếp theo là:

Có nên kết hợp CMS với vibe code để phát triển thêm chức năng hay không?

Câu trả lời là: có, nhưng chỉ khi vibe code được đặt đúng chỗ và tuân theo quy tắc của CMS.
Vấn đề không nằm ở việc có viết code nhanh hay không, mà ở viết ở đâu, viết như thế nào và có tuân thủ kiến trúc tổng thể hay không.


1. CMS là nền móng – không phải vật cản

CMS (đặc biệt là Drupal) được thiết kế để:

  • Chuẩn hóa dữ liệu

  • Chuẩn hóa luồng xử lý

  • Chuẩn hóa phân quyền

  • Hỗ trợ vận hành lâu dài

CMS không nhằm triệt tiêu sáng tạo kỹ thuật, mà nhằm:

  • Giảm rủi ro

  • Giảm phụ thuộc cá nhân

  • Tăng khả năng mở rộng và bảo trì

Vì vậy, mọi phần code bổ sung phải tôn trọng vai trò nền móng của CMS.


2. Vibe code không xấu – vấn đề là dùng sai chỗ

Vibe code có thể rất hữu ích khi:

  • Thử nghiệm ý tưởng

  • Viết nhanh một logic nhỏ

  • Prototype chức năng mới

  • Tối ưu giao diện, UX

Vibe code trở thành vấn đề khi:

  • Gắn trực tiếp vào core CMS

  • Chèn logic nghiệp vụ vào theme

  • Sửa file module của bên thứ ba

  • Không có ranh giới giữa “thử nghiệm” và “production”


3. Nguyên tắc vàng: CMS quyết định kiến trúc, vibe code chỉ mở rộng

Một cách tiếp cận đúng là:

CMS quyết định cấu trúc – vibe code chỉ bổ sung hành vi

Điều này có nghĩa:

  • Cấu trúc dữ liệu: do CMS quản lý

  • Phân quyền: do CMS kiểm soát

  • Luồng nghiệp vụ chính: theo CMS

  • Code tự viết: đóng vai trò module mở rộng


4. Kết hợp đúng cách trong Drupal (ví dụ thực tế)

4.1. Viết module thay vì sửa theme

  • Theme chỉ để hiển thị

  • Logic nghiệp vụ phải nằm trong module

  • Module có thể được bật/tắt, nâng cấp, thay thế

4.2. Dùng hook, service, API chuẩn

  • Không can thiệp trực tiếp core

  • Không “vá” module có sẵn

  • Tận dụng hệ thống hook, event, service

4.3. Tách rõ experimental và production

  • Code thử nghiệm: branch riêng

  • Chỉ merge khi đạt yêu cầu

  • Không đẩy code thử lên hệ thống thật


5. Những quy tắc bắt buộc khi kết hợp CMS và vibe code

Quy tắc 1: Không sửa core

Bất kỳ chỉnh sửa nào vào core CMS đều là nợ kỹ thuật.

Quy tắc 2: Không nhét logic vào theme

Theme không phải nơi xử lý nghiệp vụ.

Quy tắc 3: Code phải có vòng đời

  • Có version

  • Có tài liệu

  • Có người chịu trách nhiệm

Quy tắc 4: Mọi thứ đều phải nâng cấp được

Nếu một đoạn code:

“chạy được nhưng không nâng cấp được”
thì nó không đủ điều kiện tồn tại trong website bệnh viện.


6. Lợi ích khi kết hợp đúng cách

Khi CMS và vibe code được kết hợp đúng:

  • Vẫn phát triển nhanh

  • Không phá kiến trúc

  • Dễ bàn giao

  • Dễ mở rộng

  • Dễ kiểm soát rủi ro

Website bệnh viện lúc này:

  • Vừa linh hoạt

  • Vừa bền vững

  • Vừa phù hợp nghiệp vụ


7. Tư duy phù hợp cho đội CNTT bệnh viện

Đội CNTT bệnh viện cần:

  • Ưu tiên kiến trúc hơn tốc độ

  • Xem code là tài sản dài hạn

  • Chấp nhận chậm hơn lúc đầu để nhanh hơn về sau

Vibe code không bị cấm, nhưng:

  • Không được vượt rào CMS

  • Không được phá kỷ luật hệ thống


 

CMS và vibe code không đối lập nhau.
Chúng chỉ xung đột khi không có kỷ luật kiến trúc.

Với website bệnh viện:

  • CMS là nền móng bắt buộc

  • Vibe code là công cụ hỗ trợ

  • Quy tắc CMS là ranh giới an toàn

Viết nhanh là tốt,
nhưng viết đúng và viết để tồn tại lâu dài mới là điều quan trọng.