[Progress OpenEdge/.NET] Static Properties vs Dictionary

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Davio
  • Registratie: November 2007
  • Laatst online: 06-01 16:46
Beste Tweakers,

Wij maken gebruik van Progress OpenEdge v10.2B04.
Ik hoor jullie denken: "Wat heeft dit met .NET te maken?", maar Progress kan .NET objecten gebruiken en zelf .NET-achtige klasses aanmaken.

Zo hebben we de volgende klasse met een hele lijst static properties:
OpenEdge ABL:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
USING Progress.Lang.*.

CLASS Foo.Enum.Parametergroep:

  DEFINE PUBLIC STATIC PROPERTY AfdoendeNatuurlijkeBarriere AS CHARACTER NO-UNDO
    GET():
      RETURN "AfdNatBarr":U.
    END GET.

  DEFINE PUBLIC STATIC PROPERTY AfleverAdresParameters AS CHARACTER NO-UNDO
    GET():
      RETURN "afladres":U.
    END GET.

  DEFINE PUBLIC STATIC PROPERTY Betaalwijze AS CHARACTER NO-UNDO
    GET():
      RETURN "betwz":U.
    END GET.

/* Etc.... */

END CLASS.


Deze klasses worden gegenereerd met een conversieprogramma die database-tabellen met parameters uitleest en er Static Properties van maakt. Zo krijgen we een hele waslijst met deze properties. Het gebruiken van constants als in .NET is onmogelijk. Ook enums kunnen niet en die kunnen sowieso niet van nature strings bevatten.

Ik vroeg me af of het wellicht nuttiger zou zijn om een static Dictionary aan te maken met alle Properties en Values zoals nu gespecificeerd. Zou dit eventueel uitmaken qua performance? Ik weet niet of het een nettere oplossing is, dat is een andere discussie. Het blijft hoe dan ook een beetje gekunsteld, de klasse zit ook in de Namespace Enum omdat dat wel het achterliggende idee is...

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Davio schreef op maandag 23 mei 2011 @ 11:23:
Zou dit eventueel uitmaken qua performance?
Vast (of dat positief of negatief is mag je zelf uitzoeken: meten == weten; kwestie van een testcase maken en benchmarken, minder moeite dan een topic openen ;) ). Maar waarom maak je je daar druk om? Is performance dan een issue? Of zijn we alweer lekker aan 't premature optimizen? :)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij