We may earn an affiliate commission when you visit our partners.
Apasoft Training

Hola, ¡¡¡Bienvenido al curso de Scala desde Cero.

En este curso aprenderás como desarrollar programas y aplicaciones con uno de los lenguajes más utilizados en el mundo profesional y laboral : Scala

Scala es uno de los lenguajes de programación  más demandados en el perfil profesional que buscan las empresas en la actualidad.

Es un lenguaje que combina tanto la Orientación a Objetos como la Programación Funcional, de forma concisa y sencilla. Esto lo ha convertido en un lenguaje que se utiliza en distintos entornos como Spark, Analítica de Datos, Big Data, programación distribuida, etc....

Read more

Hola, ¡¡¡Bienvenido al curso de Scala desde Cero.

En este curso aprenderás como desarrollar programas y aplicaciones con uno de los lenguajes más utilizados en el mundo profesional y laboral : Scala

Scala es uno de los lenguajes de programación  más demandados en el perfil profesional que buscan las empresas en la actualidad.

Es un lenguaje que combina tanto la Orientación a Objetos como la Programación Funcional, de forma concisa y sencilla. Esto lo ha convertido en un lenguaje que se utiliza en distintos entornos como Spark, Analítica de Datos, Big Data, programación distribuida, etc....

Durante este curso vas a aprender todos los conceptos y características de este lenguaje, conocerás las herramientas de desarrollo que puedes utilizar y estudiaremos todos los conceptos más importantes.

Siempre mantengo mis cursos actualizados, con lo que iré añadiendo más puntos según vayan surgiendo.

Los puntos básicos que veremos  en la formación son:

  • Introducción

  • Instalación

  • Comandos y conceptos básicos del lenguaje

  • Orientación a Objetos en scala

  • Funciones/Métodos

  • Programación Funcional

  • Options

  • Traits

  • Y muchos más conceptos

Si tienes cualquier duda o pregunta, ponte en contacto conmigo. Estaré encantado de contestarte

Espero verte pronto y que disfrutes del curso.

Sergio de Apasoft Training

Enroll now

What's inside

Syllabus

Introducción
Contenido del curso
notas sobre valoraciones
Nota sobre preguntas y respuestas
Read more
Introducción a Scala. Instalación
Introducción al lenguaje Scala
Diferencias básicas con Java
Un recorrido por la página Web de Scala
Tipos de descarga del software de Scala
Instalación manual
Instalación de IntelliJ Idea
Ejemplo. Crear un proyecto en IntelliJ Idea
Empezar a conocer Scala
Introducción a REPL. Herramienta en modo comando
Tipos de Datos
VAR y VAL. Variables
Crear variable en modo Lazy
Práctica Variables y constantes
Comentarios
Bloques
Operadores
Condiciones. Comando IF
Bucles
Rangos
Inicializar variables por defecto
Pattern Matching Parte 1
Pattern Matching Parte 2
Trabajar con Strings
String Interpolation
Trabajar con Números
Colecciones
Introducción a las colecciones
List
Operaciones con List
Más operaciones con List
ListBuffer
Array
ArrayBuffer
Set
Map
Funciones/Métodos
Funciones
Procedimientos. Funciones que no devuelven valor
Funciones con parámetros
Parámetros con nombre
Parámetros por defecto
Número variablede parámetros
Crear aplicaciones con IntelliJ Idea
Un breve repaso de IDEA
Mi primera aplicacion Scala
Crear una aplicación con el metodo "main"
compilar con scalac
Clases y Objetos
Clases Parte 1
Clases Parte 2
Herencia
Traits- Parte1
Traits- Parte 2
Traits Múltiples
Modificadores de Acceso: private, public, protected
Constructores
Constructores Auxiliares
Constructores múltiples
Singleton Objects
Companion Objects
Crear Instancias sin NEW
Case Class
clases Abstractas
Programación funcional
High Order Functions
Funciones anónimas. Functions Literals
Funciones como parametros
Funciones como variables
Devolver una función
Partially Applied Functions
Currying Functions
Closures
Otras caracteristicas
Options
Exceptions. Try Catch
Exceptions. finally
Exceptions. Throw
Sobrecarga. Overloading
Ficheros
Leer Ficheros de texto
Escribir ficheros de texto
Escribir y leer ficheros binarios
Despedida
Clase EXTRA

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Cubre las diferencias básicas con Java, lo que facilita la transición para los desarrolladores que ya conocen Java
Explora la programación orientada a objetos y la programación funcional, dos paradigmas importantes en el desarrollo de software moderno
Enseña cómo crear aplicaciones con IntelliJ IDEA, un entorno de desarrollo integrado popular entre los desarrolladores de Scala
Introduce conceptos como Traits, Singleton Objects y Case Classes, que son características clave de Scala que no se encuentran en Java
Incluye una sección sobre lectura y escritura de ficheros binarios, una habilidad útil para el procesamiento de datos
No profundiza en temas avanzados como Spark, Analítica de Datos o Big Data, a pesar de mencionarlos en la descripción

Save this course

Save Scala desde Cero to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Scala desde Cero with these activities:
Repasar los fundamentos de Java
Refresca tus conocimientos de Java, ya que Scala comparte muchos conceptos con Java y comprender Java facilitará el aprendizaje de Scala.
Browse courses on Java
Show steps
  • Revisa los conceptos básicos de la sintaxis de Java.
  • Practica la escritura de programas sencillos en Java.
  • Familiarízate con la programación orientada a objetos en Java.
Leer 'Programming in Scala'
Utiliza este libro como referencia principal para comprender los conceptos y la sintaxis de Scala.
Show steps
  • Lee los capítulos correspondientes a los temas del curso.
  • Realiza los ejercicios propuestos en el libro.
  • Consulta el libro cuando tengas dudas sobre algún concepto.
Leer 'Scala in Depth'
Profundiza en los conceptos avanzados de Scala para una comprensión más completa del lenguaje.
Show steps
  • Lee los capítulos relevantes para los temas del curso.
  • Experimenta con los ejemplos de código del libro.
  • Investiga los temas que te resulten más interesantes.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Ejercicios de programación funcional en Scala
Practica la programación funcional en Scala para dominar este paradigma y aplicarlo en tus proyectos.
Show steps
  • Resuelve ejercicios de transformación de listas con `map`, `filter` y `reduce`.
  • Implementa funciones recursivas para resolver problemas.
  • Utiliza `Option` para manejar valores nulos de forma segura.
Crear un blog sobre Scala
Escribe artículos de blog sobre los temas del curso para consolidar tu aprendizaje y compartir tus conocimientos con otros.
Show steps
  • Elige un tema relacionado con Scala.
  • Investiga el tema a fondo.
  • Escribe un artículo claro y conciso.
  • Publica el artículo en tu blog o en una plataforma de blogging.
Desarrollar una aplicación de línea de comandos en Scala
Aplica tus conocimientos de Scala para crear una aplicación práctica que resuelva un problema real.
Show steps
  • Define los requisitos de la aplicación.
  • Diseña la arquitectura de la aplicación.
  • Implementa la aplicación en Scala.
  • Prueba la aplicación a fondo.
Contribuir a un proyecto de código abierto en Scala
Participa en un proyecto de código abierto para ganar experiencia práctica en el desarrollo de software en equipo y mejorar tus habilidades en Scala.
Show steps
  • Encuentra un proyecto de código abierto en Scala que te interese.
  • Familiarízate con el código base del proyecto.
  • Elige una tarea para contribuir.
  • Envía un pull request con tus cambios.

Career center

Learners who complete Scala desde Cero will develop knowledge and skills that may be useful to these careers:
Desarrollador de Spark
Un Desarrollador de Spark se dedica a construir y mantener aplicaciones de procesamiento de datos a gran escala utilizando Apache Spark. Este curso, al enseñar Scala desde cero, ayuda a construir una base sólida en el lenguaje principal utilizado en el desarrollo de Spark. Conocer los conceptos de programación funcional y orientación a objetos en Scala, como se presenta en este curso, permite escribir código eficiente y mantenible para Spark. Aprender sobre colecciones, funciones y manejo de excepciones en Scala es crucial para el desarrollo de aplicaciones robustas de Spark.
Ingeniero de datos
Un Ingeniero de Datos diseña, construye y gestiona la infraestructura que permite a las organizaciones recopilar, almacenar y analizar grandes volúmenes de datos. Este curso proporciona una introducción práctica a Scala, un lenguaje ampliamente utilizado en el ecosistema de Big Data. Los conocimientos adquiridos en este curso, como la programación orientada a objetos y funcional, el manejo de colecciones y la gestión de errores, son fundamentales para trabajar con herramientas como Apache Spark y Apache Kafka. El curso ayuda a comprender cómo Scala facilita el desarrollo de soluciones de ingeniería de datos eficientes y escalables.
Científico de datos
Un Científico de Datos utiliza métodos científicos, algoritmos y sistemas para extraer conocimiento e insights de datos estructurados y no estructurados. Scala es un lenguaje poderoso para la ciencia de datos, especialmente cuando se trabaja con grandes volúmenes de datos y herramientas como Spark. Este curso proporciona una base en Scala, abarcando desde los fundamentos del lenguaje hasta conceptos avanzados como la programación funcional y el manejo de excepciones. Esta base sólida ayuda a los científicos de datos a manipular, analizar y modelar datos de manera más eficiente, y a desarrollar soluciones personalizadas para problemas complejos.
Ingeniero de Machine Learning
Para el Ingeniero de Machine Learning, este curso es un gran puntapié inicial. Su tarea es diseñar, desarrollar y desplegar modelos de machine learning en producción. Scala, al ser el lenguaje base de Spark, es fundamental para procesar y transformar grandes conjuntos de datos utilizados en el entrenamiento de modelos. Dominar los conceptos de Scala que se cubren en este curso ayuda a comprender cómo implementar algoritmos de machine learning de manera eficiente y escalable. Este curso ayuda a construir la base necesaria para una carrera en ingeniería de machine learning.
Desarrollador de software
Un Desarrollador de Software crea aplicaciones y sistemas informáticos. Este curso en Scala desde cero ayuda a construir una base sólida en un lenguaje de programación moderno y versátil. Scala, al combinar la programación orientada a objetos y funcional, ofrece un enfoque flexible para el desarrollo de software. Conocer los fundamentos de Scala que se enseñan en el curso, incluyendo funciones, clases, objetos y manejo de colecciones, permite abordar una amplia gama de proyectos de desarrollo de software. Este curso puede ser el punto de partida para una exitosa carrera como desarrollador de software.
Desarrollador de Aplicaciones Distribuidas
Un Desarrollador de Aplicaciones Distribuidas crea sistemas que se ejecutan en múltiples nodos o máquinas, lo que permite manejar grandes volúmenes de datos y tráfico. Scala, con su soporte para programación concurrente y su integración con frameworks como Akka, es ideal para este tipo de desarrollo. Este curso ayuda a comprender los fundamentos de Scala, incluyendo la programación funcional y orientada a objetos, la gestión de la concurrencia y el manejo de errores, que son esenciales para construir aplicaciones distribuidas robustas y escalables. Este curso es una excelente introducción al mundo del desarrollo de aplicaciones distribuidas.
Analista de Datos
Un Analista de Datos interpreta y analiza datos para identificar tendencias y patrones que ayudan a las empresas a tomar decisiones informadas. Aunque el análisis de datos puede realizarse con diversas herramientas, el conocimiento de Scala, adquirido en este curso, permite trabajar con conjuntos de datos más grandes y complejos utilizando frameworks como Spark. La capacidad de programar en Scala ayuda a manipular y transformar datos de manera eficiente antes de aplicar técnicas de análisis. Este curso puede ser la base para construir habilidades más avanzadas en el análisis de datos.
Arquitecto de Datos
Un Arquitecto de Datos diseña y supervisa la implementación de sistemas de gestión de datos para una organización. Este curso ayuda a comprender cómo Scala se integra en arquitecturas de Big Data y cómo puede utilizarse para construir soluciones de procesamiento de datos eficientes y escalables. El conocimiento de los conceptos de programación funcional y orientada a objetos en Scala, así como el manejo de colecciones y la gestión de errores, permite tomar decisiones informadas sobre la selección de tecnologías y el diseño de la arquitectura de datos. Scala ayuda a construir sistemas de datos robustos y adaptables.
Ingeniero de Calidad de Datos
Un Ingeniero de Calidad de Datos se asegura de que los datos sean precisos, completos y consistentes. Scala puede ser utilizado para construir herramientas y scripts que validan y limpian los datos. Este curso ayuda a comprender los fundamentos de Scala y de esta manera diseñar e implementar procesos de validación de datos automatizados. Scala es una buena base para asegurar datos de alta calidad.
Analista de Inteligencia de Negocios
Un Analista de Inteligencia de Negocios (BI) utiliza datos para identificar tendencias y patrones que ayudan a las empresas a tomar decisiones informadas. Este curso puede ayudar a interactuar con los datos de una forma mas directa. Scala, al ser un lenguaje versátil, permite acceder, transformar y analizar datos. Una base en los conceptos de Scala, permite trabajar con herramientas de BI de manera más efectiva y ayuda a comprender los fundamentos de la manipulación de datos.
Consultor de Big Data
Un Consultor de Big Data asesora a las empresas sobre cómo utilizar tecnologías de Big Data para resolver problemas de negocio. Dado que Scala es un de los lenguajes mas utilizados en el mundo del Big Data, este curso ayuda a un consultor a adquirir una mejor comprensión de los desafios y oportunidades del Big Data. Scala es una buena base para realizar recomendaciones mas informadas.
Desarrollador web
Un desarrollador web crea y mantiene sitios web y las aplicaciones web. Al completar el curso, Scala podría ayudar a un desarrollador web en el backend. Scala es una buena base para comprender los principios de programación que luego son aplicables a los proyectos de desarrollo web.
Desarrollador de Juegos
Un Desarrollador de Juegos crea videojuegos para diversas plataformas. Si bien Scala no es el lenguaje de programación más común en esta industria, el curso ayuda a comprender algunos conceptos importantes de programación. Scala es una buena base para comprender los principios de programación y diseño de software, que son aplicables al desarrollo de juegos.
Desarrollador de Software Embebido
Los desarrolladores de software integrado escriben código para sistemas integrados, que son sistemas informáticos diseñados para realizar una función dedicada, a menudo con restricciones de tiempo real. Este curso es una puerta de entrada al dominio de programación más amplio. Scala es una buena base para comprender los fundamentos de la informática, que luego son aplicables al desarrollo de software integrado.
Especialista en soporte técnico
Los especialistas en soporte técnico ayudan a los usuarios que tienen problemas con los sistemas informáticos. Este curso es valioso para desarrollar la resolución de problemas y las habilidades de alfabetización tecnológica que pueden ayudar con el soporte técnico. Scala es una buena base para la resolución de problemas y la alfabetización tecnológica, que pueden ayudar con el soporte técnico.

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Scala desde Cero.
Este libro profundiza en los aspectos más complejos de Scala, como el sistema de tipos, la concurrencia y las macros. Es una excelente opción para aquellos que desean ir más allá de los conceptos básicos y comprender cómo Scala funciona internamente. Si bien no es necesario para empezar, es muy valioso como lectura complementaria.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser