Programación Scala y Akka
Programación Scala y Akka
Ingeniería en Telemática
Laboratorio #3
Programación Scala y Akka
Instrucciones
Trabaje individualmente. Siga los siguientes puntos paso a paso. Debe trabajar en Linux (Ubuntu o Fedora).
Debe entregar un reporte antes de la próxima clase en el Moodle.
En este laboratorio vamos a ejecutar algunos ejemplos que se subieron en GitHub. Proceda a descargar todos
los ejemplos, en algún directorio de su máquina virtual, con el siguiente comando:
Si ya cuenta con el directorio, entonces solo actualice y descargue las últimas versiones (debemos
posicionarnos dentro de la carpeta operativos). Se obtendrá la siguiente salida.
git pull
Estos programas deben comprenderse por el estudiante (y no solo ejecutarlos). El código fuente de estos
programas deben ser estudiados conforme se realice el laboratorio, y en caso de tener consultas con el
código fuente, se debe investigar o preguntar al profesor.
2. Maven
Maven es una herramienta de automatización de compilación que se utiliza principalmente para proyectos
Java.
mvn -version
3. Zip
En linux se utiliza normalmente tar. Sin embargo, a veces, se utiliza zip. Instalemos el programa Zip en linux.
4. Akka
Akka es un conjunto de herramientas para crear aplicaciones controladas por eventos altamente
concurrentes, distribuidas y tolerantes a fallas en JVM. Akka se puede utilizar tanto con Java como con Scala.
https://developer.lightbend.com/guides/akka-quickstart-java/
Ahora, suba el archivo a la máquina virtual con algún programa utilizando protocolo FTP. Si no cuenta con
algún programa, puede instalar y utilizar Filezilla (https://filezilla-project.org/download.php?type=client).
Si desea, puede crear un directorio en Linux /home/<su usuario>/operativos/akka para agregar este ejemplo y
otros ejemplos más adelante.
unzip akka-quickstart-java.zip
Ingrese al directorio unzip akka-quickstart-java y ejecute el siguiente comando (Nota: se requiere Java 8, se
puede cambiar con el comando sudo update-alternatives --config java):
Presione Enter
akka-quickstart-java/src/main/java/com/example
5. Scala
Scala es un lenguaje de programación moderno de múltiples paradigmas diseñado para expresar patrones de
programación comunes de una manera concisa, elegante y segura. Integra a la perfección características de
lenguajes funcionales y orientados a objetos.
scala
https://docs.scala-lang.org/tour/basics.html
:quit
Ahora, vamos a ejecutar un ejemplo en modo script. Ingresamos al directorio /operativos/scala y compilamos
de la siguiente manera:
scalac Smartphone.scala
scala Main
Observe los archivos .class que se generaron, entre ellos Main.class. Esto debido a que Smartphone.scala
contiene una clase singleton llamada Main, la cual tiene el método def main(args: Array[String]). Muy similar a
Java.
6. Akka y Scala
[1] Silberschatz, A. y otros. Operating System Concepts Essentials (10a ed). Espana: McGraw-Hill.