Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Interact.jl, la nouvelle manière de réaliser des sites Web interactifs en Julia
Pour accéder à des codes de calcul

Le , par dourouc05

43PARTAGES

14  0 
Julia est un langage de programmation principalement prévu pour des applications scientifiques, où la quantité de calculs à effectuer est très importante. D’habitude, ce genre de code s’écrit dans un langage assez statique, comme C, C++ ou Fortran, pour profiter de leur performance ; cependant, Julia se focalise sur une approche plus dynamique (comme Python ou MATLAB, plus prévus pour les interfaces que le calcul intensif) tout en gardant la performance à l’exécution. Julia arrive à rassembler ces deux côtés, la performance et la dynamicité.

Cet aspect dynamique a déjà été exploité pour créer des interfaces graphiques par le Web qui exploitent des codes de calcul. Par exemple, Escher.jl proposait de créer des interfaces composables, développées d’une manière similaire à Shiny en R. Ce paquet n’est plus maintenu depuis 2016 et n’a de remplaçant digne de ce nom que depuis peu, avec Interact.jl nouvelle génération (ce projet s’appelait InteractBase.jl jusqu’il y a peu avant d’être renommé et de remplacer l’ancien Interact.jl).


Ce nouveau paquet propose de créer des interfaces graphiques sur le Web pour des applications scientifiques. Il se construit par-dessus WebIO.jl, une couche d’abstraction pour l’interaction à travers les protocoles du Web : on peut ainsi développer un seul code pour l’utiliser dans un navigateur Web traditionnel (à travers le serveur Mux.jl), dans une application de bureau créée avec Electron (grâce à Blink.jl) ou encore dans Juno, l’environnement de développement de référence actuel pour Julia, ou IJulia.

Interact.jl utilise HTML5 et ses composants pour ses widgets, ce qui permet de couvrir facilement un grand nombre de fonctionnalités (sélection de couleur, de date, d’heure, de texte, etc.). Des frameworks CSS sont utilisés pour le style, qui est alors entièrement abstrait du code de l’interface : pour le moment, on peut utiliser Bulma et UIkit, mais aussi utiliser d’autres frameworks (UIkit a été ajouté en moins de deux cents lignes de code) ou encore intégrer son propre code CSS pour modifier un framework existant. Vue.js/.jl est utilisé pour la logique JavaScript et la synchronisation avec le script Julia.

https://vimeo.com/273565899


Voir aussi : le tutoriel officiel, la liste des widgets disponibles, la documentation.

Sources : ANN: InteractBase, a redesign of Interact to create and style web apps in Julia, Sputnik project, second update.

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Supernul
Membre actif https://www.developpez.com
Le 29/06/2018 à 12:10
Question difficile à répondre. Je pense qu'il y a plusieurs paramètres qui feront que Julia remplacera partiellement, totalement ou pas des langages comme R, Python ou Matlab :
  • le support du monde pro: sans usage dans le monde pro, pas de salut
  • son usage dans les formations : si python a percé, c'est notamment grâce à son usage dans les formations au lycée, à l'université et dans les classes prépas
  • les bibliothèques disponibles : aujourd'hui il reste difficile de rivaliser avec celles de R pour les stats par exemple
  • son indépendance aux autres langages : il me semble que le système de production des graphiques nécessite des bibliothèques d'autres langages comme matplolib de python
  • des IDE plus adaptés que Juno. Une des forces de R est notamment Rstudio
  • un meilleur système de bibliothèques avec de vraies grosses bibliothèques mises à jour comme numpy, scipy, scikit en Python ou tidyverse en R. Julia est encore en développement et trouvé une bibliothèque à jour et qui rassemble les fonctions nécessaires dans un domaine restreint est loin d'être aisé. Pour un test sur de l'analyse de données, j'ai par exemple du chargé 8 ou 9 bibliothèques Julia là où 3 à 4 suffisent pour R ou Python.


[coup de gueule ON]
et arrêter de ne faire prendre des vessies pour des lanternes (tous les langages le font). Benchmarks R vs Python à base de boucles for (R adore les boucles for ) et traitement sur des tableaux bidimensionnels sans numpy ni pandas.
[coup de gueule OFF]
1  0 
Avatar de Matthieu76
Membre éclairé https://www.developpez.com
Le 28/06/2018 à 14:28
Pensez-vous qu'à terme le Julia finira par remplacer des languages tel que R ou Mathlab voir carrément Python ?
0  0 
Avatar de Madmac
Membre éprouvé https://www.developpez.com
Le 10/11/2018 à 1:54
Citation Envoyé par Matthieu76 Voir le message
Pensez-vous qu'à terme le Julia finira par remplacer des languages tel que R ou Mathlab voir carrément Python ?
R surement à cause de sa lenteur. Mathlab ne sera pas detroné parce que les profs sont trop paresseux pour apprendre un autre environnement. C'est déjà le cas avec Python.
0  0 

 
Responsable bénévole de la rubrique HPC : Thibaut Cuvelier -

Partenaire : Hébergement Web