Я сомневаюсь, как получить лучшее из структур ABAP и атрибутов класса.
Допустим, у меня есть объект Operation с 4 полями: идентификатор операции, тип, описание и дата.
Теперь я могу создать класс с этими 4 атрибутами, но затем, если я хочу иметь конструктор, мне нужно либо 4 отдельных параметра, либо структура, которую необходимо сопоставить с каждым атрибутом. То же самое происходит, если я хочу получить все эти данные объекта в одной структуре, например, для возврата через RFC. Затем метод get_operation_details( )
должен будет отобразить их все по одному.
Если я использую тип структуры ty_operation_details
в качестве атрибута одного класса, то при добавлении поля в структуру также сохранятсядопустимый конструктор и метод get_operation_details( )
также всегда будут в порядке. Однако кажется неправильным иметь что-то вроде Operation->get_details( )-operationID
вместо operation->operation_ID
, если у меня был атрибут непосредственно в публичном разделе с READ-ONLY
. Я думаю, что первый подход является более правильным в мире ОО, но мы теряем некоторые из преимуществ ABAP.
Что вы рекомендуете использовать? Возможно, одна вещь, которая могла бы разрешить первый параметр и одновременно использовать структуры, была бы CORRESPONDING
инструкцией, способной отображать атрибуты класса в плоскую структуру, но я не думаю, что это возможно.