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 !

Light Table : l'environnement de développement du futur ?

Le , par Hinault Romaric

27PARTAGES

6  2 
Chris Granger, un ancien gestionnaire de programme pour Microsoft vient de dévoiler dans un billet de blog un nouveau concept d’environnement de développement.

Le projet Light Table est une surface de développement et de simulation d’application qui élimine tous les outils et fonctionnalités encombrants dans les IDE actuels.

« Malgré le changement radical à la simplification des interfaces logicielles, le monde des outils de développement continue à réduire notre espace de travail avec de nouvelles fonctions dans chaque version » écrit Granger « Nous sommes coincés dans un monde de fichiers et d’organisation forcée. Pourquoi devons-nous rechercher un peu partout les choses dont nous avons besoin pour coder ? Pourquoi tout est juste du texte statique ».

Partant de ce constat, Granger propose une nouvelle plateforme de développement fondée sur les principes suivants :

- Le développeur ne devra jamais avoir à chercher la documentation : en passant juste le curseur au-dessus d’une fonction, l’aide s’affichera automatiquement à droite. Cela implique que le développeur n’aura plus jamais à se soucier des choses comme l’ordre des arguments.



Le développeur devra être capable de faire toutes ses recherches d’aide sur place.



- Les éditeurs peuvent être partout et tout montrer, pas seulement le texte : le principe ici est de pouvoir intégrer par exemple un jeu de course sur la surface de travail, ensuite être capable de lui poser des questions et voir l’environnement y répondre.



- Les changements doivent produire des résultats instantanés : par exemple, lors de la saisie de (+ 3 4) le code est évalué et le résultat est affiché instantanément sans autre action.



L’évaluation et la visualisation des résultats en temps réel créent un débogueur permettant de corriger les bugs et avoir un aperçu rapide du fonctionnement de son programme.



- Ecriture du code avec un mode lumière : ce mode permettra à Light Table d’afficher les fonctions utilisées à l’intérieur de celle que le développeur est en train d’écrire, ainsi que leur code source sur le côté.



- Les fichiers ne sont pas la meilleure représentation du code, juste une sérialisation pratique :

« Un peu avant de quitter l’équipe Visual Studio, je suis arrivé à la conclusion que les fenêtres ne sont pas une abstraction de ce que nous faisons. D’autres ingénieurs ont des grandes tables ou ils peuvent disperser plusieurs outils. Une table à dessin est une meilleure abstraction pour nous. Nous ne devons pas nous limiter à un mode où la plus petite unité mobile est le fichier » conclut Granger.

[ame="http://vimeo.com/40281991"]Light Table[/ame]

Un nouveau concept d’IDE assez intéressant qui permettra au développeur de se concentrer uniquement sur son code avec des gains en temps importants.

Source : Blog Chris Granger

Et vous ?

Que pensez-vous de ce nouveau concept d'IDE ?

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

Avatar de air-dex
Membre expert https://www.developpez.com
Le 17/04/2012 à 2:16
Citation Envoyé par Hinault Romaric Voir le message
Le développeur ne devra jamais avoir à chercher la documentation
Pas nouveau. Eclipse (par exemple) le fait déjà très bien avec la Javadoc

Citation Envoyé par Hinault Romaric Voir le message
Les éditeurs peuvent être n’ importe où et montrer quoi se soit, pas seulement le texte
Pratique pour tester un truc. À voir pour le reste

Citation Envoyé par Hinault Romaric Voir le message
Les changements doivent produire des résultats instantanés
Emacs le fait déjà bien avec la possibilité d'avoir le code que l'on tape dans une fenêtre et les résultats dans l'autre (+ la commande à coucher dehors pour avoir la seconde fenêtre ). Je le faisais quand j'apprenais le Scheme. Reprendre les sorties des 2 écrans, tout bien arranger et c'est bon, on a un "waouh!"

Citation Envoyé par Hinault Romaric Voir le message
Ecriture du code avec un mode lumière
Oh la jolie expression bien marketing ! J'aimerais bien voir ça avec du code propriétaire.

Citation Envoyé par Hinault Romaric Voir le message
Que pensez-vous de ce nouveau concept d'IDE ?
Ca me fait penser à une "révolution" Apple que des concepts déjà bien implantés qui sont bien relookés pour pouvoir faire des jolis "waouh!".
11  0 
Avatar de Uther
Expert éminent sénior https://www.developpez.com
Le 16/04/2012 à 17:58
La plupart de ces fonctionnalités me laissent froid. Soit ça existe déjà, soit ça me parait difficile à mettre en œuvre en dehors de cas particuliers.
6  0 
Avatar de zeyr2mejetrem
Membre chevronné https://www.developpez.com
Le 17/04/2012 à 9:27
Mouais ...

Pour l'aide, comme cela a déjà été dit la plupart des IDE le font déjà (du moins pour Java, PHP et C).

Pour l'interprétation directe de l'opération ultime 3+4 je ne vois pas l'intérêt à partir du moment où dans le code on travaille souvent (du moins pour ma part) avec des variables et que l'ide ne semble pas interpréter les expressions avec variables (cf. ligne du dessus dans le code exemple)...

Quant à la fonctionnalité "J'affiche le code d'une fonction fille dans une micro fenêtre à côté" il faut espérer que la fonction fille ne soit pas trop grosse ou complexe ... en plus je suis quasi sûr que cela existe en eclipse mais que personne ne l'utilise parce que c'est illisible.

bref: Au niveau de l'interface on se croirait revenu à l'époque de gwbasic et les fonctionnalités présentées me laissent aussi froid qu'un haagen dazs perdu dans le grand nord.
5  0 
Avatar de MiaowZedong
Membre extrêmement actif https://www.developpez.com
Le 25/04/2012 à 15:33
Citation Envoyé par kolodz Voir le message
Je n'en suis pas si sûr. Dans beaucoup de cas, ce n'est simplement pas possible. Car dépend d'un certains nombre d'objet instancier et modifier au file du programme.
D'ailleurs, je ne sais pas vous, mais je n'ai pas une bête de course au travail. Si je fais un développement sur une une fonction grondement en ressources, je préfère autant ne pas lancer le débogueur et coder avec mon éditeur et mon cerveau.
Je ne parle même pas des évaluation de code qui réalise des ajouts en base.(ou suppression)

J'apprécie par contre l'affichage par fonction et non par classe. Bien que cela pose un problème pour les commentaires type javadoc qui se trouve avant une fonction ou pour les variables de classe.
On dirait que le language de l'exemple n'est pas choisi au hasard: l'outil semble marqué par la philosophie des languages fonctionnels.
5  0 
Avatar de mak972
Nouveau membre du Club https://www.developpez.com
Le 16/04/2012 à 17:06
Bret Victor a présenter au CUSEC une vidéo qui s'appelle "Inventing on Principle" qui reprend les mêmes principes que ci dessus.
[ame="http://vimeo.com/36579366"]video[/ame]
2  0 
Avatar de ptah35
Membre éclairé https://www.developpez.com
Le 16/04/2012 à 19:16
Citation Envoyé par Veler Voir le message
Mouai, ça peut aller pour des gros projets, mais pas pour des gros. Je travail sur un projet avec 1,5M de lignes de codes, s'il n'est pas divisé en plusieurs fichiers, je vous raconte pas la galère pour m'y retrouver dedans
je ne pense pas qu'il ait quelque chose contre les fichiers en tant que tels et qu'il veuille mettre des millions de ligne de code dans un seul fichier, mais plutôt que ce qui est afficher dans un éditeur ne doit pas être forcement le contenu d'un fichier. Par exemple si on édite le ficher d'entête d'une classe en C++ pourquoi devrait-on avoir à ouvrir soit-même le fichier d'implémentation? Ou encore pourquoi devrions avoir tout le code complet de cinq classes alors que seule une méthode de chacune d'elle nous intéresse. Alors évidemment de simples fichiers dont les noms sont choisis par le programmeur ne feront peut-être pas l'affaire.

Personnellement, je n'aime pas les environnement qui ne me laisse pas décidé où je sauve le texte de mon code source, mais je peux comprendre son point de vue et le potentiel de sa recherche. En outre, on accepte une certaine opacité lorsqu'on utilise un tableur ou un traitement de texte, alors au fond pourquoi pas pour du code source.

Citation Envoyé par Cal67 Voir le message
Pour le Lisp, ça à l'air génial. Ça remplacera sûrement Emacs
Un superbe outil pédagogique en effet!
2  0 
Avatar de Bousk
Rédacteur/Modérateur https://www.developpez.com
Le 25/04/2012 à 15:37
Citation Envoyé par Traroth2 Voir le message
Tu vois les choses à trop court terme. Bon, normalement un développeur devrait avoir une bête de course, justement. Mais même si ce n'est pas le cas, c'est une question de 2 ou 3 ans pour que des machines d'entrée de gamme soient capables de faire tourner ce genre de fonctionnalité sans aucun problème.
Ha que j'aimerais bien.
Seulement ce que je constate quand je demande à mes collègues et où je suis passé c'est qu'une entreprise sera prête à mettre des dépenses folles pour équiper les commerciaux de la dernière tablette à la mode, alors que les développeurs se font incendier quand ils demandent ce qu'ils foutent sous un windows XP avec un bi-proc 1.4Gh et 2Go de ram.
2  0 
Avatar de Cal67
Candidat au Club https://www.developpez.com
Le 16/04/2012 à 18:40
Pour le Lisp, ça à l'air génial. Ça remplacera sûrement Emacs
2  1 
Avatar de Camille_B
Membre confirmé https://www.developpez.com
Le 16/04/2012 à 21:28
Ah deux ou trois trucs près c'est pas loin d'un développement LISP sous Emacs.
1  0 
Avatar de pyros
Membre éprouvé https://www.developpez.com
Le 17/04/2012 à 9:35
Certaines choses me laissent doucement indifférente, d'autre me font bondir de ma chaise...

Pourquoi tout est juste le texte basique ?
Car c'est le format le plus générique et le plus portable qui soit, cf philosophie UNIX.

Les changements doivent produire des résultats instantanés
Quid d'une boucle infinie, stackOverflow et autre joyeusetés, voir un algo tout simplement long ? Même si le système est bien géré et ne plante pas, le résultat ne sera jamais instantané.

afficher les fonctions utilisées à l’intérieure de celle que le développeur est en train d’écrire, ainsi que leur code source sur le côté
La chose la plus ignoble qui soit. Le meilleur moyen de coder en fonction de l'implémentation et non en fonction de l'abstraction...

Au final, toutes ces idées sont très sympa d'un point de vue pédagogique, mais inutilisable je pense en production. Comme cela a déjà été dit, cela tient plus de la philosophie MAC à mettre des effets whaou un peu partout qui ne sont pas toujours très utils.
1  0