En algunos acentos del inglés, cuando dices «two for» rápido, suena como «two fer». Two-for-one es una forma de decir que si compras uno, también te llevas otro gratis. Así que la frase «two-fer» a menudo implica una oferta de dos por uno.
Imagina una panadería que tiene una oferta de temporada en la que puedes comprar dos galletas por el precio de una («two-fer one!»). Aceptas la oferta y (con mucha generosidad) decides darle la galleta extra a otra persona en la fila.
Tu tarea es determinar qué dirás al regalar la galleta extra.
Si sabes el nombre de la persona (por ejemplo, si se llama Do-yun), dirás:
One for Do-yun, one for me.
Si no sabes el nombre de la persona, en su lugar dirás you.
One for you, one for me.
Aquí tienes algunos ejemplos:
| Nombre | Diálogo |
|---|---|
| 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, las clases son objetos que pueden tener métodos de instancia y métodos de clase; sin embargo, a diferencia de HelloWorld, las pruebas de TwoFer se escribieron para llamar a métodos de instancia. Por lo general, los métodos de clase se usan para construir objetos nuevos (como un constructor en otros lenguajes).
Al hablar de métodos, es útil saber que un método que no tiene parámetros se llama método unario, y un método que recibe varios parámetros, cada uno delimitado por una palabra que termina en «:», se llama método de palabra clave.
También existe un tercer tipo de método, el binario, que recibe solo 1 parámetro y usa uno o varios símbolos como nombre (normalmente uno matemático como: +, -, &, etc.).
Regístrate en Exercism para aprender y dominar Pharo con 50 ejercicios y mentoría humana real, todo gratis.