Saltar al contenido
Portada > Blog Aprender Computación > Structured English, el idioma que une humanos y máquinas

Structured English, el idioma que une humanos y máquinas

structured english

Cuando comenzamos a adentrarnos en el mundo de la programación (te dejo el link sobre cómo aprender la lógica de la programación), una de las primeras barreras que encontramos es entender cómo estructurar y comunicar nuestras ideas de manera clara y lógica. Aquí es donde aparece el Structured English, una herramienta esencial para los principiantes que se encuentra justo entre el código de programación y el lenguaje que entendemos los humanos. En este artículo, exploraremos qué es Structured English, por qué es útil y cómo puedes aprovecharlo en tu viaje de aprendizaje.

structured english

¿Qué es Structured English?

Structured English (o «Inglés Estructurado») es una forma de describir algoritmos utilizando palabras comunes del inglés, pero con una estructura y formato que reflejan la lógica de un programa. Es una especie de puente entre la programación real y el pseudocódigo, ayudando a clarificar los pasos de un algoritmo antes de escribir el código en un lenguaje de programación específico.

Este lenguaje utiliza palabras clave comunes en los lenguajes de programación, como IF, THEN, FOR, y WHILE, y otras no tan comunes como BEGIN, EXIT, MULTIPLY, CALCULATE, SET, … para representar decisiones, ciclos y acciones. Sin embargo, su gran ventaja es que no requiere conocer la sintaxis de un lenguaje de programación, lo que lo convierte en una herramienta muy accesible para quienes están empezando en este mundillo de la programación.

¿Por qué es útil?

Aunque este tipo de lenguaje no es muy conocido, creo que tiene una serie de ventajas que debemos destacar:

1. Claridad y Simplicidad: Permite que describas tus algoritmos en un lenguaje natural, sin preocuparte por los detalles técnicos de la programación. Esto hace que sea fácil para cualquiera, independientemente de su nivel de habilidad, comprender lo que el algoritmo debe hacer.

2. Facilita la Transición al Código: Es ideal para principiantes porque les ayuda a visualizar y organizar la lógica de un programa antes de lidiar con la sintaxis complicada de un lenguaje de programación. Piensa en ello como una fase de planificación que te ahorra dolores de cabeza cuando llegas al código real.

3. Comunicación Efectiva: Si trabajas en equipo, es una herramienta poderosa para comunicar tus ideas a otros miembros, ya sea que ellos tengan experiencia en programación o no. Permite que las ideas se discutan y se refinen antes de pasar a la etapa de implementación.

Comparación con Pseudocódigo y Código

Es natural preguntarse en qué se diferencia Structured English de otros enfoques como el pseudocódigo. Aunque ambos sirven para describir algoritmos, existen algunas diferencias clave:

  • Pseudocódigo: Es más formal que Structured English y a menudo se parece más al código real. Utiliza términos técnicos más precisos y se aproxima mucho a la sintaxis de lenguajes de programación.
  • Código: El código real, como el que escribes en Python, Java o C++, sigue reglas estrictas de sintaxis y debe ser preciso en cada detalle para que la máquina lo entienda y ejecute. Structured English no se preocupa por la precisión sintáctica, sino por la claridad lógica.

Structured English se sitúa entre ambos. Es menos técnico que el pseudocódigo, pero más formal y estructurado que el lenguaje natural. Veamos los siguientes ejemplos para comparar cómo sería el mismo algoritmo en inglés estructurado, pseudocódigo y en código, usando Python como lenguaje:

# Structured English:

IF el usuario ingresa una edad mayor o igual a 18
THEN mostrar "Eres mayor de edad"
ELSE mostrar "Eres menor de edad"
ENDIF

# Pseudocódigo

IF edad >= 18 
  THEN
    OUTPUT "Eres mayor de edad"
  ELSE
    OUTPUT "Eres menor de edad"
ENDIF

Código en Python:

edad = int(input("Ingresa tu edad: "))
if edad >= 18:
    print("Eres mayor de edad")
else:
    print("Eres menor de edad")

Como puedes ver, Structured English es más parecido a pseudocódigo, pero sin la necesidad de preocuparte por las reglas técnicas o la sintaxis de un lenguaje específico. Sin embargo, no sigue ninguna regla de escritura, te da más libertad de escritura y puedes montar algoritmos prácticamente sin saber programar.

¿Cuándo Usar Structured English?

Este lenguaje se puede usar en diferentes situaciones. En mi caso, lo utilizo para que mis alumnos de primero de bachillerato puedan generar algoritmos de una forma desestructurada, usando algunos comandos pero sin la presión de los errores de sintaxis. Así, aprenden a empezar a programar de forma fácil. Otros usos son:

1. En la fase de diseño del algoritmo: Antes de sumergirte en el código, puedes usar Structured English para diseñar la lógica básica de tu programa. Esto te permite concentrarte en el qué sin preocuparte todavía por el cómo.

2. Para resolver problemas de alto nivel: Es especialmente útil cuando estás enfrentando problemas complejos. Describir el problema en términos simples y estructurados ayuda a descomponerlo en pasos más manejables.

3. Para enseñar o aprender: Para los estudiantes de programación, Structured English es una excelente manera de practicar la lógica y las estructuras de control antes de aprender lenguajes de programación formales.

Reglas Básicas del Structured English

Si quieres usar esta técnica, debes seguir algunas reglas simples:

  • Claridad. Cada declaración debe ser clara y directa. Evita la ambigüedad para que no hayan problemas en tu descripción.
  • Indentación. Aunque no es tan importante como en pseudocódigo o código, puedes usar sangrías para mostrar jerarquías, especialmente en decisiones o ciclos.
  • Palabras clave. Emplea términos como IF, THEN, FOR, WHILE, READ, PRINT, etc., para describir acciones, decisiones y repeticiones.
  • Variables. Las variables que uses deben estar claramente identificadas y descritas.
  • Lenguaje Natural. Aunque estés usando palabras clave propias del código, el resto del texto debe seguir siendo cercano al lenguaje natural. No te adentres en tecnicismos complicados ni intentes replicar al pie de la letra la sintaxis del código; la idea es que cualquiera pueda entenderlo.

Ejemplo. Cálculo del área de un rectángulo

Supongamos que queremos escribir un algoritmo en Structured English para calcular el área de un rectángulo:

LEER largo
LEER ancho
CALCULAR area = largo * ancho
IMPRIMIR area

Ahora, agreguemos una validación para asegurarnos de que los valores ingresados son positivos:

LEER largo
LEER ancho
IF largo > 0 AND ancho > 0
    CALCULAR area = largo * ancho
    IMPRIMIR area
ELSE
    IMPRIMIR "Los valores deben ser positivos"
ENDIF

¡Descarga gratis estos ejercicios!

Para que practiques con diferentes tipos de programas, te dejo este archivo y las soluciones del mismo. Verás que son programas en un principio fáciles pero que luego se van a ir complicando. Espero que te sirvan en tu aprendizaje.

Tipo de archivo: PDF
Número de páginas: 10
Precio: Gratis

Conclusión

Structured English es una herramienta poderosa para aprender a programar de manera lógica y clara sin preocuparse por la sintaxis de un lenguaje en particular. Sirve como un puente entre el pseudocódigo y el código real, proporcionando una base sólida para quienes comienzan a explorar la programación. Al usar Structured English, puedes concentrarte en entender la lógica del problema, lo que te facilitará la transición al mundo del código real más adelante.

Si estás comenzando tu camino en la programación o quieres mejorar tu capacidad de diseñar algoritmos de manera efectiva, prueba a usar Structured English. ¡Descubrirás que es una forma sencilla pero potente de estructurar tus ideas!


Descubre más desde nauKabits.com

Suscríbete y recibe las últimas entradas en tu correo electrónico.

Etiquetas:

Deja un comentario

Review Your Cart
0
Add Coupon Code
Subtotal
Total Installment Payments
Bundle Discount

 
error: Contenido protegido

Descubre más desde nauKabits.com

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Seguir leyendo