Tôi nghĩ rằng đó là khá nhiều điểm trên. Theo mặc định, Rubygems sẽ thêm thư mục lib vào đường dẫn tải, nhưng bạn có thể đẩy bất kỳ thư mục nào bạn muốn vào đó bằng biến $:. ví dụ:
$:.push File.expand_path(File.dirname(__FILE__) + '/../surfcompstuff')
Điều đó có nghĩa khi bạn đã nói, surfer.rb
trong dir đó, bạn có thể require "surfer"
bất cứ nơi nào và tập tin sẽ được tìm thấy.
Ngoài ra, như một quy ước, các lớp học và người độc thân có được một tệp và mô-đun nhận được một thư mục. Ví dụ, nếu bạn có các mô-đun LolCatz
và lớp LolCatz::Moar
đó sẽ trông giống như:
lib/
appname.rb
lolcatz/
moar.rb
Đó là lý do tại sao có một thư mục lib/appname bởi vì hầu hết các thư viện đang trong namespace appname
.
Ngoài ra, nếu bạn thử chạy lệnh newgem --simple [projectname]
, nó sẽ nhanh chóng tạo ra một giàn giáo cho bạn chỉ với các yếu tố cần thiết cho dự án Ruby (và mở rộng một Gem Ruby). Có những công cụ khác làm điều này, tôi biết, nhưng newgem là khá phổ biến. Tôi thường loại bỏ tệp TODO và tất cả nội dung tập lệnh.
Nguồn
2009-03-05 11:20:58
Lưu ý rằng bạn sẽ phải [sudo] gem install newgem để có được lệnh newgem ... –
ngọt ngào. Tôi không biết về newgem. Các dự án phi đường ray của tôi thường phản ánh cấu trúc Rails bởi vì tôi đã thấy nó quen thuộc. Cảm ơn bạn về mẹo thực hành tốt nhất này. –
Một tệp quan trọng khác có thể là "PHÉP" – bluehavana