Tôi gặp vấn đề khi đặt tên cho các lớp và dịch vụ của mình một cách chính xác khi các tiện ích và các lớp trợ giúp khác có liên quan.
Làm thế nào bạn sẽ cấu trúc như sau:
EventService.cs
EventServiceUtils.cs
EventServiceValidators.cs
EventServiceCoordinator.cs
Vân vân...
Tôi có nhiều dịch vụ có cùng nhu cầu như dịch vụ trên. Một suy nghĩ là tách tất cả những thứ này thành một không gian tên phù hợp, làm cho nó trông giống như thế này:
Services.EventService.EventService.cs //(the actual service)
Services.EventService.Validators.DateValidator.cs
Services.EventService.Validators.ParticipantValidator.cs
Services.EventService.Coordinators.ParticipantCoordinator.cs
Services.EventService.ExtensionMethods.Extensions.cs
và như thế. Mỗi không gian tên tất nhiên là một thư mục riêng. Nhưng điều này không cảm thấy 100%, vì có lẽ có nhiều DateValidators
dịch vụ khác, điều này có thể dễ dàng dẫn đến một tham chiếu không mong muốn.
Và cũng Services.EventService.EventService.cs
bao gồm tên lớp trong không gian tên, điều này cũng không tốt. Bạn có thể sử dụng Services.Event.EventService.cs
, nhưng tất nhiên đã có một thực thể có tên đó.
Đây là mô hình miền.