Nhìn vào các dự án nguồn mở phổ biến xuất hiện trong tâm trí, tôi không thấy đề cập đến bất kỳ thư mục contrib nào của Wikipedia:
- jQuery ,
- nhanh ,
- Sass ,
- LESS ,
- MongoDB ,
- Redis ,
- Múa rối ,
- Đầu bếp
- Không ,
- Ruby trên đường ray ,
- Laravel ,
- Jenkins ,
- Clojure ,
- Ruby .
Người duy nhất có một thư mục đóng góp của Wikipedia là Django. Đối với Django, vai trò của thư mục này đã được giải thích trong tài liệu :
Django nhằm mục đích đi theo pin của Python bao gồm triết lý. Nó cung cấp nhiều công cụ tùy chọn bổ sung để giải quyết các vấn đề phát triển Web phổ biến.
Mã này sống trong django/contrib
phân phối Django. Tài liệu này cung cấp danh sách các gói trong contrib, cùng với bất kỳ sự phụ thuộc nào mà các gói đó có.
Chương 16 của Django Book chứa một mô tả chi tiết hơn về vai trò của thư mục này và danh sách các nội dung.
Một ví dụ khác là Solr . Với gitstats
, chúng tôi có thể nhận được số liệu thống kê về những người đóng góp.
Robert Muir 22.09%
Michael McCandless 13.60%
Mark Robert Miller 9.73%
Uwe Schindler 8.17%
Yonik Seeley 5.56%
Steven Rowe 5.55%
Sau đó, chúng ta chỉ có thể chọn contrib
thư mục bằng cách chạy:
git filter-branch --subdirectory-filter solr/contrib --prune-empty
và lấy số liệu thống kê một lần nữa:
Robert Muir 19.62%
Steven Rowe 8.87%
Mark Robert Miller 8.33%
Uwe Schindler 8.06%
James Dyer 7.80%
Vì vậy, các tác giả hàng đầu thực tế là như nhau, có nghĩa là những người đó không phải là đóng góp từ người ngoài. Nhìn vào các thư contrib
mục bên trong thư mục, có vẻ như một lần nữa, đó là một loạt các công cụ tùy chọn bổ sung, chính xác như trong Django. Chẳng hạn, bạn không cần Trình xử lý yêu cầu nhập dữ liệu để làm cho Solr hoạt động, nhưng nếu bạn muốn nhập dữ liệu từ cơ sở dữ liệu hoặc XML, thật tuyệt khi có nó trong contrib
thư mục. Tương tự đối với bản đồ thu nhỏ, bạn có thể không nhất thiết cần nó, nhưng có những trường hợp bạn làm.
Là những plugin hoặc add-on? Tôi sẽ không sử dụng thuật ngữ này. Các plugin và tiện ích bổ sung có tích hợp cụ thể với ứng dụng chính. Chẳng hạn, một plugin không được mong đợi chạy độc lập, nhưng được lưu trữ trong ứng dụng chính. Mặt khác, contrib
chứa các công cụ có thể chạy độc lập.