[C#] Plotly.NET.CSharp Roadmap
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- F#
- Star
- 860
- Fork
- 99
- Merge trung bình
- 22 phút
- Pull request đã merge (30 ngày)
- 1
Mô tả
This issue tracks the roadmap for the native C# package Plotly.NET.CSharp
Plans on how to design and develop the C# API have been laid out and tracked in #285 and #322.
The general roadmap implementation-wise is the following:
- 1. C# bindings for the high-level Chart construction API (#296), one binding per chart at first (no overloads)
- 2. C# GenericChart Extension methods (this covers more or less all styling functions). Once these are finished, the F# extension methods for fluent interface can be removed.
- 3. C# bindings for Object abstractions (TraceObjects, LayoutObjects, etc.) this might be a bit tricky
Progress on this side has been made on the 'csharp-object-bindings' branch. In short, all these bindings can be auto-generated by using reflection on the F# objects. Might be worth to look into C# source generators
The way to go for the future is clearly code generation. The F# core API could in theory also created from the plotly.js JSON schema, but has many features that would be hard to automate such as type safety for enums etc.
To prevent having to namually maintain 2 code bases though, we should at least try to auto-generate the C# API based on the F# API, over which we have full control.
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu bằng cách đọc các mục trong roadmap và các cuộc thảo luận thiết kế trước đây ở #285 và #322. Kiểm tra branch csharp-object-bindings, đặc biệt là src/Plotly.NET.Codegen, và đánh giá cách tiếp cận tạo mã được đề xuất; roadmap hoàn tất khi các phần mở rộng C# và các object binding còn lại được triển khai mà không phải duy trì thủ công một API thứ hai.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- csharp, fsharp
- Lĩnh vực
- tooling
- Loại issue
- Tính năng
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 25/100