Làm thế nào để viết được một file README tốt?

Làm thế nào để viết được một file README tốt?

Threads
  • Ơ buồn cười thật. Ai cũng biết GIF là định dạng ảnh động thường được dùng thay cho video clip để hiển thị các nội dung ngắn trên nền tảng web. GIF tiện hơn các nội dung dạng video là vì nó được hiển thị như một bức ảnh và được hỗ trợ rộng rãi. Cơ mà GIF có dung lượng nặng quá.

    Nói thật nhiều lúc mình có vài cái hành động muốn hiển thị lên web cho mọi người xem, cơ mà định dạng GIF nó nặng với cả cũng không biết cách tối ưu cho nhẹ xuống. Hôm nay lên mạng tìm hiểu xem định dạng nào có khả năng thay thế GIF trong tương lai thì mọi người biết đó là gì không? Là WEBP (webp)!!! Đúng vậy, là định dạng ảnh mà mình đang dùng trên blog lâu nay luôn á, mà giờ mới biết là nó hiển thị được cả ảnh động nữa, hơi quê 😆

    Kết hợp với ffmpeg nữa là chuyển được tất tần tật video clip thành webp được ngay. Để vài nửa ngồi chế lại cái cli một tí là dùng ngon luôn mọi người ạ 🤪

    » Xem thêm
  • Cảm giác như Github Copilot đang cố gắng mở rộng thị trường cho anh em developer á. Mới trước họ ra mắt Github Open Copilot Chat thì mới đây lại thêm cái Using GitHub Copilot in the command line dùng để giải thích hoặc gợi ý lệnh trong terminal.

    Đây, cách dùng rất đơn giản thôi, ví dụ muốn nó giải thích câu lệnh sudo apt-get để làm gì, thì:

    $ gh copilot explain "sudo apt-get"

    Hoặc nhờ nó gợi ý lệnh mong muốn, sử dụng tiếng Việt được luôn nhé (kể cả tiếng Việt không dấu vẫn hiểu 😳)

    $ gh copilot suggest "xoá commit chưa push"

    Mình đã kiểm tra và thấy lệnh ra rất đúng, xịn thật 🤓

    » Xem thêm
  • Github có chương trình học và ôn thi để lấy chứng chỉ "ghim" vào hồ sơ cá nhân. Các chứng chỉ này xoay quanh kỹ năng sử dụng và làm việc thành thạo với git cũng như Github. Nếu bạn muốn học thêm kỹ năng mới đồng thời thu thập thêm badge cho mình thì còn chần chừ gì nữa 👇

    Showcase your expertise with GitHub Certifications

    » Xem thêm

Vấn đề

README là một trong những tệp quan trọng nhất của bất kỳ dự án lập trình nào. Đó là một tệp văn bản thường được viết bằng Markdown giới thiệu về dự án và giải thích nội dung của dự án. Nó giúp mọi người hiểu cách cài đặt và sử dụng mã bạn đã viết, cũng như cách mọi người có thể phát triển dự án cùng với bạn.

Tại sao nên viết README?

Trở lại năm 2010, Tom Preston-Werner đã ủng hộ phát triển dự án theo hướng viết README của bạn trước, trước khi bạn làm bất cứ điều gì khác. Anh ấy nói rằng, mặc dù đã có các phương pháp lập trình và các cách vận hành dự án như TDD và SCRUM, nhưng sẽ tốt hơn nếu như những người khác hiểu được ngay dự án của bạn thông qua mô tả có ở trong README.

Viết README là điều cần thiết để có thể tạo ra một ứng dụng tốt. Nó sẽ định hình giúp bạn những việc cần làm sau này trong dự án.

Như Preston-Werner nói sẽ dễ dàng hơn nhiều để bắt tay vào viết README khi bắt đầu dự án của bạn, đó là thời điểm bạn có động lực nhất. Khi bạn kết thúc dự án của mình, viết README sẽ giống như một nhiệm vụ khác, một công việc nhỏ khác. Điều đó sẽ làm giảm sự hứng thú của bạn khi viết nó.

