lispmxEn 2021-06-09 11:11:41

El primer paso para resolver un problema de programación es describir el problema para ti mismo. Tu no puedes tener una solución adecuada a menos que entiendas el problema en tus propios términos.


Algunas preguntas básicas que necesitamos hacernos:


¿Qué es lo que se necesita hacer?

Describir los objetivos generales que el programa necesita alcanzar.


¿Cuáles son las partes del problema?

Considere los pasos necesarios para llegar a la solución general de la tarea, es decir, cómo encajan las piezas.


¿Cuál es el alcance del problema?

Trate de identificar los problemas que le preocupan y los que puede ignorar.


¿Qué recursos tienes a tu disposición como programador?

Las operaciones comunes a menudo se capturan en librerías. Por ejemplo una librería para fechas o para expresiones regulares. A menudo, puede encontrar ejemplos de programas que realizan tareas similares o que brindan una determinada parte de su solución, es decir,

ver lo que ya existe y adaptarlo a nuestra solución.


En muchos casos, puede discutir el razonamiento detrás del código de ejemplo con el programador que lo escribió. Evite hacer un trabajo que ya se ha hecho. Sin embargo, debe tener en cuenta que el modelo de otra persona para una solución puede no ser compatible con el suyo.




¿Qué tipo de entrada se suministran y quién los suministra?

Ciertos programas requieren la interacción del usuario, mientras que otros reciben información de otros programas. Puede hacer uso de la caja negra, para simplificar que es lo que entra y que es lo que sale o lo que se produce.


¿Cómo comprueba el programa que la tarea deseada está completa?

Se debe de contar con un mecanismo para demostrar que el programa resuelve dicho problema.


¿Quién usará el programa?

Un usuario con poca experiencia puede requerir de una interfaz simple y amigable, mientras que un usuario sofisticado puede esperar más funciones y algo de acceso al programa en sí.


Conceptualizar el problema puede brindarle algunas ideas sobre su solución y la mejor manera de expresarla.