Plus CD!                       Stellenmarkt   S. 62   Das Tutorial: Lose Kopplung mit Mule                     S. 71

8.09...
Bücher Magazin



David Pollak


Beginning Scala

                  Gleich nachdem „Beginnig Scala“ von David           ei...
Upcoming SlideShare
Loading in...5
×

JM 08/09 - Beginning Scala Review

867

Published on

Review of David Pollak's "Beginning Scala" in German Java Magazin.

Published in: Technology, News & Politics
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
867
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "JM 08/09 - Beginning Scala Review"

  1. 1. Plus CD! Stellenmarkt S. 62 Das Tutorial: Lose Kopplung mit Mule S. 71 8.09 Deutschland € 7,50 Österreich € 8,60 Schweiz sFr 15,80 Java Magazin Java • Architekturen • SOA • Agile www.javamagazin.de ALLE IN FOS ZU R CD-Inhalt AB SEIT E 29 Apache Commons Compress Grails 1.1.1 Spring dm 1.2 Project Mojarra Scala 2.7.5 Mule 2.2.1 Ed Burns: Secrets of Die nächste Generation der Webentwicklung 42 the Rockstar Programmers Session von der JAX 2009 Alle CD-Infos 3 Java Core OSGi on Scala DSLs mit ScalaModules 18 XML vs. Annotations Sind Annotations die erhoffte Rettung? 37 Tools Quo vadis JSF? Java-Spracherweiterung mit JetBrains MPS Interview mit Ed Burns 52 Effizient DSLs erstellen 78 Enterprise Garbage Collector Grails in Action Das unbekannte Wesen 65 Erfahrungsbericht: WerKannWann.de 56 D 45 86 7 OSGi mit Spring dm Viele Köche verderben (nicht) den Brei 24
  2. 2. Bücher Magazin David Pollak Beginning Scala Gleich nachdem „Beginnig Scala“ von David einem Chat-Server und Transaktionen auf Basis von Actors: Sehr Pollak veröffentlicht wurde, lud ich mir das aufschlussreich. druckfrische eBook herunter. Der Autor ist Vater Bisher betrachtete der Autor die Scala-Welt mit der Brille des des innovativen Lift-Webframeworks und prägt Library Consumers, für den es darum geht, die Einfachheit von die Scala Community maßgeblich. Da ich David Scala und den Komfort mächtiger Libraries zu nutzen, um sehr persönlich kenne und seine anschauliche Art zu produktiv Anwendungscode zu schreiben. In den nächsten zwei erklären sehr schätze, hatte ich hohe Erwartungen. Soviel vorweg: Kapiteln setzt David Pollak die Brille des Library Producers auf, Sie wurden voll und ganz erfüllt. der die Mächtigkeit von Scala nutzt, um Libraries und Domain Das Buch beginnt mit einer sehr gelungenen Motivation: „Wa- Specific Languages zu erstellen. Dabei werden fortschrittliche rum Scala?“ beantwortet David Pollak mit einem Abriss seiner Features wie Implicit Conversions, Mixins mit Traits, Variance, Par- Programmiererfahrungen mit C/C++, Java und Ruby/Rails. ser Combinators etc. unter die Lupe genommen. Überwiegend Wie erwartet, fiel mir sofort der lockere Schreibstil auf, ganz auf sind auch diese Kapitel sehr gelungen, einzig das Beispiel der persönliche Ansprache ausgerichtet. Ein Auszug mit Botschaft: Persistenzschicht fällt zu komplex aus. „Let's go and have some fun“. Es folgen typische erste Gehver- Das Buch endet mit dem Kapitel „Scaling Your Team“, das or- suche unter Anleitung, natürlich das obligatorische „Hello World“ ganisatorische Fragen und Soft Facts anspricht: Welche Tools? sowie ein etwas anspruchsvolleres Programm, das einige der Scala und mein Projektteam? Welche Best Practices? Und be- Besonderheiten von Scala zeigt. Für mich ist es gut dosiert, so- sonders interessant: Wie kann ich Scala in meinem Unternehmen dass Lust auf Mehr aufkommt und kein Frust über zu viel Neues. verkaufen? Anschließend eine – Originalzitat – „long and boring tour“ durch Fazit: Das Buch ist nicht nur empfehlenswert, sondern ein abso- die Skala-Syntax und grundlegende Konzepte. Aufgrund der sehr lutes Muss für alle Scala-Interessierten. Es ist inhaltlich gelungen hohen Beispieldichte und der Konzentration auf das Wesentliche und bringt alle wichtigen Grundlagen. Darüber hinaus glänzt es aus meiner Sicht, ist es aber recht kurzweilig und wiederum gut aus didaktischer Sicht: Immer genügend Tiefe, um das Interesse dosiert. Das darauffolgende Kapitel beginnt mit einem Plädo- zu wecken, aber stets so anschaulich, um „dabei bleiben“ zu kön- yer für Immutable Objects und deren Vorteile in Bezug auf Per- nen. Für mich ist „Beginning Scala“ eines der besten IT-Fachbü- formance und Concurrency. Dann wird anhand der mächtigen cher, das ich je in den Händen hielt. Viel Spaß beim Lesen! Collection-Bibliothek die funktionale Programmierung vor- und Heiko Seeberger imperativem Java-Code gegenübergestellt: Sehr überzeugend! David Pollak Beginning Scala 350 Seiten 24,95 Euro Scalas mächtiger XML-Support befindet sich aufgrund seiner Apress 2009 ISBN 978-1430219897 Nähe zu den Collections auch in diesem Kapitel und wird sehr anschaulich dargestellt. Zu guter Letzt gibt es noch ein Beispiel für Lock-freie Multi-Thread-Programmierung mittels Immutable Objects. Danach geht es um wesentliche Details der funktionalen Pro- grammierung mit Scala, u. a. um Funktionen als „echte“ Objekte, Partially Applied Functions etc. Besonders erhellend fand ich die Beispiele für Call-by-Name-Parameter und das Erstellen eigener Kontrollstrukturen. Spätestens jetzt werden die meisten Leser das Buch beiseite legen, aber nicht, weil es ihnen missfällt, son- dern weil sie soviel Enthusiasmus getankt haben, dass sie selbst in die Tasten greifen müssen. Aber das Weiterlesen lohnt sich, Anzeige denn das nächste Kapitel bringt mit Pattern Matching vielleicht DAS Scala-Feature schlechthin. Wiederum wird sehr anschaulich erklärt, wie Scala objektorientierte Strukturierung und funktiona- le Dekomposition höchst nutzbringend kombiniert. Dann kommt Concurrency mit Actors, eine Scala-Paradedisziplin, sehr aus- führlich an die Reihe. Ein Beispiel, bei dem das Listener Pattern klassisch und mit Actors implementiert wird, zeigt die Vorteile des asynchronen Actor Messaging: Synchronisierung ist nicht erforderlich, um Fehler leichter zu vermeiden. Weiter geht es mit www.JAXenter.de

×