View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] |
ID | Project | Category | View Status | Date Submitted | Last Update |
0002592 | SAS.Планета | Рефакторинг | public | 09-01-2015 11:23 | 09-01-2015 20:27 |
|
Reporter | vdemidov | |
Assigned To | vdemidov | |
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | resolved | Resolution | fixed | |
Platform | | OS | | OS Version | |
Product Version | 140505 | |
Target Version | 150915 | Fixed in Version | 150915 | |
|
Summary | 0002592: В интерфейсе ICoordConverter разделить функции проверки и валидацию координат |
Description | Сейчас в ICoordConverter есть куча функций Check* которые выполняют проверку и валидацию координат. То есть они получают параметры по ссылке и подгоняют их к допустимому виду и дополнительно возвращают логический результат было ли какое-то изменение. Но в большинстве случаев требуется что-то одно или проверка, или валидация. Все бы ничего, но так как параметры у этих функций передаются по ссылке, то в случае когда нужна просто проверка приходится заводить локальные переменные, а это несколько громоздко.
Поэтому нужно сделать функции Validate* c параметрами по ссылке и функции Check* c константными параметрами. |
Steps To Reproduce | Менять интерфейс можно примерно в таком порядке:
1. Переименовываем функций Check* с именами Validate* и исправляем все места их использования.
2. Добавляем новые функции Check* с константными параметрами
3. Временно преобразовываем функции Validate* в процедуры и по ошибкам компилятора находим все места где используется возвращаемое значение и заменяем на использование функции Check*.
4. Если найдутся места, где нужна одновременно и валидация, и проверка, то преобразовываем назад процедуры Validate* в функции. |
Tags | No tags attached. |
|
Attached Files | |
|