[Alg] Dependent objecten, welke volgorde?

Pagina: 1
Acties:

  • TheBlasphemer
  • Registratie: September 2004
  • Laatst online: 13-11-2025
Ik ben bezig aan een add-on voor MSN met een hele zooi features. Tot nu toe alleen op de features gefocussed, en die zijn allemaal heel mooi gelukt, al zeg ik het zelf ;)
Nu komt echter het deel waarin ik de gebruiker de optie wil geven om features aan en uit te zetten, en het omgaan van foutmeldingen (als features niet geladen kunnen worden).

Elk object (feature) moet geinitialiseerd worden. Sommige objecten hebben depencies, wat betekent dat om object C te laden, A en B ook geladen moeten zijn. Als er bij A of B iets misging, mag C dus niet geladen worden. C mag ook niet geladen worden voordat A en B geladen zijn.
Daarnaast moet als feature C enabled is maar bv A of B niet de gebruiker de keuze krijgen A of B alsnog te enablen.

Voorbeelden van dingen die werken zoals ik wil is bijvoorbeeld APT van debian, die als je een package installeert eerst de depencies checked etc...

Nu is mijn vraag, hoe programmeer je zoiets? Hoe sla je de objecten/features op? een table, een tree ? En hoe bepaal je in welke volgorde alles geladen moet worden?
Ik heb op google al gezocht op dingen als "Depency algorithm" maar kwam meestal op onzin uit.

Daarom hoop ik dus dat mensen hier me kunnen helpen :)

Alvast bedankt,
TB

[img=http://www.web2messenger.com/smallstatus/w2m/theblasp.png]


  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 21-02 23:50
Ten eerste is het misschien handig om te googlen op de correcte spelling: "dependancy".
Zelf zou ik die dependancies opslaan in een tree-vorm.

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


  • EfBe
  • Registratie: Januari 2000
  • Niet online
Topological sort of a directed graph lost dit op. Het algo is vrij simpel, je moet alleen even weten hoe. En dat hoe zal google je nu wel vertellen :)

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

Ontwerpkwesties mogen in Software Engineering & Architecture.

PRG>>SEA

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.