Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Compilado
Interpretado
Paradigma
En un lenguaje fuertemente tipado un dato con un tipo no puede ser usado como si
fuese de otro. Aunque algunos lenguajes como Java se dicen que son fuertemente
tipado tienen algunas laxitudes. Por ejemplo, en Java un float puede usarse como
si fuese un double y en otros lenguajes con menor grado de tipificación como PHP
un string puede ser usado como un dato numérico.
Inferencia de tipos
En base al análisis del código fuente se puede inferir el tipo de las variables evitando
que el programador los declare explícitamente continuamente.
Closures y lambdas
Un closure es una referencia a una función que puede referenciar las variables del
contexto en el que está definida. Una lambda es simplemente una referencia a una
función anónima. En Java las lambdas pueden referenciar variables declaradas
como final, esto es, sean constantes.
Las funciones de orden superior son funciones que toman como argumentos una o
más funciones o devuelven como resultado otra función.
Currying
Duck typing
Este concepto es usado en los lenguajes de tipado dinámico tratando a las variables
no por su tipo o herencia sino en base a las propiedades y métodos que soporta
(Python, PHP, Groovy, JavaScript).
Intersection types y Union types
Ceylon tiene un sistema de tipos más avanzado (y complejo) que Java, una
expresión es asignable a un intersection types X & Y si esa expresión es asignable
a X e Y individualmente. Una expresión es asignable a un union type X | Y si es
asignable a X o Y.
Named arguments
Destructuring assignment
Tuples
Las tuplas son una estructura de datos formada por varios tipos, en Java 8 puede
usarse la librería vavr que añade esto y otras funcionalidades interesantes. En
algunos lenguajes puede combinarse con la asignación desestructurada.
TIPOS DE DATOS, VARIABLES Y OPERADORES
Datos
Constantes
La estructura es:
Variables
Un tipo de dato, al que se ha asignado un valor, que puede variar durante la
ejecución del programa. Las variables tienen 3 estados:
• Declaración
• Inicialización
• Utilización
Operadores
SENTENCIAS DE CONTROL
Las sentencias o estructuras de control permiten tomar decisiones y realizar un
proceso en repetidas veces. Son las denominadas bifurcaciones y bucles. Estas
estructuras son muy importantes puesto que son las encargadas de controlar el flujo
de un programa según los requerimientos de este.
Sentencia IF, THEN, ELSE, END IF
Permite ejecutar condicionalmente una o más sentencias, Su representación es así: