Tôi đang làm việc trên ứng dụng Sinatra chứa khoảng 10 thành phần chức năng khác nhau. Chúng tôi muốn để có thể trộn và kết hợp các thành phần này vào trường hợp riêng biệt của ứng dụng, cấu hình hoàn toàn từ một tập tin config.yaml trông giống như sau:Kiến trúc cho một ứng dụng Sinatra dựa trên thành phần mô-đun,
components:
- route: '/chunky'
component_type: FoodLister
component_settings:
food_type: bacon
max_items: 400
- route: 'places/paris'
component_type: Mapper
component_settings:
latitude: 48.85387273165654
longitude: 2.340087890625
- route: 'places/losangeles'
component_type: Mapper
component_settings:
latitude: 34.043556504127466
longitude: -118.23486328125
Như bạn có thể thấy, các thành phần có thể được khởi tạo hơn hơn một lần, mỗi cài đặt theo ngữ cảnh của riêng họ.
Mỗi thành phần bao gồm ít nhất một tuyến đường, với thuộc tính "tuyến đường" từ tệp cấu hình được sử dụng cho cơ sở.
Cách tốt nhất để sắp xếp và khởi tạo mã mô-đun là gì?
Vị trí này gần nhưng không tính đến định tuyến động được đề cập trong câu hỏi. tức là '/ chunky' không thể được mã hóa cứng. –
Điểm tốt. Xem phần chỉnh sửa. – bioneuralnet
Đẹp! Đã không nghĩ đến việc lặp lại bên trong mã mở rộng. Lưu ý cuối cùng: Ý của bạn là 'mở rộng' thay vì' sử dụng'? Tôi không thể tìm thấy tài liệu về 'use'. –