Python como verificación práctica de algoritmos

pythonA informática está chea de problemas a resolver. Estes problemas poden ir de simples métodos para “calcula-la hipotenusa dun triángulo” ata outros máis complexos como a “simulación da máquina enigma“. Para resolver estes problemas os programadores crean algoritmos.

Os algotirmos poden facer correctamente o seu cometido ou non, provocado por algún detalle que se lle pasou ó programador. Para verificar o correcto funcionamento dun algoritmo é preciso unha verificación práctica do algoritmo. Dependendo da linguaxe de programación en que se escriba ese algoritmo, face-la comprobación práctica pode ser moi lento. Por exemplo, nunha linguaxe compilada haberá que realizar varios ciclos de consistentes en modifica-lo código, compilar e executar para correxi-los posibles erros[0] do algoritmo. Na mentres, as linguaxes interpretadas ó non ter fase de compilación son moito más rápidas para o propósito de verificación práctica dos algoritmos.

Python[1], coma linguaxe interpretada, permite programar rapidamente o algoritmo para comprobar se nos esquecimos dalgún detalle. Ademais, como é de (moi) alto nivel, con módulos para todo o que poidamos ter noutra linguaxe, permite crear algoritmos moi complexos. Unha vez que o algoritmo estexa funcionando como debe, é dicir, resolvendo o problema para o que foi creado, só haberá que traducir ese algoritmo de python á linguaxe final.

Dende que hai algún tempo acostumeime a ter un intérprete de python aberto mentres que programo (en calquera linguaxe). A tradución de código dende python a outra linguaxe é máis rápida e evidente cando son pequenas pezas de código: funcións ou clases soltas. Cando son fragmentos máis grandes de código xa estamos a falar dun prototipo, pero o fundamento é o mesmo.


[0] Ata nos algoritmos máis sinxelos é doado cometer algún erro.
[1] Falo de python porque é a linguaxe interpretada que prefiro, pero podería valer outras.


Categories

Calendario

Decembro 2006
M T W T F S S
« Nov   Xan »
 123
45678910
11121314151617
18192021222324
25262728293031
3K2 theme by Hakan Aydin