3psilon website

slogan


Vous êtes ici : Accueil » Créations

>>Nagol

27 juillet 2006
Auteur(e) : 

Présentation

Nagol est un logiciel de communication réalisé en TCL/TK. Il a pour but de démontrer la puissance de ce langage.

TCL/TK

Tool Command Language / ToolKit graphical

Ce language fut créé en 1990 par John OUSTERHOUT de l’Université de Berkeley.

C’est un language dit de "collage" permettant d’attacher plusieurs applications ensemble.

C’est un langage interprété mais compilé à la volée depuis la version 8.0. La version actuelle est Tcl 8.3.

Avantages de TCL/TK

-  langage interprété plutôt facile d’apprentissage (surtout si vous connaissez déjà un shell unix)
-  grande portabilité : multiples plates-formes (Unix, Gnu/Linux, HP-UX, Sun-Solaris, OS/400, NT, Mac/OS, Win95/98...)
-  gratuité
-  syntaxe simple et richesse des commandes de base
-  extensibilité : il est possible d’écrire de nouvelles commandes en C et de les ajouter à la librairie
-  outils de haut niveau pour la partie graphique (de nombreux "widgets" ou objets graphiques inclus dans Tk)
-  très nombreuses extensions ou outils complémentaires disponibles sur Internet - interfacé avec de nombreuses bases de données (cf. oratcl, tclodbc, ...)
-  utilisation possible de tk avec d’autres langages : notamment perl, python ou c
-  intégration avec les navigateurs internet ("Tclet", équivalents des applet Java)
-  fonctions réseaux (socket) intégrées très élégamment au langage
-  faciliter d’intégration de tcl dans une application existante,
-  très grande robustesse du langage

Inconvémients de TCL/TK

-  le langage n’est pas en GPL => moins grande dynamique du langage que le python ou le perl,
-  il n’est pas possible de définir de vrais structures en tcl (au sens C du terme).
-  Cela peut nuire à la lisibilité des programmes et limite la taille de ce que l’on peut programmer.
-  On peut se tourner vers les extensions objets du tcl pour avoir ces fonctions
-  il manque une IDE libre avec un déboggueur intégré pour faciliter la prise en main par les débutants.

Nagol

L’exemple que je propose à été réalisé en 24 heures, sachant que je ne connaissait ni la syntaxe ni les commandes. C’est pour cela que je n’ai pas développé une interface graphique compliqué, néamoins celle ci pourra s’intégrer facilement dans le code.

Je l’ai nommé NagoL, c’est un client-serveur qui permet de communiquer avec d’autre NagoL. Toute la configuration se réalise en ligne de commandes.

Les principes sont :

-  socket en ecoute ( Serveur )
-  socket(s) pour connections chez les autres NagoL ( Client(s) )
-  Gestion des contacts
-  Gestion des connections
-  Gestion des données de communication

L’interface se présente comme ceci :

(GIF)

La démarche est la suivante :

Vous démarrez une socket pour le serveur. Vous ajoutez des correspondants. Vous sauvegardez. Vous vous connectez chez les correspondants qui ont réalisé les mêmes manipulations. puis... vous communiquez.

Voici le premier utilisateur. Il effectue les paramétrages, puis il tente de se connecter. Si un des correspondants est en écoute, la connection sera réussie. Son système est Windows XP.

(GIF)

Voici le deuxième utilisateur. Il effectue les mêmes paramétrages et se connecte. Son système est Linux Suse 9.

(GIF)

Les deux utilisateurs sont connectés, ils peuvent dorénavant communiquer.

Il est nécessaire de connaître les adresses IP :PORT des utilisateurs.

Il reste beaucoup de travail sur cette application, par exemple le crypatge de données ou encore l’utilisation d’un firewall, néanmoins le principe est bien de démontrer toute le puissance de ce langage, qui possède une prise en main aisée.

Vos commentaires sur cet article

  • Nagol

    26 août 2006, par boulepate62
    En français ont dit langage est non language :-/

Formuler un commentaire


3psilon (c) 2003

[W3C CSS Validator] [W3C XHTML Validator] [W3C WAI AAA]