Chevron Left
Functional Program Design in Scala に戻る

スイス連邦工科大学ローザンヌ校(École Polytechnique Fédérale de Lausanne) による Functional Program Design in Scala の受講者のレビューおよびフィードバック

4.5
2,978件の評価
510件のレビュー

コースについて

In this course you will learn how to apply the functional programming style in the design of larger applications. You'll get to know important new functional programming concepts, from lazy evaluation to structuring your libraries using monads. We'll work on larger and more involved examples, from state space exploration to random testing to discrete circuit simulators. You’ll also learn some best practices on how to write good Scala code in the real world. Several parts of this course deal with the question how functional programming interacts with mutable state. We will explore the consequences of combining functions and state. We will also look at purely functional alternatives to mutable state, using infinite data structures or functional reactive programming. Learning Outcomes. By the end of this course you will be able to: - recognize and apply design principles of functional programs, - design functional libraries and their APIs, - competently combine functions and state in one program, - understand reasoning techniques for programs that combine functions and state, - write simple functional reactive applications. 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. This course is intended to be taken after Functional Programming Principles in Scala: https://www.coursera.org/learn/progfun1....

人気のレビュー

RP
2016年9月14日

This is a university degree course which takes enormous effort to complete. But still its beond the programming course range giving you whats not possible to google or learn practical way. Thanks!

ES
2018年3月17日

Thank you for this exciting course! I did the FP in Scala course a few years ago and decided to do the full certification now. I am looking forward to the next courses in the specialisation.

フィルター:

Functional Program Design in Scala: 401 - 425 / 493 レビュー

by Marcin Z

2019年3月24日

Better than the first part!

by Dumitru C

2016年7月1日

Classical in type and value

by Hitesh

2018年11月26日

Good Course. Recommended

by Pietro G

2017年9月2日

Actors were missing.

by Riccardo C

2017年4月17日

High quality course

by Kyoung-Seop P

2017年1月6日

Very good! ^^

by Aleksey D

2017年1月28日

too easy

by Luciano C

2017年6月16日

V

by Michael J A

2016年6月18日

If you're new to Scala and/or functional programming, then the material covered here will be very valuable.

However, I was fairly disappointed. Much of the coursework was pulled from the original "Functional Programming in Scala" course, as well as the "Principles of Reactive Programming" course. Indeed, there are references to material from those courses that are not actually included here, which must be a little confusing for anyone who hasn't taken those courses. The first two assignments came, respectively, from those two courses also.

There wasn't as much emphasis on architecting a functional program as I might have expected from the title. Instead, the course focused more on using functional principles when implementing computations. The coverage of functional reactive programming (FRP) was very good, but again, I would have expected more of a 30,000ft overview of how to design an application using FRP.

In short, I felt this course to be a little incoherent and disjointed.

by Michael R

2019年10月23日

This course was a bit of a mixed bag - some great bits and some really badly designed bits!

Seems it was originally two courses which have been mashed together, and the joins are pretty rough...

First week on Streams/Lazy Lists was great, but seemed to actually have originally been the final week of the functional programming principles course.

The circuits example was interesting, but could have done with an assignment to bed in the knowledge - the actual assignment had little bearing on this material.

The futures section was interesting, but there appeared to be some missing sections due to the course reorganisation, so it didn't flow especially well. Again, some more concrete examples and an associated assignment would have been appreciated.

Definitely a useful course, but be prepared to put up with the rough edges!

by Porter J

2017年5月21日

Martin Odersky's lectures are excellent as always. The first few weeks of material were excellent and very helpful--particularly the coverage of the advantages and disadvantages of mixing mutable state with functional programming. My issue with this course is the the final week's materials are patched together and seemingly incomplete--some of the videos switched to a different lecturer, who was referencing concepts not covered in the course. I was able to figure things out enough to complete the assignments, but based on the exercises in the course I wouldn't feel comfortable implementing functional reactive programming in a production environment--this was a good introduction to the concepts, but the solution in the programming assignments feels very makeshift and is not something I have a lot of trust in.

by Isaac L

2016年11月6日

The content was pretty good, but I'm annoyed that I paid for a disjointed collection of videos that were previously available for free. This is just a pared down (worse) version of an older class, "Principles of Reactive Programming", which I started but didn't finish three years ago. The videos and assignments are the same, but some of them have been removed, so there are confusing discontinuities. Some of the videos refer to a "next lecture" or "previous lecture", which isn't included in this class. The last week of the class should have been split across multiple weeks, and I'm disappointed I never got to do an assignment on latency or futures.

That being said, I'd still recommend taking any class taught by Odersky, and I learned a fair amount.

by Joan S S

2016年8月26日

The subject is really interesting, and some of the shown approaches really "close to the edge".

