Page 1 of 1

max Anzahl Parameter an Methode

PostPosted: Fri May 11, 2012 8:17 am
by Maja967
Hallo,

gibt es eine maximale Anzahl an Parametern die man bei einer Methode definieren kann ?

Hintergrund: Ich muß eine Methode im prozeduralen Umfeld entwickeln die als zentrale Anlaufstelle für dieverseste Programm verwendet werden soll. Hierbei muß, sowie aktueller Stand der Dinge ist wohl oder übel ca 40 optionale Parameter an der Methode bereitstellen, um "Übersichtlichkeit" ( :? ) für unserer Entwickler herzustellen ...
Jeder einzelen Parameter besteht aus einer Struktur ... eine Konsolidierung der Felder innerhalb jeder Strukur werde ich natürlich versuchen, so das in Konsequenz weniger optionale Parameter entstehen, aber das weißt ich noch nicht ob mir das so gelingt.

die param_liste sieht wohl so aus:

std_xxxx
std_aaaa
std_bbbb
prg_1 (optional)
prg_2 (optional)
......

Re: max Anzahl Parameter an Methode

PostPosted: Fri May 11, 2012 1:46 pm
by Jonny2227
Sali,

also ne Methode mit so vielen Parametern zu erstellen - halte ich für designtechnisch nicht besonders gelungen. Versuche das Ganze vielleicht in mehrere Methoden aufzubrechen - was du da machen willst - also die Granularität zu verbessern. Oder aber du übergibst eine tiefere Struktur - also eine Struktur mit Feldern die wiederum eine Struktur sind - dann ist das Coding - wenn du die Methode irgendwo einbaust wenigstens einigermassen übersichtlich - denn wenn ich mr vorstelle - da steht irgendwo call method abc exporting ... -> und danach vierzig einzel Parameter wenn es hoch kommt - das würde meinem Design Anspruch widersprechen und ich denke da ist auch nicht genau genug überlegt wie man das ganze besser kapseln kann !
Oder übergib eine Tabelle mit den Parametern und den Werten - die du dann in der Methode benutzt !

Gruss Jens

Re: max Anzahl Parameter an Methode

PostPosted: Fri May 11, 2012 2:36 pm
by Maja967
@js

thx, sehe ich grundsätzlich genauso, habe mich wohl nicht genau genug ausgedrückt.

also:

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. CALL METHOD zcl_xxxx=>ueb_methode
  2.   EXPORTING
  3.     i_allg1 = ab_x
  4.     i_allg2 = ab_xx
  5.     i_allg3 = ab_xxx
  6. *    i_prg1  = ab_prg_speziell
  7. *    i_prg2  = ab_prg_speziell2
  8. *    i_prg3  = ab_prg_speziell3
  9. *    i_prg4  = ab_prg_speziell4
  10.                        
  11.     .
  12.  
GeSHi ©


Die Parameter also ab_x ..... bzw ab_prg_speziell .... sind strukturen (teilweise tiefe -> dh incl. Tabellen in der Struktur).

die Strukturen ab_x, ab_xx .... sind zwingend für alle Programme notwendig.
die Strukturen ab_prg_speziel etc enthalten, die notwendigen Infos speziell auf einen Abnehmer bezogen.

Somit kann ich bzw der Entwickler der jeweiligen Anwendung erkennen was er zu bestücken hat .

thx, again .

Re: max Anzahl Parameter an Methode

PostPosted: Fri May 11, 2012 2:58 pm
by Jonny2227
Sali,

es wäre aber mE trotzdem sinnvoll sich darüber Gedanken zu machen wie man die Anzahl der Parameter durch eine bessere Granulierung / Kapselung des Ganzen reduzieren bzw. überscihtlich halten kann - oder eine eigene Klasse für den "Speziellen Abnehmer" bauen !

Gruss Jens