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

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

4.8
7,349 个评分
1,475 条评论

课程概述

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

热门审阅

AJ

Sep 24, 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.

VP

Sep 14, 2018

It took me much longer than expected to finish the course and sometimes it made me feel stupid and helpless. Diving into functional programming was a mind bending experience, totally worth time spent!

筛选依据:

26 - Scala 函数式程序设计原理 的 50 个评论(共 1,413 个)

创建者 Mumtahin M

Apr 09, 2017

This course expects you to have a lot more ground for an intermediate course.

创建者 Yves-Michel L

Nov 16, 2016

Bad logic.

Class content poorly related to the exams. No exercise for practice. When any, clearly unrelevant. The first 4 weeks, it is hard to impossible to succeed through the exam. Run all videos set first, then consider digging into practice.

I took a book and learned more form it than this video.

创建者 Ahsan

Dec 06, 2018

It was very hard to follow the instructions.

创建者 Fridrik M J

Jun 21, 2016

I've been developing in imperative languages for the past 10 years, and my motivation for taking this course was to make sure that I was using the functional capabilities of the language.

While I've embraced immutability and higher-order functions since I started writing Scala, I haven't solved significant programming challenges using functional thinking. Much of what I've already done with Scala so far has been relatively stateless request-response communication between systems, and the challenges so far tend to be on the architecture end.

This first course taught me useful things that I hadn't encountered in my industry use of Scala. It has given me greater appreciation for the design of the language and the problems that Scala can solve elegantly. I've also acquired more interest in learning about more functional approaches to various problems -- perhaps I'll dig deeper into SICP at some point!

The assignments were a good fit for me -- they were challenging enough that they got me to think but not so hard that I got stuck. Scala's rich type system came in handy for the assignments -- once you've got the right idea for an approach, you just have to get the data structures to click (with some help from the compiler), and things just work!

I appreciate that the assignments and examples were realistic. Getting to implement Huffman Coding and basic data structures (functional and OO sets) helped me both appreciate the functional way to solve problems like these, and to understand the class of practical problems where similar solutions are applicable.

Great course, and I'm excited for the next ones! Thanks to Martin and the course staff for their hard work on the course!

创建者 Darren B

Aug 13, 2017

This course helped me significantly. There is very little in the way of AFFORDABLE Scala Education out there. This is a problem. There are endless educational resources for Python. Scala has a lot to offer programmers if only they knew where to find adequate educational Resources for Scala.

Make learning Scala easy enough for a 12 year old to learn and you will see it explode.

Make Scala, Easy ! Make Scala, Fun ! This is essential to opening the young minds interested in Computer Programming.

Also!

Why isn't there a native Graphic Scala Lib like Python's Tkinter?

Not everybody wants to be a "Big Data" Mining Engineer.

If Scala can produce graphics from the Java Swing library and experimental ScalaFX graphics lib, then isn't it time for Scala to have it's own native Graphic Library that is at the least as capable as Tkinter for Python.

There is no better feeling than the liberating emotion you get from creating programs, games and Apps on your own PC. Let the Power of Scala out.

Make it easy enough for Kids to learn and get out of the way!

创建者 Philip L

Sep 04, 2016

Tremendous course.

Explanations can be terse at times, especially after going over quizzes (where you may only follow what is going along if you successfully solved the quiz, otherwise you may miss important insight), but on the whole, lectures are very strong and help you gain a working understanding of functional programming.

The assignments are carefully crafted and really give you an opportunity to try the stuff from the lecture. Definitely felt like I learned a lot during the assignments.

I found that the last two assignments took more than the recommended 3 hours (closer to 5-6 for me), so plan accordingly.

Personally, I found that this course is even better if you read through the first 4 chapters of Functional Programming in Scala (https://www.manning.com/books/functional-programming-in-scala) before doing this course. By getting two separate, excellent explanations for the same topics, I was able to understand the material much better than just from one.

创建者 Joe H

Sep 05, 2018

Generally excellent! Reading around other online introductory resources the difference in clarity from the creator of the language, Martin Odersky in this course is very clear. I feel I have a good base to continue my learning from. To make it even better as an introduction I would have liked 3 things. Firstly more examples and exercises. along with the more challenging ones, more correct vs incorrect examples exercises, to reinforce the theoretical understanding that is so clearly present. This would translate more quickly into practical coding skills. Secondly some more tips on the development environment, specifically how to get the debugging tools working. Lastly, updating the code base to the lastest versions of Scala and SBT, so there are no deprecation warnings when building. Having said all that, I'm really happy to have found this course and excited now I've completed it to continue my learning of Scala.

创建者 Diego

Sep 29, 2017

Very interesting course, it totally changes your mindset from imperative programming. Basically it teaches you to think in terms of recursion instead of loops. Although some assignments can be difficult (and take several hours), they are helpful to understand the concepts and challenging as well so they keep you engaged to the course. Besides, the lectures are very clear and designed to give some hints on the assignments. Since Scala is based in Java, previous knowledge of Java is an advantage, but not a must. However, previous programming knowledge is a must in my opinion.

All in all, a very recommendable course to take.

创建者 Aneesh D

Sep 23, 2017

A great course. Functional programming really is a different way of thinking about programming and this course does justice to all of its core concepts. The assignments are very well structured and teach all the best practices of the paradigm.

创建者 Amit J

Sep 24, 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.

创建者 Pritam B

Sep 28, 2016

I have never worked with Scala before. But this course has not only given me, basic level introduction but also taught me advanced concepts and how to apply those concepts in real world problems.

创建者 Bogdan P

Aug 04, 2019

It's brilliant in rewiring a mind from OOP to functional thinking.

创建者 Ivan P

Jun 29, 2019

The course was awesome, but some tasks(llike huffman encoding) are really hardcore. Also, there are not that much information on implicits

创建者 Santiago N

Apr 05, 2020

Good course and well structured but oriented to advanced programming levels and requires more time than estimated in the course.

If you are a computer science student this course is perfect but it will take a lot of time since the practices are demanding. If you are working this course may be too demanding in time and effort to be devoted to after a working day.

Apart from these considerations, the contents and videos are well structured and organized, although for a first foray into scala, which is a very powerful language, I do not recommend it.

Regards.

创建者 Denis P

Nov 19, 2016

1) quite academic assignments which are hard from the 1st one and are very far from regular programmer's job

2) very quiet voice/record made it really-really hard to listen the course in subway/metro

创建者 Paola G

May 13, 2018

Define better objectives: Functional Programming principals versus Scala Syntax. Mixing the two leads to comfusing/incomplete content on both sides

创建者 Sahil E

Aug 16, 2017

Not a very good lecturer, things explained during the videos hardly feature in the test. Always felt unprepared from Week 1

创建者 Russ H

Nov 05, 2016

It was Ok. I would have liked to learn a bit more about monads / monoids etc and I found the final week a bit disconnected.

创建者 Robbie C

Feb 26, 2018

I found it assumed too much knowledge, and found the order/structure of the course to be suboptimal.

创建者 Eric L

Oct 05, 2016

Good material, but the lecture format was very dry and composed primarily of long videos.

创建者 Pavel D

Nov 19, 2017

Very boring. Too much about OPP in FP course. A lot of important FP concept are skipped.

创建者 Héctor P A

Sep 04, 2016

This course was splitted in order to get more money, and we know it

创建者 Cheslyn A

Nov 28, 2017

a bit difficult to grasp if you dont have the background knowledge

创建者 munaf s

Jul 01, 2018

good technical level. Material could have been more engaging.

创建者 Federico A G C

Jun 30, 2018

Not self-contained if you are new to functional programming