<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Commentaires sur : Scala, partie 1</title>
	<atom:link href="http://www.touilleur-express.fr/2010/03/08/scala-partie-1/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/</link>
	<description>Blog sur Java, J2EE, Scrum,Apple,iphone par Nicolas Martignole</description>
	<lastBuildDate>Mon, 06 Sep 2010 17:47:29 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>Par : Jean-Michel Bea</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3157</link>
		<dc:creator>Jean-Michel Bea</dc:creator>
		<pubDate>Tue, 23 Mar 2010 18:06:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3157</guid>
		<description>Désolé j&#039;ai un peu raté mes balise &lt;a&gt; :(&lt;/a&gt;


&lt;strong&gt;Message de Nicolas :&lt;/strong&gt; c&#039;est réparé ;-)</description>
		<content:encoded><![CDATA[<p>Désolé j&#8217;ai un peu raté mes balise <a> <img src='http://www.touilleur-express.fr/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </a></p>
<p><strong>Message de Nicolas :</strong> c&#8217;est réparé <img src='http://www.touilleur-express.fr/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Jean-Michel Bea</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3156</link>
		<dc:creator>Jean-Michel Bea</dc:creator>
		<pubDate>Tue, 23 Mar 2010 18:03:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3156</guid>
		<description>@Rod
Utiliser JPA en scala est tout a fait possible. Il faut juste prendre en compte les particularités de JPA, variables non finales (adieu les val bonjour les var), utiliser les collections java et non scala, etc.
Lift a d&#039;ailleurs un module JPA (preuve que ça marche) &lt;a href=&quot;http://wiki.liftweb.net/index.php?title=Lift_and_JPA_(javax.persistence)#JPA_in_Scala&quot; rel=&quot;nofollow&quot;&gt;voir ici&lt;/a&gt;

Le framework play a un module scala &lt;a href=&quot;http://www.playframework.org/modules/scala&quot; rel=&quot;nofollow&quot;&gt;voir ici&lt;/a&gt;

L&#039;annotation @BeanProperty permet d&#039;être compatible avec bien des frameworks marchant sur la convention getter/setter.</description>
		<content:encoded><![CDATA[<p>@Rod<br />
Utiliser JPA en scala est tout a fait possible. Il faut juste prendre en compte les particularités de JPA, variables non finales (adieu les val bonjour les var), utiliser les collections java et non scala, etc.<br />
Lift a d&#8217;ailleurs un module JPA (preuve que ça marche) <a href="http://wiki.liftweb.net/index.php?title=Lift_and_JPA_(javax.persistence)#JPA_in_Scala" rel="nofollow">voir ici</a></p>
<p>Le framework play a un module scala <a href="http://www.playframework.org/modules/scala" rel="nofollow">voir ici</a></p>
<p>L&#8217;annotation @BeanProperty permet d&#8217;être compatible avec bien des frameworks marchant sur la convention getter/setter.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : judu</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3154</link>
		<dc:creator>judu</dc:creator>
		<pubDate>Tue, 23 Mar 2010 10:30:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3154</guid>
		<description>Je ne comprend pas, en quoi c\&#039;est mieux de ne pas avoir de getter/setter ? Autant, si on le fait à la flex ou on définit des droits d\&#039;écriture et de lecture sur les méthodes, ou à la Eiffel qui n\&#039;autorise jamais l\&#039;écriture, et qui autorise la lecture uniquement aux cibles demandées.

Je n\&#039;ai pas encore regardé ça de plus près, mais le peu qui y est fait se poser des questions…</description>
		<content:encoded><![CDATA[<p>Je ne comprend pas, en quoi c\&#8217;est mieux de ne pas avoir de getter/setter ? Autant, si on le fait à la flex ou on définit des droits d\&#8217;écriture et de lecture sur les méthodes, ou à la Eiffel qui n\&#8217;autorise jamais l\&#8217;écriture, et qui autorise la lecture uniquement aux cibles demandées.</p>
<p>Je n\&#8217;ai pas encore regardé ça de plus près, mais le peu qui y est fait se poser des questions…</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : PIA Blog / Productivity by Design &#187; Notre Revue de presse (16/03/2010)</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3102</link>
		<dc:creator>PIA Blog / Productivity by Design &#187; Notre Revue de presse (16/03/2010)</dc:creator>
		<pubDate>Tue, 16 Mar 2010 08:18:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3102</guid>
		<description>[...] de programmation fonctionnelle. Le blog&#160;le Touilleur Express en fait une bonne présentation. Consulter la première partie de l&#8217;article Consulter la deuxième partie de l&#8217;articleMesurer la qualité de votre code avec Sonar 2.0Une [...]</description>
		<content:encoded><![CDATA[<p>[...] de programmation fonctionnelle. Le blog&nbsp;le Touilleur Express en fait une bonne présentation. Consulter la première partie de l&#8217;article Consulter la deuxième partie de l&#8217;articleMesurer la qualité de votre code avec Sonar 2.0Une [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Le Touilleur Express &#187; Blog Archive &#187; Scala, partie 2</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3085</link>
		<dc:creator>Le Touilleur Express &#187; Blog Archive &#187; Scala, partie 2</dc:creator>
		<pubDate>Thu, 11 Mar 2010 16:48:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3085</guid>
		<description>[...] Scala, partie 1  [...]</description>
		<content:encoded><![CDATA[<p>[...] Scala, partie 1  [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : rod</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3084</link>
		<dc:creator>rod</dc:creator>
		<pubDate>Thu, 11 Mar 2010 13:58:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3084</guid>
		<description>Le langage en lui même est une chose, mais il faut ensuite pouvoir l&#039;utiliser pour développer une application complète (persistence, framework MVC, ...). J&#039;ai cru comprendre qu&#039;un des atouts de scala c&#039;est qu&#039;il permet d&#039;utiliser des librairies java. Est-ce vraiment le cas ? On trouve pas mal de tutos et d&#039;exemples sur la toile mettant en évidence les concepts du langage, mais je n&#039;ai pas vraiment trouvé d&#039;exemple d&#039;applis scala utilisant l&#039;API JPA (2.0, tant qu&#039;à faire). Le fait q\&#039;un nouveau framework MVC en scala (Lift) ait vu le jour n&#039;est pas vraiment rassurant. On ne peut dont pas réutiliser un framework java existant (et surtout éprouvé) ? S&#039;il faut ré-implémenter des équivalents pour toutes les librairies existantes dans le monde java, on retombe dans le même travers que Ruby... Et qui fait la force de Groovy. Même si je ne crois pas à l&#039;avenir des langages dynamiques (qui resteront toujours 10 à 20 fois plus lents qu&#039;un langage fortement typé et qui ne pourront jamais être aussi bien outillés dans un IDE -justement parce qu&#039;ils sont dynamiques-).</description>
		<content:encoded><![CDATA[<p>Le langage en lui même est une chose, mais il faut ensuite pouvoir l&#8217;utiliser pour développer une application complète (persistence, framework MVC, &#8230;). J&#8217;ai cru comprendre qu&#8217;un des atouts de scala c&#8217;est qu&#8217;il permet d&#8217;utiliser des librairies java. Est-ce vraiment le cas ? On trouve pas mal de tutos et d&#8217;exemples sur la toile mettant en évidence les concepts du langage, mais je n&#8217;ai pas vraiment trouvé d&#8217;exemple d&#8217;applis scala utilisant l&#8217;API JPA (2.0, tant qu&#8217;à faire). Le fait q\&#8217;un nouveau framework MVC en scala (Lift) ait vu le jour n&#8217;est pas vraiment rassurant. On ne peut dont pas réutiliser un framework java existant (et surtout éprouvé) ? S&#8217;il faut ré-implémenter des équivalents pour toutes les librairies existantes dans le monde java, on retombe dans le même travers que Ruby&#8230; Et qui fait la force de Groovy. Même si je ne crois pas à l&#8217;avenir des langages dynamiques (qui resteront toujours 10 à 20 fois plus lents qu&#8217;un langage fortement typé et qui ne pourront jamais être aussi bien outillés dans un IDE -justement parce qu&#8217;ils sont dynamiques-).</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Romain Maton</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3082</link>
		<dc:creator>Romain Maton</dc:creator>
		<pubDate>Tue, 09 Mar 2010 07:27:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3082</guid>
		<description>@Jean-Michel Bea à signaler, pour l&#039;utilisation des itérateurs internes, que les paramètres nommés peuvent être remplacés par le wild card &quot;_&quot; (paramètres nommés que si nécessaire). Les scalaistes en sont friands et on se retrouve donc face à un code qui ressemble plutôt à ça :

&lt;code&gt;(1 to 11).filter(_%2==0).reduceLeft(_+_)&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>@Jean-Michel Bea à signaler, pour l&#8217;utilisation des itérateurs internes, que les paramètres nommés peuvent être remplacés par le wild card &laquo;&nbsp;_&nbsp;&raquo; (paramètres nommés que si nécessaire). Les scalaistes en sont friands et on se retrouve donc face à un code qui ressemble plutôt à ça :</p>
<p><code>(1 to 11).filter(_%2==0).reduceLeft(_+_)</code></p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Alexandre Thiel</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3081</link>
		<dc:creator>Alexandre Thiel</dc:creator>
		<pubDate>Mon, 08 Mar 2010 21:33:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3081</guid>
		<description>Je pense que le succès de Scala, si succès il y a, viendra plutôt par la qualité des frameworks et apis qui seront proposés que par la syntaxe du langage lui même car celle ci est assez difficile d&#039;accès pour un débutant...
Est-ce que Scala au travers de lift par exemple apporte un vrai plus de le développement web en terme de productivité et de maintenabilité ? Il ne faut pas oublier que ce qui nourri les développeurs c&#039;est essentiellement du web et de l&#039;informatique de gestion !</description>
		<content:encoded><![CDATA[<p>Je pense que le succès de Scala, si succès il y a, viendra plutôt par la qualité des frameworks et apis qui seront proposés que par la syntaxe du langage lui même car celle ci est assez difficile d&#8217;accès pour un débutant&#8230;<br />
Est-ce que Scala au travers de lift par exemple apporte un vrai plus de le développement web en terme de productivité et de maintenabilité ? Il ne faut pas oublier que ce qui nourri les développeurs c&#8217;est essentiellement du web et de l&#8217;informatique de gestion !</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Raphaël Lemaire</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3080</link>
		<dc:creator>Raphaël Lemaire</dc:creator>
		<pubDate>Mon, 08 Mar 2010 21:08:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3080</guid>
		<description>Je n&#039;aime pas trop ces réflexions sur le &quot;développeur lambda&quot;. 

C&#039;est vrai que j&#039;ai vu des gens galérer à écrire une boucle, mais je n&#039;aime pas trop l&#039;idée d&#039;un DSI dans son bureau qui se dit &quot;mes gars sont trop nuls pour apprendre Scala&quot;. Je pense qu&#039;à peu près tout le monde peut tout apprendre avec le temps, même si certain apprennent moins  vite et/ou ont plus de retard.

On peut aussi avoir plusieurs niveaux de programmation, dans un application/SI polyglotte : un niveau &quot;facile&quot; en java ou autre langage simple (à inventer ?) et un niveau &quot;avancé&quot; en Scala pour le code complexe où ce langage sera utile.

Je pense que le langage est populaire dans notre communauté parce que nous sommes très attaché au typage statique fort. Groovy et Ruby nous troublent plus.

Pour ce qui est de la lisibilité, on peut écrire du brun dans n&#039;importe quel langage (bon c&#039;est plus facile en PHP ou Perl qu&#039;en java certes) et je m&#039;attends à l&#039;apparition d&#039;équivalents de PMD et checkstyle pour Scala assez rapidement. Il y a aussi une phase d&#039;apprentissage :  «(0/:l)(_+_)» est relativement clair quand on connait Scala.</description>
		<content:encoded><![CDATA[<p>Je n&#8217;aime pas trop ces réflexions sur le &laquo;&nbsp;développeur lambda&nbsp;&raquo;. </p>
<p>C&#8217;est vrai que j&#8217;ai vu des gens galérer à écrire une boucle, mais je n&#8217;aime pas trop l&#8217;idée d&#8217;un DSI dans son bureau qui se dit &laquo;&nbsp;mes gars sont trop nuls pour apprendre Scala&nbsp;&raquo;. Je pense qu&#8217;à peu près tout le monde peut tout apprendre avec le temps, même si certain apprennent moins  vite et/ou ont plus de retard.</p>
<p>On peut aussi avoir plusieurs niveaux de programmation, dans un application/SI polyglotte : un niveau &laquo;&nbsp;facile&nbsp;&raquo; en java ou autre langage simple (à inventer ?) et un niveau &laquo;&nbsp;avancé&nbsp;&raquo; en Scala pour le code complexe où ce langage sera utile.</p>
<p>Je pense que le langage est populaire dans notre communauté parce que nous sommes très attaché au typage statique fort. Groovy et Ruby nous troublent plus.</p>
<p>Pour ce qui est de la lisibilité, on peut écrire du brun dans n&#8217;importe quel langage (bon c&#8217;est plus facile en PHP ou Perl qu&#8217;en java certes) et je m&#8217;attends à l&#8217;apparition d&#8217;équivalents de PMD et checkstyle pour Scala assez rapidement. Il y a aussi une phase d&#8217;apprentissage :  «(0/:l)(_+_)» est relativement clair quand on connait Scala.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Julien Ponge</title>
		<link>http://www.touilleur-express.fr/2010/03/08/scala-partie-1/comment-page-1/#comment-3079</link>
		<dc:creator>Julien Ponge</dc:creator>
		<pubDate>Mon, 08 Mar 2010 15:37:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.touilleur-express.fr/?p=3237#comment-3079</guid>
		<description>Scala est un langage très intéressant pour un développeur avancé, aucun doute là-dessus.

J&#039;ai cependant de gros doutes sur sa capacité à etre utilisable auprès de développeurs lambda. Scala est un langage pour le moins dense, et il n&#039;est pas toujours facile de relire le code, surtout lorsque du fonctionnel est utilisé. Scala a un authentique risque de se C++-iser.

Scala risque donc de rester confiné aux projets pointus où les compétences des équipes sont de très bon niveau. Pour le reste, Scala a peut être une chance dans des projets classiques si on se limite à l&#039;utiliser dans un sous-ensemble objet pour sa syntaxe plus compacte ...</description>
		<content:encoded><![CDATA[<p>Scala est un langage très intéressant pour un développeur avancé, aucun doute là-dessus.</p>
<p>J&#8217;ai cependant de gros doutes sur sa capacité à etre utilisable auprès de développeurs lambda. Scala est un langage pour le moins dense, et il n&#8217;est pas toujours facile de relire le code, surtout lorsque du fonctionnel est utilisé. Scala a un authentique risque de se C++-iser.</p>
<p>Scala risque donc de rester confiné aux projets pointus où les compétences des équipes sont de très bon niveau. Pour le reste, Scala a peut être une chance dans des projets classiques si on se limite à l&#8217;utiliser dans un sous-ensemble objet pour sa syntaxe plus compacte &#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
