L’idée de cet article remonte à la conférence donnée par Alex Snaps lors de l’édition 2012 de Devoxx France et intitulée « Programmation concurrente en Java dans la pratique ». Initialement, je pensais uniquement développer un peu plus en profondeur certains des points clefs abordés au cours de cette présentation, en particulier le fonctionnement de l’instruction Compare-and-Swap (CAS). Mais, lecture après lecture, il m’est apparu une vision du fonctionnement de la machine virtuelle Java complètement différente de celle que je m’étais figuré jusqu’alors. Je vous propose donc de commencer par un rapide tour d’horizon du Java Memory Model avant d’évoquer le contenu de cette conférence.

Récemment, une énième discussion a enflammé les esprits sur les forums techniques. Vous savez bien, c’est une discussion qui démarre sur l’état de l’art et qui se termine en considérations sans fins sur les qualités comparées avec un “vieux langage” que-sur-des-cas-précis-il-ne-sera-jamais-dépassé… C’est un fait que l’écosphère Java souffre actuellement d’une offre pléthorique (Struts/Stripes, Tapestry, JSF, […]

Au royaume du NoSQL, Apache Cassandra tient une place de choix Apache Cassandra est une base de donnée distribuée conçue pour géer de larges volumes de données sur des grappes de serveurs d’entrée de gamme. Son architecture complètement distribuée lui permet de jouir d’une scalabilité horizontale linéaire et d’une forte tolérance aux pannes (‘high availability’). […]

Dans le cadre de son partenariat avec PrimeFaces , Ippon Technologies organise les 20, 21 et 22 juin une formation exceptionnelle dans ses locaux, avec Çağatay Çivici ! Çağatay est membre de l’expert group JSF, fondateur et développeur principal de PrimeFaces, et membre du comité de management d’Apache MyFaces. Il a animé de nombreuses conférences […]

Maintenant que nous connaissons un peu l’historique de HTML5 et de Flex (voir l’article précédent, publié hier), intéressons-nous à leur productivité. La productivité, c’est la capacité pour un ou plusieurs développeurs de produire un logiciel utilisable dans un temps donné. La productivité peut s’appuyer sur différents aspects du développement : d’abord l’environnement de programmation lui-même, mais […]

L’actualité récente du RIA (Rich Internet Application) a connu des remous (cf. La mort annoncée de Flex ?), et cela n’est pas probablement pas terminé. Ce marché s’appuie sur l’émergence de nouveaux langages et cadres de développements innovants autant que sur celle de nouveaux supports très hétérogènes (smart phones, tablettes, etc.) dont les capacités ne cessent […]