В момента работя върху доста сложно ABAP приложение, което ще бъде разделено на няколко модула, всеки от които изпълнява определена част от работата:
- един за събиране на някои данни от множество източници;
- един за показване на тези данни в потребителския интерфейс (SALV мрежа, ако това има значение);
- един за правене на някои бизнес неща въз основа на тези данни.
Според моя план всеки модул ще бъде глобален клас. Има обаче някаква логика, която може да се наложи да бъде споделена между тези класове: помощни подпрограми, логика за достъп до DB и т.н. Всичко това е набор от локални класове в момента.
Знам, че тези класове биха могли да бъдат и глобални, но това би означавало излагането им (както и редица вътрешни структури от данни) на обществеността, което не бих искал. Друг подход би бил споделянето на включванията с тях между моите глобални класове, но се казва, че това е лош дизайн.
И така, въпросът ми е: как истинските ABAPers решават проблеми като този?
DB access logic
звучи като нужда от друг помощен клас. Може би бихте могли да създадете главен клас и да наследите подпрограмите от този главен клас (но това също може да е много лоша идея - зависи от вашия реален код). - person knut   schedule 30.11.2014