Tôi hoàn toàn không đồng ý với lý do "có thể gây nhầm lẫn".
Ở một mức độ nào đó, tôi có thể thấy điều gì có nghĩa là không có lý do gì để mạo hiểm bên ngoài "hiểu biết chung" - mọi người hiểu đối tượng! = Null.
Nhưng trong Visual Studio, chúng tôi có các công cụ tuyệt vời, nơi bạn có thể chỉ cần di chuột qua phương pháp, để tiết lộ một số thông tin bổ sung.
Nếu chúng ta nói rằng phương pháp mở rộng đã được chú thích với một lời giải thích tốt, thì tôi cảm thấy rằng đối số của sự nhầm lẫn bị tách rời.
Phương thức .IsNotNull() và .IsNull() giải thích chính xác chúng là gì. Tôi cảm thấy họ rất hợp lý và hữu ích.
Trong tất cả sự trung thực, đó là vấn đề "những gì bạn thích". Nếu bạn cảm thấy các phương pháp sẽ làm cho nó dễ đọc hơn trong bối cảnh dự án của bạn, sau đó đi cho nó. Nếu bạn đang phá vỡ quy ước trong dự án của bạn, thì tôi sẽ nói ngược lại.
Tôi đã có những suy nghĩ tương tự như bạn có về chủ đề và đã hỏi một số nhà phát triển rất có kinh nghiệm tại nơi làm việc của tôi. Và không ai trong số họ đã đưa ra một lý do chính đáng (ngoại trừ những gì đã được đề cập về -confusion- ở đây) mà sẽ giải thích tại sao bạn không nên làm điều này.
Go cho nó :-)
Nó rất giống http://stackoverflow.com/questions/790810/is-extending-string-class-with-isnullorempty-confusing – Vadim
Nó không phải bất kỳ ngắn hơn, và đó là không rõ ràng hơn. –
+1 Pavel - đặt tốt. –