Có thể vượt qua giao diện không? khi thiết kế một hệ thống ngay bây giờ, tôi sẽ bắt đầu từ các giao diện và dần dần viết các bài kiểm tra đơn vị cùng với các giao diện cho đến khi tôi có một mô hình hoạt động tốt .. Tôi sẽ chuyển sang viết một số lớp cụ thể và thiết lập các bài kiểm tra đơn vị chống lại các ...NET - Bạn có thể trên giao diện hay không và khi nào bạn không nên giao diện
Bây giờ tôi là một người yêu giao diện, tôi thường sẽ chỉ kết thúc/trả lại nguyên thủy hoặc giao diện xung quanh khi tôi kiểm soát mã .. cho đến nay tôi thấy điều này là lý tưởng, bạn có thể dễ dàng điều chỉnh và nâng cao một hệ thống nói chung mà không ảnh hưởng đến các hệ thống phụ thuộc.
Tôi rõ ràng không cần phải bán lý do sử dụng giao diện, nhưng tôi tự hỏi liệu nó có quá tải để giao tiếp mọi thứ hay không, ps. Tôi không nói về giao diện trống như trong một cái gì đó điên rồ như:
interface IStringCollection : ICollection<string>
{
}
Tôi đang nói nhiều cái gì đó như:
interface ISomethingProvider
{
ISomething Provide(ISomethingOptions options);
}
Đây có phải là thực sự trên đầu? lý do của tôi là bất kỳ loại nào có thể đạt được từ interfacing tại một số điểm .. và vấn đề thực sự duy nhất tôi đã có là tôi đã phải tìm hiểu những gì tôi nghĩ là một cách tốt hơn để thiết kế các lớp học, như bạn không có daft tương tác và 'hack' đang diễn ra.
Rất thích phản hồi của bạn về nếu điều này là một timebomb, và khi bạn quyết định giao diện vs không ..
PS này là không thực sự rất nhiều về cách viết giao diện.
Đúng, nếu bạn thấy mình viết về cơ bản cùng một phương pháp để triển khai giao diện trên hai lớp, bạn cần một lớp cơ sở trừu tượng. –