Want to make creations as awesome as this one?

Transcript

Bloque IFundamentos

Lógica de Programación

c) Lenguajes de Programación

Índice

a) Paradigmas de la programación

b) Traductores

e)Entornos desarrollointegrado (IDE)

d) Tipos de código

Paradigmas de programación

Un programa de computadoras, también llamado software, es un conjunto de códigos,instrucciones, declaraciones, proposiciones, etc. que describen, definen o caracterizan la realización de una acción en la computadora.

En los inicios de la historia de la programación los programas dictaban instrucciones directamente a las máquinas, hoy los programas se diseñan según un paradigma de programación y se escriben usando algún lenguaje de programación asociado.

Para resolver un determinado problema, deberíamos conocer cuál paradigma se adapta mejor a su resolución, y a continuación elegir el lenguaje de programación apropiado. En teoría cualquier problema podría ser resuelto por cualquier lenguaje de cualquier paradigma. Sin embargo, algunos paradigmas ofrecen mejor soporte para determinados problemas que otros.

Es una colección de modelos conceptuales que juntos modelan el proceso de diseño, orientan la forma de definir los problemas y, por lo tanto, determinan la estructura final de un programa.

Qué es un paradigma de progrmación?

Un paradigma de programación es un modelo básico de diseño e implementación de programas, que permite desarrollar software conforme a ciertos principios o fundamentos específicos que se aceptan como válidos.

En la actualidad, los principales paradigmas que tienen vigencia, tanto por su desarrollo conceptual y su importancia en las ciencias de la computación, como por su presencia significativa en el mercado, son los siguientes:

PARADIGMAS FUNDAMENTALES

1. Investiga 5 definiciones del concepto paradigma de programación con su referencia en formato APA2. Escribe 4 ejemplos de paradigmas de programación. 3.Con el material realiza un cuadro conceptual acerca de las características de los siguientes paradigmas

  • Paradigma Lógico
  • Paradigma Funcional
  • Paradigma Imperativo o procedural Paradigma orientado a Objetos

ACTIVIDAD

Un grupo de científicos colocó 5 monos en una jaula, en cuyo centro colacaron una escalera y sobre ella un monón de bananas. Cuando un mono subia la escalera para agarrar las bananas, los científicos lanzaban un chorrro de agua fria sobre los que quedaban en el suelo

Para contestar a la pregunta ¿Qué es un paradigma?

Después de algún tiempo, cuando un mono intentaba a subir la escalera los otros lo golpeaban. Pasado algún tiempo más, ningún mono subia la escalera, apesar de la tentación de las bananas.

Entonces los científicos sustituyeron uno de los monos. La primero que hizo el mono fue subir la escalera, siendo rapidamente bajado por los otros monos, quienes le acomodarón una paliza, después de algunas palizas, el nuevo integrante del grupo ya no subió mas la escalera, aunque nunca supó el por qué de tales golpizas.

Un segundo mono fue sustituido y ocurrio lo mismo, El primer sustituto participo con entusiasmo de la paliza al novato. Un tercero fue cambiado y se repitió el hecho , lo volvieron a golpear. El cuarto y finalmente el quinto de los monos fueron custituidos.

Quedó entonces un grupo de cinco monos que aun cuando nunca recibieron un baño de agua fria continuaban golpeando a quel que intentase llegar a los platanos.Si fuese posible preguntar a alguno de ellos el por qué le pegaban cuando intentaba subir la escalera, con certeza la respuesat sería "No sé aqui las cosas siempre se han hecho así"

Entonces ¿qué es un paradigma de programación ?

  • Un Paradigma de programación es una propuesta tecnológica adoptada por una comunidad de programadores cuyo núcleo central es incuestionable en cuanto a que unívocamente trata de resolver uno o varios problemas claramente delimitados.
  • Los lenguajes de programación suelen implementar, a menudo de forma parcial, varios paradigmas

En la programación declarativa se describe la lógica de computación para resolver un problema sin describir un flujo de control de ningún tipo. En la programación declarativa no es necesario definir algoritmos puesto que se detalla la solución del problema en lugar de como llegar a esa solución. Describe que se debe calcular, sin explicitar el cómo.

  • Programación funcional
  • Programación lógica

Programación Declarativa(¿qué se va a hacer?)

El paradigma funcional considera al programa como una función matemática, donde el dominio representaría el conjunto de todas las entradas posibles ( inputs ) y el rango sería el conjunto de todas las salidas posibles ( outputs )

  • Ventajas:
Más fáciles de escribir y depurar. Uso de arquitecturas paralelas.
  • Desventajas:
