2009-01-19 48 views
6

Có ai trong số các bạn biết một công cụ để trực quan hóa phần mềm hay điều hướng mã trực quan trong C# không?Hiển thị phần mềm cho C#

Tôi đã tìm thấy một loạt các công cụ nhưng tất cả đều dành cho Java vì một số lý do.

Có danh sách trong số đó bằng wikipedia nhưng không có danh sách nào dành cho nền tảng .Net.

http://en.wikipedia.org/wiki/Software_visualization#Tools

Tôi rất quan tâm trong việc điều khiển mã trực quan vì tôi nhận được rất mất phương hướng xung quanh các dự án lớn.

Trả lời

1

Red Gate's reflector (formerly Lutz Roeder's) cho phép bạn duyệt các hội đồng và xem phụ thuộc của chúng. Sử dụng chức năng phân tích, bạn có thể thấy nơi một lớp được sử dụng và những gì nó sử dụng.

Ngoài ra còn có một số plugin giúp việc duyệt web trở nên dễ dàng hơn. Ngoài ra, bạn có thể sử dụng trình duyệt đối tượng của Visual Studio để duyệt tất cả các lớp trong tất cả các hội đồng tham chiếu và xem phụ thuộc của chúng hoặc bạn có thể sử dụng chức năng Class View của Visual Studio để có cái nhìn tổng quan về các lớp và thuộc tính của chúng.

0

Phản xạ chắc chắn là một tùy chọn.

Tôi nhắm đến giải pháp trực quan hơn. Có lẽ một biểu đồ hiển thị cho bạn lớp nào đang sử dụng lớp nào, hoặc biểu đồ cho bạn biết phương thức nào đang gọi phương thức nào.

Ví dụ (mặc dù không phải trong C#) là CodeCity, EvoSpaces, CodeCrawler và một số liên kết đến wikipedia tôi đăng trong bài đăng gốc.

Vì vậy, tôi đã tự hỏi liệu có bất kỳ dự án phần mềm nguồn mở hiện có nào có liên quan đến nội dung này không.

1

Tôi nghĩ rằng NDepend là những gì bạn đang tìm kiếm, nhưng tiếc là nó không miễn phí.


Chỉnh sửa: Tôi vừa thấy rằng cũng có limited open source version.

+0

Có vẻ tốt nhưng - yessshk! - nó đắt. – endian

1

Bạn cũng có thể sử dụng biểu đồ lớp riêng của VS để cung cấp chế độ xem đồ họa cho một số mục. Mặc dù tôi nghĩ rằng nó chỉ giới hạn ở một dự án tại một thời điểm. Thêm một 'Sơ đồ Lớp' mới vào dự án, và sau đó kéo các lớp hoặc các hội đồng vv từ khung nhìn Lớp lên nó để thêm chúng; hoặc chuyển đến chế độ xem lớp học và nhấp chuột phải, xem sơ đồ. Tôi thấy những thứ này rất hữu ích khi nhìn xung quanh, nhưng không quá tuyệt vời để chỉnh sửa.

2

Reflector chính nó có thể không cung cấp hình ảnh mã hợp lý. Nhưng có addins có thể tăng cường nó với chức năng như vậy.

Thử addins sau trên this page:

  • Graph
  • AutoDiagrammer
  • SequenceViz
1

Frederick, những addin Reflector là hoàn toàn tuyệt vời. Tôi chắc chắn sẽ thử chúng.

Tôi cũng quan tâm đến "Đại diện không gian của mã". Đó là về việc sử dụng bộ nhớ không gian để điều hướng thông qua mã (và không bị lạc).

Có một nhóm nghiên cứu của Microsoft về đề tài này: http://research.microsoft.com/en-us/projects/SpatialCode/

Trên trang đó là một vài ý tưởng rất mát mẻ nhưng không có phần mềm để tải về và sử dụng (đó là nghiên cứu cho ya!).

Có ai biết gì về thực tế theo hướng đó không?

+0

Ofer, bạn không nên nhập câu trả lời của mình dưới dạng câu trả lời. Nếu phải theo dõi câu hỏi của bạn hoặc hỏi điều gì đó nhiều hơn những gì bạn đã viết ban đầu trong câu hỏi của mình, cách chính xác là viết nhận xét hoặc chỉnh sửa câu hỏi của bạn. –

+0

Cảm ơn Frederick. Tôi mới đăng bài trong stackoverflow và tôi thực sự đang tìm kiếm một cách để làm điều đó! Nếu tôi viết một câu hỏi và câu trả lời là một phần, hoặc câu hỏi của tôi bị hiểu lầm, có cách nào để đặt lại câu hỏi của tôi để những người khác biết nó vẫn chưa được trả lời? Cảm ơn rất nhiều! :) –

1

Nó sẽ chỉ là một giọt trong đại dương, nhưng trong khi bạn đang ở đó, cung cấp cho Stephan Brenner của .NET Reference Explorer một đi. Nó rất đơn giản, nhưng tôi thấy nó hữu ích ở chính xác những gì nó làm - đồ thị tham chiếu hội đồng.

Các vấn đề liên quan