Jump to content

Decided to learn Scala

Go to solution Solved by madknight3,

If you're comfortable learning the syntax and libraries as you go then perhaps you'll want to focus more on learning the functional paradigm. If you're new to functional programming, it has it's own way of doing things when compared to the Object Oriented paradigm and it can take a while to adjust to the new way of thinking.

 

I don't know if "Scala for the Impatient" covers functional programming well or not as I haven't read it. Based on the table of contents, it seems like it certainly covers a lot of things, including some functional aspects of Scala, so it might but I can't confirm.

 

I've heard that "Functional Programming in Scala" is a really good book for learning functional programming although again I haven't read it myself so I can't confirm.

 

I'm not aware of any "build x in scala" type tutorials, I'm sure they are out there if you search around enough but there's no guarantee they will be good. You might be better off picking out your own projects to build and then asking Scala devs for advice on improvements.

 

In terms of coding style, you can google for things like "Scala best practices" and see what people have to say. A couple examples are

Hi guys and gals, I've decided to pick up learning Scala, and so far, I've picked up a little bit already, but I'm finding it difficult to find some practical learning materials. Right now, I'm reading through the book "Scala for the Impatient"  (Which is me to a tee), but any tutorials or learning materials I've found are all the same old "this is the syntax, here are functions you can do out of the box, Scala is great, etc" . I've not found much in the ways of practical examples, like making a full (basic) program to do something simple to show me how I could accomplish certain things, or even make my code style a little better. Any pointers would be appreciated, thank you

Link to comment
https://linustechtips.com/topic/684039-decided-to-learn-scala/
Share on other sites

Link to post
Share on other sites

19 minutes ago, Nicholatian said:

Learning the finer aspects of any language family will be a lot easier if you reach out for it socially. Talk to other Scala devs, ask them for their opinions, talk with them about projects and look at their code… a good programmer is a social programmer at least to some extent. You will pick up so many little but important things by idling in IRC channels on Freenode, seriously ;)

Honestly, my main idea with learning it was to just throw myself into it. That worked when I decided to learn WPF after relying on windows forms in C# for so long. Scala is a bit of a jump for me though so far. Mostly, it's getting used to the syntax, and what functions are available to use. I do have the Scala documentation downloaded locally, so that will help when I want to look into things. I think for now, Scala for the Impatient will be enough learning material to get me started, now that I've read through a bit more of it

Link to comment
https://linustechtips.com/topic/684039-decided-to-learn-scala/#findComment-8793970
Share on other sites

Link to post
Share on other sites

If you're comfortable learning the syntax and libraries as you go then perhaps you'll want to focus more on learning the functional paradigm. If you're new to functional programming, it has it's own way of doing things when compared to the Object Oriented paradigm and it can take a while to adjust to the new way of thinking.

 

I don't know if "Scala for the Impatient" covers functional programming well or not as I haven't read it. Based on the table of contents, it seems like it certainly covers a lot of things, including some functional aspects of Scala, so it might but I can't confirm.

 

I've heard that "Functional Programming in Scala" is a really good book for learning functional programming although again I haven't read it myself so I can't confirm.

 

I'm not aware of any "build x in scala" type tutorials, I'm sure they are out there if you search around enough but there's no guarantee they will be good. You might be better off picking out your own projects to build and then asking Scala devs for advice on improvements.

 

In terms of coding style, you can google for things like "Scala best practices" and see what people have to say. A couple examples are

Link to comment
https://linustechtips.com/topic/684039-decided-to-learn-scala/#findComment-8796501
Share on other sites

Link to post
Share on other sites

1 hour ago, madknight3 said:

If you're comfortable learning the syntax and libraries as you go then perhaps you'll want to focus more on learning the functional paradigm. If you're new to functional programming, it has it's own way of doing things when compared to the Object Oriented paradigm and it can take a while to adjust to the new way of thinking.

 

I don't know if "Scala for the Impatient" covers functional programming well or not as I haven't read it. Based on the table of contents, it seems like it certainly covers a lot of things, including some functional aspects of Scala, so it might but I can't confirm.

 

I've heard that "Functional Programming in Scala" is a really good book for learning functional programming although again I haven't read it myself so I can't confirm.

 

I'm not aware of any "build x in scala" type tutorials, I'm sure they are out there if you search around enough but there's no guarantee they will be good. You might be better off picking out your own projects to build and then asking Scala devs for advice on improvements.

 

In terms of coding style, you can google for things like "Scala best practices" and see what people have to say. A couple examples are

Thanks so much. I'll definitely look into Functional Programming in Scala after I'm finished with Scala for the Impatient. Functional programming does interest me, but I feel like I'm gonna need to forget about a lot of stuff I already know while learning it, having come from a heavy OOP background with C#. But I have read that it can be very powerful, not so much as C++ (which I tried and failed miserably to learn), but potentially more so than Java or C#. Plus there's the added benefit of accessing Java code from Scala and vice versa.

Link to comment
https://linustechtips.com/topic/684039-decided-to-learn-scala/#findComment-8796958
Share on other sites

Link to post
Share on other sites

13 minutes ago, MatazaNZ said:

Thanks so much. I'll definitely look into Functional Programming in Scala after I'm finished with Scala for the Impatient. Functional programming does interest me, but I feel like I'm gonna need to forget about a lot of stuff I already know while learning it, having come from a heavy OOP background with C#. But I have read that it can be very powerful, not so much as C++ (which I tried and failed miserably to learn), but potentially more so than Java or C#. Plus there's the added benefit of accessing Java code from Scala and vice versa.

Both functional programming and object oriented programming have their place. It's good to be familiar with each of them and then you get to choose the techniques that you think best fits a given situation. Many popular languages, like C# and Scala, are multi-paradigm and include both functional and object oriented features (just not always to the same extent).

Link to comment
https://linustechtips.com/topic/684039-decided-to-learn-scala/#findComment-8797076
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×