Chevron Left
返回到 Scala 函数式程序设计原理

学生对 洛桑联邦理工学院 提供的 Scala 函数式程序设计原理 的评价和反馈

4.8
7,590 个评分
1,530 条评论

课程概述

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....

热门审阅

RS
Oct 8, 2016

Really good explanation by the instructor. Good assignments. The assignments gave a good insights into functional programming. I loved the way the problems were decomposed into neat smaller functions.

AJ
Sep 23, 2019

As expected Martin is awesome in explaining principle of functional programming. I have started reading the book as well to make sure I keep up with the knowledge which I have gained from this course.

筛选依据:

101 - Scala 函数式程序设计原理 的 125 个评论(共 1,467 个)

创建者 Mike D

Jun 26, 2016

The course is logical and thorough, flawlessly delivered (well, except maybe the audio quality at times), and challenging just enough to make a seasoned imperative programmer scream in frustration, but not quit. 😀 The only thing standing between this course and perfection are the pop quiz bugs. But even they contribute to the message of the course in a way: if Coursera's platform were written in Scala, there probably would be fewer of them. 🕷

创建者 Tim B

Oct 16, 2016

Very good course! I noticed some of the instructions are out of date (e.g. there are examples of where to go on the website, but the website format has changed). I wish I understood more of what sbt and the IDE were doing behind the scenes. It seems like there is a lot of structure built into making the assignments function properly and I would like to better understand how to make my own project with similar level of complexity / capabilities.

创建者 Krzysztof P

Jan 16, 2017

Great introduction to different way of thinking through examples in quite powerful language (for programmers who used to imperative way of thinking) . This course is useful not only for people who program is Scala, but also for Java (8+) developers to get familiar with streams, lambdas, higher-order functions, and maybe some concepts, as I observed, not-so-often used by many programmers: like variance in parametric polymorphism with generics.

创建者 Robert J F

Jun 2, 2017

I love learning about Scala and the rudiments of functional programming from the author of the Scala language. It's been a real pleasure to approach learning this from the ground up, and to get all kinds of little tips and subtleties along the way. Martin Odersky does an excellent job of building piece by piece and with many language-agnostic theories, and presenting classic challenges which have haunted coders for generations. Thank you!

创建者 解偲玮

Aug 7, 2016

This course is a little bit difficult to get started with if you do not have any code experience. However, it is a really great course because the content is sufficient but not too much and the course is clear enough. The last two assignments are tough for me and they took me a long time to figure out, also I read a number of materials about Scala functions on Internet. This is the first course that I finished and I really like this course.

创建者 Roman A

Oct 29, 2019

Easily one of the best courses I've ever encountered. It is difficult for someone who is not familiar with FP but in a good way. You learn a great deal as you work on exercises, which are, by the way, very thoroughly prepared.

I must say, however, that setting up a different IDE than the suggested Eclipse was a pain and course does not cover the environment or its troubleshooting. Discussion forums thrive with such discussions, though.

创建者 Vinay N R C

Jul 26, 2020

The best course for learning Scala and Functional Programming!

Taught by the creator himself, this course is for everyone who wants to learn Scala and understand prinicples of FP which makes up Scala's elegance. The course is curated such that there is no requirement of prior expertise of other programming paradigms and data structures, however, knowledge of any OO-language would surely help you relate/compare and learn faster.

创建者 Hessam S M

Aug 25, 2017

Excellent course taught by the creator of Scala. This is by far the best way to dive into the world of functional programming and along the way learn a cool JVM based programming language. The main focus of this course and as a whole specialization is learning to think functional not learning Scala so I'd recommend reading Programming in Scala by Martin Odersky as the companion book to learn more about Scala language itself.

创建者 Alex L

Apr 14, 2019

A great start. Challenging while informative. The last assignment in the last week really made me think about my approach from a functional programming perspective rather than a procedural approach. It also really made me focus on how to ensure that the types of responses going into a list are of the most compatible narrowest type needed for the task i'm performing. I'm excited to sink my teeth into the next class.

创建者 Bruno F

Aug 20, 2017

Extremely good introduction to functional programming.

I like the fact that theory was included but the lecturer was careful to point out the boundaries of the course.

Consider having an alternative version of the course which has more theory of functional programming. I understand though that there might not be demand for this and that this sort of material cannot be successfully examined by any submitted exercises.

创建者 STANISLAU B

Dec 12, 2019

That's was a great journey. My head was almost blasted on anagrams task. Did everything by myself without any cheating (google, git etc.), havnt look for possible decission on how to build algorythm, no read course forum. Prof Odersky give enough information to solve the issues in tasks. The only thing you need is to put it in right order in yur head. Thats why I'm twice happier today when I ended with 100% grade.

