Dans certains accents anglais, quand on dit « two for » rapidement, ça ressemble à « two fer ». « Two-for-one » est une façon de dire que si on en achète un, on en obtient un autre gratuitement. Ainsi, l'expression « two-fer » sous-entend souvent une offre deux pour un.
Imagine une boulangerie qui propose une offre de fête où on peut acheter deux cookies pour le prix d'un (« two-fer one ! »). Tu acceptes l'offre et, très généreusement, tu décides d'offrir le cookie supplémentaire à quelqu'un d'autre dans la file d'attente.
Ta tâche consiste à déterminer ce que tu diras au moment de donner le cookie en trop.
Si tu connais le nom de la personne (par exemple si elle s'appelle Do-yun), tu diras :
One for Do-yun, one for me.
Si tu ne connais pas le nom de la personne, tu diras you à la place.
One for you, one for me.
Voici quelques exemples :
| Nom | Dialogue |
|---|---|
| Alice | One for Alice, one for me. |
| Bohdan | One for Bohdan, one for me. |
| One for you, one for me. | |
| Zaphod | One for Zaphod, one for me. |
En Pharo, les classes sont des objets qui peuvent avoir des méthodes d'instance et des méthodes de classe. Cependant, contrairement à HelloWorld, les tests de TwoFer ont été écrits pour appeler des méthodes d'instance. En général, les méthodes de classe servent à construire de nouveaux objets (comme un constructeur dans d'autres langages).
Quand on parle des méthodes, il est utile de savoir qu'une méthode qui n'a aucun paramètre est appelée méthode unaire, et qu'une méthode qui prend plusieurs paramètres, chacun délimité par un mot se terminant par « : », est appelée méthode à mots-clés.
Il existe aussi un troisième type de méthode, dite binaire, qui ne prend qu'un seul paramètre et utilise un ou plusieurs symboles comme nom (généralement un symbole mathématique, comme +, -, &, etc.).
Inscris-toi sur Exercism pour apprendre et maîtriser Pharo avec 50 exercices, et un vrai mentorat humain, le tout gratuitement.