Intrusive structure de données est celui qui exige l'aide d'éléments qu'il a l'intention de les stocker afin de les stocker.
Permettez-moi de reformuler ce qui. Lorsque vous mettez quelque chose dans la structure de données, que ce "quelque chose" devient conscient du fait que c'est dans cette structure de données, d'une certaine façon. L'ajout de l'élément de données modifications de la structure de l'élément.
Par exemple, vous pouvez construire un non-intrusive arbre binaire, où chaque nœud de disposer d'une référence à gauche et à droite sous les arbres, et une référence à l'élément de la valeur de ce noeud.
Ou, vous pouvez construire une intrusif où les références à ces sous-arbres sont incorporés dans la valeur elle-même.
Un exemple d'un intrusif structure de données serait une liste ordonnée d'éléments qui sont mutables. Si l'élément change, la liste doit être réorganisée, de sorte que les objets de la liste a à empiéter sur la vie privée des éléments afin d'obtenir leur coopération. c'est à dire. l'élément a à savoir à propos de la liste il est, et de l'informer des changements.
ORM-systèmes habituellement tournent autour intrusive structures de données, afin de minimiser l'itération sur les grandes listes d'objets. Par exemple, si vous récupérez une liste de tous les employés dans la base de données, puis modifier le nom de l'un d'entre eux, et que vous voulez enregistrer dans la base de données, l'intrusion de la liste des employés serait dit quand l'employé de l'objet a changé, car cet objet ne sait qui liste dans.
Un non-intrusive liste ne serait pas dit, et aurait pour comprendre ce qui a changé et comment elle a changé par lui-même.