2009-08-28 2 views
16

Ngoài thói quen, tôi có xu hướng đặt các lớp/cấu trúc/liệt kê trong các tệp riêng biệt khi không lồng nhau.Tôi đặt tờ khai đại biểu C# của mình ở đâu trong một tệp của riêng mình?

Đối với các đại biểu, nó có vẻ như quá mức cần thiết để tạo ra một tập tin riêng biệt cho một liner:

public delegate string MyDelegateThatIsNotNestedInAnyClass (string par); 

tôi thường thêm nó vào dưới cùng của tập tin lớp liên quan chặt chẽ nhất. Tôi chỉ tự hỏi những gì người khác làm gì?

Trả lời

1

Thông thường, tôi chỉ sử dụng:

Func<string, string> 

những ngày

+0

Mặc dù tôi đồng ý rằng đại biểu chung này thực hiện rất nhiều công việc không phải khai báo đại biểu của bạn (vì nó có thể chứa nhiều người), nó thực sự không phải là câu trả lời cho câu hỏi của anh ấy nên tôi không thể upvote. –

+0

Tôi thề rằng tôi là người duy nhất thực sự làm giảm các câu trả lời không liên quan nữa. – jfar

+0

@jfar: Bạn có biết rằng bạn có một điểm tương đồng nổi bật với Victor Creed (hay còn gọi là Sabertooth) từ X Men Origins: Wolverine? –

2

tôi thường thêm nó vào trong file .cs của lớp mà thực hiện chức năng đại biểu (ở cấp namespace). Nếu có một số trong số này, tôi đặt nó trong một tập tin riêng biệt.

Nếu tôi biết chắc chắn rằng chỉ có một lớp sẽ thực hiện chức năng ủy nhiệm, tôi lồng nó vào lớp thực hiện.

1

Cá nhân tôi thêm nó trước khi một định nghĩa lớp liên quan chặt chẽ . Mặc dù vậy, tôi sử dụng tốt các không gian tên nên tôi không gây ô nhiễm!

1

Nếu nó liên quan chặt chẽ, đủ để thuộc về cùng một tệp với lớp, thì bạn có thể có thể biện minh cho việc lồng nó trong lớp. Sau đó, bạn sẽ không gặp khó khăn khi nhớ tệp lớp nào trong đó.

Nếu không có lớp đơn nào là lựa chọn rõ ràng để lồng vào, việc tạo tệp một dòng có thể đáng giá vì bạn sẽ không bao giờ lãng phí thời gian để ghi nhớ mà bạn đã quyết định đặt nó vào.

1

Tôi allways tuyên bố các sự kiện của riêng tôi, ngay cả khi tôi không cần chúng trong sence rằng một sự kiện chung sẽ là đủ. Lý do cho điều đó là tên lớp của sự kiện mang lại cho mã dễ đọc hơn nhiều và cũng không hiếm khi sự kiện được khai báo sẽ cần được tiếp tục xuống đường vì một lý do nào đó. Vì tôi có một lớp sự kiện, tôi allways đặt các đại biểu trên tờ khai lớp của sự kiện này. Họ được kết hợp chặt chẽ và nếu bạn cần phải lắng nghe sự kiện thì bạn sẽ cần cả sự kiện và đại biểu. Tôi không biết nếu điều này vi phạm một số quy tắc thiết kế của bất kỳ loại nào, nhưng điều này đã làm việc độc đáo cho tôi.