Carecen de librerías, interfaces con otros lenguajes y herramientas dedepuración, al no utilizar sentencias, no existen asignaciones, por lo que una vez que las variables asumen un valor, no cambian durante la ejecución

PROGRAMACIÓN FUNCIONAL

La Programación Lógica estudia el uso de la lógica para el planteamiento de problemas y el control sobre las reglas de inferencia para alcanzar la solución automática. Basado en la lógica de predicados

  • VENTAJAS
Permite visualizar gráficamente el camino que sigue la solución a un problema. No se necesitan muchos conocimientos técnicos para utilizar estatécnica.
  • DESVENTAJAS
Dado que los flujos (representados con flechas) pueden ir de cualquier lugar a cualquier lugar da espacio para que el diagrama llegue a ser casi inentendible.

PROGRAMACIÓN LÓGICA

PROGRAMACIÓN ESTRUCTURADA O IMPERATIVA

La programación estructurada es una forma de escribir programas de computadora utilizando ciertas instrucciones de control (bucles y condicionales), se describe paso a paso un conjunto de instrucciones que deben ejecutarse para variar el estado del programa y hallar la solución, es decir, se emplea un algoritmo que describe los pasos necesarios para solucionar el problema

  • VENTAJAS
La programación estructurada se caracteriza por tener lenguajes sencillos de comprender para una persona con basto conocimiento ya que se puede leer de secuencia por ello se considera semi-natural la lógica que se emplea en este tipo de programación es mas visible lo que facilita las pruebas de escritorio y la corrección de errores.
  • DESVENTAJAS
El principal inconveniente de este método de programación, es que se obtiene un único bloque de programa, que cuando se hace demasiado grande puede resultar problemático su manejo

El comportamiento del programa es llevado a cabo por objetos, entidades que representan elementos del problema a resolver y tienen atributos y comportamiento.

  • Ventajas: La facilidad de re-utilización de código en diferentes proyectos. La facilidad de añadir, suprimir o modificar nuevos objetos nos permite hacer modificaciones de una forma muy sencilla. Debido a las sencillez para abstraer el problema, los programas orientados a objetos son más sencillos de leer y comprender
  • Desventajas Complejidad para adaptarse

PROGRAMACIÓN ORIENTADA A OBJETOS

lenguajes de programación y su paradigma

  • Haskell (Programación funcional)
  • ML(Programación funcional)
  • Lisp(Programación funcional)
  • Prolog(Programación Lógica)
  • Scala: Imperativo, orientado a objetos, funcional
  • Perl: Imperativo, orientado a objetos y funcional
  • PHP: Imperativo, orientado a objetos, funcional
  • JavaScript: Imperativo, orientado a objetos (prototipos) y funcional
  • Java: Imperativo, orientado a objetos,
  • Python y Ruby: Imperativo, orientado a objetos,
  • C++: Imperativo, orientado a objetos, funcional
  • C#: Imperativo, orientado a objetos, funcional (lambda), r
CONVIERTEN A LENGUAJES ALTO NIVEL A BAJO NIVEL(lenguaje máquina)

Traductores de lenguaje

Interpretes

Compiladores

Traductores de lenguaje

¿Cómo se le hace para que las computadoras puedan entender el lenguage humano ?

proceso de programar

- Genially

Lenguaje intermedio

  • Java
  • scala

Lenguajes interpretados

  • JavaScript
  • python

lenguajes compilados

  • C #
  • c++
  • go

lenguajes interpretados y compilados

  • investiga cuales son las ventajas y desventajas de los compiladores e interpretes
  • ¿cuales fueron los primeros lenguajes de programación?
  • Agrega mas ejemplos de lenguajes compilados e interpretados
  • Investiga ¿Qué es una máquina virual de JAVA?

Actividad

Un IDE usualmente está compuesto por: Un editor de código Herramientas de automatización Depurador o debugger

IDEIntegrated Development Environment

Hoy en día para programar se usan ambientes de desarrollo integral (IDE por sus siglas en inglés un IDE te permite realizar todas las tareas relacionadas con un proyecto particular elaborar distintos programas o módulos, compilar, ejecutar, verificar errores, generar documentación, depurar, entre otras tareas sin nunca salir de ese ambiente. Esto es muy cómodo no unicamente para aprender a programar sino también, y especialmente, para agilizar el desarrollo de nuevos proyectos.

Elegir un IDEeclipseDr javaRstudioAnacondaVisual Studio Code.vAtom.NetBeans.

La ventana permite añadir contenido más amplio. Puedes enriquecer tu genially incorporando PDFs, vídeos, texto… El contenido de la ventana aparecerá al hacer clic en el elemento interactivo.

¿Sabías que...

PASOS DE INTERPRETE
PASOS DE COMPILADOR