Tuesday, September 22, 2009

Book Review: Beginning Scala

Book Review: Beginning Scala
Author: David Pollock
Publisher: Apress Inc
ISBN: 978-1-4302-1989-7


I’ve been hearing about various other languages that are available for the JVM for a while. I’ve seen presentations at my local Java user group and at conferences like NFJS and TechFest however, until now I have not really checked into what all of the excitement is about. I just received the book Beginning Scala by David Pollak and read the first 4 chapters the first night. Over the next few days I finished out the rest of the book. I like the idea of a better than Java language as I will admit Java is not perfect. It takes more code than it should to accomplish some tasks. However, is Scala the best alternative to languages for the JVM, I think that the jury is still out. Scala brings to the table a more simple construct but does have a learning curve from Java. Scala is much more functional than Ruby, has better synchronization than Groovy and includes immutability which Java should have had in the first place. The only downside that I can see (and this is just from reading the book without experience in Scala) it may be a little too terse.

The book itself is a great introduction to Scala and if you have not used a dynamic language and want to start with Scala you need this book. It takes you through, rather quickly, the installation and basic syntax of the language. I wish that this part was explained a little more but it does get its point across. I would also like to see more comparisons against Java. Since most people that would be using this book would probably know Java it would be helpful to have more comparisons especially in the syntax area. The rest of the book walks you through using collections, JDBC and Scala’s strong suit concurrency plus a few other items. I also think that the author’s writing style and grammar was excellent for this type of book. Many times you read a book in the information technology field and there is poor sentence structure and spelling mistakes. I did not see any blatant issues at least in my first pass through the book.

The last chapter (9) gives you a compelling reason to start using Scala and introduce it into your corporate culture. Working at a large company that has known to not live on the technological edge, language wise, I know what kind of uphill battle it may be to bring a new language into a company. However, this language may be on my list to work with over the next year.

No comments: