robinweide / GENOVA

GENome Organisation Visual Analytics
GNU General Public License v3.0
69 stars 15 forks source link

Discovery class hierarchy #196

Closed teunbrand closed 4 years ago

teunbrand commented 4 years ago

To simplify writing methods for discovery objects, we could adopt a class hierarchy. This currently is already in place for APA, PESCAn, CSCAn, ATA, ARA etc. which have their own class, plus the ARMLA_discovery class. This made it super convenient to make e.g. print() and (un)bundle() methods for these. We could probably do the same for DI, compartment score and insulation score. Furthermore, it might be convenient to have a class for all discoveries just so that we might write general discovery methods that aren't dependent on how the discoveries are represented. This would mean that an APA returns an object of the 3 classes APA_discovery, ARMLA_discovery and discovery, but makes it easier to write methods for them.

robinweide commented 4 years ago

Good to think about these things. We have to look at it from the point of future-proofing: how much extra are we adding in the coming months? I feel that if the answer to this is "a little", this revamp will be only nice to have. If we feel that we will build a lot on top of these structures, then yes: this is definitely a good idea to implement.

teunbrand commented 4 years ago

Checklist for discovery classes

Generics that should have methods for this:

teunbrand commented 4 years ago

Done