User Tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
dev:bazdebaz_scripting [2026/05/18 22:16] – [La boucle for] ssm2017dev:bazdebaz_scripting [2026/05/18 23:50] (current) – [Types de données] ssm2017
Line 1: Line 1:
 ====== Bazdebaz Scripting ====== ====== Bazdebaz Scripting ======
  
-===== La syntaxe =====+===== La Syntaxe =====
  
 La syntaxe depend du language utilisé et on retrouve souvent les memes choses. La syntaxe depend du language utilisé et on retrouve souvent les memes choses.
Line 9: Line 9:
   * les accolades { } qui contienent les instructions de la fonction.   * les accolades { } qui contienent les instructions de la fonction.
   * le point virgule ; qui finit les lignes d'instructions.   * le point virgule ; qui finit les lignes d'instructions.
 +
 +Non seulement les languages ont leur façon d'ecrire, mais en plus, la bonne séance veut qu'un code bien écrit n'a pas besoin de commentaires.
 +
 +==== Les Commentaires ====
 +Pareil, selon les languages ça change... Il y a le simple ligne et le multilignes comme :
 +<code>
 +// simple ligne
 +## simple ligne aussi
 +```
 +en python
 +multiligne
 +plein de lignes de commentaires
 +```
 +/*
 +en js, php, etc...
 +multiligne aussi
 +*/
 +</code>
 +
 +==== Les symboles clavier ====
 +Les classiques sont retour à la ligne et tabulation. Les memes touches qu'un clavier d'ordi.
 +
 +En script, elles sont souvent représentées par "\t" pour tab et "\n" pour retour à la ligne.
 +
 ===== Variables ===== ===== Variables =====
  
Line 31: Line 55:
  
 il existe plein de types de données par défaut comme int, float, str, array etc... et on peut meme en créer selon le language utilisé. il existe plein de types de données par défaut comme int, float, str, array etc... et on peut meme en créer selon le language utilisé.
 +
 +==== Les Tableaux et listes ====
 +une liste c'est comme une ligne excell et un tableau comme une feuille excell...
 +
 +Les tableaux sont plus souvent utilisés. On les voit souvent avec des crochets [ ] entre lesquels ont donne l'emplacement de la valeur qu'on veut.
 +
 +=== Les index ===
 +
 +L'index est la place d'un element dans un tableau. Il peut etre numerique ou autre selon les languages. Et quand il est numerique, il peut commencer à 0 ou 1.
 +
 +Un grand classique :
 +<code>
 +toto = new array("pomme", "poire")
 +print(toto[0]
 +</code>
 +va nous renvoyer "pomme" et selon le language, il peut donner une erreur car pomme c'est 1 pour lui...
 +
 +
 ===== Les Conditions ===== ===== Les Conditions =====
  
Line 122: Line 164:
 </code> </code>
 Ceci va planter un clou aux coordonnées x = 4 et y = 0 puis va en mettre un tout droit vers le haut tous les 1 et quand on arrive à 10, ça s'arrete. Ceci va planter un clou aux coordonnées x = 4 et y = 0 puis va en mettre un tout droit vers le haut tous les 1 et quand on arrive à 10, ça s'arrete.
 +
 +===== Les Objets =====
 +La grande analogie classique pour parler des objets, c'est les vehicules mais vu qu'on est dans le pestacle, nous allons parler d'appareil.
 +
 +  * Les objets sont représentés par une classe.
 +  * Une classe peut contenir des arguments (variables internes)
 +  * Une classe peut contenir des methodes (fonctions internes)
 +
 +Je peux définir plusieurs classes comme : appareil; visseuse, synthé, consoleSon...
 +
 +Par exemple, on va créer une classe "appareil" :
 +<code>
 +class appareil(marque, modele) {
 +  str marque;
 +  str modele;
 +  function allumer() {
 +    if (power=="ok") {
 +      return true;
 +    }
 +    return false;
 +  }
 +}
 +</code>
 +
 +puis une classe "consoleSon" :
 +<code>
 +class consoleSon(nbreEntrees, nbreSorties) {
 +  str nbreEntrees;
 +  str nbreSorties;
 +  int niveauSonore;
 +  function mettrePlusFort() {
 +    this.niveauSonore++
 +  }
 +}
 +</code>
 +
 +==== Instanciation ====
 +Une classe définit une entité qui pourra eventuellement etre instanciée.
 +
 +Si on a une console son yamaha cl3, on peut générer cette console.
 +
 +apres avoir créée la classe, on peut s'en servir comme :
 +<code>consoleAudiberty = new consoleSon(16, 8)</code>
 +Donc ensuite, on pourra utiliser :
 +<code>consoleAudiberti.mettrePlusFort()</code>
 +
 +Selon les languages c'est pas présenté pareil, donc on peut avoir toto.titi() ou toto->titi() ou toto:titi() etc... mais c'est la meme chose, ça appelle une methode d'un objet.
 +==== La visibilité ====
 +Pour les classes, arguments et methodes, on peut definir des autorisations. Les classiques sont public, private...
 +<code>
 +class consoleSon(nbreEntrees, nbreSorties) {
 +  private str nbreEntrees;
 +  private str nbreSorties;
 +  public function mettrePlusFort() {
 +    this.niveauSonore++
 +  }
 +  public function changeEntrees(quantite) {
 +    this.nbreEntrees = quantite
 +  }
 +  public function changeSorties(quantite) {
 +    this.nbreSorties = quantite
 +  }
 +}
 +</code>
 +On ne pourra plus appeler : <code>consoleAudiberti.nbreEntrees = 42</code> alors ce sera : <code>consoleAudiberti.changeEntrees(42)</code>
 +
 +==== Heritage ====
 +Dans notre cas, on voit bien qu'une console son est un appareil, donc on peut la créer à partir d'une autre classe :
 +
 +<code>
 +class consoleSon(nbreEntrees, nbreSorties) extends appareil {
 +  private str nbreEntrees;
 +  private str nbreSorties;
 +  public function mettrePlusFort() {
 +    this.niveauSonore++
 +  }
 +  public function changeEntrees(quantite) {
 +    this.nbreEntrees = quantite
 +  }
 +  public function changeSorties(quantite) {
 +    this.nbreSorties = quantite
 +  }
 +}
 +</code>
 +Sauf que cette fois, on pourra l'allumer et changer la marque ou modele...
  

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also, you acknowledge that you have read and understand our Privacy Policy. If you do not agree, please leave the website.

More information