Programación en Ada/Unidades hijas
El empleo de unidades hijas surge ante la necesidad de poder referenciar
a un gran número de unidades de biblioteca con distintos nombres. Al
igual que un sistema de archivos jerarquizado mediante directorios y
subdirectorios, la biblioteca Ada contiene una jerarquía en su
organización. Las unidades hijas son un paso más allá respecto a las subunidades, pues permiten extender la funcionalidad de un paquete sin modificar el paquete en cuestión.
El padre de todas las unidades de biblioteca es el paquete Standard. De este modo, las unidades de biblioteca creadas se agregan como hijas de Standard y se les denomina unidades de biblioteca raíz. Estas unidades serían hermanas de los paquetes predefinidos Standard.Ada, Standard.System y Standard.Interfaces. Y cada una de ellas puede a su vez contener unidades hijas.
Espacio de nombres Editar
Las unidades hijas forman también un espacio de nombres, desde dentro de la jerarquía es posible referirse a las entidades definidas en el paquete padre como si estuviesen en la propia unidad. Igualmente al referirse a unidades hermanas.
Por ejemplo:
package Servidor is type Petición_T is private; -- ... end Servidor;
package Servidor.Sesión is type Sesión_T is record Petición : Petición_T; -- Equivalente a Servidor.Petición_T -- ... end record; -- ... end Servidor.Sesión;
Los paquetes se pueden encontrar en cualquier punto de la jerarquía, y los subprogramas sólo en las hojas del árbol.
Visibilidad Editar
La parte privada de un paquete hijo y su cuerpo pueden referenciar las entidades definidas en la parte privada del paquete padre.