- Anidamiento (informática)
-
Anidamiento (informática)
El anidamiento (llamado nesting en inglés) es la práctica de incorporar llamadas (calls) a funciones o procedimientos (unas) dentro de otras, mediante la inclusión de diversos niveles de paréntesis.
Debido a que la potencial acumulación de éstos últimos suele hacer que la edición y la detección de errores se vuelva un proceso engorroso, los entornos de programación modernos -así como los programas de planilla de cálculo- resaltan en negrita el par correspondiente a la posición que está editando el programador o usuario en cada momento. El control (automático) del balance o equilibrio entre los paréntesis de apertura y de cierre se suele conocer como brace match checking en inglés.
Naturalmente, para la resolución matemática de estas complejas formulas encadenadas, las expresiones deben ser evaluadas desde adentro hacia afuera, ya que los resultados de las más internas sirven, temporalmente, de datos de entrada de las exteriores.
En las planillas de cálculo
En las hojas de cálculo, se suelen anidar o agrupar funciones unas dentro de otras, derivando en fórmulas relativamente complejas. El programa OpenOffice.org Calc permite, mediante su asistente de funciones (function wizard), navegar a través de los varios o múltiples niveles de anidamiento, permitiendo editar (y eventualmente corregir) cada una de ellas por separado. Tal vez de manera sorprendente, su rival Microsoft Excel no posee esa característica, eventualmente deseable cuando se trabaja en algunas grandes planillas.
En programación
En los lenguajes de programación estructurada, el anidamiento está relacionado a la inclusión de estructuras de control dentro de otras, usualmente indicado mediante la inclusión de distintos niveles de sangría (llamada indentation en inglés) dentro del código fuente, como se muestra en el sencillo código BASIC siguiente:
function BuscarCodigo(cod as string) as integer dim linea, ruta as string dim valor_a_devolver as integer ruta="C:\Probar.csv" if FileExists(ruta) then open "C:\Probar.csv" for input as #1 do while not EOF(1) line input #1, linea if left(linea, 3)=cod then 'Realizar una acción o varias acciones End if loop close #1 BuscarCodigo=valor_a_devolver end function
En este simple ejemplo, la estructura condicional if... then... end if ("si... entonces... fin si") está anidada dentro de otra que la contiene, el ciclo do while... loop ("repetir... mientras", literalmente "hacer mientras... bucle").
Véase también
- Bucle (programación)
- Estructuras de control
- Función (programación)
- Procedimiento (programación)
- Programación estructurada
- Pseudocódigo
Categoría: Programación
Wikimedia foundation. 2010.