40 0 3MB
UNIVERISTE ABDELMALEK ESSAADI Faculté des Sciences et Techniques de Tanger Département Informatique
Master Systèmes Informatiques et Réseaux
Le Langage TCL/TK PROGRAMMATION RÉSEAU
Dr.BOUHORMA Pr.ANOUAR
Le Langage TCL 2
Tool Command Language: Développé par :Professor John K. Ousterhout Université de California à Berkeley
Très puissant, Facile à apprendre , Dynamique; adapté à une très large gamme d'utilisations, Langage à Scripts avec syntaxe du shell UNIX, Opérations Commandes,
FST de Tanger
25/10/2010
Le Langage TCL 3
Supporté par plusieurs Plateformes (Win, Mac Os, Linux, Solaris…) Compilé interprété Peut avoir extension à C, Flexible : Extensibilité aux concepts de la POO
FST de Tanger
25/10/2010
Le Langage TCL 4
Platforme TK : kit graphique
Analogue à Awt et swing de JAVA,
Comporte des éléments basiques : widgets (boutons, zone de textes, menus,…)
FST de Tanger
25/10/2010
Le Langage TCL 5
INSTALLATION
A. Pour Windows:
ActiveTcl installation Graphique,
B. Pour Les Systèmes UNIX Ubuntu 9.04 sudo apt-get install tcl8.5 sudo apt-get install tk8.5.
FST de Tanger
25/10/2010
Le Langage TCL 6
Outil Supportant le TCL ECLIPSE Kit de developpement TCL Interpréteur : tclsh85
http://www.eclipse.org/downloads/ FST de Tanger
25/10/2010
Le Langage TCL 7
Outil Supportant le TCL ECLIPSE
FST de Tanger
25/10/2010
Le Langage TCL 8
Outil Supportant le TCL KOMODO
http://www.activestate.com/komodo FST de Tanger
25/10/2010
Le Langage TCL 9
Outil Supportant le TCL Tkcon
FST de Tanger
25/10/2010
Le Langage TCL 10
Outil Supportant le TCL NS2 (Network Simulator)
FST de Tanger
25/10/2010
Le Langage TCL 11
Quelques Commandes : Les Commentaires #Ceci Désigne un commentaire Afficher un message puts " Ceci est un message" Initialiser une valeur set VAL 3 • Fonction Mathématiques Supportés Abs cosh isqrt sin
FST de Tanger
acos double log sinh
asin entier log10 sqrt
atan exp max srand
atan2 floor min tan
bool fmod pow tanh
ceil hypot rand wide
cos int round
25/10/2010
Le Langage TCL 12
Quelques Commandes : Exemple 1:
Exemple 3: %puts “ [expr { sqrt($Y) }]\n" Résultat? 16
% set x 1 % set w “ABCDEF“ % expr { [string length $w]-2*$x } Résultat? 4
Exemple 2: % % % %
set X 100 set Y 256 set Z [expr {$Y + $X}] set Z_LABEL "$Y plus $X est $Z"} Résultat? 256 plus 100 est 356
Exemple 4: % set A 3 % set B 4 % puts “[expr {hypot($A,$B)}]" Résultat? 05
http://www.activestate.com/activetcl/ FST de Tanger
25/10/2010
Le Langage TCL 13
Quelques Commandes : Exemple 1: set x 1 if {$x == 2} {puts "$x est 2"} else {puts "$x différent de 2"} Résultat? 1 différent de2
Exemple 2: set i 1; while {$i set position [expr 1 - $position] > set MOT [lindex « MASTER SIR" $ position] > .tog configure -text $ MOT >} % set position 0 % button .exo -text FIN -command exit % button .tog -text MASTER -command flip % pack .tog.exo
FST de Tanger
25/10/2010
Le Langage TCL La boite à outils graphique TK 19
Les Menus menubutton .mb -text Exemple -menu .mb.menu pack .mb -padx 10 -pady 10 set m [menu .mb.menu] $m add command -label Salut! -command {puts "Bonjour, M1!"} $m add check -label Boolean -variable msg -command {puts "Message = $msg"} $m add separator $m add cascade -label Programmation -menu $m.sub1 set m2 [menu $m.sub1] $m2 add radio -label C# -variable Programmation -value C# $m2 add radio -label Java -variable Programmation -value J2EE $m2 add radio -label C++ -variable Programmation -value C++
FST de Tanger
25/10/2010
Le Langage TCL La boite à outils graphique TK 20
Les Menus menu .menubar . config -menu .menubar foreach m {Fichier Edition Help} { set $m [menu .menubar.m$m] .menubar add cascade -label $m -menu .menubar.m$m } $File add command -label Quitter -command exit
FST de Tanger
25/10/2010
Le Langage TCL La boite à outils graphique TK 21
TP1 : (à rendre*) 1.Réaliser une petite interface graphique permettant de simuler une calculatrice.
2.Réaliser une application qui permet d’ exécuter la commande qui : a. b. c.
Renvoi le dossier ou chemin courant. Permet d’afficher le contenu du dossier courant. Permet d’accéder à un chemin saisie en une zone de texte,
* Le travail sera rendu au format numérique (.doc)
FST de Tanger
25/10/2010
Le Langage TCL La boite à outils graphique TK 22
TP2 : Une fois que vous installez NS2, réaliser une interface qui permet de :
1.
a. b. c.
FST de Tanger
Lancer une simulation d’un « script tcl » avec la commande ns, Lancer l’outil xgraph, Lancer le visualisateur nam.
25/10/2010
Le Langage TCL La boite à outils graphique TK 23
Les Fichiers Le Tcl permet la lecture et l’écriture dans un fichier:
set can [open "C://Exemple1.txt" w] # Mode Ecriture puts $can "Version du TCL : [info tclversion] " puts $can "Programmation réseau" puts $can " Fin du texte " close $can
FST de Tanger
25/10/2010
Le Langage TCL La boite à outils graphique TK 24
Les Fichiers Le Tcl permet la lecture et l’écriture dans un fichier: set can1 [open "c://Exemple1.txt" r] # Mode Lecture while {![eof $can1]} { gets $can1 line puts "Line: > $line