Tôi vừa gặp phải một "vấn đề thú vị", mà tôi muốn ý kiến của bạn về:
Tôi đang phát triển một hệ thống và vì nhiều lý do (có nghĩa là: trừu tượng, độc lập công nghệ, v.v.), chúng tôi tạo ra các loại riêng để trao đổi thông tin.
Ví dụ: nếu có một phương thức được gọi là SendEmail và được gọi bởi logic nghiệp vụ, thì nó có một tham số kiểu OurCompany.EMailMessage, một đối tượng hoàn toàn độc lập với công nghệ và chỉ chứa "dữ liệu liên quan đến kinh doanh" (cho ví dụ, không có thông tin mã hóa đầu abut).
Bên trong chức năng SendEmail, chúng tôi nhận được thông tin này từ đối tượng EMailMEssage của chúng tôi và tạo một đối tượng MailMessage (đây là đối tượng cụ thể về công nghệ) để có thể gửi qua mạng.
Như bạn đã biết, lớp của chúng tôi có một tên rất giống với lớp ngôn ngữ "bản địa". Vấn đề là: đây chính xác là những gì chúng là, email, vì vậy thật khó để tìm một tên có ý nghĩa khác cho chúng.
Bạn có vấn đề này thường xuyên? Làm thế nào để bạn quản lý nó?
Chỉnh sửa: @mgkrebbs chỉ nhận xét về việc sử dụng tên đầy đủ. Đây là cách tiếp cận hiện tại của chúng tôi, nhưng hơi quá dài dòng, IMHO. Tôi muốn một cái gì đó sạch hơn, nếu có thể.