Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Decouple CompoundGenerator behaviours

Đang mở
#76 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tái cấu trúc
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
python
Lĩnh vực
backend

Hướng nghiên cứu

Bắt đầu bằng cách đọc CompoundGenerator cùng với các generator Zip và Concat được nêu trong issue, sau đó theo dõi cách việc lồng nhau và tạo point hiện đang tương tác với nhau. Xác định mối tương ứng với các khái niệm Generator được mô tả cho Python và Java trước khi quyết định có thể tách các trách nhiệm như thế nào. Được xem là hoàn tất khi CompoundGenerator hoạt động như một Generator thông thường, có thể được bọc bởi Zip hoặc Concat, và các model có thể được populate mà không cần generator bọc bên ngoài.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

CompoundGenerator performs 2 functions: nesting generators and creating all the points for a scan.

With the addition of Zip and Concat generators, the nesting behaviour should be removed from the the creating points generators, as these generators must work on Generators (which a CompoundGenerator is not). These models also hint that there could be further ways of combining two generators (although I'm struggling to think of geometries other than a inside b, a alongside b, a after b)

This would allow CompoundGenerator to become another normal Generator, which can be wrapped by a Zip/Concat, and could allow a model to be populated with points without a wrapping generator, which would make the matching of Java and Python concepts of generators in GDA a little simpler.

Cons: pretty large rework
Pros: separation of concerns, allows nesting Compounded models within other 'Multimodels'

Ngôn ngữ chính
Python
Star
6
Fork
6
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của DiamondLightSource/scanpointgenerator

Tất cả issue của DiamondLightSource/scanpointgenerator

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.