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
Servidoris
type
Petición_Tis
private
;-- ...
end
Servidor;
package
Servidor.Sesiónis
type
Sesión_Tis
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.