El aprendizaje de la teoría de autómatas le brinda una comprensión buena e intuitiva de los programas y las computadoras en general. Es posible que no use directamente ese conocimiento en ninguna parte, pero es importante porque le brinda una buena perspectiva de programación (abstraída de los detalles de implementación). Ese nivel de comprensión ayuda a diseñar programas grandes muchas veces.
Pero eso todavía no lo convierte en algo que hay que hacer. Si no tiene la intención de incursionar en la informática teórica, la mayoría de las veces nunca se encontrará con una situación en la que aplique los conceptos de la teoría de autómatas.
Una de las pocas aplicaciones directas de la teoría de autómatas es la verificación formal de diseños de software y hardware. En la verificación formal, básicamente piensas en los sistemas como en diferentes estados, y usas algoritmos de accesibilidad para verificar si un sistema puede alcanzar un estado “malo”. Si lo hace, entonces el sistema puede mejorarse o marcarse como inseguro.
Esta es solo una de las muchas aplicaciones directas de este tipo.
- ¿Hay comportamientos descuidados similares entre otros ingenieros, como la forma en que los ingenieros de software tienen código de espagueti?
- ¿Cuáles son los roles de un arquitecto de software?
- ¿Cuál es la mejor práctica para los PM no técnicos cuando son reclutados por compañías 'solo ingenieros' que asumen que él era un ex ingeniero?
- ¿Por qué la leyenda urbana dice que Steve Jobs, Jeff Raskin y el resto del equipo 'robaron' de Xerox?
- ¿Cómo funcionan las revisiones de código?
Por lo tanto, si no está planeando una carrera académica en informática teórica y tampoco tiene la intención de trabajar en programas similares al ejemplo anterior, puede optar por abandonarlo sin ningún efecto negativo en el futuro.