Nhưng bằng cách nào đi chăng nữa, bạn vẫn cần một tệp README truyền tải đầy đủ nội dung, bởi vì rất ít người sẽ rà soát mã của bạn để hiểu nó hoạt động như thế nào. Nó tốn thời gian và họ có thể không có chuyên môn kỹ thuật để hiểu nó.

Ngoài ra, không chỉ có các developer mới quan tâm đến README của bạn. Các nhà tuyển dụng cũng vậy, họ sẽ xem README tìm hiểu khả năng của bạn. README một lần nữa thể hiện sự chuyên nghiệp của bạn.

Ngay cả khi bạn đang làm dự án cá nhân thì README vẫn quan trọng. Hãy tưởng tượng sau một thời gian bạn quay lại để tiếp tục dự án. Với một README tốt bạn sẽ biết ngay dự án đó đang làm gì và giúp bạn có thể bắt tay vào làm ngay lập tức.

Viết README như thế nào?

Viết một tệp README cần có bố cục rõ ràng và mạch lạc, điều đó đôi khi còn phụ thuộc vào khả năng và tính thẩm mỹ của mỗi người.

Dưới đây là một số điều cần thiết khi bạn viết README của mình:

  • Title (Tiêu đề)
  • Introduction (Giới thiệu - nó nói về cái gì và tại sao bạn viết nó)
  • Install (Cài đặt thế nào?)
  • Use (Cách sử dụng)
  • Technologies Used (Công nghệ được sử dụng - thư viện, phiên bản...)
  • Acknowledgments (Sự nhìn nhận - là nơi bạn viết ra những lời cảm ơn, những bài viết hay bất kì điều gì ở một nơi khác truyền cảm hứng hoặc giúp bạn hoàn thành dự án này)

Đó là những điều cần thiết tối thiểu để giúp ích cho bạn và những người khác. Ngoài những mục trên bạn có thể thêm những mục mà bạn cảm thấy là cần thiết cho dự án. Ví dụ như:

  • Table of contents - ToC (Mục lục - hữu ích nếu README của bạn dài)
  • List of features - LoF (Danh sách các tính năng)
  • Examples (Ví dụ về việc sử dụng - Mã hoặc hình ảnh)

Ví dụ về README hữu ích

Dưới dây là một số dự án trên github mà có tệp README được trình bày rất tốt:

Ngoài ra, còn có một số công cụ giúp bạn trình bày được README một cách có hệ thống. Một trong số đó là readme.so. Đây là một công cụ hỗ trợ tạo một tệp README với đầy đủ các đầu mục, bạn có thể trải nghiệm trực tiếp trên trang web, hoặc tham khảo những đầu mục mà công cụ cung cấp để tự tạo tệp thủ công.

readme.so

README là một tệp cần thiết cho các dự án lập trình của bạn, ngay cả khi nó chỉ dành cho dự án của chính bạn. Bạn nghĩ sao về những điều ở bên trên hay có điều gì khác mà bạn nghĩ là cần thiết cho một README không? Hãy để lại bình luận nhé!

Bài viết được dịch ở x-team và được chỉnh sửa lại để phù hợp cho bạn đọc.

hoặc
* Bản tin tổng hợp được gửi mỗi 1-2 tuần, huỷ bất cứ lúc nào.
Author

Xin chào, tôi tên là Hoài - một anh Dev kể chuyện bằng cách viết ✍️ và làm sản phẩm 🚀. Với nhiều năm kinh nghiệm lập trình, tôi đã đóng góp một phần công sức cho nhiều sản phẩm mang lại giá trị cho người dùng tại nơi đang làm việc, cũng như cho chính bản thân. Sở thích của tôi là đọc, viết, nghiên cứu... Tôi tạo ra trang Blog này với sứ mệnh mang đến những bài viết chất lượng cho độc giả của 2coffee.dev.Hãy theo dõi tôi qua các kênh LinkedIn, Facebook, Instagram, Telegram.

Bạn thấy bài viết này có ích?
Không

Bình luận (2)

Nội dung bình luận...
Avatar
Trịnh Cường2 năm trước
cảm ơn bạn, bài viết như lồng đèn sáng chói vậy
Trả lời
Avatar
Xuân Hoài Tống2 năm trước
Cảm ơn bạn Cường
Avatar
Đức Tống2 năm trước
Bài viết rất hữu ích ạ
Trả lời