En esta sesión, me gustaría que se enfoque.
en el uso de paréntesis y corchetes.
No los mezcle.
Los paréntesis cambian la prioridad de una ejecución
en expresiones o en código,
mientras que los corchetes definen los bloques.
Cuando las expresiones en un bloque se definen, no se ejecutan.
Usted controla la ejecución. Debe enviar el mensaje value el bloque
para desencadenar la ejecución de sus expresiones
Hablemos de nuevo sobre cuándo debes usar los paréntesis.
Los usa alrededor de expresiones
si no sabe si se ejecutarán.
Por ejemplo, ¿usan if? ¿Pertenecen a la rama de una desviación?
También usa corchetes
si no sabe cuántas veces debes ejecutar
las expresiones que contiene un bloque
Por ejemplo: n timesRepeat:[self doSomething]
self doAlgo está encapsulado en un bloque.
¿Por qué? Porque debe ejecutar sus expresiones varias veces.
Debes ponerlos en un bloque para enviarles el valor del mensaje varias veces.
Otro ejemplo:esta vez, Envío el mensaje si es cierto :.
Según el receptor,
dependiendo de si ésta expresión es verdadero o falso,
usted ejecuta o no ejecuta la expresión self doSomething.
No puedo usar paréntesis ya que, si es necesario, no se ejecutará en absoluto.
Si lo pone en un bloque,
puedes decidir si le envía el valor del mensaje.
Esto es lo mismo pero con whileTrue :.
Es lo mismo con el bloque receptor y el bloque pasado como un parámetro.
Dependiendo de si la evaluación devuelve el valor booleano verdadero o falso,
debe ejecutar una vez, varias veces, o ni siquiera en absoluto
la expresión self doSomething: Se debe poner en un bloque.
Hagamos un pequeño ejercicio.
Si le doy las dos siguientes expresiones,
repeat from 1 to: n self doSomething,
¿Debo usar paréntesis o corchetes?
Si escribo x ifEmpty:self doSomething,
¿Debo usar paréntesis o corchetes?
Le daré las respuestas.
En ambos casos, debe usar corchetes.
En el primer caso, si quieres repetir self doSomething,
tienes que enviar el valor del mensaje a este bloque varias veces.
En el segundo caso, x ifEmpty:,
si x no está vacío, no deberías ejecutar self doSomething.
Si x está vacío, debes hacerlo.
En resumen, vimos en este curso
que no debere confundir paréntesis y corchetes.
Los paréntesis tratan de cambiar el orden. de cálculo en una expresión.
Los corchetes son sobre congelar
expresiones
y para controlar su ejecución o incluso para ejecutarlos varias veces.