[Python-es] Python y/o ruby para no programadores

lasizoillo lasizoillo en gmail.com
Mie Feb 10 20:27:05 CET 2010


El día 10 de febrero de 2010 17:18, d1d4c <d1d4c en aktivix.org> escribió:
> Saludos.
>
> Kortatu escribió:
>>
>> Si sirve mi opinión, me centraría en los diferentes paradigmas que existen
>> en la programación, siendo completamente secundario el lenguaje. De hecho,
>> cuando me enseñaron a programar, lo primero que me enseñaron fue
>> pseudocódigo, así que lo que en los que deberían centrarse los aprendices
>> es
>> en aprender a razonar, y a leer mucho código ajeno. Ver cómo solucionan
>> otros los problemas, y qué es lo que ha llevado a alguien a tomar una
>> determinada forma de solucionarlo....
>
>
> En mi opinión (y os habla alguien quien ni siquiera puede considerarme
> aprendiz de pyhton, todavía, aunque sí interesado), lo que comenta Kortatu
> es lo más importante de cara a la enseñanza.
>
> Quisiera aprovechar para pedir algunos enlaces a documentación enfocada a la
> enseñanza de pseudocódigo, si alguien es tan amable :)
>

El pseudocódigo es para pros, te recomiendo empezar con diagramas de flujo:
http://es.wikipedia.org/wiki/Diagrama_de_flujo

Luego es facil cambiar los rombos por if's, los bucles por for o
while, ... Y viendo una posible biyección entre una representación
gráfica y una textual podrás elegir la más conveniente a tu forma de
pensar.
http://es.wikipedia.org/wiki/Pseudocódigo

A la hora de meterte con programación orientada a objetos, te
recomiendo mirar antes los patrones GRASP. Sobre todo la máxima de
alta cohesión y bajo acoplamiento:
http://es.wikipedia.org/wiki/Grasp

Luego puedes diseñar tus sistemas ayudándote primero de diagramas de
bloques (los bloques se convertirán en módulos o paquetes), diagramas
de clases de cada uno de los bloques después y diagramas de flujo o
pseudocódigo finálmente. Esto te permite tener una jerarquización con
la que ver los detalles tanto generales como específicos de un
proyecto, por ambicioso y complejo que sea.

Del tema concreto del pseudocódigo no se que decirte. Cualquier paper
sobre un algoritmo concreto que te encuentres suele adjuntar bloques
de pseudocódigo apuntando a como se implementaria. Aunque otros se
limitan a poner una descripción textual y las formulas del cálculo del
orden de ejecución.
http://en.wikipedia.org/wiki/Quicksort#Algorithm

Un saludo:

Javi



Más información sobre la lista de distribución Python-es