在线课程 – 洛桑联邦理工学院规模的函数式编程专业认证专家

一个高级程序。编写优雅的功能代码来分析大小数据。

Suggested by: Coursera (What is Coursera?)

Professional Certificate

中档

No prior knowledge required

Time to complete the course

7-day free trial

No unnecessary risks

Skills you will acquire in the course

  • Scala 编程语言
  • 并行计算
  • Apache Spark
  • 函数式编程

What you will learn in the course

Courses for which the course is suitable

  • 程序员
  • 软件工程师
  • Scala 应用程序开发人员
  • 数据系统分析师
  • 功能软件开发人员
  • 并行软件开发人员
  • 基于 Apache Spark 的解决方案的开发人员
  • 数据工程师
  • 分布式系统开发人员

专业化 – 5 门课程系列

  • 了解如何编写首次运行时有效的时尚代码。

课程描述

该专业提供了使用通用编程语言 Scala 进行函数式编程的实用介绍。本课程从函数模型的基本元素开始,展示了如何使用它们来解决小问题,然后进入集成这些概念以设计更大的函数程序的阶段。

主要主题
  • 函数模型有助于并行和分布式编程。
  • 一系列实际示例和编程作业。
  • 分析不同规模的数据系统。
  • 多核架构上的并行编程。
  • 使用 Apache Spark 在集群上进行分布式编程。

最终项目

最终项目将允许您通过使用真实数据构建大型数据密集型应用程序来应用所学的技能。

应用学习项目

学习者将利用以下知识和技能构建中小型扩展应用程序:

  • 函数式编程
  • 并行编程
  • 大数据系统的操纵
  • 高级函数
  • 基于特征的测试
  • 函数物理编程

Details of the courses that make up the specialization

大规模函数式编程的原则

  • 课程 1
    • 56 小时
    • 4.8 (8,242 个评分)
  • 课程详情
    • 学习内容
      • 了解函数式编程的原理
      • 使用递归、模式调整和高级函数编写纯函数式程序
      • 设计不可变数据结构
      • 将函数式编程与对象和类集成
    • 您将获得的技能
      • 类别: 递归
      • 类别: Scala 编程
      • 类别: 高级函数
      • 类别: 不变胶带
      • 类别: 函数式编程

大规模设计功能程序

  • 课程 2
    • 35 小时
    • 4.5 (3,132 个评价)
  • 课程详情
    • 学习内容
      • 识别并应用功能程序设计原则
      • 设计函数库及其 API
      • 编写简单的反应式函数式应用程序
      • 了解组合函数和状态的程序的逻辑技术
    • 您将获得的技能
      • 类别: 数据结构
      • 类别: 并行计算
      • 类别: 根据数据进行并行
      • 类别: 并行算法

并行编程

  • 课程 3
    • 32 小时
    • 4.4 (1,839 个评价)
  • 课程详情
    • 学习内容
      • 如今,随着每部智能手机和计算机都配备多个处理器,使用功能概念来促进并行编程变得越来越普遍。
      • 在本课程中,您将学习并行编程的基础知识,从并行递归到基于数据的并行。
      • 看看函数式编程中的知名思想如何完全适合基于数据的并行范式。
      • 让我们从如何使知名集合的操作专业化的实际方面开始,然后继续管理并行集合。
      • 我们将通过一些分析真实世界数据的实际示例来应用这些概念。
    • 学习成果
      • 在课程结束时,您将能够:
        • 解释任务和数据的并行程序
        • 以函数式风格表达常见算法,同时解决它们
        • 对并行软件执行微基准测试
        • 编写能够高效使用并行集合提高性能的程序
    • 推荐的背景特征
      • 您必须具有至少一年的编程经验。
      • Java 或 C# 技能是理想的,但 C/C++、Python、Javascript 或 Ruby 等其他语言的经验也足够了。
      • 您必须熟悉命令提示符的用法。
      • 该课程旨在在大规模设计功能程序后学习。

使用 Scala 和 Spark 进行函数式和大数据编程

  • 课程 4
    • 27 小时
    • 4.6 (2,586 个评价)
  • 课程详情
    • 学习内容
      • 使用函数式思想处理分布在集群中的大数据在行业中很常见。
      • 这反映在 MapReduce 和 Hadoop 以及最近的 Apache Spark 的流行中。
      • 我们将看到在分布的情况下如何根据数据扩展并行范式。
      • 我们将详细介绍 Spark 的编程模型。
      • 我们将了解何时应考虑与分发相关的重要问题,例如延迟和网络通信。
    • 学习成果
      • 在课程结束时,您将能够:
        • 从持久存储中读取数据并将其加载到 Apache Spark 中
        • 使用 Spark 和 Scale 进行数据操作
        • 以函数式风格表达数据分析算法
        • 确定如何在 Spark 中避免重复和重新启动
    • 推荐的背景特征
      • 您必须具有至少一年的编程经验。
      • Java 或 C# 技能是理想的,但 C/C++、Python、Javascript 或 Ruby 等其他语言的经验也足够了。
      • 您必须熟悉命令提示符的用法。
      • 该课程旨在在并行编程之后学习。

规模化最终项目的功能可行性

  • 课程 5
    • 32 小时
    • 4.4 (544 评价)
  • 课程详情
    • 学习内容
      • 在最后一个最终项目中,您将应用通过构建大型数据密集型应用程序学到的技能。
      • 此应用程序将展示世界各地温度随时间变化的交互式插图。
    • 这样一个应用程序的开发将包括:
      • 将气象站提供的数据转换为有意义的信息。
      • 使用空间和线性插值技术根据此信息创建图像。
      • 实现用户界面如何响应用户的操作。

您将获得的技能

  • 类别: Scala 软件
  • 类别: 大数据
  • 类别: SQL
  • 类别: Apache Spark