¿Qué es el diseño estructural en ingeniería de software?

Es “diseño estructurado” en lugar de “diseño estructural”.

Es una expresión muy antigua, desde el momento en que los programas usaban declaraciones goto y no tenían una estructura explícita en absoluto. Se usó principalmente para indicar descomposición funcional de arriba hacia abajo y restringirse a construcciones que podrían expresarse como los llamados gráficos de estructura (diagramas de nassi-schneidermann), evitando otro tipo de diagrama llamado diagrama de flujo (spaghetti en lugar de nassi). A pesar de su maldad, orientados al goto, los diagramas de flujo de la naturaleza siguen siendo increíblemente populares. Por cierto, los goto no siempre son malos. Son la forma más sencilla de construir algo llamado “máquina de estados”.

Por ahora el diseño estructurado es el predeterminado. Las declaraciones estructuradas como for, while y do-while o repeat-until son parte de cualquier lenguaje de programación excepto ensamblador. Centrarse en el diseño orientado a objetos en su lugar. Te traerá más.

Jacques de Hooge

Transcrypt – Python en el navegador – ¡Lean, rápido, abierto!

More Interesting

¿Cuáles son algunas opciones para que un brasileño sin pasaporte de la UE pueda vivir y trabajar en Berlín?

¿Por qué China se centra en la fabricación de gama baja, mientras que India es dominante en la industria de software de gama alta?

¿Cuál es la diferencia entre diseño de software e ingeniería de software?

¿Debo comenzar una carrera oficial como ingeniero de software a los 17 años, o esperar hasta que me gradúe de la universidad?

¿Cómo afecta la gestión de ingeniería de software a la arquitectura y la estructura del software producido?

¿La refactorización del código está sobrevalorada?

¿Qué libros / recursos de programación me ayudarán a ser un mejor programador?

¿Cómo es usar TopCoder desde la perspectiva de un cliente?

Como recién graduado, ¿dónde aprendería más y dónde puedo tener una progresión profesional más rápida, Facebook o Google? El papel en Google es un ingeniero de confiabilidad del sitio frente a un ingeniero de software en Facebook.

¿Cómo desarrollo más habilidades gerenciales orgánicas en lugar de un enfoque de Comando y Control?

¿Qué programa debe tener cada programador en su conjunto de habilidades?

¿Qué tan ventajoso es un MS en el campo del desarrollo de software?

Cómo tratar con desarrolladores extranjeros que no pueden completar el proyecto

Ley de inicio: ¿Cuáles son las implicaciones y repercusiones de la legalidad de la subcontratación de su trabajo?

Ingeniería de software: ¿Por qué la gente generalmente odia administrar el código de otras personas (en lugar de escribir el suyo)?