2010-04-22 24 views
11

Có lẽ một câu hỏi tầm thường, nhưng tôi quan tâm đến câu trả lời. Tôi hiện đang tái cấu trúc một số tệp tài nguyên chuỗi nguyên khối rất lớn (một tệp tài nguyên dumpster cho mỗi dự án, trong khoảng 30 dự án). Tôi đang tách chúng ra sao cho chúng tôi tuân theo quy ước cho các tệp của chúng tôi và làm cho các chuỗi dễ tìm và quản lý hơn khi mã hóa.Đề án đặt tên và quản lý tệp tài nguyên chuỗi

Nói chung tôi chia nhở file ra thành chương trình này:

  • ErrorMessages.resx
  • LogMessages.resx
  • ViewResources.resx
  • AppResources.resx

tôi Tôi không ngạc nhiên với việc đặt tên, và tôi chỉ tự hỏi những gì người khác sử dụng. Ví dụ, thay vì AppResources (chuỗi để sử dụng nội bộ bởi ứng dụng), tôi đã nhìn thấy rất nhiều dự án trình diễn sử dụng StringResources, Internal (khủng khiếp!) Vv

Ý tưởng/giai thoại/gợi ý về nguồn lực quản lý hoặc tiêu chuẩn kế hoạch đặt tên được đánh giá cao.

Trả lời

14

Tôi thường cấu trúc nguồn lực của tôi như thế này:

Các tập tin tài nguyên đầu tiên được sử dụng bởi toàn bộ ứng dụng (ví dụ Project.Core) và không bao gồm tất cả các loại dây thông thường sử dụng rộng rãi. Tôi thực sự không thực hiện bất kỳ sự khác biệt giữa lỗi/trường hợp ngoại lệ và khai thác gỗ:

  • CommonResources.resx
    modifier Access: Công
    • Error_Context
      ví dụ Error_ArgumentCannotBeNull
    • Warn_Context
      ví dụ: Warn_ApplicationSettingNotFoundUseDefault
    • Info_Context
      ví dụ: Info_UpdateAvailable
    • Validation_Context
      ví dụ: Validation_EmailNotValid

Các tập tin tài nguyên thứ hai được sử dụng bởi các lớp trình bày và chứa tất cả các loại dây UI. Việc đặt tên có thể thay đổi từ dự án để dự án nhưng nói chung nó trông giống như sơ đồ sau:

  • PresentationResources.resx
    Tiếp cận modifier: Internal
    • Common_Context
      ví dụ Common_Yes
    • Section/Controller_Window/View_Context
      ví dụ:Help_FAQ_HeadlineHowToUseResources hay Help_FAQ_TextHowToUseResources

Cuối cùng tất cả các dự án/lắp ráp không cũng có một tập tin tài nguyên nội bộ cho Lỗi/Cảnh báo/Thông tin nguồn lực/Validation mà là quá cụ thể để đi trong file CommonResources.resx. Tôi phải thừa nhận, rằng tôi chủ yếu là đặt tên cho tập tin tài nguyên này InternalResources.cs;)

  • InternalResources.resx
    Tiếp cận modifier: Internal
    • Classname_Error_Context
      ví dụ BCrypt_Error_InvalidSaltRevision
    • Classname_Warn_Context
    • Classname_Info_Context
    • Classname_Validation_Context
Các vấn đề liên quan