domingo, 4 de octubre de 2015

Scratch parte 2

Como anteriormente veíamos, Scratch es un lenguaje de programación de fácil utilización, creado para fomentar el pensamiento lógico y las ganas de aprender a programar en los niños. 

Además es una muy buena herramienta para quienes estan comenzando a estudiar programación, pudiendo así practicar de una forma divertida y desarrollar la parte creativa. Se utiliza la metáfora de "piezas encajables" para animar objetos que se encuentran en pantalla, con un uso muy sencillo e intuitivo.



 Scratch se utiliza desde un entorno de desarrollo que muestra de un solo golpe de vista todos los elementos necesarios, objetos y elementos del lenguaje.




Descarga el programa desde la web, pinchando aquí.

En la primera ejecución del programa, el entorno se encuentra en inglés, así que debemos ir a la pestaña "Language" y seleccionar español. 
¡Ahora podemos comenzar!.


Elementos del Entorno:

  • Menú:


  • Bloques (elementos de programación):




  • Zona de programación (ensamblaje de bloques):

  • Zona de visualización del programa (prueba); se inicializa haciendo clic en la bandera verde. 

  • Escenario y Objetos que se estan utilizando.

  Considerando la información anterior, a continuación les muestro el primer Scratch realizado por mí y es lo mas básico donde con un pequeño código podemos reflejar el movimiento y ver como vuela un murcielago en la noche. 

 



les dejo la muestra del código a continuación:

 Ahora que ya conocen más de esta práctica herramienta, es su turno de crear algo y compartirlo, otro ejemplo de lo que se puede lograr es un sencillo juego tipo arcade, donde debes ayudar a la chinita a cruzar la calle sin que la atropellen los autos.



Para revisar el código y si gustas lo puedes ir mejorando, pincha aquí
Éxito!! y Saludos.

PARADIGMAS DE LA PROGRAMACIÓN



¿Qué es un paradigma de programación? 

Un paradigma de programación provee (y determina) la visión y métodos de un programador en la construcción de un programa o subprograma. Diferentes paradigmas resultan en diferentes estilos de programación y en diferentes formas de pensar la solución de problemas (con la solución de múltiples “problemas” se construye una aplicación). 

Los lenguajes de programación son basados en uno o más paradigmas Por ejemplo: Smalltalk y Java son lenguajes basados en el paradigma orientado a objetos. El lenguaje de programación Scheme, en cambio, soporta sólo programación funcional. En cambio Python, soporta múltiples paradigmas. 

Clasificación por paradigmas de programación 

Paradigma Imperativo: describe la programación como una secuencia instrucciones o comandos que cambian el estado de un programa. El código máquina en general está basado en el paradigma imperativo. Su contrario es el paradigma declarativo. En este paradigma se incluye el paradigma procedimental (procedural) entre otros. 

Paradigma Declarativo: No se basa en el cómo se hace algo (cómo se logra un objetivo paso a paso), sino que describe (declara) cómo es algo. En otras palabras, se enfoca en describir las propiedades de la solución buscada, dejando indeterminado el algoritmo (conjunto de instrucciones) usado para encontrar esa solución. Es más complicado de implementar que el paradigma imperativo, tiene desventajas en la eficiencia, pero ventajas en la solución de determinados problemas. 

Paradigma Estructurado: la programación se divide en bloques (procedimientos y funciones) que pueden o no comunicarse entre sí. Además la programación se controla con secuencia, selección e iteración. Permite reutilizar código programado y otorga una mejor compresión de la programación. Es contrario al paradigma inestructurado, de poco uso, que no tiene ninguna estructura, es simplemente un “bloque”, como por ejemplo, los archivos batch (.bat). 

Paradigma Orientado a Objetos: está basado en la idea de encapsular estado y operaciones en objetos. En general, la programación se resuelve comunicando dichos objetos a través de mensajes (programación orientada a mensajes). Se puede incluir -aunque no formalmente- dentro de este paradigma, el paradigma basado en objetos, que además posee herencia y subtipos entre objetos. Ej.: Simula, Smalltalk, C++, Java, Visual Basic .NET, etc. Su principal ventaja es la reutilización de códigos y su facilidad para pensar soluciones a determinados problemas. 

Paradigma Funcional: este paradigma concibe a la computación como la evaluación de funciones matemáticas y evita declarar y cambiar datos. En otras palabras, hace hincapié en la aplicación de las funciones y composición entre ellas, más que en los cambios de estados y la ejecución secuencial de comandos (como lo hace el paradigma procedimental). Permite resolver ciertos problemas de forma elegante y los lenguajes puramente funcionales evitan los efectos secundarios comunes en otro tipo de programaciones. Paradigma lógico: se basa en la definición de reglas lógicas para luego, a través de un motor de inferencias lógicas, responder preguntas planteadas al sistema y así resolver los problemas. Ej.: prolog. 

Otros paradigmas y subparadigmas son: paradigma orientado al sujeto, paradigma reflectante, programación basada en reglas, paradigma basado en restricciones, programación basada en prototipos, paradigma orientado a aspectos, etc.


Aquí les dejo un vídeo que nos aclarara mas sobre el tema: