Notice
Messages: Composition and Precedence
- document 1 document 2 document 3
- niveau 1 niveau 2 niveau 3
Descriptif
Dans ce cours, nous allons aborder la manière de composer des messages et de voir comment marche la précédence, c'est-à-dire qui prend le pas par rapport à un autre. Si on regarde, la question qui se pose c'est "Qu'est-ce qui se passe quand j'ai une séquence de messages unaires?" Là, j'ai écrit l'expression suivante "1000 factorial class name". Il se trouve que ça s'exécute exactement de la même manière que si j'avais mis toutes ces parenthèses et on voit que c'est embêtant d'avoir toutes ces parenthèses. Ce que le système va faire, c'est que quand vous avez des messages qui sont d'un même niveau, ça veut dire binaires, unaires ou à mots-clefs, ça marche dans les trois cas, il va toujours les évaluer de gauche à droite…
Intervention
Thème
Documentation
Dans la même collection
-
[Live] GTInspector 1: Inspect and Interact with Objects
CassouDamienDucasseStéphaneFabresseLucDans cette vidéo, je voudrais vous montrer l'inspecteur et comme on l'utilise.
-
[Live] Nautilus 1: First Meet with the Code Browser
CassouDamienDucasseStéphaneFabresseLucDans cette vidéo, je voudrais vous montrer quelques éléments simples de Nautilus, et je vous montrerai des éléments un peu plus compliqué dans la suite des vidéos qui seront relatives au browser de
-
Booleans and Conditions
CassouDamienDucasseStéphaneFabresseLucDans cette séquence, nous allons voir les booléens et les conditions en Pharo. Donc en fait, il existe deux objets booléens, true et false sauf que true, en fait c'est l'unique instance de la case
-
Understanding Messages: Sequence and Cascade
CassouDamienDucasseStéphaneFabresseLucDans ce cours, je vais vous parler de deux points, qui sont la séquence et la cascade d'expression que vous allez retrouver constamment en Pharo. Donc l'idée, c'est que vous allez pouvoir avoir,
-
The Essence Of Dispatch through an Exercise
CassouDamienDucasseStéphaneFabresseLucDonc là c'est une séquence un peu particulière, ça va être des questions pour préparer des exercices pour la semaine prochaine. Cette séquence est la première des séquences sur les réflexions qu'on
-
Introduction to Blocks
CassouDamienDucasseStéphaneFabresseLucDans cette séquence, je vous présente les blocks. Les blocks sont des sortes de méthodes anonymes aussi appelées des fermetures lexicales. Elles sont partout dans Pharo. Elles constituent la base
-
[Live] Nautilus 2: Packages, Tags and Groups
CassouDamienDucasseStéphaneFabresseLucDans cette vidéo, je voudrais vous montrer 2, 3 astuces de Nautilus, donc commençons par l'ouvrir. Donc la première des choses c'est que vous voyez des packages avec des triangles et des packages
-
Understanding Messages
CassouDamienDucasseStéphaneFabresseLucOn va maintenant commencer à rentrer un peu plus dans le vif du sujet, en particulier de la syntaxe. Ce cours, c'est essentiellement comment vous allez aborder la syntaxe des messages qui sont
-
Parentheses vs Square Brackets
CassouDamienDucasseStéphaneFabresseLucDans cette séquence, nous allons voir les booléens et les conditions en Pharo. Donc en fait, il existe deux objets booléens, true et false sauf que true, en fait c'est l'unique instance de la case
-
[Live] Finding Methods with Finder
CassouDamienDucasseStéphaneFabresseLucJ’aimerais vous montrer comment on utilise le Finder pour trouver de l'information. Donc le Finder c'est un outil que vous allez trouver dans le menu Tools, donc Finder. Imaginons que je veuille
-
[Redo] Coding a Counter in the Debugger
CassouDamienDucasseStéphaneFabresseLucDans cette séance, j'ai envie de vous montrer comment on doit utiliser le debugger pour programmer différemment. On va ré-implémenter l'application counter mais d'une manière différente, avec un flow
-
Loops
CassouDamienDucasseStéphaneFabresseLucDans cette séquence, nous allons parler des boucles dans Pharo. Les boucles sont des messages qu'on va envoyer à des objets. En fait, il existe plein de types de boucles différents. C'est des messages
Avec les mêmes intervenants et intervenantes
-
Introduction to Blocks
CassouDamienDucasseStéphaneFabresseLucDans cette séquence, je vous présente les blocks. Les blocks sont des sortes de méthodes anonymes aussi appelées des fermetures lexicales. Elles sont partout dans Pharo. Elles constituent la base
-
[Live] Nautilus 3: Inheritance view
CassouDamienDucasseStéphaneFabresseLucDans cette vidéo, je voudrais vous montrer une astuce aussi avec Nautilus. Petite remarque en passant, Nautilus c'est le nom du sous-marin de Jules Verne dans "20 000 lieues sous les mers", qui permet
-
[Live] Spotter 1: Find and Browse a Class
CassouDamienDucasseStéphaneFabresseLucJe voudrais vous montrer comment browser très rapidement le code d'une classe avec Spotter. Pour obtenir Spotter il faut faire shift enter, et on va taper le nom de la classe Point, là je peux choisir
-
Inheritance and Lookup: DoesNotUnderstand:
CassouDamienDucasseStéphaneFabresseLucBienvenue dans cette quatrième séquence sur l'héritage et le lookup. Dans cette séquence nous allons voir ce qui se passe quand l'algorithme de lookup ne trouve pas une méthode correspondante à un
-
[Live] Nautilus 6: An overview of Refactorings
CassouDamienDucasseStéphaneFabresseLucDans cette vidéo, j'aimerais vous montrer que Nautilus propose des refactorings. Donc qu'est-ce que c'est qu'un refactoring ? C'est une opération qui va transformer du code en préservant son
-
Reflection: Basic Introspection
CassouDamienDucasseStéphaneFabresseLucDans cette séquence on va voir la réflexion. Donc on va aussi discuter de la capacité d'introspection dans Pharo et pourquoi c'est intéressant. Donc un système réflexif, la réflexion se décompose en 2
-
Did You Really Understand Super?
CassouDamienDucasseStéphaneFabresseLucDans ce cours, on va commencer à voir si finalement vous avez bien compris ce qu'on a dit dans les autres cours. En particulier sur super, là l'objectif est de vous faire vraiment réfléchir et j'ai
-
[Live] Using the Pharo Launcher to manage your Pharo images
CassouDamienDucasseStéphaneFabresseLucJe voudrais vous montrer le Pharo Launcher. Pharo Launcher c'est un outil qui a été développé indépendamment de Pharo et qui, à terme, va prendre la place de Pharo App qu'on a vu dans l'autre session
-
A Journey in Pharo: A Bright Future
CassouDamienDucasseStéphaneFabresseLucVoici le dernier cours de ce voyage initiatique au sein de Pharo, et je vais conclure un petit peu l'ensemble des cours. Donc ce qui est important de voir c'est que votre plus grand effort est fini.
-
Pharo Vision
CassouDamienDucasseStéphaneFabresseLucDans cette séance, je voulais vous montrer un petit peu quelle est la vision qui est derrière Pharo, pourquoi est-ce que les gens participent et pourquoi est-ce que les gens font Pharo ? Ca vous
-
[Live] Finding Methods with Finder
CassouDamienDucasseStéphaneFabresseLucJ’aimerais vous montrer comment on utilise le Finder pour trouver de l'information. Donc le Finder c'est un outil que vous allez trouver dans le menu Tools, donc Finder. Imaginons que je veuille
-
Parentheses vs Square Brackets
CassouDamienDucasseStéphaneFabresseLucDans cette séquence, nous allons voir les booléens et les conditions en Pharo. Donc en fait, il existe deux objets booléens, true et false sauf que true, en fait c'est l'unique instance de la case