Рефакторинг сложного интерактивного кода UserControl? - PullRequest
0 голосов
/ 22 сентября 2018

У меня есть этот UserControl, оборачивающий диаграмму UserControl (ZedGraph), для финансовых графиков.Я никогда не понимал, как реорганизовать код для этого элемента управления.Проблема в том, что я встроил много функций в диаграмму, где пользователь взаимодействует с кнопками и объектами диаграммы, щелкая мышью, перетаскивая их, перемещаясь, прокручивая и т. Д., И он просто создает много кода.Кажется, трудно провести рефакторинг, потому что все зависит от всего.У меня на самом деле нет никаких проблем с функциональностью, просто мне нужно около 10 000 строк кода, и мне интересно, может ли быть более аккуратное решение.

Я не очень хорошо разбираюсь в шаблонах проектирования, но такжеМне трудно понять, когда речь идет о кодировании UserControl.Почувствуйте привязанность к классу из-за необходимости взаимодействовать со свойствами и событиями UserControl и дочерних элементов управления.

Итак, я просто ищу совет о том, как это можно решить более профессиональным образом.Какой тип структур классов и организации может предложить очевидные преимущества, в целом для сложного интерактивного UserControl, или, более конкретно, если что-либо можно вывести из этого свернутого обзора?:

enter image description here

...