Hasta aquí el curso me pareció muy pero muy bueno, pero el mezclarlo con cosas como frameworks (aunque sea para hacer el proyecto final) no me parece tan bueno.
Introducción a Scala y configuración del entorno de desarrollo
Introducción al curso y presentación de los objetivos
Programación Funcional en Scala: Fundamentos y Beneficios
Instalación y configuración de herramientas para programar en Scala
Herramientas Esenciales para Programar en Scala
Hola Mundo en Scala con ScalaFiddle
Fundamentos de Programación Funcional
Tipos de Datos Básicos en Scala
Inmutabilidad en Programación Funcional con Scala
Expresiones en Scala: Conceptos y Ejemplos Prácticos
Funciones en Programación Funcional y Matemática
Colecciones Inmutables en Lenguajes Funcionales
Tuplas y objetos en programación funcional y orientada a objetos
Uso de `copy()` y Lentes en Programación Funcional
Conceptos básicos de Programación Funcional
Programación Funcional: Uso de Pattern Matching Avanzado
Optimización de Algoritmos con Tail Recursion
Agregación y acumuladores en programación funcional con Scala
Fundamentos teoricos
Funciones Totales y Parciales en Programación Funcional
Razonamiento Inductivo en Algoritmos Recursivos
Razonamiento con Tipos en Lenguajes Tipados y Dinámicos
Uso de Traits en Scala: Concepto y Ejemplos Prácticos
Tipos Genéricos en Programación: Uso y Ejemplos Prácticos
Tipos de Datos Algebraicos: Suma y Producto en Programación
Evaluación Perezosa en Scala: Variables y Colecciones Lazy
Manejo de Disyunciones Option en Programación Funcional
Manejo de Excepciones con Try y Either en Programación Funcional
Proyecto de Backend
Desarrollo de Backend con PlayFramework y Scala: Proyecto Platzi Video
Modelo de Actores en Scala: Akka y Erlang
Modelo de Datos y Configuración de Proyecto con Play Framework
Integración de Play con Slick y SQLite en Scala
Consultas Asíncronas y Futuros en Scala con Slick
Creación, actualización y eliminación de datos en bases de datos
Computación Paralela y Asíncrona en Scala: Conceptos y Aplicaciones
Serialización de Datos en Scala con Play Framework
Serialización y validación de JSON a objetos Scala
Manejo de Errores en Scala: Técnicas y Pruebas con Postman
Exportación de Aplicaciones Play con SBT Native Packager
Conclusiones
Conceptos Clave de la Programación Funcional en Scala
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
La programación funcional ofrece una manera eficiente de escribir código, pero la clave es aplicarla en un proyecto práctico. En este caso, vamos a poner en práctica todo lo aprendido desarrollando un clon del backend de Platzi Video. Platzi Video, utilizado en la carrera de JavaScript de Platzi, nos servirá como modelo para estructurar este nuevo proyecto.
PlayFramework es una herramienta poderosa para construir aplicaciones MVC (Modelo-Vista-Controlador), similar a Ruby on Rails. Destaca por su simplicidad y por estar respaldado por una sólida arquitectura basada en actores, gracias al uso de Akka, una reconocida librería de programación por modelo de actores en Scala.
Ventajas de usar PlayFramework:
Para arrancar con nuestro proyecto, necesitamos establecer un entorno estructurado. La base de nuestro desarrollo se encuentra en la página de developers.lightbend.com, desde donde descargaremos una plantilla preconfigurada para agilizar el inicio.
Pasos para la configuración:
Para navegar y aprovechar al máximo PlayFramework, la documentación es una herramienta indispensable. Encontrarás diferentes secciones dedicadas al funcionamiento del framework, divididas principalmente en documentación general, API Java, y, por supuesto, API Scala, nuestro enfoque.
Clave para explorar la documentación:
Utilizar herramientas adicionales facilita el desarrollo y prueba del proyecto.
Simple Build Tool (SBT) es esencial para compilar y administrar proyectos Scala. Posee comandos esenciales que facilitan distintas operaciones del proyecto:
sbt update
: Descarga y actualiza las dependencias.sbt compile
: Compila el proyecto.sbt console
: Abre la consola de Scala.sbt run
: Ejecuta el proyecto en modo desarrollo.sbt start
: Muestra el proyecto en modo producción.sbt stage
: Publica localmente el proyecto.sbt dist
: Genera un archivo zip del proyecto.En resumen, al combinar funcionalidad, estructura robusta y herramientas poderosas, este proyecto no solo pondrá a prueba el conocimiento en programación funcional sino que abrirá las puertas a un desarrollo efectivo con Scala. ¡Continúa explorando los múltiples recursos y sigue aprendiendo!
Aportes 4
Preguntas 1
Hasta aquí el curso me pareció muy pero muy bueno, pero el mezclarlo con cosas como frameworks (aunque sea para hacer el proyecto final) no me parece tan bueno.
[Apuntes]
Comandos útiles
sbt update
sbt compile
sbt console
sbt run
sbt start
sbt stage
sbt dist
sbt update // descargar las dependencias
sbt compile // compilar proyecto
sbt console // modo consola
sbt run // modo desarrollo
sbt start // modo produccion
sbt stage // publicar forma local
sbt dist // crear .zip con el proyecto
Super interesante el planteamiento del proyecto, considero si se debe tener un nivel intermedio (al menos segun parece) para poder continuar sin perderte en conceptos o revolver conceptos de otros frameworks/herramientas con scala.
Si ya tienes ese nivel de comprender las herramientas, esta súper, si no, te recomiedno retomar el proyecto tras tener algo de contexto de dichas herramientas
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?