Please enable JavaScript.
Coggle requires JavaScript to display documents.
Paradigmas de la computación - Coggle Diagram
Paradigmas de la computación
Imperativa / Estructurada
Base de
Orientada a objetos
Base de
Orientada a evento
Historia
1980
Surgen las primeras interfaces graficas
1990
Java y Visual Basic impulsan la programación orientada a eventos en GUIs.
Actualidad
1 more item...
Caracteristicas
limitaciones
Mantención
Dependencia de la plataforma
Ejemplos
De lenguajes
JavaScript, C#, Visual Basic, C++
De implementación
Interfaces gráficas, aplicaciones web y móviles.
ventajas
interactividad
Eficiencia
Flexibilidad
Definición
El flujo de del sistema depende de eventos como pueden ser clicks o sensores
Definición
Permite llegar a la solución de problemas
Utilizando
Objetos, clases,
herencia, encapsulación
HIstoria
1967
Creación de lenguaje simula. el cual introduce objetos y clases para modelar simulaciones.
1970
Se crea el lenguaje Smalltalk incluyendo el paradigma de la POO actual, agregando herencia, polimorfismo y encapsulación.
1980
Se crea el lenguaje C++, el cual combina POO con eficiencia de C
1990
Java C# hacen que la POO sea el estándar en software empresarial
Caracteristicas
lmitaciones
Curva de aprendizaje
Problemas de comunicación
Ventajas
Reutilización
Modularidad
Ejemplos
De lenguajes
Java, C++, Python, Kotlin
De implementación
Aplicaciones de escritorio, videojuegos, software empresaria
Definición
Pasos explícitos de
arriba hacia abajo.
en donde
Deben ser
especificados
Historia
1950
1966
Dijkstra
Promovió eliminar
el goto
Böhm y Jacopini demostraron que cualquier algoritmo podía escribirse usando solo secuencia, selección y repetición
La programación era secuencial y controlado por saltos en el código (goto)
Características
Limitaciones
Difícil de mantener en
proyectos grandes
En grandes proyectos es
difícil de entender y
puede generar problemas
Ventajas
Sencilla de aprender
y de leer.
Proporciona
Realización de un trabajo
entre varios colaboradores
Ejemplos
De lenguajes
C, Pascal,
JavaScript, Python
De implementación
Programas de calculo
científico o sistemas
operativos
Programación Declarativa
Base de
Programación lógica
Definición
Se declara lo que se quiere hacer y se busca la mejor forma de hacerlo
Carcaterísticas
Limitaciones
Buena especificación en los pasos
Curva de aprendizaje compleja
ventajas
Comprensible
Reutilización
Claridad declarativa
Ejemplos
Lenguajes
Prolog , Datalog
Implementación
Inteligencia artificial, Rutas de viajes, sistema de control de acceso
Historia
1960
Se busca que el pensamiento computacional capaz de emular la razón humana
1974
Kowalski propuso la idea de la programación lógica
1980
1 more item...
Base de
Programación Funcional
Historia
Siglo XVII, Leibniz
Propone máquinas de cálculo mecánicas y la Idea de un “cálculo universal” para decidir teoremas.
1936
Década de 1940
1956
1958
1 more item...
McCarthy aplica ideas funcionales para proyectos de inteligencia artificial en el IBM 704.
Formalización matemática que luego influirá en la programación funcional
Church introdujo el cálculo Lambda con un modelo funcional y Turing creo la Máquina de Turing, ambos son equibalentes
Definicion
Varias funciones que se unen para crear una función más compleja, para permitir la reutilización y obtener varias combinaciones.
Nos enfocamos en el resultado y no en el procedimiento
Caracteristicas
Funciones puras
Recursividad
Inmutabilidad
Composición de funciones
Lenguajes
Lisp
Elm
Elixir
clojure
scala
Haskell
Erlang
Ventajas
Fomenta reutilización y composición.
Mayor facilidad para testeo unitario
Limitaciones
Se usa bastante la recursividad
Complejidad en sistemas grandes
Alto consumo de memoria
Definición
Se indica qué hacer, no el cómo
Caracteristicas
Limitaciones
Dependencia
Abstracta
Ventajas
Pocos errores
Fácil optimización
Ejempplos
Lenguajes
SQL, Prolog, Haskell
Implementación
bases de datos, desarrollo web, reglas lógicas
Historia
1960
Surge la idea de lenguaje de consulta y especificación
1970
Creación de prolog, orientado a la resolución automática de problemas
1980
Se expande con lenguajes de reglas y sistemas expertos en IA
Actualidad
Se combina con otros paradigmas para aplicaciones modernas