创建者 Niklaas B v G

Jan 15, 2018

One of the best courses on Coursera. For me, only having background in programming in R and doing a bit of system administration and the like, it was quite challenging. I liked that!

It's a pity that solutions to the exams aren't discussed. I don't know how to organise the course to do so but I am sure I could have learned even more if someone had discussed the "optimal" or most elegant solution to the assignments.

创建者 Lucian S

Sep 17, 2017

I like the course because it does teach the basics of Scala and FP and then one can work through the projects to apply the concepts. I have underestimated this course a little bit thus it toke me more effort than I anticipated but it worth finishing it. Now I appreciate more the people who managed to develop fluency in Scala or any FP language and it is a skill that I will continue to work on for myself, for sure.

创建者 Jose F O

Aug 15, 2016

Although I have some experience with Scala and I been reading about the course it is challenging. It forces you to think functional. There is no other way to solve the assignments but doing them with a functional approach. Before you attempt this class you should have some knowledge about the language. The lectures are interesting. I never saw a better explanation of variant and co-variant than here is this class.

创建者 Robyn K

Apr 11, 2020

Great course! Thank you professor Ordersky for designing and putting your course online for us. It was a great introduction to Scala but challenging when it needed to be, the lecture questions and homeworks captured the essential thought process behind functional programming really well. I would maybe move week 4's homework to week 5 since the material from week 5 covered some useful concepts for the homework.

创建者 sanga l

Nov 23, 2016

What can I say, it is really great courses. it though you from basic even though not step by step but still can be followed by java programmer. I had difficult time to change the way of thinking at first and to to refresh my algorithm knowledge. Spend long night on the weekend :) will miss this course.

it is better you study in a group of people then it will motivates you more and do assignment faster.

创建者 Alexander F

Mar 17, 2017

an exceptional course, taught by a master of both the theory and the practice. as an engineer with most of an undergrad computer science degree and a few years' industry experience, I found this paper consistently challenging but fair throughout. theoretical proofs and practical considerations are presented side by side, which helps to rationalize the choices in language design and programming model.

创建者 Kostas S

Aug 30, 2016

Very good course. A bit fast paced for someone with no significant programming experience but as stated in the description this is not a beginners course. Nevertheless, the concepts are explained in depth in the lectures and the assignments which are quite challenging even for someone with good programming background provide great insight to the issues discussed in the lectures. Highly recommended.

创建者 Alin S

Mar 16, 2017

It was a great and rigorous introduction to the Scala programming languages. The assignments were very challenging but they provide a great learning experience. The contents of the course can make you a better programmer in general by exposing you to concepts from functional programming combined with those from object oriented that you will find yourself applying to other programming languages.

创建者 Arthur M

Apr 14, 2018

Excellent course. I do not recommend it as a first-stop introduction to FP - I tried that and utterly failed. First, go away and read a Scala book and do the exercises (I recommend the ubiquitous read book "Functional Programming in Scala"). If you pass this course and are honest about submitting your own work, you will come out on the other side with a rock-solid foundational knowledge of FP.

创建者 Atri B

Oct 30, 2016

I really liked the content and presentation of the course. I had to know Scala for another course at college and this was the perfect crash course. Also, it is being taught by its creator, so that's pretty cool. I liked the assignments too. However, the final assignment did not totally cover all the material for week 5 and 6, and was a bit of a disappointment. Great course overall.

创建者 Mariusz K

Apr 6, 2020

Great course for starting with functional programming paradigm and getting to know Scala language. Lectures thoroughly explain both foundations of functional programming as well as basic Scala constructs. Assignments difficulty level is reasonable - they are not too easy but it is feasible to pass them using concepts presented in the lectures and hints from the course forum.

创建者 Nagesh L

Dec 2, 2018

Very nice course to learn the scala programming language. Especuially who want to start and learn funtional programming like me. The instructor is very knowledged (he is a professor and an author of book). I am fully satisfied with this course. The assignments were challenging and had fun while doing this course. Whoever want to take, please don't think - just enrol and enjoy!

创建者 Taufeq R

Dec 16, 2018

I really enjoyed learning from first principles of functional programming in this class with Prof. Martin Odersky. The direction from start to end is really well suited to beginners of functional programming and also well suited to students new to programming. This goes on show the genius Prof. Odersky is at teaching and developing an elegant language with his students.

创建者 Francisco E B

Aug 27, 2018

Very good! Mr. Odersky is very didactic, his examples are clear, though the conceptual rigor of the course is very high.

The exercises were very carefully chosen to demand the use of the concepts seen in classes. And they are challenging, too!

I enjoyed a lot, even though the classes and exercises were time, intellectually and effort demanding.

I emphatically recommend!