Pharo, c'est un système vivant que vous allez pouvoir scripter au vol. Pharo est sous licence MIT, vous allez pouvoir partir avec et faire ce que vous voulez dans le f... Maintenant, ça ne veut pas dire que vous allez pouvoir comprendre la syntaxe juste en lisant ce transparent, on va avoir plusieurs séances où on va décrypter et vous perm
rer l'ensemble de ce qu'il y a dans Pharo.
On va voir les éléments syntaxiques principaux. On va voir qu’il y a trois sortes de messages. Et puis, on va voir la syntaxe sur les blocks qui est un élément esse... ber''. Elle a un argument.
Par exemple, je vais avoir des définitions locales de variables avec les bar
créer des choses nouvelles qui nous permettent d'avoir un avantage compétitif, par exemple, et des busin... e un langage qui est utilisé par des gens pour pouvoir faire de l'argent et vivre de leurs programmes. I... y a des "success stories", vous pouvez aller les voir sur le site Web https://pharo.org/success/
Je vous engage à le faire parce que ça permet de voir ce que les gens font avec, je suis souvent étonné
e pratiquement tout Pharo, en fait. Ce qu'il faut voir, c'est que dans Pharo, vous avez principalement t... ute la syntaxe Pharo, pratiquement. Ce qu'il faut voir, c'est que la syntaxe de Pharo hérite de celle de... st de minimiser le nombre de parenthèses et on va voir ça à l'œuvre. On prend un exemple. On prend une t... inaires et des messages à mots-clefs. Donc, on va voir ça. Les messages unaires, en gros c'est un receve
ns de représenter le monde ====
D'abord, il faut voir qu'il n'y a pas un modèle central et unique du mo... ées à ce risque spécifique.
Comme on peut le percevoir ici, on va avoir différents modèles pour modéliser une même chose.
Maintenant, il y a différentes faço... bre de procédures. Il n'y a pas la possibilité d'avoir deux procédures qui ont le même nom et qui auraie
la baignoire de votre voisin, etc. Ce qu'il faut voir, c'est qu'une classe va spécifier toutes les vari... au qui est utilisé. Après, chaque baignoire va pouvoir être un peu différente.
La classe va également *... nt exécutées. Cela permet de **factoriser** et d'avoir en un seul endroit le comportement pour toutes le... sse va décrire l'état que tous les objets vont pouvoir avoir. Elle ne va pas dire la valeur d'un état de
n général, dans votre vie de programmeur, de concevoir des applications de manière plus élégante ou plus... de fichiers ou ce genre de choses.
Ce qu'il faut voir, c'est que le cours n'est parfois pas linéaire, o... es mini projets. Pour vous motiver, ce qu'il faut voir c'est qu'après deux semaines du MOOC, vous aurez ... nous, donc on est trois collègues, ce qu'il faut voir c'est qu'on est expert en programmation-objet, mo
llections ======
Dans cette séquence nous allons voir les éléments essentiels de la hiérarchie des collections en Pharo.
Vous allez voir que Pharo est riche du point de vue des différent... t, il est plus riche que ça en Pharo. Vous pouvez voir qu'il y a plein de classes. Elles héritent toutes... ne pour l'ensemble des collections. Et puis on va voir celles qui sont en gras, on voit les expliciter u
e vous avez une liste de contacts. Un contact va avoir un état qui sera l'adresse, le numéro de téléphon... rsonne que vous voulez contacter. Un contact va savoir comment s'afficher à l'écran et va interagir, par... exécuteront des méthodes et les méthodes vont pouvoir accéder et modifier les données. Ça, c'est un poi... er à l'écran et laisser une trace au sol. Il faut voir que différents objets peuvent comprendre le même
ode, c'est comme une recette de cuisine. Je vais avoir une suite d'instructions à suivre et à exécuter. ... mais c'est le même principe. **La méthode** va pouvoir accéder à l'état propre de l'objet. C'est une par... nel. On veut que la chose soit faite et non pas savoir comment elle est faite. Ça a une influence, après... lise ce pour quoi je l'ai invoqué." Ce qu'il faut voir, c'est que **les méthodes sont recherchées dynami
té et d'égalité**. Il peut être difficile de percevoir la différence. On peut illustrer cela par l'image... va modifier l'environnement ou l'objet.
Il faut voir que **différents objets peuvent comprendre le mêm... de, c'est une séquence d'instructions qu'on va pouvoir exécuter**.
La différence entre un message et un... e quoi, et la méthode, le comment.
Donc on peut avoir un message et plusieurs méthodes. Je l'ai montré.
ocessus fils. On a un bout de code qu'on voudrait voir exécuter dans un autre processus.
<code java>
Th... n()'' et son contenu, c'est le code qu'on veut pouvoir exécuter dans un processus fils: ici, c'est ''thi... e celle où ce code se trouve.
En Pharo, on va pouvoir constater que la syntaxe est beaucoup plus simple... processus fils.
En Pharo, c'est ce qu'on va pouvoir faire grâce au message fork. Donc c'est un **mess
eurs ======
On va revenir sur les collections et voir comment est-ce qu'on peut les parcourir facilemen... alk, les fermetures lexicales, qui leur permet d'avoir une syntaxe qui est proche de celle de Pharo.
<c... anipuler un dictionnaire ou on n'a pas envie de savoir comment sont représentées les clefs, les valeurs,... e, mais s'il n'y en a pas alors on aimerait bien avoir une valeur par défaut. C'est l'itérateur ''detect
Les variables ======
Dans cette séquence, on va voir les variables et les différents types de variable... ention de nommage par une lettre minuscule. On va voir les différents types de variables locales qui exi... nil,
* self,
* super,
* thisContext.
On va voir à quoi correspondent ces mots réservés. **true** ... MOOC. On l'expliquera plus tard. Il faut juste savoir que c'est une pseudo variable qui existe.
Mainte
iter la syntaxe Pharo, c'est-à-dire qu'on va la revoir quasiment entièrement sur un exemple concret, l'e... issue du monde réel. On va analyser le code et revoir tous les points syntaxiques de Pharo à travers ce... es HTTP. ci, un premier point (ligne 1), on peut voir que ZnClient, c'est une classe donc ça commence p... sages en utilisant des cascades. Et puis, on peut voir en fait quelque chose qu'on avait déjà vu, c'est