ît pas clairement. On reprendra tous ces éléments plus tard. Par contre, l'idée, c'était de vous montrer... s de messages et un objet %%String%%.
Un exemple plus compliqué, imaginons que vous vouliez prendre le ... éléments.
Après, vous avez les entiers, ils ont plusieurs représentations, mais dans ce cours, on ne v... ple 1 + 2, c'est un message. On envoie le message plus à l'objet 1 avec comme argument l'objet 2. @ pour
ntaxe juste en lisant ce transparent, on va avoir plusieurs séances où on va décrypter et vous permettre... ral un langage c'est une boîte noire, Pharo c'est plus qu'une boîte, ce n'est pas une boîte noire, c'est... et les constituants du système lui-même, mais en plus, vous allez pouvoir plonger dans cet aquarium et ... z travailler Pharo en dehors du MOOC. Donc il y a plusieurs livres qui sont tous open source, donc vous
taient dirigées par les données, d'autres étaient plus favorables aux bases de données relationnelles. I... est le désavantage de cette approche**? Il y en a plusieurs.
Le premier, c'est que la **définition est ... ais devoir modifier le code de 'pictureArea'.
En plus, je ne peux pas réutiliser la définition de l'air... re l'explicitation d'un calcul souvent de manière plus simple.
==== Décentralisation ====
L'autre pier
strings := OrderedCollection new.
</code>
Alors plusieurs choses sont à noter:
* Premièrement, ''ne... enne des chaînes de caractères. Et on n'a pas non plus le fait que ''strings'' est une collection.
Autr... va pouvoir constater que la syntaxe est beaucoup plus simple:
<code>
[ self doSomething ] fork
</code>... tart();
</code>
On voit que le code est beaucoup plus clair en Java maintenant.
===== Trois types de
s et donc on va vous en montrer quelques uns, les plus utiles.
Le MOOC ne se contente pas non plus de présenter Pharo, on va revisiter de manière profonde le... rammeur, de concevoir des applications de manière plus élégante ou plus extensible.
Vous allez travailler sur des vrais exemples dans ce MOOC et à la fin vou
urquoi? Parce qu'on sait qu'il va falloir répéter plusieurs fois l'exécution de ces expressions. On est ... de les mettre dans un block pour pouvoir envoyer plusieurs fois le message "value" à ce bloc.
Je vous ... éen Vrai ou Faux, on va devoir exécuter une fois, plusieurs fois, voire même zéro fois, l'expression "se... s puisque dans le premier cas, si on veut répéter plusieurs fois l'expression self doSomething, forcémen
angage de programmation, on a commencé en 2008 et plus ça va, plus son devenir devient excitant.
Maintenant, la plupart des sociétés font du Web avec Pharo p... vous allez voir qu'on peut faire du REST, il y a plusieurs serveurs HTTP qui sont utilisés, c'est une s... e application C dans le futur, ça sera un système plus modulaire avec des distributions qui seront valid
00 si vous en avez envie, c'est un tout petit peu plus long.
===== Règle complète de précédence =====
... nous retournera 32.
Là, c'est un exemple un peu plus funky:
<code>
Color gray - Color white = Color bl... e que black = black, donc c'est vrai.
Ici, c'est plus un exemple pour vous montrer qu'on peut aussi fai... te envoyé à la classe. La valeur retournée est le plus grand nombre que peut encoder la classe . On env
u précédent sauf que dans ce nouvel exemple, on a plusieurs expressions dans le bloc.
<code smalltalk>
... uite, on va lui envoyer des messages pour évaluer plusieurs fois ce bloc.
Je vais lui envoyer une premi... valeur 35.
On peut aussi définir des blocs avec plusieurs arguments.
<code smalltalk>
[ :x :y | x + y... de deux à trois arguments sur un block. Si on va plus loin, ça devient vite incompréhensible.
* Il va
langages.
Donc quelques-unes des collections les plus remarquables et les plus utilisées:
* **OrderedCollection** (extensible dynamiquement)
* **Array**... ections.png}}
C'est seulement un extrait, il est plus riche que ça en Pharo. Vous pouvez voir qu'il y a... nt équivalentes en Pharo. C'est juste une version plus concise permettant d'écrire plus vite.
<code sma
un survol des concepts qu'on présentera en détail plus tard. J'expliquerai ce que sont des objets, des c... our des crêpes. Je l'appelle 'makeCrepes'. Il y a plusieurs étapes. Je dois mettre du lait, des œufs, de... de, le comment.
Donc on peut avoir un message et plusieurs méthodes. Je l'ai montré. Quand vous ouvrez ... **.
Donc, la classe est une usine d'objets et en plus, une autre manière de voir, c'est que **la classe
. Elle pourra accéder aux données. Le message est plus abstrait, dans ce sens-là et moins opérationnel. ... luence, après, sur l'encapsulation. Je reviendrai plus tard là-dessus.
Le message, lui, va juste être :... me fois qu'on cherche la même chose, on la trouve plus rapidement, etc., mais **la liaison tardive est u... ntinuer à marcher. Donc, il pourra évoluer sur un plus long terme et je n'ai pas à recompiler tout le sy
3.
</code>
L'idée, c'est que souvent, vous avez plusieurs expressions qui se suivent et donc on va dev... dans la situation suivante où on aimerait envoyer plusieurs messages au même objet. Et comme on est un p... us dire "bon, là, je peux commencer à être un peu plus agile et je vais utiliser la cascade". En général... irgule qui est une casquette qui évite de répéter plusieurs fois le même receveur. Et la cascade rend la
ui va vivre dans le système informatique et qui a plusieurs propriétés.
* La première, c'est qu'elle a... portement.
* La troisième, une identité.
Et en plus, cette entité va collaborer avec d'autres pour traiter des tâches plus complexes.
Donc, prenons un exemple. Si j'ai un
va permettre de répéter l'évaluation de ce block plusieurs fois, en l'occurrence quatre fois dans cet e... message "to:by:do:" pour faire des incréments de plus que par 1. On fait des incréments ici pour contrô... r exemple, "do:" qui est finalement le message le plus courant qu'on utilise.
<code smalltalk>
|aCol|
a