Cấu trúc chuẩn tham khảo cho một dự án .NET

Việc cài đặt hay khởi tạo một dự án theo chuẩn là một thói quen nên làm đối với mọi developer trong đó bao gồm cả .NET developer.
Với các dự án .NET thì làm sao để biết được như thế nào là một cấu trúc chuẩn. Bài này sẽ chia sẻ cho các bạn một cấu trúc thư mục tương đối chuẩn được nhiều các công ty hoặc tổ chức sử dụng cho các dự án từ open source cho đến các dự án riêng.

Bạn phân chia dự án của bạn theo cấu trúc thư mục bên dưới



Mình xin giải thích sơ qua chức năng nhiệm vụ của các thư mục cũng như file như sau

artifacts : Kết quả đầu ra sau khi build toàn bộ dự án (Chạy build.cmd/build.sh).
build : Tùy chỉnh build
docs : Chứa tất cả các tài liệu liên quan đến dự án
lib : Các thư viện đặc thù (Thường không có trên Nuget)
packages : Nuget packages
samples : Các ví dụ cơ bản
src : Mã nguồn của dự án
tests : Tổng hợp các code dùng cho việc testing toàn dự án
.editorconfig : Cài đặt cho editor mà bạn dùng
.gitignore : Git ignore
.gitattributes : Git attributes
build.cmd : Các lệnh build trên Windows
build.sh : Các lệnh build trên Linux, Mac
LICENSE : Dự án của bạn sử dụng license chuẩn nào
Nuget.config : Cấu hình Nuget
README.md : Giới thiệu sơ qua dự án, Các cài đặt cơ bản, yêu cầu ...
{Solution}.sln : Solution file chính của toàn dự án

Ngoài ra một số dự án có thể có thêm các file sau
docker-compose.yml : Cài đặt các service dockers
.dockerignore : Docker ignore
.env : Cài đặt các biến environment cấu hình dùng trong dự án
CONTRIBUTING.md : Tổng hợp các rules mà các developer cần tuân thủ để có thể viết code đóng góp thêm cho dự án
branch-guide.md : Hướng dẫn mô tả các branches của dự án
appveyor.ymltravis.ymlazure-pipelines.yml .. : Cấu hình CI (Continuous Integration) cho dự án tùy vào dịch vụ bạn dùng.
...


Tiếp tục cập nhật ...