Précédent   Forum du club des développeurs et IT Pro > Le club des professionnels en informatique > Actualités
Actualités L'actualité des sociétés du secteur informatique
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Actualité déjà publiée
 
Outils de la discussion
Publicité
'
Vieux 30/08/2012, 10h27   #1
_skip
Expert Confirmé Sénior
 
Avatar de _skip
 
Homme
Développeur d'applications
Inscription : novembre 2005
Messages : 2 562
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : Suisse

Informations professionnelles :
Activité : Développeur d'applications
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2005
Messages : 2 562
Points : 6 398
Points : 6 398
Par défaut Typesafe obtient 14M de $ pour mettre en avant Scala

Typesafe obtient 14M de $ pour mettre en avant Scala
Un financement destiné à accroître sa popularité


Avec l'aide de fonds nouvellement obtenus de Shasta Ventures et Juniper Networks, Typesafe va intensifier la promotion du langage de programmation Scala dans le monde de l'entreprise.

Selon Mark Brewer, CEO de Typesafe, Scala était surtout utilisé par les grosses applications Web telles que Twitter, LinkedIn ou Foursquare. Mais depuis environ un an, on commence à voir de plus en plus de développeurs préférer Scala à Java pour la création d'applications de gestion traditionnelles.
Toujours selon Brewer, beaucoup d'entre eux trouveraient Scala plus léger et plus commode que Java.

Typesafe s'engage par ailleurs à continuer d'enrichir et d'appuyer l'écosystème Scala, qui compte parmi ses middlewares le framework Akka et la solution d'accès SGBD Slick.


source et article complet


Scala plutôt que java, feriez-vous le saut ?
Les java-killers sont nombreux à être apparus durant le long silence de Sun (Groovy, Xtend, Ceylon etc.), auront-ils toujours autant de sens avec les évolutions désormais plus rapides de Java ?
_skip est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 30/08/2012, 11h40   #2
ithel
Membre confirmé
 
Homme
Développeur Java
Inscription : juillet 2009
Messages : 70
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Développeur Java
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juillet 2009
Messages : 70
Points : 252
Points : 252
Citation:
Les java-killers sont nombreux à être apparus durant le long silence de Sun (Groovy, Xtend, Ceylon etc.), auront-ils toujours autant de sens avec les évolutions désormais plus rapides de Java ?
Je le pense: Oracle a sans doute l'ambition de donner un nouvel élan au langage, mais tant que la saincro-sainte compatibilité ascendante sera respectée je doute que la révolution tant attendue aura lieu. La preuve: l'introduction des lambda dans Java 8 a fait pas mal de déçus et a nécessité de faire un gros tour de passe-passe pour respecter cette fameuse compatibilité (je parle là des méthodes d'extension virtuelles...)
ithel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2012, 14h14   #3
Crazyfaboo
Membre confirmé
 
Avatar de Crazyfaboo
 
Homme
Software Engineer
Inscription : août 2004
Messages : 90
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Software Engineer

Informations forums :
Inscription : août 2004
Messages : 90
Points : 254
Points : 254
Envoyer un message via MSN à Crazyfaboo
Citation:
Envoyé par _skip Voir le message
Scala plutôt que java, feriez-vous le saut ?
J'avais déjà entendu parler de Scala et regardé un peu à quoi ça ressemblait. Maintenant je me rappelle pour quoi je n'ai pas fait le saut :
Code Java :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// Java:
public class Point {
  private double x, y;
 
  public Point(double x, double y) {
    this.x = x;
    this.y = y;
  }
 
  public double x() {
    return x;
  }
 
  public double y() {
    return y;
  }
 
  public Point(double x, double y, boolean addToGrid) {
    this(x, y);
    if (addToGrid)
      grid.add(this);
  }
 
  public Point() {
    this(0.0, 0.0);
  }
 
  double distanceToPoint(Point other) {
    return distanceBetweenPoints(x, y,
      other.x, other.y);
  }
 
  private static Grid grid = new Grid();
 
  static double distanceBetweenPoints(
      double x1, double y1,
      double x2, double y2
  ) {
    double xdist = x1 - x2;
    double ydist = y1 - y2;
    return Math.sqrt(xdist * xdist + ydist * ydist);
  }
}
et la même en Scala:
Code Scala :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// Scala
class Point(
    // adding `val` here automatically creates
    // public accessor methods named `x` and `y`
    val x: Double, val y: Double,
    addToGrid: Boolean = false
) {
  // import functions/vars from companion object
  import Point._
 
  if (addToGrid)
    grid.add(this)
 
  def this() {
    this(0.0, 0.0)
  }
 
  def distanceToPoint(other: Point) =
    distanceBetweenPoints(x, y, other.x, other.y)
}
 
object Point {
  // private/protected members shared between
  // class and companion object
  private val grid = new Grid()
 
  def distanceBetweenPoints(x1: Double, y1: Double,
      x2: Double, y2: Double) = {
    val xdist = x1 - x2
    val ydist = y1 - y2
    math.sqrt(xdist * xdist + ydist * ydist)
  }
}
Source: wikipedia.

Ok c'est plus court en Scala (d'environ 25%) mais je trouve ça vraiment moins lisible.
Evidemment, c'est une question d'habitude et il faudrait commencer par maitriser le comportement de compilation spécifique à Scala (comme la création automatique des getters ou setters), mais je trouve que le code est tout de même moins explicite (normal, moins verbeux me direz vous) avec des redondances un peu bizarres comme cette histoire d'object et de class Point. Et le coup du if (addToGrid) paumé tout seul (ie., pas dans une méthode), ça m'a bien embrouillé. ^^

Bref, ça m'attire pas trop comme langage. D'autant plus que le code produit aura les même perfos (ou similaire) que si ça avait été code en Java. Donc non, quitte à devoir réapprendre un langage, autant en choisir un vraiment différent (python, C++, Lisp ).

Ca reviendrait un peu à apprendre VB.NET ou Eiffel# alors qu'on est déjà un développeur confirmé en C# : aucun intérêt...
Crazyfaboo est déconnecté   Envoyer un message privé Réponse avec citation 13
Vieux 30/08/2012, 14h38   #4
ithel
Membre confirmé
 
Homme
Développeur Java
Inscription : juillet 2009
Messages : 70
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Développeur Java
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juillet 2009
Messages : 70
Points : 252
Points : 252
Crazyfaboo j'imagine que tu aurais tenu à peu près le même discours si tu avais programmé en C toute ta vie et qu'un beau jour tu avais regardé un morceau de code écrit dans un langage objet. J'imagine que tu te serais demandé "c'est quoi cette histoire bizarre de static, et ce this il sort d'où ?".

Donc oui, Scala est un peu difficile à appréhender pour un programmeur Java; pas parce que c'est Scala, mais parce que c'est un langage fonctionnel (en plus d'être un langage objet) et qu'on est tout simplement pas habitué à ce paradigme. Une fois qu'on a pris le temps de bien comprendre les concepts sous-jacent (currying, fonction partiellement appliquée etc) ça va tout de suite mieux. En l’occurrence, cet object "un peu bizarre" est ce qu'on appelle un compagnon. Pour faire simple il s'agit d'un singleton associé à la classe Point. Donc c'est pas de la redondance, c'est de la complémentarité: en Scala il n'y a pas de méthode ou d'attribut static.
ithel est déconnecté   Envoyer un message privé Réponse avec citation 41
Vieux 30/08/2012, 14h43   #5
Crazyfaboo
Membre confirmé
 
Avatar de Crazyfaboo
 
Homme
Software Engineer
Inscription : août 2004
Messages : 90
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Software Engineer

Informations forums :
Inscription : août 2004
Messages : 90
Points : 254
Points : 254
Envoyer un message via MSN à Crazyfaboo
Citation:
Envoyé par ithel
c'est quoi cette histoire bizarre de static
Static existe en C.
Appliqué sur une variable globale dans un fichier, il force celle-ci à n'être accessible que depuis le fichier dans lequel elle est déclarée. Une sorte de variable globale accessible par toutes les fonctions locales quoi.

Citation:
Envoyé par ithel
fonction partiellement appliquée


J'avais même pas remarqué que Scala était de la programmation fonctionnelle, forcément que je suis dérouté...
Enfin vu que la dernière fois que j'ai fait de la programmation fonctionnelle, c'était avec CAML et que j'avais pas du tout accroché, je pense pas m'y m'être tout de suite à Scala non plus. ^^
Crazyfaboo est déconnecté   Envoyer un message privé Réponse avec citation 32
Vieux 30/08/2012, 14h55   #6
ithel
Membre confirmé
 
Homme
Développeur Java
Inscription : juillet 2009
Messages : 70
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Développeur Java
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juillet 2009
Messages : 70
Points : 252
Points : 252
Autant pour moi concernant le static en C, ça remonte à loin

Donc oui je te le confirme: Scala est un langage qui mêle les paradigmes objet et fonctionnel.

Ceci dit je voudrais pas non plus faire croire que Scala est réputé difficile juste parce qu'il est fonctionnel et que c'est injuste; je sais qu'il y a des critiques qui ont été adressées par des gens qui savent vraiment de quoi ils parlent en matière de théorie des langages et qui vont au delà de cet aspect.

Bref toujours est-il que j'encourage vraiment les développeurs à y jeter un oeil: c'est une bonne opportunité pour découvrir une autre manière de programmer, c'est toujours bon à prendre.
ithel est déconnecté   Envoyer un message privé Réponse avec citation 11
Vieux 30/08/2012, 16h13   #7
tralloc
Membre confirmé
 
Inscription : février 2006
Messages : 237
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : février 2006
Messages : 237
Points : 270
Points : 270
J'aime bien le concept de scala, c'est un langage puissant.

Je ne sais pas si je serais assez bon pour employer à bon escient les deux paradigmes, mais j'ai l'impression que ça peut ouvrir beaucoup de portes.


Cela étant dit, je ne crois pas que je serais prêt à l'adopter, à moins qu'on me dise que je peux faire du jpa et des jsf en un claquement de doigt.
tralloc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/09/2012, 14h32   #8
jiacomino
Invité de passage
 
Inscription : septembre 2004
Messages : 2
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 2
Points : 0
Points : 0
Apprendre de nouveau un langage... bof même si ce dernier est interessant

on évolue vers des solutions techniques simples et rapide et on nous donne un langage complexe qui n'est pas forcement justifié avec Java

et, si nous devons le proposer chez certains de nos clients (je travaille en SSII), quel sera sa réaction ?

Scala aura peut-etre un succes d'estime, mais pour sa pérénnité, c autre chose
jiacomino est déconnecté   Envoyer un message privé Réponse avec citation 01
Réponse Actualité déjà publiée
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 22h21.


 
 
 
 
Partenaires

Hébergement Web