However, there is too much "cut and paste" from other courses. this makes this one difficult to follow. It has lost "coherence". The cross-references don't make any sense, and the assignments fall too short with regard to the content. I think the remake from the original "Functional Programming ___ in Scala" + "Reactive Programming" has not been as successful as it should. This new format within Coursera (everything shorter, more expensive and with less people involved) is not as good as the original one. Maybe this is the only way they can make enough money to sustain the whole... but the "more idealistic" start was far more pleasant.

by Leitner C S E S

2017年10月4日

The course material/presentation gets bit sloppy, particularly the secondary presenter and his slides during week 4 are confusing. And the exercises might ensure that everyone can pass and even might work as reference material for self-study, but it would have been more useful to ask for "ground up, practical implementations", instead of filling in something like five trivial lines of code per assignment. C.f. to the Functional Programming for Scala book, which is a lot more helpful towards understanding some of the concepts being elaborated here. Overall, this course seems to address a too wide audience in too little time.

by James M

2017年3月1日

Good topics, just poorly structured. I found the exercises easier than the previous module, but the lectures were worse. I ended up watching 1 lecture on week 3 and again on week 4 -- none of the other lecture content was relevant to the exercises. Would have loved a decent explanation of a Monad and their usages, but it really felt out of place in this course (no exercises on Monads).

After completing the first two courses I don't feel like I would bother with the next ones. The course content is far to academic and I would get far more from a book.

by P.K

2017年4月12日

It is a good course. I took it after Functional Programming Principles in Scala. I learned new things....But..... The reason i rate 3 is that:

1) Programminng Assignments doesn't realy correspond to the Lecture material.

2) The Lecture material becomes very complicated in some Lectures because of Lack of Explanation (e.g: Lec 4.3. There are still many disambiguations of how the Prof. creates some models (again lack of explanation)

3) Too many unanswered critical questions remain in the forum!!!

Anyway it's worth your time.

by Agustín B S

2017年1月9日

I have seen reference to the previous second course on the specialization, 'Functional Reactive Programming in Scala', comparatively this one looks much easied down, I am hoping to find the excluded content on the third course. Sessions by Erik surely are a 100% pertinent and consistent within the full syllabus they were conceived for, but inserted here they break a bit the overall discourse, in my view. Got the feeling that the exercises cover only a little part of the theoretical content exposed in the lectures.

by Shkodran G

2017年1月14日

Last week's content was thrown together from various bits & parts from the Functional Reactive Programming in Scala (or whatever the name of the predecessor of this course was).

Overall, I felt that there was a lot of ground covered in a short amount of time - the course would have been better if it was longer, and week 4 material would have benefitted from being stretched into two or three weeks. Rather than reuse parts of the old course it would have been better to have new content purpose built for this course.

by Omar E

2017年10月16日

The course is well structured although it is a bit short. I was expecting to dig deeper into more asynchronous models. A better explanation of Actors would have helped. Also I felt that the exercises were missing the point of the lectures.

The lectures by Erik Meijer felt out of place and poorly connected to the previous content. Similarly, his lectures were tedious to follow. I would have preferred more on-scree time of the slides instead of the shared screen.

by Brad H

2017年10月29日

As a continuation from the previous course, "Function Programming Principles in Scala", I found this less focused -- especially with respect to the title. For instance, at times there did not seem to be a strong match between the programming assignment and the lecture material. Regardless, I still learned quite a bit and Dr. Martin Oderksy is an excellent video presenter. I am still surprised by how powerful Scala can be in a terse yet readable manner.

by Laura W

2018年6月12日

The course was really unstructured. The assignments were too easy and did not cover the material from the course. Several times there were further classes on a certain topic promised, which this course does not include. Week 4 was especially confusing. Concepts were used, which weren't introduced before. The end seemed rather abrupt. Overall the content from this course is really small compared to the previous course of the Scala Specialization.

by JURAJ M

2017年2月17日

This course was significantly less instructive than the first. Assignments did not lead me as constructively through the material. Also the few videos with the other lecturer in week 4 are very confusing, hard to understand, or even appreciate in light of all the other material. I do not think that I have understood futures and am glad it was not required for the last assignment as the answers aren't present in the material.

by Carl S

2017年5月26日

The lectures were not very illuminating and did not tie in closely with the programming assignments. There was very little focus on design. This course did nothing to answer the questions of why, if you were building a real-world software product, you should use Scala in particular or functional programming in general. It merely served to provide a few more examples of FP patterns without demonstrating their value.

by Valerio M

2016年9月20日

Interesting course. Not sure it really covers functional programming design, it feels more of a brief introduction. The material is clearly a cut & paste from a different (and I guess longer) course. There were references to non-existing weeks, and to subjects that were not part of this course. That felt a bit cheap, considering that courses are not really free anymore. Positive experience, but not exceptional.

by Алексей П

2019年9月6日

The topic very interesting as well as course assignments. But not so good as progfun1. It looks like some topics were thrown away. E.g. quick check assignment is not in a right place. Assignment about Streams is too complicated and does not illustrate streams well. There is not enough information about design - e.g. more patterns and guidance when to use mutable state with oop princilpes and when to use fp.