File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Scala and the fly likes Required knowledge to read Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Languages » Scala
Bookmark "Required knowledge to read "Programming Scala"" Watch "Required knowledge to read "Programming Scala"" New topic
Author

Required knowledge to read "Programming Scala"

Marco Ehrentreich
best scout
Bartender

Joined: Mar 07, 2007
Posts: 1282

Hi Venkat,

could you tell a little bit about the required knowlede to read (and of course understand) your book? Should one already be very familiar with Scala to be able to understand everything? Well, obviously some knowledge will be required to understand anything But how much is this? Does the book address ONLY Scala's usage for concurrent programming or is there a general introduction to Scala, too?

Marco
Venkat Subramaniam
Author
Ranch Hand

Joined: Jan 28, 2008
Posts: 79
Hi Marco,

Please refer to the following thread for my comments on the focus of the book:
http://www.coderanch.com/t/457957/Scala/What-s-book-place-among

As far as prerequisites, here is what I have said in the book:

"My objective in writing this book is to get you up to speed on Scala
so you can use it to write concurrent, scalable, expressive programs.
There is a lot you need to learn to do that, but there is a lot more you
don’t need to know as well. If your objective is to learn everything that
there is to learn about Scala, you will not find that in this book. There is
already a book called Programming in Scala [OSV08] by Martin Odersky,
Lex Spoon, and Bill Venners that does a great job of introducing the
language in great depth. What you will see in this book are essential
concepts that you need to know to start using Scala.
I assume you are quite familiar with Java. So, you will not learn basic
concepts of programming from this book. However, I do not assume
you have knowledge of functional programming or the Scala language
itself—you will learn that in this book.
I have written this book for a busy Java developer, so my objective is
to make you comfortable with Scala quickly so you can start building
parts of your application with it really soon. You will see that the con-
cepts are introduced fairly quickly but with lots of examples."
Burk Hufnagel
Ranch Hand

Joined: Oct 01, 2001
Posts: 814
    
    3
Venkat Subramaniam wrote:There is already a book called Programming in Scala [OSV08] by Martin Odersky, Lex Spoon, and Bill Venners that does a great job of introducing the language in great depth.

I saw "Programming in Scala" a couple of months ago and it looked interesting. I was concerned though that it doesn't cover the current release of Scala and I didn't know how much of the book would no longer be relevant. It sounds like most of it is still worthwhile. Would you comment a little more on this? Are you recommending it as a follow up book for people who read "Programming Scala" and want to get deeper into the language?

Thanks,
Burk


SCJP, SCJD, SCEA 5 "Any sufficiently analyzed magic is indistinguishable from science!" Agatha Heterodyne (Girl Genius)
Marco Ehrentreich
best scout
Bartender

Joined: Mar 07, 2007
Posts: 1282

I already have a copy of Martin's book and although I haven't yet read it completely, I'd say it's definitely worth reading regardless if you are new to programming at all or if you're new to Scala programming. It's very nicely written and explains all the details of Scala. Of course this doesn't mean that Venkat's book is not worth reading, too

Marco
Burk Hufnagel
Ranch Hand

Joined: Oct 01, 2001
Posts: 814
    
    3
Marco,
I appreciate the info, can you speak to how much of Martin's book is still applicable to the new version of Scala?
Burk
Marco Ehrentreich
best scout
Bartender

Joined: Mar 07, 2007
Posts: 1282

Hi Burk,

as you already know I'm new to Scala, too. I've got some experience with Java and other languages and technologies, so I can hopefully judge what the book can give you

As I already wrote Martin's book is really well written and easy to read and follow. Yet there are lots of information which may be completely new to you. General ideas from functional programming languages, Scala features and the mix of object oriented and functional paradigms unique to Scala. I didn't know much more than the very basics of functional programming before I read about Scala thus there are a lot of things I've never heard before. And of course there are other things which are specific to Scala. And you probably have never seen the mix of OOP and functional programming before.

Anyway, most ideas and examples for the said topics above are really general concepts you should be familiar with. Of course there are also details about the exact syntax for language features explained but it's not a "Scala for dummies" book which only teaches you new keywords or symbols I must admit that I don't know details about changes in latest Scala versions but I'm pretty sure that you don't have to focus on a specific Scala version to learn about gneral concepts like closures, higher order function, traits etc.

As you show quite some interest here and already have a lot of experience with Java and others I'm sure you can use the documentation available on the internet to learn about new, small language changes. But to understand the ideas and concepts behind Scala you can't go wrong with Martin's book. Of course, I'm definitely going to check out Venkat's book, too

I don't know if this was helpful information for you. But if you're not yet very familiar with functional programming in general and Scala the book is definitely worth reading without worrying of small language changes between different vesions. As Venkat already pointed out you don't have to use all Scala features at one to move to Scala but I guess you are curious like me and at least you'd like to read about the possibilites Scala offers for you.

If you have any specific questions about the content of the book feel free to ask Besides, I guess almost everyone seriously trying to learn more about Scala has read this book Maybe Venkat has, too?

Marco
Burk Hufnagel
Ranch Hand

Joined: Oct 01, 2001
Posts: 814
    
    3
Marco,
Thanks for the info. Judging by Venkat's comment above -
There is already a book called Programming in Scala [OSV08] by Martin Odersky, Lex Spoon, and Bill Venners that does a great job of introducing the language in great depth.
- I'm pretty sure he's read it.

I'd heard it was a good place for learning more in depth - the philosophy of the language and such - and I appreciate you confirming it.

Thanks
Burk
Marco Ehrentreich
best scout
Bartender

Joined: Mar 07, 2007
Posts: 1282

Yes, Burk, I can absolutely confirm this statement! The author(s) really take care to show not only examples and syntax rules for the Scala language but instead explain clearly the reasoning behind each concept and what advantages you can get from them. They also show which philosophy is better suited in which situation and don't try to convince the reader that you should only the functional paradigms or something like that. If you really want to learn and understand Scala I'm sure you won't be disappointed with Martin Odersky's "beginners bible". From Venkat's information given in the posts here I suppose both books should be seen complementary. It's up to you to decide if you want to know only the most important things about Scala or if you are intrested in all the details.

Marco
Burk Hufnagel
Ranch Hand

Joined: Oct 01, 2001
Posts: 814
    
    3
Cool. Looks like another book to add to the reading list.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Required knowledge to read "Programming Scala"