Sunteți pe pagina 1din 7

SCALA

INTEGRANTES:
-RICARDO GAMERO CORONADO
-DANIEL ARIAS AVALOS
-JAROL BUTRON SORIA

QU ES SCALA?
El nombre de Scala surge de la unin de dos palabras:scalableylanguage. Con
esto ya sabemos qu objetivo tiene este lenguaje de programacin multiparadigma
quecombina propiedades de lenguajes funcionales con orientados a
objetos.
La implementacin actual corre en la maquina virtual de Java y es
compatible con las aplicaciones Java existentes.
Un lenguaje de programacin multiparadigma es aquel que
permite al programador elegir diferentes estilos de desarrollo
dependiendo del tipo de problema: programacin lgica,
funcional, orientada a objetos

CARACTERSTICAS PRINCIPALES:
Herencia Mltiple (Similar a C++)
Tipado esttico
Notacin infija
Funciones de Orden superior
Multiparadigma:
-Funcional
-Orientado a Objetos

QU ES LA PROGRAMACIN FUNCIONAL?
Programacin Imperativa:
- Se utilizan cambios de estado
- Efectos de lado
- Mutabilidad
Programacin Funcional:
- Se utilizan funciones aritmticas
- No hay efectos de lado
- Inmutabilidad

POR QU USAR PROGRAMACIN


FUNCIONAL?
Las funciones siempre devuelven el mismo resultado para cada entrada.
No hay efecto de lado.
Facilidad de testear.
El primer lenguaje ampliamente utilizado para programacin funcional fue Lips.
Puedes empezar con JavaScript o Python.
Java tiene 8 caractersticas de programacin funcional.

INTEGRACIN CON JAVA

Scala se ejecuta sobre una mquina virtual Java, lo cual permite la


integracin de caractersticas o libreras entre ambos lenguajes.Es posible,
entre otras cosas, llamar a mtodos de Java, heredar clases o implementar
interfaces. Esta integracin es recproca, es decir, podemos utilizar Java en Scala y
Scala en Java.
Poder programar en ambos lenguajes al mismo tiempo es beneficioso para el
desarrollador, ya que por ejemplo se podra utilizar Java como lenguaje principal en
un proyecto y en determinados casos escribir cdigo en Scala.

DIFERENCIAS CON JAVA


A pesar de tener similaridades como la orientacin a objetos o ejecutarse sobre una JVM (Java
Virtual Machine), tambinexisten algunas diferencias entre ambos lenguajes.
La primera que encontramos es quecon Scala se reducen drsticamente el nmero de
lneas de cdigo que se escribirn en un proyecto. Veremos cmo queda demostrado a lo
largo del curso. Adems, Scala favorece la concurrencia y paralelizacin en la ejecucin del
cdigo.
Por otra parte,el cdigo Java es ms legible que el de Scala, aunque todo es acostumbrarse.
En Scala podemos definir funciones dentro de funciones, dentro de objetos que estn dentro de
una clase cualquiera. Puede ser algo enrevesado, pero tambin depende del programador y de la
experiencia adquirida al desarrollar. Otra importante diferencia es que Scala soporta la sobrecarga
de operadores, caracterstica que no encontramos en Java.
Java, por su parte, trata todo como un objeto. Scala, sin embargo, trata todo como una variable.
Es por esto que veremos cmo se puede pasar una funcin como parmetro a otra funcin.

S-ar putea să vă placă și