École Polytechnique Fédérale de Lausanne
Coursera
list 6 séquences
assignment Niveau : Intermédiaire
chat_bubble_outline Langue : Anglais
language Sous titrage : Coréen, Serbe, Français
card_giftcard 300 points
Avis de la communauté
4.3
starstarstarstarstar
Voir l'avis

Les infos clés

credit_card Formation gratuite
verified_user Certification payante
timer 30 heures de cours

En résumé

Functional programming is becoming increasingly widespread in industry. This trend is driven by the adoption of Scala as the main programming language for many applications. Scala fuses functional and object-oriented programming in a practical package. It interoperates seamlessly with both Java and Javascript. Scala is the implementation language of many important frameworks, including Apache Spark, Kafka, and Akka. It provides the core infrastructure for sites such as Twitter, Tumblr and also Coursera. In this course you will discover the elements of the functional programming style and learn how to apply them usefully in your daily programming tasks. You will also develop a solid foundation for reasoning about functional programs, by touching upon proofs of invariants and the tracing of execution symbolically. The course is hands on; most units introduce short programs that serve as illustrations of important concepts and invite you to play with them, modifying and improving them. The course is complemented by a series programming projects as homework assignments. Recommended background: You should have at least one year programming experience. Proficiency with Java or C# is ideal, but experience with other languages such as C/C++, Python, Javascript or Ruby is also sufficient. You should have some familiarity using the command line.

more_horiz Lire plus
more_horiz Lire moins
dns

Le programme

  • Week 1 - Getting Started + Functions & Evaluation
    Get up and running with Scala on your computer. Complete an example assignment to familiarize yourself with our unique way of submitting assignments. In this week, we'll learn the difference between functional imperative programming. We step through the basics...
  • Week 2 - Higher Order Functions
    This week, we'll learn about functions as first-class values, and higher order functions. We'll also learn about Scala's syntax and how it's formally defined. Finally, we'll learn about methods, classes, and data abstraction through the design of a data struct...
  • Week 3 - Data and Abstraction
    This week, we'll cover traits, and we'll learn how to organize classes into hierarchies. We'll cover the hierarchy of standard Scala types, and see how to organize classes and traits into packages. Finally, we'll touch upon the different sorts of polymorphism ...
  • Week 4 - Types and Pattern Matching
    This week we'll learn about the relationship between functions and objects in Scala; functions *are* objects! We'll zoom in on Scala's type system, covering subtyping and generics, and moving on to more advanced aspects of Scala's type system like variance. Fi...
  • Week 5 - Lists
    This week we dive into Lists, the most commonly-used data structure in Scala.
  • Week 6 - Collections
    After a deep-dive into Lists, this week we'll explore other data structures; vectors, maps, ranges, arrays, and more. We'll dive into Scala's powerful and flexible for-comprehensions for querying data.
record_voice_over

Les intervenants

Martin Odersky
Professor
Computer Science

store

Le concepteur

L’École polytechnique fédérale de Lausanne (EPFL) est une institution universitaire de renommée internationale, spécialisée dans le domaine de la science et de la technologie, située à Lausanne, bien que sur le territoire communal d'Écublens, en Suisse et fondée en 1853, sous le nom d’École spéciale de Lausanne.

assistant

La plateforme

Coursera est une entreprise numérique proposant des formations en ligne ouverte à tous fondée par les professeurs d'informatique Andrew Ng et Daphne Koller de l'université Stanford, située à Mountain View, Californie.

Ce qui la différencie le plus des autres plateformes MOOC, c'est qu'elle travaille qu'avec les meilleures universités et organisations mondiales et diffuse leurs contenus sur le web.

Avis de la communauté
4.3 /5 Moyenne
starstarstarstarstar
1
starstarstarstarstar
0
starstarstarstarstar
0
starstarstarstarstar
0
starstarstarstarstar
0
Contenu
5/5
Plateforme
5/5
Animation
3/5
Le meilleur avis

very good course by the creator of scala himself. The explanations are very clear and the exercises well chosen (not always easy)

Vous êtes le concepteur de ce MOOC ?
Quelle note donnez-vous à cette ressource ?
Contenu
0/5
Plateforme
0/5
Animation
0/5
le 8 avril 2017
starstarstarstarstar

very good course by the creator of scala himself. The explanations are very clear and the exercises well chosen (not always easy)