Transcripciones
1. Introducción al curso de programación: ¿Quieres darle a tu hijo
el mejor comienzo posible en su
viaje de programación y
equiparlo con habilidades esenciales
que darán forma a su futuro? Entonces estás en el lugar correcto. Hola. Mi nombre es
doctor Craig Bird. Soy profesor de TI con más de 30 años de experiencia
enseñando tecnología. Tengo un doctorado en hacer que el
aprendizaje sea atractivo
y efectivo. Y junto con mi hijo Joshua, hemos creado algunos de los cursos
de programación mejor
calificados,
y este es, con mucho el curso de codificación más completo y atractivo
que encontrarás en cualquier lugar. Entonces, ¿qué
aprenderá tu hijo? En este curso, tu hijo se embarcará
en un emocionante viaje para convertirse en programador
mediante el uso de Scratch, que es un
lenguaje de codificación que
convierte código
complejo basado en texto en simples bloques de lego, lo que significa que tu hijo no
necesita ninguna experiencia previa. A lo largo de este curso,
trabajaremos en un montón de proyectos
geniales que
poco a poco desarrollan habilidades, comenzando con un juego de captura de errores realmente
simple. Juego de futbol, un
Traffic Racer Game, y luego un genial juego arcade
Ski Adventure Game. Les enseñaremos a diseñar sus propios personajes,
historias y animaciones. Y para cuando
terminen este curso, tu hijo tendrá un
portafolio de juegos y aplicaciones que orgullosamente podrán exhibir
en su propia página web, cual también
le ayudaremos a construir. En este curso, enseñamos todos los fundamentos a la
programación como variables, loops, sintaxis, tipos de datos, algoritmos y un montón de otras palabras elegantes.
Pero no te preocupes. Hacemos que sea realmente
fácil de entender. Todo esto básicamente significa es que tu hijo podrá
pensar como programador. Rompiendo problemas y desarrollando soluciones del mundo real. ¿Por qué elegir este curso? Bueno, vamos a aclarar una
cosa. Este no es solo
otro curso de codificación. Este es el curso definitivo específicamente para niños
porque nos
enfocamos en hacer que los conceptos de
programación complejos sean realmente simples y
fáciles de entender. Con mis décadas de experiencia
docente y métodos comprobados,
junto con mi hijo, que ha pasado por
este mismo viaje, garantizamos que su hijo obtendrá la mejor introducción posible a la
programación. En muchos cursos de codificación, los estudiantes simplemente siguen, copiando lo que dice el
instructor. Es como, Simón suyo, hacer esto, y ellos lo hacen. Bueno, pueden terminar
con un programa genial. Realmente no
aprenden a codificar. En este curso, hacemos
las cosas de manera diferente. Le damos a su hijo
las herramientas y habilidades que necesita para
entender realmente cómo codificar. Nosotros les ayudamos a entender no
sólo lo que están haciendo, sino también por qué lo están haciendo. Y de esta manera, podrían
conectar todos los puntos. Y al final, no
sólo habrán construido un juego llamativo. Tendrán el conocimiento y confianza para crear
lo que quieran, ya sean juegos o aplicaciones o
lo que sea que puedan soñar. Y si en algún momento se sienten estancados, bueno, tienes nuestro soporte premium, es
decir, podremos ayudar a depurar sus proyectos o explicarles cualquier cosa que no
entiendan del todo. Además, está nuestro paquete de activos, que su hijo
tendrá acceso completo. Está repleto de todo lo necesario para los proyectos del curso. Piénsalo. Como un set de Lego. Proporcionamos los conjuntos principales para los proyectos
que construiremos juntos, y como beneficio adicional, son conjuntos
adicionales para explorar
completamente gratis. Este curso es tan práctico
como se pone tu hijo
estará trabajando en proyectos emocionantes desde la primera sección. No sólo hacemos que
sigan adelante. Les ayudamos a pensar por
sí mismos y aprender activamente con divertidos proyectos extra y muchos desafíos
a lo largo del curso. Padres, sabemos que
quieren lo mejor para sus hijos. La codificación es más que
solo escribir código. Se trata de fomentar la creatividad, mejorar las habilidades de
resolución de problemas y generar
confianza. Estas son habilidades que
beneficiarán a tus hijos
a lo largo de su vida, sin importar la
trayectoria profesional que elijan. Entonces, ya sea que su
hijo tenga 6 años
o incluso de 16 años,
este es el este es Entonces, ¿estás listo para empoderar a tu hijo con habilidades
para el futuro? Emocionado de verlos crear juegos y proyectos de los
que están orgullosos. Bueno, entonces, si te unes a
nosotros en este emocionante curso, estamos ansiosos por ver
qué crea tu hijo, Inscribirse ahora, y comencemos juntos en este increíble
viaje.
2. Introducción al curso de codificación: Bien, ya está.
Echemos un vistazo a la herramienta que usaremos para crear nuestros increíbles proyectos que
están aprendiendo a codificar. Si aún no lo has hecho, ve a la página web scratch Aquí es donde va a suceder toda la
acción. Y porque esta es la
primera sección del curso, voy a mantener mi cara sonriente
feliz en la esquina de la pantalla
porque quiero que
sepas que somos
humanos reales del otro lado de la computadora
enseñándote, no solo algún bot. Sin embargo, a medida que avanzamos y nos
adentramos en las partes de acción del sol donde aprenderás a construir algunos
juegos realmente increíbles, voy a esconder mi cara. Entonces realmente queremos que
te concentres en la programación
sin distracciones Pero no te preocupes porque
siempre estamos aquí y
listos para ayudarte. Pero con eso, vamos a ir. En primer lugar, tomemos un momento para entender qué es el scratch. Esencialmente, scratch es
un lenguaje de programación que ha sido
especialmente diseñado para jóvenes codificadores y
personas que solo quieren comenzar
a aprender
a codificar. Como tú. Básicamente toma
la compleja sintaxis y el texto de
lenguajes basados en texto y lo
convierte en bloques de código fáciles de
entender que hacen que la programación
sea interactiva y divertida. Ya sabes cómo puedes construir todo tipo de
cosas increíbles con bloques de lego. ¿Verdad? Puedes crear edificios ,
vehículos e incluso mundos
enteros. Así que al igual que los bloques de lego, scratch te proporciona
coloridos bloques de codificación, pero puedes
unirte para construir tus propias
creaciones digitales como juegos, animaciones,
historias interactivas y mucho más. Y así como
no necesitas ser
arquitecto o
ingeniero para tener Fongo, no
necesitas ninguna experiencia
previa en codificación para comenzar a crear con scratch Realmente está diseñado para
ser fácil de entender. Para que puedas concentrarte en ser
creativo y aprender la lógica de la programación y cómo pensar
como programador, que es la habilidad más
importante. Y la mejor parte
es que puedes lograr todo esto sin nunca
empantanarte por una compleja sintaxis de
codificación Así que es una
manera increíble de conocer qué se trata la programación y comenzar tu aventura de codificación. Entonces, lo primero es lo primero, abre el sitio web scratch
si aún no lo has hecho. Y te voy a
recomendar que uses Chrome como tu navegador a
medida que continúas. Un scratch simplemente funciona mejor con Chrome en comparación con
otros navegadores. Entonces, si esta es tu primera
vez que te rascas, tu pantalla debería
parecerse a la mía. Si te desplazas hacia abajo,
verás un montón de proyectos
geniales que gente
como tú ha estado creando, que exploraremos más adelante. En la parte superior aquí, verás
que tenemos diferentes opciones. El primero es
crear un proyecto, del cual vamos a estar haciendo mucho. Ahí está la pestaña Explorar, y aquí es donde encontrarás más juegos divertidos desarrollados
por personas que usan scratch, y aquí es donde la gente también
podrá encontrar proyectos
que crees. Al pasar,
hay una pestaña de ideas, que tiene algunas ideas divertidas para proyectos para que las
crees en el futuro. Y por último, la
sección sobre lo es todo. Bueno, sobre el rasguño. Bien, con todo eso dicho, podemos crear nuestra cuenta
scratch. Ahora bien, esto es importante,
ya que se asegurará de que
podamos salvar nuestros proyectos y
no perder nuestro progreso. Así que todo lo que necesitas hacer aquí
es hacer clic en Unirse a Scratch. Y como puedes ver,
te pide un nombre de usuario y una contraseña. Esto puede ser
lo que quieras, pero
asegúrate de que no sea tu
nombre real como dice aquí. Simplemente llamaremos a
nuestro nombre click. Y entonces la contraseña puede
ser lo que quieras. Solo asegúrate de
recordarlo. Después de esto, pregunta en qué
país vives. Entonces ahora puedes desplazarte por esta lista masiva
para encontrar tu país. Bueno, vivo en Sudáfrica, así que eso está justo cerca del fondo. Y luego te preguntará a tu agenda. Por último, va a
pedir un correo electrónico. Es importante ingresar
su correo electrónico correctamente, ya que aquí es donde scratch
enviará una confirmación. Una vez que reciba el correo electrónico de
confirmación, puede hacer clic en el
enlace de confirmación y listo. Se crea tu nueva
cuenta de scratch y estamos listos para comenzar. Entonces tu término, configura tu cuenta de
scratch, y te veré en
la siguiente lección mientras exploramos la interfaz
scratch.
3. ¡Bienvenido al mundo de la codificación con Scratch!: Entonces, este es el momento que
has estado esperando. Es hora de crear
nuestro primer proyecto. Para hacer un nuevo proyecto,
todo lo que necesitas hacer es hacer clic en el botón grande de crear
en la parte superior de la página. Y esto crea un
nuevo proyecto para ti y te lleva al editor
de proyectos scratch donde suceden todas las
cosas increíbles. Ahora, estamos en el lugar
donde ocurre la acción, hagamos un recorrido para que puedas entender
rápidamente cómo funciona todo. Entonces, toda esta área en la que estamos en este momento se
llama el editor, y aquí es donde puedes
diseñar y codificar tu proyecto. Es básicamente donde vas a crear cualquier cosa que puedas imaginar. El editor de scratch
tiene cuatro partes principales, el escenario, los sprites, los bloques de código
y los scripts Déjame explicarte lo que hace cada
parte. Todo bien. Hablemos primero del área del escenario. Lo encontrarás en el extremo
derecho de tu pantalla. El escenario es donde pasan todas
las cosas divertidas. Al igual que un escenario en un teatro. Aquí es donde se
ve la acción. A medida que crees tu proyecto, todo lo que hagas
aparecerá aquí mismo. Es el
espacio especial donde puedes ver y construir tu
increíble proyecto. Ahora, mirando hacia abajo
desde el escenario, verás aquí esta zona donde podrás elegir el
fondo del escenario. Actualmente, solo tenemos seleccionado
este aburrido
fondo liso. Pero si haces clic en este pequeño botón en
la parte inferior derecha, puedes elegir un nuevo telón de fondo, además de agregar sonidos y
música al escenario, pero exploraremos todo
eso en una lección futura. Un sprite scratch es el personaje que controla tu código
scratch Por ejemplo, puedes escribir algún código para que tu
sprite se mueva o hable Estos sprites pueden ser
todo tipo de cosas que van desde personas hasta
animales y objetos Y al igual que con los
fondos para el escenario, puedes elegir entre un montón
de sprites pre hechos, o incluso sacar tus
propias victorias únicas Además, incluso puedes subir
sprites desde tu computadora, lo que haremos
en futuras lecciones A continuación están los bloques de código. Estas son las
instrucciones que puedes usar para que tus
sprites hagan cosas Es igual que la programación
del mundo real. Pero en lugar de escribir líneas
complejas de texto, usas estos bloques. Pero esencialmente, estás haciendo lo
mismo, estás codificando. Hay diferentes categorías
de bloques, como movimiento, miradas, sonido, eventos,
control y muchos más. Cada categoría representa un aspecto diferente
de la programación, ayudándote a construir un proyecto completo
e interactivo. Para usar estos bloques de código, simplemente arrástralos y sumétalos desde la paleta de bloques
en el área de script. Y a medida que
juntes los bloques, empezarás a ver que tu
proyecto cobra vida. Y hablando del área de guiones, esta es la última
área importante que debemos discutir. Aquí es donde juntamos
bloques en un orden especial que le dice a
tus sprites qué hacer Puedes conectar bloques de código juntos al
romperlos como piezas de rompecabezas. Tan solo como un ejemplo rápido, traeré este bloque de diez
pasos a mi ventana. Aquí, como pueden
ver, si hago clic en él, mi sprite CT
avanza en la pantalla Y por último, si
miras a lo más alto, verás que existen estas diferentes pestañas para
disfraces y sonidos. Ahora bien, estos también son espacios
muy importantes que nos ayudarán a crear proyectos
impresionantes, pero nos
adentraremos en eso más adelante. Pero por ahora, esa es una descripción rápida de la interfaz
scratch
y cómo funciona. Anímate a jugar y revisar
las cosas por ti mismo porque ahí es donde ocurre el
aprendizaje en el hacer. Espero verte en la siguiente lección donde
empezaremos a ver qué hace
todo este código.
4. Mojarte los pies: la interfaz para rascar: Bueno, espero que te hayas divertido
un poco
jugando con los sprites
y los bloques de código, porque en esta
lección, vamos a estar explorando algunos de los bloques de
código juntos Entonces comencemos con un
importante qué es el código. El código es básicamente solo un conjunto de instrucciones para una computadora. Verás, las computadoras en realidad
no son muy inteligentes. Bueno, no son muy inteligentes para
averiguar a qué te
refieres como lo son los humanos Necesitan instrucciones muy claras y
específicas, paso a paso para hacer
lo que queremos que hagan. Imagina que le estás diciendo a alguien
cómo hacer un sándwich. Para un humano, podrías decir, por favor hazme un sándwich de
mantequilla de maní y gelatina. Pero para una computadora,
tendrías que ser mucho
más específico como. Toma una rebanada de pan
y colócala en un plato. Toma el frasco de
mantequilla de maní y ábrelo. Inserte un cuchillo, y después de
obtener un poco de mantequilla de maní, usa el cuchillo para
extenderlo uniformemente sobre el pan. Después toma el frasco de gelatina, usa una cuchara para echar un poco sobre
la otra rebanada de pan. Coloca la rebanada de pan
encima de la mantequilla de maní, y así sucesivamente. Entiendes la idea. Otro ejemplo es si pudiéramos mirar
el sprite que tenemos Digamos que queremos que camine
hasta el final de la pantalla. El equipo no va a
entender a lo que nos referimos si solo decimos caminar hasta
el final de la pantalla. No obstante, lo
que podemos decir es mover diez pasos. Como puedes ver, el gato
avanza diez pasos, pero aún así en realidad no está
caminando, solo se está moviendo. Bien, entonces lo que
también podemos hacer es cambiar
al siguiente disfraz. Ahora bien, si hacemos clic en esto,
podemos ver que
parece que está caminando.
Ahora estamos llegando a alguna parte. Pero aún así, no está caminando
hasta el final de la pantalla. Entonces lo que podríamos hacer entonces
es agarrar este bloque de repetición. Póngalo sobre estos bloques, y ahora básicamente
repetirá todo el código diez veces. Ahora si hacemos clic en él, podemos
ver que se mueve mucho más lejos, pero aún así no hasta el
final de la pantalla. Para que pueda cambiar los pasos 10-50. Bien, ahora, ahí lo tenemos. Un gato caminando con éxito hacia el otro lado de la pantalla. Entonces, como puedes ver,
si bien las computadoras son increíblemente poderosas y
pueden hacer cosas increíbles, necesitan instrucciones
muy precisas y específicas para que funcionen porque las
computadoras harán exactamente lo que les digas que
hagan y nada más. Pero prepárate ahora, porque para la siguiente lección, estaremos codificando oficialmente.
5. El ABC de la codificación: ¿qué es el código?: Bueno, este es el momento
que has estado esperando. Es hora de codificar y crear
algunos de nuestros primeros guiones. Bueno, técnicamente, ya
hemos creado nuestro primer guión como hicimos
en la lección anterior. Pero esta vez, va a ser mejor. Pero antes de que lo hagamos,
podrías estar preguntándote, bueno, qué, incluso es un guión. La respuesta corta es que un script
es solo bloques de código que están conectados entre sí que le dicen a nuestro Sprite qué hacer Como describí antes
, son instrucciones
para la computadora. Así que tal y como hemos visto, un bloque de código es
solo un bloque de código. Pero cuando lo combinamos, conseguimos que
sucedan cosas increíbles como el guión, lo que hace que nuestro gato camine
hasta el final de la pantalla. Sin embargo, hay una
pieza clave del rompecabezas que nos falta antes de que podamos
llamar oficialmente a nuestros bloques de código un guión, y la pieza clave se encuentra
debajo del grupo de eventos. Es esto cuando se hace clic en la
bandera. Verás ahora
que podemos arrastrar este bloque de código al inicio
de nuestro guión ambulante. Y ahora, cuando hacemos clic en esta bandera
verde, se reproduce un guión. No es necesario hacer clic manualmente en él. Pero eso es solo el comienzo porque aún no
eres programador. Todavía hay una
cosa que debes hacer. Es más o menos un
derecho de paso. Una vez que hayas hecho esto,
oficialmente puedes llamarte programador, decírselo a tus amigos,
eres programador, dile a tu perro que eres programador, a quien
quieras decirle. Así que baja al grupo
Lux Code, arrastra en el s y conéctalo
a cuando la bandera haga clic Ahora, para el paso más
importante, ¿
estás listo para escribir
hola mundo Bien. Hecho. Ahora, haz clic en
Reproducir. Aquí, lo tienes. Hola Mundo. Has creado el
primer programa icónico más clásico de todos los tiempos. Ahora eres oficialmente
programador. Nadie más puede
decirte lo contrario. Entonces, con eso fuera del camino, hagamos guiones geniales y
juguemos con algunos de los bloques. Una vez más, voy a arrastrar en este bloque de clic de bandera W. Y esta vez,
voy a subir a mociones y jugar con
algo del código aquí Probemos con el clic de bandera W. Mueve diez pasos y
gira 15 grados. Ahora, cuando hacemos clic en la bandera, nuestro gato se mueve, gira, y dice, Hola Mundo. Eso es bastante genial. Pero antes de continuar, no
sé si te das cuenta, pero nuestro gato está haciendo mucho más giro y
mucho menos moviéndose. Entonces,
¿cómo podemos arreglar esto? Bueno, antes de que yo solo siga
adelante y lo arregle, quiero que intentes arreglarlo. Recuerda, el aprendizaje
ocurre en el hacer. Así que trata de ver si puedes conseguir este gato se mueva
más, luego gira. Voy a estar esperando. Pausa el
video y pruébalo. Bueno, espero que lo hayas descubierto, pero aunque no lo hayas hecho,
eso no es problema. Entonces, si recuerdas de antes, cambiamos lo que decía nuestro
gato simplemente haciendo clic en esta textura y
escribiendo nuestras nuevas palabras. Y podemos hacer lo mismo por un movimiento y realmente
todo lo demás en scratch. Esto es algo muy
importante para recordar. Casi todos los bloques de código en scratch son personalizables, y nos permiten
cambiar sus valores. Simplemente desplazándote hacia abajo,
puedes ver cómo podría cambiar qué disfraz se selecciona
o qué sonido se reproduce Esto realmente nos da mucho
más control sobre lo que sucede. Entonces, para nuestro problema
de mudarnos más, todo lo que tengo que hacer es
cambiarlo a 20 pasos. Ahora, como puedes ver,
cuando hacemos clic en la bandera, nuestro gato se mueve en un círculo
mucho más amplio. Pero no nos detengamos ahí. Vamos a traer algunos
otros bloques de código geniales. Vamos a traer en este ir
a la posición aleatoria. Y espero que puedan
adivinar lo que hace esto. Bueno, moviéndolo a nuestro guión. Se puede ver que nuestro gato
salta alrededor de la pantalla, moviéndose en posiciones bastante
diferentes. Bastante genial. Pero
intentemos algo mejor. ¿Qué tal este deslizamiento
a una posición aleatoria? Lo que voy a hacer aquí es
desconectar este script de cuando empiece haga clic y
conecte este nuevo bloque en. De esta manera, este script no se ejecutará. Pero ahora, como puedes ver,
cuando hacemos clic en la bandera, el gato se desliza a posiciones
aleatorias en la
pantalla, lo cual es bastante ordenado Pero lo único molesto es cómo tenemos que seguir
haciendo clic en esta bandera. En lugar de hacer eso, podríamos traer este bloque repetido, como hicimos antes y poner
este código dentro del bloque. De esta manera, el código
se repetirá diez veces. Ahora, incluso cuando volvemos a
hacer clic en él, nuestro gato
corre automáticamente alrededor de la pantalla. Ahora bien, aunque es un poco lento, así que lo que podríamos hacer es cambiar el número de
segundos de 120.2. Ahora, de eso es de lo
que estoy hablando. La OCT hace zoom alrededor de la pantalla. Aunque nuestro gato
finalmente se detiene. Entonces, ¿cómo podemos hacer
que continúe para siempre, o al menos hasta que hagamos
clic en el botón de detener? ¿Alguna idea? Ya ves si puedes averiguar cómo hacer que el
gato siga moviéndose para siempre. Esa es una pista. Pausa el video
y mira si puedes hacerlo. Bueno, espero que lo
resuelvas, porque para que nuestro gato
siga moviéndose,
todo lo que tenemos que hacer es
usar el bucle forever. Y básicamente, cualquier
código que esté en este bucle se repetirá para siempre. Fresco. Entonces cambiándolo
y presionando play nuevamente. Se puede ver que nuestro
gato simplemente
se mueve continuamente por la pantalla
como una locura. Bien. Ahora en lugar de que nuestro gato simplemente se
mueva al azar. ¿Y si queremos
que siga nuestro ratón? Eso sería divertido. ¿Lo entiendes? Gato y ratón? Bien. Sí, sí. Bastante gracioso. Derecha. Para hacer que el gato persiga al ratón, podemos traer en este bloque de
ir a código y cambiarlo de una
posición aleatoria a un puntero del ratón. Sin embargo, si hacemos clic en Reproducir, verás que
realmente no pasa nada. Nuestro gato simplemente se mueve
a la esquina de nuestra pantalla. Pero quiero que ahora
pienses en esto. ¿Por qué nuestro gato simplemente se mueve
al borde de la pantalla? ¿Por qué no
sigue al ratón? Quiero que arregles este código
y me digas cuando termines. Por supuesto, no voy a
poder escucharte. Es una pantalla de computadora con la que
estás hablando. Y no soy para el explorador. Pero avísame
cuando termines de todos modos. PISTA. La solución está vinculada a un bloque de código
que acabamos de ver. Entonces, pausa esto y pruébalo. ¿Lo arregló? Fresco. O si no
lo hiciste, eso también es genial. Siempre y cuando lo intentaste. A lo largo de nuestras clases, siempre te
voy a dar oportunidades para intentar hacer
las cosas antes de mostrarte. Recuerda ese aprendizaje,
lo que sucede en el intento. Así que inténtalo
siempre aunque no lo hagas bien. Pero básicamente, lo que está
pasando aquí es que nuestro sprite
va a nuestro ratón Pero solo lo hace una vez, y solo lo hace cuando
hacemos clic en nuestra bandera verde. Entonces para arreglar esto, todo lo que
tenemos que hacer es poner el bloque de código Go to Mouse en un fevolu Y esta vez, hacemos clic en Reproducir,
y verás que funciona. Y es bastante genial. Como puedes ver, no
importa lo rápido
que muevan el ratón,
el gato siempre va a mantenerse al día. Y esto funciona
porque nuestro sprite va para siempre a
nuestro puntero del mouse, no solo cuando hacemos clic en Reproducir Bien, probemos un guión más antes de concluir esta lección. Vamos a agarrar este punto
hacia el bloque de aquí. Y supongo que tienes una idea de lo que hace esto,
porque, como puedes ver, tiene punto de ratón se selecciona, es
decir, nuestro sprite
apuntará hacia nuestro Tomemos también
otro bloque de código y esta vez
del grupo Looks. Aquí. Vamos a traer en este efecto de
cambio de color por un 25. Y como antes, pondremos ambos
bloques de código en un bucle fre. De esa manera, no
solo lo hace una vez. Además, agregaremos en esto cuando la bandera haga clic para
completar el código. Derecha. Vamos a darle una oportunidad
a esto. Como puedes ver, nuestro gato se ha convertido en un teclado RGB y está constantemente apuntando
hacia nuestro mouse. Sí, bonito. Bien, eso es
todo por esta lección. Cubrimos bastante, y estoy seguro que aprendiste mucho. Ahora, solo quiero que tomes este momento para escribir
algo de tu propio guión, solo experimentar con diferentes bloques de código
y ver qué hacen, y te veré en
la siguiente lección. Así que diviértete un poco.
6. Traer ideas a la vida: crea tus primeros guiones: Espero que te hayas divertido
jugando con algunos de
los bloques de código, así que continuemos
nuestro viaje de aprendizaje y veamos qué más podemos hacer. Pero antes de seguir adelante y construir algunos juegos y
aplicaciones y animaciones increíbles, primero
tenemos que hablar sobre qué todos estos grupos de bloques de código y cuáles
son sus propósitos. Porque si podemos
entender correctamente lo que
hace cada grupo desde el principio, te resultará mucho más fácil
crear tu propio código. Como hemos visto, todos
los bloques y scratch están organizados
en diferentes grupos. Como puedes ver, todos
estos son azules, estos son morados, estos
son rosados y así sucesivamente. Básicamente, cada uno de estos se
agrupan por lo que hacen, y representan diferentes
aspectos de la programación. Así que pasemos por cada uno de
los grupos para entender su propósito y también ver algunas de las
cosas divertidas que pueden hacer. En primer lugar, todos estos bloques
azules tienen que ver con el movimiento y mover tu
sprite por la pantalla Y hemos estado
jugando bastante
con este grupo de código. Entonces estoy seguro que tienes una idea bastante buena de
lo que se trata. Pero hay un montón más que puedes hacer aquí usando bloques de movimiento. Pero seguir adelante. Sí, sí. Hay muchos para ser graciosos.
El siguiente grupo es Los. Y esto es todo sobre.
Sí, bueno, lo adivinaste. Se ve. Entonces echemos un vistazo. También hemos probado algunos de
los bloques de código como
cambiar el vestuario, decir palabras diferentes, o
incluso cambiar el color. Pero todavía hay mucho más que
podemos hacer como cambiar
el tamaño y hacer que el gato sea más grande o hacerlo
ocultar o mostrar y mucho más. Pero básicamente, todo
lo que necesitas saber es que el grupo de looks tiene que ver con looks, y a menudo lo usaremos
cuando queramos crear gráficos y animaciones
elegantes que verás más adelante. Bajando, tenemos sonidos, y estoy seguro que puedes
adivinar de qué se trata esto. Aquí, podemos hacer que nuestros sprites
hagan sonidos específicos. Entonces con nuestro gato, podemos
haber hecho sonar esta M. Y también podemos cambiar
el tono como puedes ver. Y sí, sí empieza
a ponerse un poco loco. Bien. Al bajar, nuestro siguiente
grupo se llama eventos. Y tal vez no estés muy seguro de
qué se trata este grupo. Sin embargo, este es un grupo
muy importante de bloques de código porque nos
permite
reproducir automáticamente nuestros guiones cuando ocurre un determinado evento. Hasta el momento, hemos utilizado el evento clicked flag
W, que básicamente inicia
nuestros scripts de código cuando se hace clic en esta bandera verde Y verás lo útil que
es esto cuando tenemos muchos sprites. Pero como puedes ver, hay otros eventos como
cuando Space clicó Esto solo iniciará
el script cuando se haga clic
en la barra espaciadora O este evento inicia
el script cuando se hace clic en
el sprite o
cuando recibo un mensaje Todos estos eventos
hacen lo mismo. En lugar de
esperar a que hagamos clic en la bandera verde para reproducir nuestro código, esperarán a que suceda
algo más. Y esto nos permite controlar
cuándo debe comenzar el código. Ahora, realmente vas
a llegar a conocer cómo
funciona todo esto cuando hagamos algunas aplicaciones más
avanzadas posteriormente. Pero con eso, podemos pasar a nuestro siguiente grupo de código,
que es el control. Todos los bloques aquí se
utilizan para controlar nuestro código, lo que básicamente
significa que nos ayudan a administrar el flujo y la
estructura de nuestros guiones, algo así como cómo los semáforos ayudan a dirigir los autos en intersecciones
concurridas Por ejemplo, tenemos
bloques para crear bucles, que nos permiten repetir
secciones de código un número específico de
veces o incluso para siempre. Al igual que hicimos antes
para que nuestro gato caminara hasta el final de la
pantalla o
siguiera constantemente nuestro puntero del mouse. También tenemos
declaraciones condicionales como if then y if then ls blocks, que permiten a los sprites
tomar decisiones basadas en ciertas
condiciones que se cumplen Similar a cómo podrías
elegir usar un abrigo, si está lloviendo o
usar gafas de sol, si hace sol afuera También está
aquí este bloque, que espera. Al mover esto a nuestro guión, notarás cómo ahora
cuando hago clic en la bandera, espera 1 segundo
antes de que reproduzca el guión Esto también es algo
importante que hay que saber. Así que juega con mucha atención. Cuando ejecutamos uno de nuestros
scripts como este, por
ejemplo, el código
se ejecuta en un orden de arriba hacia abajo. Entonces podemos mirarlo lógicamente
cuando hacemos clic en la bandera, primero
esperará 1 segundo, y este es el
primer bloque de código Entonces cambiará de color por 25 y luego apuntará hacia
el puntero del mouse, y por supuesto, esto hará un bucle
para siempre este código aquí. Pero si tocas el guión, parece que es que ambos bloques de código se están
ejecutando al mismo tiempo. Y esto se debe a que
las computadoras son tan rápidas que ni siquiera se
puede notar que esto
está sucediendo en orden. Pero agreguemos algunos
bloques de peso para ver en acción. Así que arrastrando en nuestra espera 1 segundo aquí y otro aquí antes de ejecutar el
código, ¿puedes adivinar? ¿Qué va a hacer? Piensa adivina
¿qué harán los pesos? Hacemos clic en la bandera.
Espera 1 segundo Cambia de color,
espera otro segundo, apunta hacia el ratón, espera otro segundo, luego vuelve a cambiar
el color y así sucesivamente Entonces jugando este programa, se
puede ver cómo
hace exactamente lo que
predijimos y cómo sucede
en el orden que especificamos. Y a medida que avanzamos,
verás como es tan importante
el orden en el que colocamos
nuestro código. Pero sobre ese tema,
estos bloques de control nos
dan el poder de hacer que nuestro proyecto sea más inteligente e interactivo respondiendo a diferentes situaciones a
medida que suceden. Y todavía hay un montón más, pero por ahora vas a tener
la idea. Bajando al siguiente
grupo, tenemos detección. Y estos bloques
son bastante chulos. Detectando bloques, deja que tus sprites detecten cosas como
tocar otro sprite, movimiento
del mouse o incluso escuchar cuáles son
los tipos de usuario Estos bloques ayudan a que tus proyectos reaccionen ante su entorno. Y esto es muy útil cuando queremos construir juegos
interactivos. Y jugaremos con
algunos de estos más
adelante cuando hagamos algunos juegos divertidos. Bajando de nuevo,
tenemos operadores. Y todo esto tiene que ver con las matemáticas. Sí, sí, las matemáticas pueden
ser aburridas a veces, pero te diré que
cuando
estamos haciendo juegos, necesitamos algunas matemáticas
para que funcione, y se vuelve muy divertido. Los operadores son como
las herramientas que utilizamos para construir y resolver
acertijos en nuestro proyecto. Nos ayudan a hacer matemáticas
y hacer comparaciones, tal como lo hacemos cuando estamos
resolviendo las cosas
en la vida cotidiana Por ejemplo, podemos sumar, restar, multiplicar o
dividir números juntos Encuentra el resto cuando
un número está dividido por otro o incluso elige
un número aleatorio. Estos operadores también nos permiten comparar valores para ver
si son iguales, mayores o
menores que uno del otro. Es como cuando estás
jugando un juego de cartas, y necesitas averiguar
quién tiene la carta más alta, usamos comparaciones para decidir quién gana. Y no sólo números. Incluso podemos combinar texto, también conocido como cadenas para crear oraciones o hacer que nuestro sprite
diga cosas bastante divertidas Entonces, los operadores
nos dan un montón de herramientas
geniales para
trabajar cuando estamos creando nuestros juegos y
proyectos en cero. Y nos ayudarán a
que nuestros proyectos sean más dinámicos e interactivos. Y finalmente, tenemos variables. Las variables son como
pequeñas cajas de almacenamiento para información que
podemos usar en nuestros proyectos. Imagina que estás jugando un
juego y tienes una puntuación. ¿Dónde harías
un seguimiento de esa puntuación? Lo tienes en una variable. En scratch, podemos crear
nuestras propias variables para almacenar y hacer un seguimiento de
diferentes valores como puntuaciones, vidas o incluso el nombre de un jugador. Podemos cambiar estos valores
sumando, restando,
configurando o incluso mostrando y ocultando la variable
en la pantalla Al igual que en el mundo real, utilizamos notas para recordar información
importante que
podríamos necesitar más adelante. En scratch y programación,
utilizamos variables. Por ejemplo, digamos que
estás haciendo un juego, donde un personaje
recoge monedas. Cada vez que recolecten una moneda, querrás aumentar
esta puntuación en una. Podrías usar una variable para
almacenar la puntuación de los jugadores y luego agregarle una cada
vez que recojan una moneda. Las variables son muy
útiles para hacer que nuestros juegos y proyectos sean
más atractivos, interactivos y divertidos, además, nos
ayudan a realizar un seguimiento de información
importante a medida que nuestros
proyectos se vuelven más complejos. Mirando hacia abajo de nuevo,
verás que hay una zona más llamada Mis cuadras. Y como pueden ver,
no hay nada aquí por el momento, pero veremos usar el bloque de código especial en lecciones
más avanzadas. En fin, eso es todo. En esta lección, realmente obtuviste una buena
comprensión básica de cómo todos estos bloques trabajan
juntos para formar scripts
complejos que pueden
ayudarnos a hacer juegos increíbles. También miramos cómo
va nuestro código en orden de
arriba a abajo. Y también siempre prueba algunos de los bloques ahora
por ti mismo y mira si puedes conseguir
algo divertido creando algunos de
tus propios guiones geniales, y te veré
en la siguiente lección mientras continuamos nuestro viaje de
aprendizaje.
7. Una mirada más de cerca: descubre los bloques para rascar: Entonces, hemos repasado todos
los diferentes co drives, todas las diferentes
áreas como el escenario, nuestros sprites y un montón más En esta etapa, tienes una muy buena comprensión
de todas las áreas, pero hay algunas cosas que aún no
hemos cubierto. Y para darte
una comprensión completa de cómo funciona todo este
entorno de scratch, en esta lección,
haremos precisamente eso. Y creo que la mejor manera de
hacerlo es yendo del lado izquierdo de la pantalla al lado derecho de la pantalla para asegurarnos de que cubrimos todo. Entonces, en primer lugar, comenzando en
la parte superior izquierda de nuestra pantalla. Tenemos código. Y ya sabes de qué se
trata todo esto. Es nuestro código. Pero moviéndose un
poco a la derecha, verás que tenemos disfraces. Ahora, aún no hemos
hablado de esto, pero cada sprite que tengamos en nuestro programa puede tener
tantos disfraces como quieras Y todos estos disfraces son
específicos de ese sprite. Así que recuerda cómo
hicimos que nuestro gato
pasara por la pantalla agregando
el código siguiente disfraz. Bueno, eso usa
estos dos disfraces para crear el efecto de caminar. Y la parte genial aquí es
que el scratch te da tanto control para crear nuevos disfraces y editar
los que tienes. Como, por ejemplo, podría ir al segundo
disfraz para el sprite, hacer clic en la cola aquí y
simplemente girarla un poco hacia abajo Entonces volvamos a activar el guión
ambulante. Ahora verás cómo se mueve la cola de
los gatos
cuando camina también. Pero ahí
no se ha detenido. También podríamos importar
nuevos trajes, ya sea de la
biblioteca de Scratch, subir el nuestro propio, o incluso dibujar nuestro
propio disfraz personalizado, que es donde entrarán en juego tus
habilidades artísticas. De todos modos, entenderás
cómo funcionan estos disfraces cuando construimos los nuestros propios en nuestros juegos y animaciones
en futuras lecciones. Al mover una pestaña por aquí
puedes ver que tenemos sonidos. Y esto es bastante parecido al vestuario excepto aquí se puede ver este sprite de gato viene
preinstalado con este sonido Mo, que usamos antes Y nuevamente, puedes subir
tus propios sonidos o elegir entre algunos de los sonidos que están
disponibles en scratch. Puedes agregar mucha más
profundidad a nuestro personaje y objetos en nuestro
programa usando sonido. Ahora, una cosa más que hay que saber sobre vestuario y sonido es que ambos están controlados
por estos dos grupos de código. Así que el grupo de código Looks
puede controlar nuestros disfraces, y el grupo de sonido puede controlar nuestros sonidos
para nuestro sprite Sigamos moviéndonos hacia un lado. Aquí, tenemos nuestro editor de guiones, donde va todo nuestro código, y ya lo sabes todo. Entonces tenemos nuestra
bandera verde y nuestro botón de parada. Al cruzar, tenemos
estos botones aquí, que le permiten cambiar
el diseño de nuestra interfaz. Pero creo que este
diseño es bastante bueno en este momento y lo
mejor, así que dejaremos eso. Y en el borde, hay un botón de pantalla completa, para que podamos ver nuestro programa
en todo su esplendor. Al bajar, tenemos nuestra vista de código,
que también conoce. Es donde ocurre la acción. Y luego de nuevo abajo, tenemos esta área, que aún no
hemos discutido. En primer lugar, podemos cambiar
el nombre de nuestro sprite. Entonces en vez de ser sprite uno, podemos llamarlo CT.
Y moviéndose a través, se
puede ver, tenemos
estas entradas x e y. Y este es un concepto
importante. Así que juega mucha atención. Las coordenadas X e Y son como las posiciones para todo lo que sucede
en el escenario de scratch. Esto nos ayuda a saber dónde están
las cosas y
cómo moverlas. Al igual que, imagina una cuadrícula
gigante que cubre toda
la etapa de scratch con líneas
horizontales y
líneas verticales que se cruzan entre sí. La cuadrícula se compone de coordenadas
x e y. La coordenada x representa la posición horizontal o la posición izquierda y derecha
del sprite en el escenario, y la coordenada y representa la posición vertical
o el arriba y abajo del sprite en el Ahora, pensémoslo
como un mapa del tesoro. Las coordenadas x e y son
como las instrucciones sobre cuántos pasos dar en cada dirección para
encontrar el tesoro. Si nos dijeran que demos
diez pasos a la derecha
y cinco escalones hacia arriba, moveríamos diez pasos a lo largo del eje x y cinco
pasos a lo largo del eje y. En scratch, la etapa tiene su
propio sistema de coordenadas con cero x y cero y siendo
el punto central. Las coordenadas x van desde menos 24240 mientras que
las coordenadas y van desde menos
uno 80 hasta uno 80 Cuando quieres
mover un sprite a un punto específico en el escenario, simplemente
estableces sus coordenadas x
e y Por ejemplo,
digamos que queremos mover nuestro sprite CT a la esquina superior
derecha del escenario Entonces estableceríamos
la coordenada x 240 y la
coordenada y en una 80. También puedes usar los bloques de
movimiento en scratch, como ir a x 240 e y uno 80 o cambiar y por menos cinco para mover tus sprites por el escenario
usando las coordenadas x e y Comprender las
coordenadas x e y es importante para crear animaciones fluidas
y juegos emocionantes, ya que nos ayuda a
posicionar nuestros sprites exactamente donde
los queremos en el escenario Y por eso
son tan importantes. Bien, bajando de nuevo, puedes ver que tenemos la capacidad mostrar y ocultar nuestro sprite, y esto es algo que
también podríamos hacer con el código
debajo de la sección Y moviéndonos a través, podemos cambiar el tamaño y la dirección
del sprite está apuntando, lo que también podemos hacer bajo
el grupo Looks Code Bien, bajando otra vez. Creo que solo hay una cosa
más que necesitamos saber, y eso es agregar nuevos sprites En scratch, puedes tener
tantos sprites como quieras. Y al igual que con los disfraces, puedes usar los sprites
que vienen con scratch. Puedes subir los tuyos o incluso crear tus propias
formas y dibujos. En fin,
imaginemos que queríamos
crear un juego donde
un perro persiga a un gato, y hay que controlar
al gato para que huya Aquí, podríamos agregar un nuevo sprite, y podemos buscar perro, y vamos a elegir este aquí Y ahí lo tienes,
un sprite flamante. Y como puedes ver,
no tiene ningún código en él porque cada sprite tiene su
propio código para controlarlo Y además, como un sprite de gato, este viene con
diferentes disfraces y sonidos preinstalados y
listos para que los usemos Sólo hay una cosa más,
que son los telones de fondo, que son bastante
similares a los Sprites Básicamente es solo el
fondo detrás del sprite. Entonces digamos que nuestro juego está en
la nieve haciendo clic aquí. Se puede ver que podemos
cambiarlo a Ártico o desierto. Nuestro podemos subir nuestro propio telón de fondo si queremos
o incluso podemos dibujar uno. En fin, eso es todo. Ahora eres un profesional en el entorno
scratch. Pero ahora, vamos a
convertirte en un programador profesional.
8. Dominación de los fundamentos: navega por el espacio de trabajo para Scratch: Bueno, ya está. Es hora de desarrollar nuestro primer juego. No te preocupes, nosotros lo
mantendremos simple, pero desarrollarás algunas habilidades básicas de
programación
mientras haces este juego. Como se mencionó anteriormente,
el juego que vamos a construir es bastante sencillo,
pero debería ser divertido. Básicamente, vamos
a tener
como obra una libélula y un sprite de mariquita, y vas a
poder controlar el movimiento de las libélulas
con tus flechas y la mariquita simplemente va a
correr por la pantalla mientras
intentamos atraparla También vamos a
establecer la escena con un bonito fondo de selva. Bien. Ahora que sabemos cuál
es nuestro juego y los sprites y el
fondo que necesitamos, quiero que
importen
los dos sprites al proyecto y elijan
un telón de fondo apropiado Pausa este video y haz eso. Bueno, si te las
arreglas bien hecho. Para este paso, lo único que estamos haciendo es agregar dos sprites
y un telón de fondo Para nuestro sprite, solo
podemos hacer clic en este botón de sprite de anuncio y
buscar libélula y simplemente Verás cómo se
sumó al proyecto. De nuevo, podemos hacer
lo mismo por la mariquita. Bien. Y finalmente, podemos agregar en nuestro telón de fondo de selva haciendo clic en este botón en su lugar. Y si buscas Jungle, la encontrarás aquí mismo. Ahí lo tienes.
El escenario está listo, y tenemos todos los activos
que necesitamos para hacer nuestro juego. Antes de seguir escribiendo
algún código para nuestros sprites, solo
quiero que
pienses en el proceso por el pasamos porque a la
hora de programar, una parte muy importante es pensar en
el panorama más amplio, que en nuestro caso es este juego Después de que sepamos exactamente
lo que queremos hacer, tenemos que pensar en lo que
necesitamos para hacer este juego. Bueno, aquí, todo lo que necesitamos son estos dos sprites y
un bonito fondo Pero se trata de comprender el panorama general
de lo que queremos
hacer y dividirlo en pasos manejables
más pequeños Por ejemplo, Bien. Digamos que quieres construir una casa en el árbol en tu patio trasero. En lugar de intentar
construirlo todo a la vez, puedes descomponer el
proyecto en escalones más pequeños como
reunir los materiales, medir y cortar
madera, construir el marco, agregar paredes y un techo, y luego decorar
el interior. Al hacer esto, puedes hacer que el proyecto sea más
manejable y menos abrumador y
asegurarte de construir una casa en el árbol segura y robusta que puedas disfrutar en
los próximos años Lo mismo ocurre con la
programación, bueno, prácticamente todo en
la vida. Pero eso es todo por ahora. Estamos listos para comenzar a dar vida a
los sprites con código
9. Tu primera aventura de juego: crea una persecución de libélulas en el cero: Bien, es hora de
poner en marcha la codificación, y creo que el mejor lugar para comenzar es con nuestro sprite de mosca
dragón, ya que es el
personaje principal después de todo Además, antes de hacer nada, deshagámonos de
este gato que está en la pantalla y no
lo necesitamos para todo este proyecto. Para hacer esto, podemos simplemente clic en este botón de eliminar junto
al sprite o tal vez ya hayas creado algún
código genial para él Podrías simplemente ocultar el
sprite en su lugar y
puedes traerlo de vuelta en cualquier momento
haciendo clic en Mostrar Pero lo primero es lo primero,
asegúrate tener seleccionado este sprite para asegurarte de que estás
codificando lo correcto Con eso, es hora de crear nuestra primera tira para el sprite. Entonces
pensemos en esto. En nuestro juego, queremos
poder controlar esta mosca dragón
y hacer que suba y baje de izquierda y derecha
usando nuestros rastrillos Entonces, ¿cómo podemos hacer eso? Entonces aquí es donde hay
que pensar como una computadora
y pensar lógicamente ¿Cuáles son todas las instrucciones
que necesita
la computadora para poder moverse
con las teclas de flecha? Si estás a la altura del
desafío, pausa el encendido y dale una oportunidad a esto. Intenta ver si
puedes escribir el script que permita que el sprite se
mueva con los rastrillos Pero si no tienes
idea, no te preocupes. Sólo quiero que hagas una pausa y le des un momento
para pensarlo. Bueno, echemos un vistazo a
cómo resolvemos esto con código. primero es lo primero,
comenzaremos con el bloque de clic de
bandera W, ya que esto iniciará nuestro script automáticamente cuando
hagamos clic en la bandera. Ahora sabemos que nuestra libélula necesita moverse por la pantalla Sabemos que vamos a necesitar uno de estos bloques
en el grupo de movimiento. Podrías estar pensando que
deberíamos usar este bloque de código de
diez pasos de mover ya que lo
usamos para que nuestro gato
caminara por la pantalla. Sí, si bien podríamos usarlo para conseguir que la libélula vaya a la derecha diez pasos y a la izquierda por menos diez pasos,
hay un problema No podemos conseguir que la mosca dragón
suba y baje con esto. En lugar de usar
este bloque de movimiento, hay algo
mucho mejor que siempre
deberías estar usando en su lugar, y eso es este cambio x
por y cambio y por bloques. Ahora recuerda, cómo
dijimos que nuestra etapa
es vista como una cuadrícula, y nuestro sprite puede estar en cualquier punto de esta
cuadrícula por menos dos 40 x más dos 40 y menos
uno 80 y más uno 80 y. Si cambiamos nuestra posición x
por un número positivo, esencialmente
estamos moviendo nuestro sprite a la
derecha de la pantalla Y si es un número negativo, lo
estamos moviendo hacia el lado
izquierdo de la pantalla. Lo mismo ocurre con cambiar y. Si cambiamos y por
un número positivo, estamos moviendo nuestro sprite hacia arriba, y si lo cambiamos
por número negativo, estamos moviendo nuestro
sprite hacia abajo por la pantalla Ahora que sabemos todo esto, podemos agarrar dos de cada
cambio x y cambiar y. porque recuerden, para cada uno, necesitamos uno de ellos
como negativo. Ahora bien, si haces clic en
cada uno de estos bloques, podrás ver cómo
mueve nuestro sprite por la pantalla, que
es exactamente lo que queremos Ahora necesitamos es una forma de
controlar esto con nuestras
claves en lugar de hacer clic. Si recuerdas en
nuestra lección anterior, podemos hacer esto con el grupo de
detección de código. Aquí verás que
hay este bloque para verificar si se presiona una
tecla, que es exactamente lo que necesitamos. Si
sacamos esto a la luz, puedes ver que podemos cambiar
el espacio por bien, prácticamente cualquier llave que nos guste. Vamos a cambiarlo a flecha
derecha presionada. Todo esto está bien, pero
tenemos que conectar esto. Para ello se requiere
quizás uno de los bloques más importantes de la historia
que se encuentre bajo control, y es el bloque if then. Ahora recuerda cómo dije
con qué frecuencia tomarás decisiones. Si cierta condición es cierta, como si estuviera lloviendo afuera, usarás un impermeable El mismo concepto es muy
importante en la programación. Aquí, queremos comprobar si se presiona
una determinada tecla, entonces algo debería suceder obviamente moviéndose en
cierta dirección. También quiero que
notes algo muy importante sobre estos bloques con los que has estado trabajando, que son las diferentes formas, como las piezas de lego, y
encajan entre sí de maneras específicas. Ahora, estas formas están
diseñadas para ayudarte a entender
fácilmente qué bloques
pueden conectarse entre sí, al igual que ciertas
piezas de lego pueden encajar entre sí. Las formas le impiden conectar bloques que no
deben unirse, lo cual es útil para
evitar errores y mantener su código funcionando sin problemas. En el mundo de la codificación basada en
texto, es crucial asegurarse de que su código esté organizado
y libre de errores. Básicamente, se estructurará manera
bastante similar a
tu código scratch. Al tener diferentes
formas de bloque y scratch, la plataforma te guía para crear un código bien estructurado
y funcional, que es similar a
cómo las piezas de lego se
unen para formar una estructura
estable. Por ejemplo, encontrarás
que algunos bloques tienen una muesca en la parte superior y
un bache en la parte inferior. Estos bloques están diseñados para
apilarse uno encima del otro. Otros bloques tienen
una forma especial de C, lo que significa que pueden envolver alrededor otros bloques como esta
declaración o bucle para siempre. Esto ayuda a crear bucles o controla el flujo de tu código. modos, con todo eso despejado, conectemos este código Si se presiona la flecha derecha, queremos cambiar x
por un número positivo. Podemos poner eso aquí,
y luego agregar cuando flag clicked block to the
top completing script. A ver. Haga clic y reproduzca y luego haga clic en
nuestro botón derecho. Oh, eso no es bueno. Como ves no pasa nada
en absoluto. Y sabemos que tenemos
nuestra declaración if. Estamos comprobando si se
presiona la tecla. Entonces, ¿qué falta? Bueno, ¿tienes alguna idea de
lo que está pasando mal? Básicamente, es
solo verificar una vez, y cómo cuando queríamos que nuestro gato siguiera
nuestro punto del mouse, el
control no es suficiente. Necesitamos el código para verificar
continuamente si se
presiona
la flecha derecha. Para arreglar esto. Todo lo que tenemos que hacer es poner todo
este código en un bucle forever. Ahora, se está comprobando constantemente para ver si esta
condición es cierta. Si volvemos a presionar play, fíjese si hacemos clic en la
flecha derecha ahora, se mueve. Genial. Ahora todo lo que tenemos que hacer es lo
mismo para las otras claves. Ahora,
te voy a dar un Tipa muy práctico. En lugar de volver
a nuestra paleta de códigos y encontrar el bloque y
esta tecla presionar bloque, lo que podemos hacer en cambio
es simplemente hacer clic derecho en el bloque de código que
desee y hacer clic en duplicar. Ahora puedes ver que tenemos dos, y podemos duplicar
ambos bloques haciendo clic derecho en la parte superior
y duplicando nuevamente Ahora tenemos cuatro,
que es todo lo que necesitamos. Lo siguiente que hay que hacer ahora es
cambiar la tecla pulsada de entrada. Aquí haremos la flecha izquierda flecha
arriba y flecha abajo. Pero aún no hemos terminado. Ahora tenemos que cambiar lo que sucede. Si se hace clic en la flecha izquierda, necesitamos que x sea negativo Entonces si se hace clic en la flecha hacia arriba, necesitamos cambiar y y esta
vez por un número positivo Por último, para la flecha hacia abajo, debemos cambiar y por
un número negativo. Si jugamos ahora,
ahí lo tienes. Podemos
controlar oficialmente a nuestro personaje, y estás en camino de
convertirte en un desarrollador de juegos. Hay dos cosas
que quiero hacer ahora. Ahora bien, el primero es bastante fácil. En primer lugar, solo
quiero que esta libélula no se mueva tan rápido Y simplemente todo lo que necesito hacer
es reducir estos números. Así que lo voy a reducir a la mitad
y cambiarlo a cinco y menos cinco Entonces ahora verás que nuestro
personaje es fácil de controlar. Entonces lo siguiente
es que quiero que
el ladybu se desplace aleatoriamente
por la pantalla Así que tómate un momento para tratar de ver si
puedes hacerlo tú mismo. ¿Cómo podemos conseguir que la mariquita
se mueva por la pantalla? Bueno, esto
en realidad es muy sencillo. Como hicimos esto con nuestro
sprite de gato si recuerdas, todo lo que tenemos que hacer es traer
al iniciar clic, un bucle para siempre y luego deslizarnos 1 segundo a una posición aleatoria Ahora bien, si vuelves a hacer clic en reproducir. Puedes ver que nuestro juego
realmente está llegando ahí. Una señora Big se está moviendo y somos capaces de controlar
nuestra libélula Gran trabajo. Estoy llegando
a este punto. Ciertamente hemos
recorrido un largo camino.
10. Codificación de tu libélula: comienza el viaje: Bueno, nuestro juego se está
uniendo bastante bien. Ahora tenemos que hacer es introducir
el objetivo al juego, que obviamente es tratar
de atrapar a esta chinche? Porque ahora mismo, si
tocamos a la mariquita, en realidad
no pasa nada Pero lo que queremos que
suceda es que la mariquita desaparezca y
que nuestra libélula
um y tal vez toque un
sonido pop como si se hubiera comido Entonces comencemos
con nuestra libélula. Quiero que intentes conseguir que diga um, lo que quieras. Pero consigue que diga algo
cuando le toque a la mariquita. ver si puedes hacer eso. Pausa
este video, pruébalo. ¿Puedes conseguir que la libélula diga
algo cuando
toca a la mariquita Pensemos en
esto. Vamos a necesitar un bloque de detección para
sentir que el sprite
está tocando otro, y podemos usar este de aquí Ahora, haciendo clic
aquí, podemos cambiar el sentido táctil del
puntero del mouse a Lady Bug dos. Entonces al igual que con
nuestros clics de flecha, vamos a necesitar un bloque if condicional
y un bucle fore. Entonces necesitamos saludar
durante 2 segundos bloque conseguir que diga lo que queremos
cuando toca a la mariquita También hay una cosa
más. este bloque pop de sonido de reproducción. Al igual que antes, podemos
organizar nuestro guión para
que compruebe para siempre si
está tocando a la mariquita Si es así, vamos a tener que decir um y luego
tocar el sonido pop. Ahora bien, si lo jugamos ahora,
verás cuando ahora
toquemos a la chinche, si puedo tocarla. Ahí vamos. Dice, um, toca el sonido pop. Ahora, una cosa que puedo hacer para mejorar esto es tocar primero
el sonido pop, luego decir Yum por 2 segundos. Esto solo lo
hace más transparente. Bien. Fresco. Entonces nuestro
juego ya casi está ahí. Y antes de pasar
a programar a la mariquita, solo
quiero señalar
algo. Porque tal vez se esté
preguntando ¿por qué tenemos dos scripts
separados aquí? Como por qué no simplemente ponemos este trozo de código aquí dentro, así que solo tenemos un script. Bueno, si te lo estabas
preguntando, bueno preguntándote, buena
pregunta. Bueno, vamos a probarlo. Entonces agregándolo y ahora haciendo clic en
reproducir, lo verás. Ahora cuando tocamos a la mariquita, si puedo tocarla, ahí tienes Pero fíjate en lo repentino que ya no
puedo controlar a
la libélula Simplemente se congela. ¿Por qué es esto? Bueno, si miramos
nuestro guión lógicamente, sacando de nuevo el código, mira, todo esto es un bucle Por lo que constantemente estamos comprobando si alguna de estas
condiciones es cierta. Si uno de ellos es cierto, como hacemos clic en la
flecha hacia abajo, va hacia abajo. Pero recuerden cómo dije que el código
corre de arriba hacia abajo. Bueno, eso está pasando aquí. Entonces, cuando hacemos clic en Inicio, va a comprobar si se ha pulsado la flecha
derecha, luego va a
comprobar que la
flecha izquierda se está apretando, luego la hacia arriba, luego la hacia abajo. Entonces no es realmente verificar todas estas
condiciones al mismo tiempo. Va de arriba hacia abajo. Pero debido a que pasó tan rápido, parece que lo está comprobando
todo al mismo tiempo. No obstante, si tuviera que
añadir un peso 1 segundo, como a esto verifique
la flecha hacia abajo. Observe cómo funcionan perfectamente otras
flechas, pero tan pronto como comprueba
la flecha hacia abajo, todas las demás flechas se congelan. Y esto es porque está ejecutando el código
de arriba hacia abajo. Y cuando llega a este código, necesita esperar un segundo, y solo puede continuar el bucle una vez que termine el
segundo. Entonces básicamente,
es por eso que este código tiene el mismo problema porque
hay este um por 2 segundos, y solo
continuará haciendo un lopeo
del código una vez que haya terminado de
ejecutar el script Entonces esa es una de las razones por las que
usamos otro script, por lo que podemos tener varias cosas funcionando al mismo
tiempo sin ningún problema. Ahora, podría sacar esta suma por 2 segundos y volver a
agregarla al bucle. Mira, si lo volvemos a tocar, verás que funciona
y no se congela. Pero aunque solo quisieras que
nuestro sprite reproduzca un sonido, aún
deberías usar un guión
separado para esto Básicamente, tener guiones
separados es mucho mejor para
mantener las cosas organizadas. Verás, cuando haces programas
realmente grandes, ganancias
realmente grandes, las cosas
pueden llegar a ser bastante confusas. Y si solo tienes un guión
ultra mega largo, quizás no sepas
lo que está pasando. Lo que te sugerimos es que cada guión
que tengas haga sólo una cosa. Recuerden eso. Cada guión solo
debe hacer una cosa. Este guión controla los rastrillos, éste comprueba si estamos
tocando a Lady Bug, y si estás bien organizado
así desde el principio, estarás muy agradecido
en el futuro cuando hagas algunos juegos divertidos y realmente
complejos Con eso,
solo hay una cosa más codificar
para que nuestro juego
esté completo, y es conseguir que
la mariquita desaparezca cuando
toca la libélula Intenta darle
una oportunidad a este reto y mira si
puedes hacerlo por tu cuenta. De lo contrario, te veré en la siguiente lección y
te mostraré cómo se puede hacer.
11. La persecución concluye: atrapando a la mariquita: Bueno, veamos cómo podemos
rematar nuestro primer juego. Ahora, al igual que con
la libélula, tenemos que sentir si
estamos tocando el sprite Entonces estoy bastante seguro de que
sabes qué hacer aquí, porque básicamente es
exactamente lo mismo que tiene
la libélula excepto en lugar de que la
libélula detecte, si está tocando a la chinche, es al revés Pero quiero mostrarte
otro poco más complicado. Recuerda antes, aprendimos que podíamos
duplicar código en un sprite Bueno también podemos duplicar
código entre sprites. Volviendo a nuestra libélula, simplemente
podemos hacer clic
y arrastrar el guión y soltarlo en
nuestro sprite de mariquita Al hacer esto, se
duplicará automáticamente el script. No ahora dos tiene este guión. Eso es genial. Ahora todo lo que
tenemos que hacer es cambiarlo de tocar las mariquitas
a tocar las libélulas Si aún no has
descubierto cómo eliminar el código, solo
tienes que arrastrarlo a esta
área aquí y nosotros lo eliminaremos. Ahora, lo que queremos que haga es esconderse cuando
toca la mosca dragón, casi como si se estuviera comiendo. Entonces aquí, solo podemos
ir a la pestaña Looks, traer el código hide, así nuestro sprite se esconde cuando
toca la libélula Ahora bien, si volvemos a jugar. Fíjate si tocamos
una chinche, se esconde. Pero desafortunadamente, tenemos
algunos problemas porque es una especie de escenario oculto,
y no queremos eso. Y en segundo lugar, nuestra libélula no reproduce el sonido
que queremos. Pero esto nos lleva a un aspecto importante de la depuración de
programación No estoy
hablando de nuestra mariquita, pesar de que es una coincidencia
graciosa La depuración es
esencialmente el proceso de encontrar y corregir
errores en su código En la programación, hay
dos tipos principales de errores. En primer lugar, hay lo que
se llama errores de sintaxis. Básicamente, todo
lo que eso significa es que estos son errores cuando escribes
código que no sigue la sintaxis correcta
o las reglas de cómo se
debe escribir el código y el lenguaje de
programación. Los errores de sintaxis generalmente impiden que su código
se ejecute en absoluto. Pero por suerte, no
tienes que preocuparte por esto porque scratch evita estos errores porque
podrías
intentar conectar dos bloques que realmente
no encajan entre sí, y esto básicamente es
decir, no, hacer esto
causaría esencialmente un tipo de error de sintaxis Pero básicamente, scratch te está obligando a escribir
con el uso de bloques, código
perfecto sin errores de sintaxis, cual no es malo. No obstante, el siguiente tipo de bug son los que tienen que
ver con errores lógicos. Estos errores ocurren cuando tu
código está escrito correctamente, pero no hace
lo que pretendías hacer. Por ejemplo, en nuestro juego, si la chinche
no se esconde cuando es acorde o si
se esconde demasiado pronto, eso sería un error lógico. Tu código aún se ejecuta, pero el resultado no es el
que esperabas. Y estos errores
ocurrirán todo el código de tiempo. Pero eso es solo parte
de la programación. Nunca debes esperar tu programa funcione
perfectamente en el primer intento. Realmente vas a
tener mucha suerte si eso sucede. En cambio, se trata de
depurar y encontrar todos los errores que hay en tu código y deshacerte de
ellos para que funcione bien Además, a medida que adquieras
más experiencia, mejorarás detectando
y arreglando estos errores Entonces con todo eso dicho, echemos un vistazo a estos errores lógicos y
veamos si podemos solucionarlo. Al mirar el
guión para Lady Bug, puedes ver que conseguimos que se
esconda cuando toca
la libélula Pero nunca conseguimos
que vuelva a mostrarse. Entonces lo que podríamos hacer es traer un bloque de espectáculos justo debajo de esto. Pero también debes notar inmediato que
esto solo se va a esconder y mostrar de
inmediato y pasa tan rápido que
parece que no pasa nada. Y podemos confirmar
esto haciendo clic en reproducir. Se puede ver que en realidad
no se esconde. Lo que necesitamos aquí es
un bloque de código de peso. Así podremos hacer que el sprite se esconda y luego se muestre después de
un poco de tiempo, agregándolo entre
estos dos bloques y luego volviéndolo a jugar Sí, se puede ver
que se esconde correctamente, y luego
vuelve a aparecer por un segundo. Sin embargo, todavía
tenemos un error más, y es que nuestra
libélula no está diciendo um y haciendo
ese sonido genial Ahora bien, esto es un poco más difícil
ya que nuestro código parece perfecto. Para solucionarlo, necesitamos
pensar como una computadora y averiguar por qué
no funciona como se esperaba. Analicemos la situación. Si miramos nuestro código de
libélula, cuando toca a la mariquita, se supone que diga
um y reproduzca un sonido Sin embargo, cuando
observamos el juego, la mariquita se esconde
inmediatamente al tocar la libélula, lo que significa que la
libélula no tiene oportunidad de detectar
que está tocando a Para solucionar este problema, podemos agregar un breve retraso antes de que
la mariquita se esconda, permitiendo que la libélula tenga tiempo para
registrar que está
tocando a la Y podemos hacer esto
simplemente agregando un bloque de peso antes
del bloque hide en
el código de Lady Bugs y
configurando el tiempo de espera a algo corto
como 0.1 segundos. Esto creará una breve
pausa ante la mariquita, pero le da a la mosca dragón el tiempo
suficiente para sentir que está
tocando a la mariquita, pero aún así nos parece casi
instantánea Probemos de nuevo el código. Entonces lo tienes. Nuestro
primer juego está funcionando y todos los errores han
sido aplaudidos y depurados Re realmente gran trabajo para
llegar a este punto. Tú ahora podría decir
un desarrollador de juegos. Pon eso en tu recupe
pero prepárate para hacer algunos juegos mucho más emocionantes que esto en las siguientes secciones
12. Prepararás el escenario para un partido de fútbol: Bueno, estamos listos para ponernos marcha con nuestro
nuevo proyecto. Entonces espero que estés
listo para subir de nivel tus habilidades de programación.
Lo primero es lo primero. A este es un juego nuevo, necesitamos crear un nuevo proyecto. La buena noticia es
que en realidad es bastante fácil. Pero primero, asegúrate de que tu proyecto actual esté guardado. Ahora bien, hace
esto automáticamente. Pero si estás
a punto de salir de tu t o cerrar tu computadora, simplemente haz clic en el botón Guardar ahora. Si no ves el
botón, solo significa que tu proyecto ya
está guardado. Entonces con él guardado,
todo lo que tenemos que hacer es hacer clic en el botón de cero
aquí y luego hacer clic en Crear. Y una vez más, tenemos
un proyecto completamente nuevo. Y también tenemos a este
gato de forma gratuita. Pero desafortunadamente, para el gato, no lo necesitamos en este
proyecto, así que no podemos eliminarlo. También, como pueden
ver, nuestro proyecto se acaba de llamar Sin título, por lo que también podemos nombrarlo Lo llamaremos juego de cabecera de
futbol. Sí. Sé que en
realidad no es un nombre creativo, pero puedes nombrarlo como
quieras, aunque es una buena idea nombrar
a tu programa algo que
te facilite identificarlo y
encontrarlos más tarde. Ahora con eso hecho,
estamos listos. Pero antes de morir de escribir, recuerda cómo en la sección
anterior, platicamos sobre la importancia de descomponer un gran proyecto como construir un juego y pasos
más pequeños alcanzables Hacemos esto porque no sólo hace que el proceso sea
más manejable, sino que también te ayudará a desarrollar buenos hábitos de programación
e incluso hábitos ligeros Es algo así como
escalar una montaña. Si estás en la
parte inferior y estás mirando hasta arriba, honestamente
parece imposible. Pero si solo miras
hacia adelante diez pasos, piensas para ti mismo, si, yo podría caminar esos diez pasos. Y entonces
esperas otros diez pasos y caminas esos diez pasos. Y antes de que te des
cuenta, estás en la cima
de la montaña. Y lo mismo ocurre
con la programación. Solo estamos abordando
esta montaña de juego dividiéndola en
una serie de escalones más pequeños Para este juego, por suerte, no
es demasiado grande y complejo, pero aún podemos descomponerlo. Empecemos por hacer un sencillo juego de
cabezazo de futbol donde el jugador mueve
a un personaje para mantener una pelota en el aire. Ahora, usaremos los activos que se
encuentran en la biblioteca de scratch, incluido nuestro personaje principal,
Ben, el balón de fútbol Sprite y un telón de fondo de campo de fútbol
llamado soccer two Porque esta montaña
de juego no es demasiado grande. Es más como una colina
que una montaña. Podemos dividirlo en
sólo tres pasos. Los pasos son
configurar la estructura básica, desarrollar la mecánica de juego
y pulir el juego. Primero, establecemos la estructura
básica. Así que traeremos todos los activos
necesarios como sprites y fondos para
establecer la base de los juegos Ahora, para juegos aún más grandes, podrías dividir esta
etapa en tareas
más pequeñas como
construir la pantalla de inicio, luego el personaje principal o elementos
específicos del juego. Segundo, tenemos que desarrollar
la mecánica de juego. Entonces, una vez que tenemos los elementos
esenciales en su lugar, podemos comenzar a programar
la mecánica del juego. Ahora, tendremos que codificar
el movimiento del personaje, la física de la pelota y las interacciones entre el
personaje y la pelota. Y luego finalmente, tenemos la etapa
pulida y refinada. Entonces, después de que la
mecánica central esté funcionando, podemos agregar más detalles como efectos de
sonido y animaciones
e incluso anotación. Y aquí es también cuando jugaremos a fondo
y probaremos el juego, haciendo
los ajustes necesarios para asegurarnos de que sea agradable
y atractivo. Bueno, con este
concepto tan importante fuera del camino, quiero que intentes completar la primera etapa por ti mismo, que es traer todos
los activos necesarios. Recuerda, estos son
nuestro personaje principal, un sprite de balón de fútbol, y un telón de fondo de campo de fútbol
llamado soccer two Así que pausa el video
y prueba a ver si puedes hacer esto. Si lo intentas por ti mismo,
bueno, bien hecho. Pero veamos cómo se hace. En primer lugar, podemos importar nuestros dos sprites en
nuestro proyecto scratch Entonces al hacer clic en esto en
un botón de sprite, simplemente
podemos buscar a Ben, y aquí está A continuación podremos darle click de nuevo
y buscar el balón. Por aquí hay una
bola de calcetín. Podemos usar. Por último, está el telón de fondo. Para ello, sólo podemos dar click
aquí y elegir fútbol para. Entonces lo tienes. Se realiza la
primera etapa. Has establecido con éxito la base para tu juego de cabecera de
fútbol, y estamos listos para
comenzar a darle vida a nuestros sprites con código Pero
a medida que continuamos desarrollando este juego y cada juego y proyecto en el
que trabajas aquí después, recuerda la
importancia de romper un gran problema en pasos
más pequeños porque
cuando haces esto, realmente nada es imposible. Incluso se puede hacer escalar el Monte
Everest.
13. Dando vida a los personajes con el código: Bueno, ahora que tenemos
todo en orden, podemos pasar a nuestra siguiente etapa, que es desarrollar la mecánica de
juego. Ahora, al igual que con
nuestro proyecto anterior, podemos comenzar con nuestro
personaje principal, que es Ben. Entonces en este juego, queremos que Ben
intente mantener la pelota en
el aire encabezándola. Todo lo que Ben necesita hacer es ir a izquierda y a la derecha y cuando
hacemos clic en los rastrillos Ahora, estoy muy
seguro de que puedes resolver este problema por
ti mismo. ¿Por qué no? Pausa el video e
intenta completar esta parte por ti mismo.
Pausa y dale ir. Te voy a mostrar cómo
hacerlo en un momento, pero mira si puedes
averiguarlo cómo podemos hacer que Ben se
mueva de izquierda a derecha. Bien. Veamos cómo hacerlo. Estamos prácticamente creando exactamente
el mismo guión que
teníamos para nuestra libélula
excepto que esta vez, nuestro personaje no
necesita subir o bajar. El código que necesitamos es cuando se hace clic en
flag, un forever, y un F. Ahora, antes de
que agreguemos el resto, solo
quiero que notes
con qué frecuencia hemos usado
este grupo de códigos Cuando la bandera haga clic
para siempre y F. Este es un grupo súper importante de código que se usa
a menudo
porque permite crear programas que se ejecutan continuamente con el
forever y reaccionan a condiciones
específicas con la
F. Estos bloques de código forman la base de muchos proyectos
rayados y son esenciales para crear programas
interactivos Al seguir adelante, el resto
es lo mismo. Traeremos la tecla presionada, cambiaremos a la flecha derecha. Entonces ve a los movimientos y
trae este cambio x por diez. Esto significa que presionamos
la flecha derecha, se moverá diez
veces hacia la derecha. Ahora podemos simplemente
duplicar esto, cambiarlo a la flecha izquierda, y cambiar x a menos diez. Esto significa que se moverá diez veces hacia la izquierda. Ahí vas. La primera parte de nuestra
mecánica de juego está hecha y desempolvada. Eso fue bastante rápido, ¿no?
14. Rebote hacia el éxito: animación de la pelota de fútbol: Bien, entonces tenemos
nuestra mecánica de juego abajo para nuestro personaje principal. Ahora tenemos que hacer lo
mismo por nuestro balón. En primer lugar, queremos que
nuestra pelota
rebote por la pantalla antes de intentar que
interactúe con el plan futbolero ¿Cómo podemos conseguir que nuestra pelota rebote
aleatoriamente
alrededor de la pantalla? Bueno, vamos a darle una oportunidad. Vamos a agarrar el
clic de la bandera ganadora y también traer
un bucle para siempre. También, sabemos que tiene
algo que ver con el movimiento. Echemos un vistazo para
ver a qué nos vendría bien. Sabemos que podemos mover la pelota por la pantalla
cambiando su posición. Y hay un
bloque aseado que dice, yo en el borde rebote,
lo que suena esperanzador. Vamos a traer ambos de
estos a nuestro guión y hacer clic en reproducir. Hm. No, eso no es
exactamente lo que queremos. El balón apenas se mueve
hacia el lado derecho de la pantalla y rebotando
cuando golpea el borde, lo que es de esperar Entonces este cambio por claro
no es el bloque que necesitamos. Pero antes de continuar,
trata de jugar una ronda
de bloques y ver si
puedes hacerlo bien. Vamos. Pausa y
pruébalo. ¿Lograste averiguarlo? Bueno, veamos cómo
podemos arreglar esto. En primer lugar, este cambio x no
es lo que queremos. Vamos a deshacernos de él. Ahora, recuerda cómo con
nuestro primer programa, te
dije que no usaras el bloque de
diez pasos de mover porque no
podemos hacer que suba y baje. Bueno, eso no es del todo cierto
porque en realidad no puedes. Verás, cuando nos movemos diez pasos, estamos moviendo diez pasos en cualquier dirección que esté enfrentando
el sprite Si nuestro sprite nos
enfrentamos, nos moveríamos hacia arriba. Todo esto tiene que ver
con la dirección, y la dirección de
un sprite se puede establecer aquí o por
estos bloques de código De todas formas, no nos preocuparemos
demasiado por cómo funciona
la dirección en este momento ya que te volverás bueno en
ello en nuestros próximos juegos. Pero lo que debes saber es
cuando rebotamos en el borde, apuntará el sprite en una dirección aleatoria que es opuesta a la pared,
está rebotando Con todo eso en mente, si ponemos el
bloque en movimiento aquí en su lugar, observe cómo nuestra pelota
rebota por la pantalla, cómo la queremos Estamos llegando
con nuestra mecánica de juego. A continuación, necesitamos conectar ambos sprites para
que podamos
empezar a poner en marcha algunos anuncios. Bien.
15. Dominación de la interacción: dinámica de la pelota y el jugador: Bueno, ahora que tenemos
la mecánica básica del juego funcionando para ambos sprites. Es momento de hacer que todo
funcione en conjunto comprobando que
la pelota es tocar
la cabeza del jugador y luego
rebotar si lo hace Pero antes de seguir adelante
y resolver esto, hay dos cosas que quiero
arreglar con el jugador. El primero es conseguir que
el jugador
aparezca más abajo para que tengamos más espacio, y el segundo está cambiando a un disfraz más apropiado. Apuesto a que puedes averiguar
cómo hacer ambas cosas. Vamos. Detengamos el
video y averiguarlo. Lo primero es hacer clic en nuestros jugadores a la derecha para que podamos
conseguirle un par bajo. Ahora, podría simplemente
arrastrarlo así. Pero esto no es lo ideal porque si lo
vuelvo a mover por accidente, todo
no va a funcionar correctamente. En cambio, lo que voy a
hacer es traer esto ir a bloquear y
cambiar la x a cero, y hagamos el y -90 Eso en realidad se ve perfecto. Agreguemos esto
al inicio del guión. Así que ahora cada vez que nuestro guión comenzará en la posición
correcta. Entonces, por último, para nuestro personaje luzca
correcto en este juego, podemos entrar en el vestuario
y cambiarlo por éste, Ben C, que funciona mucho mejor. Ahora, necesitamos conseguir el balón para responder a
nuestro personaje principal. Haga clic en el sprite de bola. Ahora, pensémoslo. Básicamente, lo
que queremos que suceda es que la pelota
rebote en la cabeza del jugador. ¿Qué
instrucciones o código específico? ¿Necesitamos escribir para
lograr esto? Bueno, este problema también
tiene que ver con la detección. Como estamos sintiendo, si la
pelota está tocando a nuestro jugador. Sabemos que vamos a tener nuestros bloques de código
básicos para esto, los
cuales los enumero antes de recordarles
los bloques de código básicos. El inicio único, el
para siempre, y el F. Al
igual que nuestra libélula,
vamos a necesitar este código
conmovedor Y aquí podemos cambiarlo a
sentido si está tocando a Ben. Fresco. Ahora sabemos si el
balón está tocando a Ben. Ahora, ¿qué podemos hacer para que rebote
si toca sido? Bien. Notarás que desafortunadamente
no
hay rebote de tocar el bloque del personaje principal,
que si realmente genial. Pero recuerden, con código, nunca va a
haber un
solo bloque que haga esto. Se trata de combinar código y crear
scripts para lograr esto. Esto es realmente lo
grandioso, que verás en futuras lecciones. Esto es programación, y lo
que puedes hacer es guardar estos scripts y usarlos
en diferentes programas. A lo mejor en un programa diferente, necesitamos un script que
rebote en otro sprite Una vez que creamos este script, podemos reutilizarlo para siempre, y este es un
concepto de codificación importante. Se llama código reutilizable, y ahorra mucho tiempo. Pero volviendo a ello, pasemos al grupo de mociones. Ahora recuerda, cómo estamos
usando este bloque de código de movimiento, y lo especial de
esto es cómo la dirección en la se mueve
la pelota
depende de la dirección a la que se enfrenta. Simplemente para que nuestra
pelota rebote, todo lo que tenemos que hacer es
enfrentarla en dirección ascendente. Y para ello, todo lo
que tenemos que hacer es traer este punto en
el bloque de dirección. Pero ahora mismo se puede ver que
está intentando a 0.90 grados, que está a la derecha Pero si hacemos clic en esto, fíjate que trae a colación esta
práctica cosa pequeña flecha. Para nuestro código,
queremos que la pelota
suba para que podamos
enfrentar la flecha hacia arriba, que es cero grados. Ahora bien, si jugamos nuestro código, verás que cuando
toquemos la pelota, rebota. Perfecto. Aunque como puedes ver,
simplemente sube y
baja arriba y abajo, lo que lo está convirtiendo en
un juego muy fácil. Pero en la siguiente lección, veremos cómo podemos hacer que
este juego sea un poco más desafiante y mucho
más divertido con la aleatoriedad.
16. Abrazar la aleatoriedad: eleva el desafío del juego: Bien. En este momento, decir
que nuestro juego es fácil
probablemente sea más allá de
quedarse corto Como que simplemente te sientas ahí
y esperas la pelota. Pero eso se detiene aquí. Es hora de hacer de este
juego mucho más desafiante y divertido
abrazando la aleatoriedad Mirando nuestro código para la dirección de
nuestro punto, y se puede ver que
simplemente apunta hacia arriba, así que se
espera este comportamiento ya que eso es lo que le
estamos diciendo a la pelota que haga. Pero lo que realmente queremos es que la pelota no solo apunte
hacia arriba cada vez, sino que queríamos
apuntar solo un poco a lado. Entonces, ¿cómo
podríamos hacer esto? Bueno, recuerda como dije, este código es como lego donde diferentes piezas pueden
caber dentro y entre sí. Bueno, si miras, notarás que esta zona tiene este círculo
o esta forma de tipo ovalado. Ahora mirando a través de nuestro código, verás que mucho
código es una forma. Por ejemplo, si tomamos
este bloque de exposición, veremos cómo podemos ponerlo dentro este bloque de dirección de punto
porque es la misma forma Haver notarás que
si jugamos el juego ahora, la pelota
no hace lo que queremos Claramente este no es el
bloque que estamos buscando. Pero para darle una pista,
el bloque que
necesitamos en realidad se encuentra
bajo el grupo de operadores. Ahora, recuerden lo que
dijimos al inicio, por bloques de código que se
ocupan de las matemáticas, que ahora son importantes
para nosotros usar. Por qué no darle una oportunidad.
Intenta ver si puedes encontrar el bloque de código que
usaremos para que nuestra pelota
rebote correctamente Solo haz una pausa y pruébalo. ¿Lo encontraste? Bueno,
vamos a echar un vistazo. Básicamente queremos que
la pelota rebote hacia arriba y también mordió a
la derecha o a la izquierda. Si miras este
código, verás que existe este bloque aleatorio de
selección. Aquí, podemos simplemente poner este bloque en la dirección del
punto. Jugando rápidamente, se puede ver que hace lo que queremos,
pero no exactamente. Es más simplemente a
la deriva hacia un lado. Eso es porque necesitamos
cambiar estos números. Eliminando esto nuevamente, ¿podemos dar
click en nuestra dirección de punto para hacernos una idea de qué
números debería ser? Moviendo esta flecha. Yo diría que -45 y 45
o una dirección bastante buena. Vamos a introducir eso en
nuestro pick random. De nuevo, ponlo de nuevo en nuestro
código. Volviendo a hacer clic en reproducir. Ahí lo tienes.
Eso es mucho mejor. El juego finalmente está
llegando a alguna parte y es mucho más desafiante. Sí. ¿Quién dijo que las matemáticas no son divertidas?
17. Programación de precisión: perfeccionamiento del encabezado: Un juego realmente está llegando. Pero este es un
juego de cabecera después de todo. Si juegas el juego, puedes ver que no solo tienes que golpear la
pelota con la cabeza. Puedes usar cualquier
parte de tu cuerpo y golpear la pelota con la cabeza no
parece ser el
elemento principal del juego. ¿Cómo podemos arreglar esto para que solo cuando la
pelota nos golpee en la cabeza, empiece a rebotar? Mira nuestro código. Esto
es de esperar. Todo lo que en realidad está haciendo es detectar que la pelota
está tocando sido, que es todo el personaje. No tenemos ningún
código para lidiar con esto porque
no es como si tuviéramos código que diga si le está tocando
la cabeza, haga algo. Pero eso está bien porque
somos programadores, y resolvemos problemas ¿Qué podríamos hacer? Bueno, tal vez podríamos escribir algún
código consumado que verifique la posición y de la pelota y compare con la
posición y de la cabeza de Ben, y así sucesivamente y tal vez
eventualmente podríamos resolver el
problema así. Pero van a tomar
mucho código y programación. Pero también se trata de
pensar fuera de la caja para encontrar soluciones simples
a problemas complejos. Todo lo que queremos que haga nuestro código es
verificar si estamos
tocando la cabeza de Ben. Pausa el video y
piensa por un momento. ¿Qué cosa inteligente podríamos
hacer para resolver este problema? Queremos que la pelota sólo
rebote en la cabeza de Ben. Pausa y piensa. ¿Se te
ocurrió alguna buena idea? Bueno, aquí hay una forma espantosa
pero inteligente de hacerlo. ¿Qué tal esto? Le
cortamos la cabeza a Ben. Bien, aguanta. Sueno como
una locura. Pero escúchame. Si podemos tener un
sprite separado para la cabeza de Ben, podemos comprobar fácilmente si la pelota solo está
tocando la cabeza Pero claro,
también necesitaremos el cuerpo de Ben, para que podamos tener eso también
como un sprite separado Pero antes de que le corte el cuerpo de la cabeza a
Ben, voy a
mostrarte otro truco. De hecho, podemos duplicar
un sprite completo solo hacer clic derecho
y presionar duplicar Aquí puedes
ahora hemos sido dos. Ahora con eso hecho, podemos ir a nuestro estado original, ir a disfraces, aquí puedes ver que en realidad podemos hacer muchos ajustes a nuestro personaje. Pero todo lo que tenemos que hacer
es quitar el cuerpo. Podemos arrastrar y seleccionar todo
esto y golpear retroceso. Ahí vas. Ben es
ahora un flotando. No obstante, debido a que antes lo
duplicamos, ni siquiera nos dimos cuenta de esto. Y si volvemos a jugar el juego, mira cómo funciona a la perfección, y aunque
la pelota toque el cuerpo, no cuenta. Sin embargo, lo único que diré es que nuestro
sprite bend two funciona perfectamente es un poco involuntario ya que no lo hemos programado en absoluto En la programación,
causamos un feliz accidente. Pero la razón por la que
funciona es porque los controles son exactamente
los mismos. Yo sólo le sigo. A pesar de que esto funciona,
lo cual es genial, todavía
necesitamos cambiar este
código porque el problema que
tenemos es que si alguna vez cambiamos nuestro código original y
Ben, por ejemplo, cambiando el xp dos
siete y menos siete, puedes ver ahora
las cosas empiezan a ponerse un poco extrañas ya que Ben
tiene doble cabeza En lugar de este código aquí, podemos deshacernos de
él y reemplazarlo con solo un go to block. Y ahora podemos seleccionar a Ben. Ahora bien, si aplicamos nuestro
código una vez más, notarás que
funciona no hay problema, y esto es lo que
llamamos código robusto ya que es capaz de adaptarse a
sus circunstancias. Entonces aprendemos algunas
lecciones importantes en esta lección. Piensa creativamente, pero
también asegúrate codificar de una manera resiliente que funcione incluso
si las cosas cambian Con el tiempo, aprenderás
a hacer esto cada vez más.
18. Fin del juego: introducción de las consecuencias de los encabezamientos perdidos: Bueno, un juego se está
uniendo bastante bien. Pero creo que
aquí se puede
ver el problema claro , ¿cuál es así de bien? Si nos perdemos el encabezado,
simplemente sigue adelante, y esto hace que la jugabilidad sea
bastante fácil. Simplemente no hay ningún reto real. En esta lección,
estaremos viendo cómo podemos terminar nuestro juego cuando
nos perdamos el encabezado. Si te mueves
al grupo de control, posible que hayas notado
un bloque especial por aquí con la palabra parar todo creo que no se requiere
explicación de lo que hace esto, como estoy seguro que puedes adivinar,
este bloque se detiene todo. Por ejemplo, si
juego este guión,
y luego hago clic en
este bloque, observe cómo el juego llega a un holt El bloque está claramente
haciendo su trabajo. Se está deteniendo todos los
scripts en todos los sprites. Pero igual que los otros bloques, podemos cambiar lo que
hace haciendo clic aquí. En lugar de detenerlo todo,
podríamos simplemente detener este guión. Básicamente, sea cual sea el script en el
que
pongamos este bloque, detendrá ese script cuando el script llegue a
este bloque de código. Alternativamente, también podemos detener otros scripts
en el sprite, y como dice el nombre, todos los demás scripts en el sprite excepto
este, se detendrán Hay otro aspecto
importante que
quiero que mires. Pero básicamente, fíjate
como en estos momentos, esto es como un bloque de código
normal. Sin embargo, si lo cambio para
detener este script o todo, vea cómo cambia el bloque de código, y no hay
sangría en la parte inferior Básicamente, esto significa que no
puede haber código bajo este bloque. Verás si lo intentamos. Simplemente no conecta. Si lo piensas, tiene mucho sentido
porque si detenemos todo
o detenemos este script, el código debajo de él
nunca se ejecutaría en ningún lado. No tiene sentido
poder agregar ningún
código debajo de él. Bueno, ahora que entiendes
cómo funciona el stop block, te
voy a dar un reto
bastante complicado. Creo que estás a la altura. Quiero que en
un momento detengas el video y veas si puedes conseguir que el juego se detenga cuando
la pelota toque el suelo. Ahora, recuerden, esto
va a requerir mucho pensamiento
lógico o pensar
fuera de pensamiento
lógico o pensar la caja,
pero darle una oportunidad. ¿Puedes conseguir que el juego se
detenga para parar cuando la pelota
toque el suelo Pausa, piensa y prueba. Bueno, si realmente lograste que esto funcionara,
eso es increíble. Pero aunque no lo hicieras, eso también es genial porque
aquí es donde
ocurre el aprendizaje al tratar de
resolver las cosas. Aquí es donde realmente
te diviertes mucho. Veamos cómo se podría hacer. Veamos dos
formas diferentes en las que podemos lograr que esto se haga. primero es lo primero,
vamos a necesitar uno de nuestros
empezamos para siempre, y si packs combo. Simplemente duplicaré este y simplemente me desharé
del código que hay dentro. Entonces lo volveré a duplicar porque estamos
cubriendo dos métodos. Ahora bien, el primer método en el que
vamos a
pensar un poco está bastante listo para usar. No sé si se te
ocurrió esto, pero si lo hiciste, eso es genial. Vamos a bajar
al grupo de detección. Mira esta opción tocando el
color. Eso es genial. Podemos comprobar si nuestro sprite está
tocando un color específico. Interesante. El único
problema es qué color verificamos porque el fondo es
más o menos del mismo color. Bueno, cambiemos eso. Pinchando sobre nuestro telón de fondo y
luego yendo a este editor. Observa cómo hay un montón de herramientas que puedes
usar para personalizarlo. Pero todo lo que necesitamos es un
color específico en la parte inferior. Para ello,
sólo puedo usar esta herramienta. Elige un color único y
dibuja una línea en la parte inferior. Entonces lo tienes.
Ahora puedo cambiar el toque a este color
usando el seleccionador de color Por último, agregue en mi stop all. Ahora cuando jugamos el juego, y luego cuando
echamos de menos, nuestro juego se detiene. Es genial. Eso funciona. Esa fue una forma creativa
de resolver este problema. Pero antes de seguir adelante, voy a mostrarte otro método, pero será rápido. Como puedes ver aquí,
ya he ensamblado el guión, y si jugamos el juego, verás que funciona
igual y ni
siquiera necesita
el toque y el color. Al mirar el guión,
se puede ver que comprueba si la posición y de la pelota
es menor que menos uno 50, lo
que básicamente significa que está tocando el suelo, si lo es, bueno, se detiene. A fácil. Ambos
métodos funcionarían, y a veces necesitamos formas
creativas de hacer las cosas. Pero si pensamos aún más, podríamos encontrar una manera que sea aún más fácil, siempre seguir pensando. Eso es básicamente todo. Tu
juego está listo para jugar. En las próximas lecciones,
lo
estaremos haciendo mucho más divertido con
puntuación y niveles. Pero por ahora, solo aprecia lo lejos que has llegado este
juego que has construido, juégalo un poco
y diviértete un poco.
19. Llevar la cuenta: introducción de variables y lógica de juego: Creo que todos podemos estar de
acuerdo en que a este juego le
falta algo
bastante crucial. Algo fundamental
y absolutamente necesario para todos los partidos, y eso es puntuación
porque ¿cómo
vas a flexionar a tus amigos cuando ni siquiera
puedes
mostrarles una puntuación alta? Al poner en una función de puntuación, estarás aprendiendo uno de los conceptos de
programación más fundamentales y estarás usando un
bloque de código que aún no hemos tocado, y eso son variables. Entonces, ¿estás listo para continuar con tu aventura de
aprendizaje? Mirando nuestro juego,
lo que queremos es una pequeña puntuación en la parte superior que indique cuántas veces
hemos encabezado el balón, y queremos que el marcador
se reajuste si fallamos. Pasando al grupo de código de
variables, se
puede ver que en realidad
no
hay tantos bloques de código aquí. Y para los bloques de código que
se consideran tan importantes, podrías estar pensando que esta
área debería apilarse. Bueno, a diferencia de todos los
demás grupos de bloques de código que hemos visto, con variables,
en realidad
puedes hacer más bloques de código haciendo
clic en este botón de aquí, que
veremos en un minuto. Pero antes de hacer
esto, solo quiero que entiendas
qué son
las variables. Ahora, en la programación,
muchas veces necesitamos almacenar
información para que
podamos usarla más adelante y
también necesitamos una forma de obtener
esta información fácilmente. Aquí es donde entran las variables. Las variables son como contenedores
que contienen información, y por eso
llamaron variables. Básicamente significa que el contenedor puede contener varios
tipos de información. Podemos dar nombres de variables para que podamos
acceder fácilmente a ellas y poner información
en ellas y usar la información
donde la necesitemos. Piense en variables como cajas en las que podamos
almacenar cosas. Al igual que podrías tener una
caja para guardar tus juegos, una caja para guardar tus libros, una caja para guardar tus calcetines
viejos o lo que sea. Las variables son
más o menos las mismas. Pero en lugar de almacenar objetos
físicos como libros y juegos y apestosos calcetines viejos, las variables almacenan datos como números y texto.
Imagínelo así. Tenemos una puntuación de núcleo variable. Y dentro de esta variable, estamos almacenando el valor cero. Pero cuando nuestra jugada se
adelanta, retrocedemos, miramos dentro de nuestro
cuadro variable anotado score para descubrir qué valor hay
actualmente dentro de la variable. En este caso, cuando
miramos dentro de él, cero. Ahora que hemos mirado dentro la caja y hemos
descubierto que es cero, simplemente
podemos agregar uno, lo que nos da uno y
guardarlo de nuevo en la caja. Entonces podemos mostrar
nuestra variable y la puntuación de una se
muestra en la pantalla. Cuando lleguemos a otro encabezado. ¿Qué hace el programa
? Regresaré, miraré dentro del cuadro de partitura, y esta vez verá
que tiene un número
uno guardado ahí dentro. Simplemente podemos agregar uno a esto, que ahora nos da dos, almacenar eso de nuevo
dentro de nuestra variable, y mostrarlo en la pantalla. Obviamente, sigue
y sigue. Pero básicamente, quiero que entiendas
cómo las variables son solo
cajas de almacenamiento digital con nombres. Estas variables nombradas pueden almacenar cualquier número de texto a números, et, y podemos
verificar fácilmente qué valores tienen
nuestras variables. Y podemos usar nuestras variables de varias maneras como
mantener nuestra puntuación para nuestro juego o incluso de una
manera
invisible detrás de escena como aumentar
la dificultad del juego como
veremos más adelante. Entonces ahora que entiendes
la idea básica de las variables, echemos un
vistazo a estos bloques y veamos cómo se
relacionan con lo que dijimos. En primer lugar, recuerda cómo
dije el grupo de variables, te
permiten crear nuevos bloques. Bueno, para hacer eso, sólo
tenemos que dar click sobre este botón, y esto hace una nueva variable. Entonces básicamente una nueva caja para
almacenar nuestra información digital. Como puede ver, nos pregunta cómo queremos
llamar a la variable. Debido a que esto va a
contener nuestra información de puntaje, lo
llamaremos puntaje. Entonces justo debajo de esto, vea cómo nos da una decisión. Es esta variable
para todos los sprites, o es solo para este sprite Ahora, básicamente lo que esto significa es que todos los demás sprites pueden ver y modificar nuestra variable de puntuación o solo este
sprite puede acceder a ella En programación, esto
es lo que llamamos alcance. Eso es como una
palabra elegante para qué parte del código puede ver
o modificar variables? Si todos los sprites pueden ver
y modificar la variable, eso se llama un alcance global Mientras que el sprite solo
puede ver y modificar, esa es una variable de alcance local Elegiremos el
sprite solo ya que nuestro sprite no necesita tener
acceso a nuestra variable de puntaje, y todas las modificaciones pueden
ocurrir dentro del Y haciendo clic en Bien,
aquí puedes ver nuestra nueva
variable de puntuación apareciendo aquí. Mira cómo puedes incluso
verlo en la pantalla, que en este caso
funciona perfectamente para nosotros. Entonces ahora que
tenemos nuestra variable, voy a arrastrar cada uno de estos bloques para que veas
lo que hacen. En primer lugar, hemos establecido la
variable en un número. Y si cambias
este número y lo haces
clic, bueno, no pasa nada. Y eso es sólo porque no
hemos seleccionado
nuestra variable de puntuación. Al hacerlo,
ahora verá que nuestra puntuación está establecida en tres como
se refleja en la pantalla. Entonces a este bloque de aquí no le importa cuál era nuestra variable. Simplemente lo establece en el valor
que quieras, y esto podría incluso
ser una palabra como alta. Pero queremos
mantenerlo como número, así que volvamos a ponerlo a cero. Bajando a nuestra
siguiente variable, esta es para cambiar el valor. Entonces, si tuviéramos que poner uno
aquí y luego hacer clic, puntuación de
CR aumenta en uno. Y básicamente, lo que
está haciendo este bloque es lo que
expliqué antes. Cuando hago clic en él,
mira qué valor se almacena en nuestra variable de puntaje, que en este caso es dos, y luego mira por
qué valor necesita
cambiarse, cuál es uno,
toma dos como uno, y has hecho las
matemáticas en tu cabeza. Muy bien. Y conseguimos
una puntuación de tres. Por último, mirando hacia abajo, tenemos estos dos bloques, que
son bastante simples. Podemos mostrar una variable en
nuestro escenario o podemos ocultarla. Bueno, eso es todo lo que hay para ello. Con eso, ahora entiendes los fundamentos de
las variables en la programación, que es un concepto súper
importante Quiero que lo pruebes ahora
y veas si puedes implementar la
variable score en tu código, y en la siguiente lección, te
mostraré cómo lo hicimos.
20. Ajuste del sistema de puntuación: Bueno, ¿cómo te fue? Es posible que te hayas topado con algunos problemas, pero un problema es solo
un escalón en tu aprendizaje que
conduce al crecimiento. Sí, es bastante profundo, ¿no? Pero eso es lo que es. De todas formas, vamos a llegar a. Entonces queremos cambiar
el puntaje por uno. Cada vez que nuestro tipo recibe un cabezazo. Y nuestro tipo está recibiendo una cabeza cuando está tocando la pelota. Entonces, si miras el guión aquí, básicamente es hacer eso. Está sintiendo si
estamos tocando a Ben. Así que funciona perfectamente
para nuestro cambio de variable, y ni siquiera necesitamos
crear un nuevo script. Entonces hagámoslo. Si el balón toca
B, queremos cambiar nuestro puntaje variable por uno y cambiar la dirección del balón. Echemos un vistazo
a esto. Al hacer clic en reproducir. Verás cuando
salgamos adelante, funciona. Pero justo antes de
celebrar demasiado, mira eso si tocamos
la pelota desde un lado. Obtenemos todo un montón de puntos. Y esa es una forma de hacer
trampa en nuestro juego. Eso es un poco pirateo. Así que definitivamente tenemos que arreglarlo. Y además, fíjate que
cuando reiniciamos el juego, nuestro puntaje se queda en
el mismo número. Entonces, en primer lugar, podemos arreglar
nuestra puntuación no reiniciándose, simplemente agregando este bloque de
variables conjunto al
inicio de nuestro script Y de esta manera, cada vez
que iniciamos nuestro juego, nuestro puntaje se restablece a cero. Nuestro siguiente problema necesita una solución más inteligente porque
si miras este código, si Ben está tocando la pelota, cambia la variable por una, y sigue haciendo esto hasta
que no está tocando la pelota. Aunque sólo estemos
tocando por un segundo, el marcador aumentará un
montón de veces en ese segundo. Para arreglar esto, agregue un peso 1 segundo justo
al final del código, y ni siquiera
necesitamos ser tan largos, cambiémoslo tal vez
a medio segundo. Ahora bien, si nos fijamos en el guión, establecemos nuestra puntuación en cero. Entonces si tocamos a Ben,
cambiamos la dirección, cambiamos nuestra puntuación, entonces
esperamos 1 segundo, lo que significa que nuestros jugadores ya no
pueden hacer trampa. Con eso, tu anotación
está hecha, una rápida. Si haces doble
clic en la variable, puedes hacerla grande así. Además, puedes moverlo y ponerlo
en cualquier lugar de tu pantalla. Ahora, diviértete un poco
con este juego y pruébalo y ¿ves qué tan
alto puedes llegar? ¿Cuál es tu puntuación más alta?
Diviértete porque estás ocupado creando un juego
absolutamente increíble.
21. Suavización de los bordes: depuración del flujo de juego: En esta lección,
vamos a hacer algo muy emocionante que
lo muy emocionante es depurar Quizá no. A lo mejor la depuración
no es una parte tan emocionante de la programación porque está
tratando de resolver algo
que no está funcionando Pero dicho eso,
no hay nada más satisfactorio que arreglar un problema en
tu código que
realmente te está molestando.
Te acostumbrarás. Y los dos problemas que estamos abordando ambos tienen
que ver con el balón. Ahora bien, aunque
técnicamente hablando, esto es en realidad un error, son solo características que no hemos
implementado por completo. Pero primero, cuando
empezamos nuestro juego, nuestra pelota no
empieza en el medio. En cambio, simplemente comienza
donde lo dejó. En segundo lugar, simplemente se mueve en cualquier dirección en la que
iba anteriormente. Esto literalmente
hace que sea imposible cuando comienza
el juego y nuestra bola dirige directamente al suelo. ¿Cómo resolvemos este problema? No me mires.
Tú eres el programador. Usa tus habilidades de programación y habilidades de
codificación y habilidades de
resolución de problemas para hacer que la pelota comience en
el medio y también haga que la pelota
comience automáticamente a subir cuando comience
el juego. ¿Puedes hacer eso?
Voy a estar esperando. Pausa el video
y pruébalo. Entonces, ¿cómo te fue? Bueno, veamos como pudiste haber hecho
esto. Lo primero es lo primero. Para asegurarnos de que nuestra bola
comience en el medio, podemos hacer esto fácilmente,
que solo tiene que ir al movimiento, traer esto ir a bloquear, cambiarlo a cero x, y digamos 60
y, para luego agregarlo
al inicio de cualquiera de nuestros guiones dentro
del sprite de bola Ahora, cuando empecemos, verás que nuestra pelota comienza
en el centro. Genial. Estamos llegando a alguna parte. El siguiente problema, sin embargo, es que a veces nuestra
pelota va directamente hacia abajo, lo que no es un choque de tren, sino por el bien de la consistencia, asegurémonos de que nuestra pelota
comience con un movimiento ascendente. Y nuevamente, la solución para
esto no es demasiado compleja. Todo tiene que ver con qué
dirección está apuntando nuestra pelota. Entonces así como como
establecemos la posición del balón
desde el inicio, también
podemos establecer la
dirección en la que apunta. Así que arrastrando en este bloque, podemos establecer la dirección a cero grados y luego también llevarlo al
inicio de nuestro guión Ahora, cada vez que hagamos clic en iniciar, notarás que el juego
es consistente con la posición
y dirección del balón. Y con esto tu
juego es muy jugable. Pero agárrate los sombreros
porque en la siguiente lección, llevaremos el
juego simple al siguiente nivel con dificultad de nivel,
animaciones, y más.
22. Subida de nivel: introducción de la dificultad dinámica: Ahora bien, el juego es bastante divertido.
No hay duda de eso. Pero no podemos
encendernos y decir que es muy desafiante
porque en realidad no es tan complicado. Ahora la pelota
prácticamente solo se mantiene a una velocidad constante y la dificultad del juego es siempre la misma. ¿Dónde está
la diversión en eso? Veamos cómo podemos agregar
un poco de desafío a nuestro juego haciendo niveles
de dificultad creciente. Ahora, esencialmente, lo que
queremos que suceda es que nuestro ánima aumente continuamente en velocidad a medida que aumenta nuestra puntuación. Ahora bien, aquí es donde
comenzarás a ver el verdadero poder de las variables ya que las vamos a
usar para cambiar toda
la dinámica de
nuestro juego y nuestro código. Si echas un vistazo a lo que en
realidad está dictando la
velocidad de nuestra pelota, verás que es solo este
movimiento bloque de diez pasos Entonces si aumentamos el número para decir 15 y luego pulsamos play nuevamente. Ahora, justo ahora cómo
va mucho más rápido la pelota. Lo que esto significa es aumentar
la dificultad de un juego, necesitamos aumentar
el número aquí. Obviamente, no queremos
sentarnos aquí y hacerlo manualmente, consigamos que las variables
hagan el trabajo por nosotros. Volviendo
a nuestras variables, vamos a crear una nueva. Esta vez,
lo llamamos velocidad de bola. Nuevamente, podemos hacer de esta una variable local
haciendo clic aquí. Ahora, como puedes ver,
nuestra nueva variable aparece justo en nuestra pantalla. Pero a diferencia de score, nuestro plato en realidad
no necesita
ver este número, pero podemos dejarlo
aquí por ahora mientras
editamos el código para asegurarnos de
que está haciendo lo correcto. Entonces ahora que tenemos nuestra variable de velocidad de
bola, verás que
podemos actuar arrastrando este bloque aquí y hacia nuestra área de
scripting Como debes notar, este bloque tiene la misma forma
que este de aquí, así que simplemente podemos
arrastrar nuestra variable
a nuestro bloque de pasos de movimiento. Desafortunadamente,
también te das cuenta de que bueno, el juego realmente
no hace nada y
lo que no debería. Porque si miras el código, estamos moviendo los pasos de velocidad de la bola, y la
variable de velocidad de la bola es cero, así que estamos moviendo pasos cero. Una solución rápida a esto es
establecer la velocidad de la pelota a diez cuando comienza el juego, que es la misma
velocidad que lo era. Una vez más, al hacer clic en jugar, verás que el juego está de
vuelta en buen estado de funcionamiento. Pero ahora sólo estamos de
vuelta al punto de partida. No obstante, ahora, queremos que nuestro juego aumente
en dificultad a medida que jugamos. En esta etapa, si miras
hacia abajo tu teclado, verás una barra larga
llamada barra espaciadora. Si haces click en esto, lo que
haremos es
pausar este video. Pero antes de hacer eso, esto le
dará la
oportunidad de averiguar cómo
agregar esta función por su cuenta y desarrollar sus habilidades para resolver
problemas. Haz clic en la barra espaciadora
para pausar este video y tratar de ver si
puedes resolver este problema. Sugeriré crear
un nuevo guión. Pero voy a estar esperando
al otro lado de esta pausa y a ver
si puedes conseguir que esto funcione
ahora.
¿Lo averiguaste? Como mencioné, a menudo hay un montón de formas en las que podemos
implementar nuevas funciones, pero la solución más simple
suele ser la mejor solución. Vamos a crear un nuevo guión que
controle la dificultad de nuestro juego. Como siempre, aquí necesitamos
este bloque. Entonces necesitamos este cambio
variable por bloque aquí y asegurarnos de que sea la velocidad
de la bola seleccionada. Ahora necesitamos una manera de que
esto se incremente continuamente. Simplemente, podemos hacer esto
agarrando un bucle para siempre
o uno repetido, y cualquiera de ellos nos permitirá refrescar constantemente la dificultad
del juego En nuestro caso, voy a usar un bloque repetido
porque no
queremos que el juego simplemente siga
poniéndose cada vez más difícil hasta un punto
de imposibilidad Entonces pongamos este
bloque en este, y estoy seguro que puedes adivinar qué pasará cuando
empecemos el juego. Sí. Nuestras tablas simplemente
van directamente a la velocidad. Bueno, por suerte,
hay una solución fácil es arrastrar en este bloque de peso, y luego
pongámoslo a 5 segundos. Ahora cuando volvamos a jugar,
puedes ver que es nuestro juego. Poco a poco, pero seguramente empieza a ganar en dificultad a
medida que pasa el tiempo. tiempo llega al
punto en que se vuelve
casi imposible. El guión puede necesitar un poco de ajuste, pero te
dejaremos para que lo hagas Lo que también podemos hacer ahora que nuestra variable de dificultad
aquí se ha agregado correctamente a nuestro
juego es que podemos
ocultarla de nuestra pantalla simplemente
desmarcando esta casilla A no hay necesidad real de que
los jugadores lo vean. Bueno, eso es todo por ahora. Hemos completado la etapa dos y desarrollamos la mecánica de juego. Ahora a la última etapa, que es la etapa divertida donde pulimos
nuestro juego y agregamos algunos gráficos de aspecto agradable y algo de sonido e incluso animación.
23. Toques finales: pulirá tu juego de cabeza de fútbol: Entonces estamos en la etapa tres, que está puliendo el juego, y aquí es donde nos
aseguramos de que todo se vea bien agregando animaciones y sonido
musical y etcétera Pero como dije, esta es una etapa
bastante emocionante. A medida que llegas a ver tu
juego realmente cobra vida. Ahora bien, esta etapa puede llevar poco tiempo o
puede ser mucho tiempo. Todo depende de lo agradable que
quieras que se vea tu juego y de
lo mucho que quieras jugar. Pero ciertamente es cierto que
tener buenos gráficos y sonido puede ayudar mucho a mejorar
realmente tu juego. Por lo que es importante
asegurarse de darle al escenario algo de vida real.
Bien, vamos a ponernos en marcha. Al mirar este juego, lo primero que no
me gusta es el tamaño de la pelota.
Hagámoslo más pequeño. Vamos a establecer su tamaño en
80%. Eso se ve mejor. Ahora bien, lo segundo que necesita mejorar es cómo nuestro portaaviones
principal al igual flota a izquierda y derecha mientras en realidad
debería estar
moviendo las piernas Ahora bien, aquí es donde
realmente obtendremos una mejor
comprensión de los disfraces. Al hacer clic en nuestra curva a sprite, que tiene las piernas,
quiero que
parezca que sus piernas se están moviendo Podemos pinchar en disfraces. Aquí, lo primero que
tenemos que hacer es deshacernos de estos otros disfraces
ya que no los necesitamos, y solo van a
estropear la animación. Ahora, si haces clic en
nuestro primer disfraz, verás que
puedes duplicarlo. Ahora tenemos dos
de ellos, y aquí
es donde comienza el divertido mundo
de la animación. Al hacer clic en la herramienta de selección. Simplemente podemos seleccionar
solo las piernas, abajo aquí, se puede ver que
somos capaces de rotar las piernas. Porque queremos que
parezca que está funcionando, tendremos un turno a la izquierda
y luego a la derecha. Ahora por la parte tediosa, rotarla un poco más
hacia la izquierda y centrarla Ahora, duplica el sprite. Seleccione nuevamente las patas, gírelas, envíelas
y enjuáguelas y repita. Y cuando lleguemos a
cerca de este ángulo, vamos a empezar a desplazar
las piernas hacia la derecha, nuevo, enjuagar y repetir. Ahora, cuando las piernas
lleguen al extremo derecho, muévala hacia atrás una vez más. De esta manera, tenemos una animación
sin fisuras. Ahora, aunque ahora tenemos
la animación especial, todavía
necesitamos el
código para que funcione. Volviendo a nuestra pestaña
podríamos comenzar a escribir el código, o podríamos ser inteligentes
y darnos cuenta de que el código de nuestro
ben original también es perfecto para bend. Simplemente arrástrelo y luego retire todos estos bloques
innecesarios. Todo lo que tenemos que hacer ahora es poner la siguiente columna en cada una de
estas comprobaciones condicionales. decir, si hacemos clic Es decir, si hacemos clic
a la izquierda o a la derecha,
cambiará el disfraz. Si jugamos el juego ahora, fíjate
en lo mucho mejor que es esto, cuánto más
realista se ve. Te muestra el
poder de la animación, aunque quisieras,
podríamos haber hecho que el
cuerpo incluso rotara un poco. Puedes darle
una oportunidad si quieres. Pero a lo siguiente, que es la pelota. Y aquí, hay algunas
mejoras que quiero hacer. En primer lugar, quiero que
reproduzca un sonido de rebote cuando Ben golpea la pelota y un silbato de árbitro cuando
golpea el suelo Pasando a nuestro grupo de sonido, podemos elegir el sonido de inicio. Además, como nota al margen, la diferencia entre estos
dos es que este reproducirá el sonido hasta que termine antes de pasar al
siguiente bloque de código, como un bloque de peso mientras
este no interferirá. Este funciona mejor en
nuestro caso ya que queremos
asegurarnos de que no interfiera con nuestro código mientras se reproduce el
sonido. Dicho esto, si nuestra
pelota toca a Ben, queríamos tocar el sonido, así podemos agregarlo aquí. A continuación, para el sonido del árbitro, verás que no
lo tenemos en el sprite, así que
necesitamos agregarlo Entra en la pestaña de sonido, solo
podemos hacer clic en
este botón aquí y solo buscar y aquí está. Ahora con él agregado a nuestro sprite, puedes ver que ahora podemos
seleccionarlo en nuestro código Nuevamente, lógicamente, esto debería
sonar cuando nuestro juego termine, así podemos agregarlo
aquí mismo antes de la parada Aunque cuando jugamos el juego, podrías estar un poco
decepcionado porque aunque nuestro
sonido encuadernado con pelota funciona, el
silbato no lo hace Bueno, como acabo de decir, el bloque de sonido se
reproducirá hasta que esté hecho mientras este bloque de sonido
reproducirá y ejecutará el siguiente código. Entonces con la parada
es el siguiente bloque, el sonido no se
reproduciría por completo. Cambiemos esto
por el otro bloque. Lo tienes. Eso funciona. Ahora, con ambos lados añadidos, lo último que quiero hacer por la pelota es que
parezca que está girando en el aire en lugar de simplemente permanecer
estática como lo es. Y para ello, tenemos que
volver a los disfraces. Pero esta vez para el balón. Ahora apuesto a que puedes
resolver esto. Una pausas el video,
acabas de ver lo que ya
hemos hecho, pausas el video
y ves si puedes hacer que la pelota
parezca que está girando. Derecha. Déjame mostrarte
cómo podrías hacerlo. Si aún no lo has averiguado cual apuesto a que lo haces. Como puedes ver, aquí solo
tenemos un disfraz, así que necesitamos hacer la
animación nosotros mismos. Aquí, al igual que con nuestras piernas, vamos
a necesitar duplicarlo. Después selecciónelo,
gírelo un poco, luego seleccione, duplique,
rote un poco. Seguro que puedes ver a
dónde va esto. Pero básicamente,
necesitamos seguir rotando hasta que nuestra pelota vuelva a
la posición en la que la inició. A través del poder de la edición, voy a
adelantar este proceso. Pero desafortunadamente para ti, este no es un proceso de
avance tan rápido, pero no debería tomar
demasiado tiempo para que
sigas haciendo esto.
Bueno, ahí lo tienes. Como puedes ver, tenemos
todos estos disfraces que se unen para
formar un bucle perfecto. Si volvemos a nuestro código, podemos implementar esto fácilmente, pegando el siguiente disfraz
en nuestro bucle forever, y cuando jugamos, mira lo mucho más
realista que se ve esto. Ahora estamos en nuestro último toque. Para ello, podemos pasar a nuestro telón de fondo aquí para que el juego realmente
se sienta más vivo. Lo que quiero hacer es animar el fondo al tener luces
intermitentes en el estadio Ya conoces el simulacro, vayamos a nuestro telón de fondo. Podemos
eliminar esta. Ahora esta vez, primero
voy a duplicar el
original tres veces, así que tenemos cuatro
telones de fondo en total Para el efecto de luz intermitente, en realidad
es bastante fácil. Todo lo que tenemos que hacer es
seleccionar esta herramienta, que nos permite
crear círculos. Después colorea el círculo de
blanco haciendo clic aquí y arrastrando el control deslizante Ahora como pueden ver,
ahora somos capaces de dibujar
estos círculos blancos. Entonces lo que voy a hacer es cubrir algunos de estos círculos con blanco para que parezcan luces intermitentes. Un consejo rápido, puedes acercar
con solo hacer clic aquí y también puedes cambiar el tamaño y
reposicionar tu círculo Bien. Entonces ahora voy a repasar cada uno de estos disfraces y cubrir
algunos círculos justo al azar. Bien, hecho. Al igual que antes, podemos usar un disfraz
o telón de fondo para siempre
y próximo en este caso. Eso definitivamente es un poco
mucho para que sea menos loco. Vamos a traer un, ya
lo adivinaste, nuestro bloque de peso. Ahora solo podemos hacer
algo pequeño como 0.1 segundos. Eso es mucho mejor. Ahora para el
toque final, algo de música de juego. Para esto, solo podemos
entrar en la pestaña de sonido, agregar un nuevo sonido, y aquí puedes elegir
lo que quieras, pero asegúrate de que sea nuestro loop. Para este juego,
funciona el
videojuego dos sonidos . Volviendo al código. Podemos duplicar
el guión porque no
queremos una declaración
blanca aquí y solo agregamos el sonido y
cambiarlo a videojuego también. Y eso, amigos míos, es todo. Nuestro juego está hecho. Está pulida. Es donde
queremos que esté en esta etapa. Seguro que lo puedes llevar
aún más lejos. Pero por ahora, solo aprecie
dónde está y la cantidad de detalles sutiles y animaciones que llevaron
esto a donde está. Gran trabajo. Disfruta tu juego, y aún más el hecho de
que eres un codificador
24. Preparación: creación de una aventura de tráfico sin fin: Ahora mismo, realmente has desarrollado muchas habilidades de
programación. Estoy encantada de ver el
progreso que has logrado. Ahora vamos a embarcarnos
en una nueva aventura ya que programación suele ser una
aventura de giros y vueltas, perderse, y
luego encontrar una manera Es muy parecido
a navegar por un bosque denso. Pero eventualmente, encuentras
un camino hacia el claro donde te espera la belleza de tu
creación. Dicho esto, para nuestra próxima aventura de
programación, realmente
estaremos
subiendo de nivel tus habilidades creando un juego mucho más
complejo y dinámico. Este juego es un juego de corredor de
tráfico sin fin en el que eres un auto y vas a
exceso de velocidad por una carretera. Este juego desafiará
tus habilidades de programación, pero también
será muy divertido. Entonces, antes de sumergirnos en importar sprites y
diseñar el juego, primero
demos un paso atrás y entendamos
el panorama general hora de construir un
juego, como he dicho, es crucial descomponer el proyecto en pasos más pequeños
alcanzables, y esto se vuelve
aún más importante, más complejo se vuelve un
proyecto Dicho esto, en nuestro juego de correr de fin de
tráfico, estaremos construyendo los
siguientes componentes. El auto jugador, los árboles a cada
lado de la carretera, las líneas de
la carretera, el carro de obstáculos
y
el telón de fondo de la carretera. Ahora echemos un
vistazo a por qué necesitamos estos sprites y cómo
contribuirán a nuestro juego En primer lugar, el sprite del coche del jugador será el personaje principal
que controle el usuario, esquivando obstáculos y
navegando por el tráfico Luego, los sprites de árbol crean un ambiente visualmente atractivo y ayudan a preparar el
escenario para un juego Mientras conducimos,
parecerá que
estamos pasando árboles y
otras plantas y rocas. Las líneas de la carretera se tratan proporcionar una sensación de
movimiento o la ilusión de movimiento porque obviamente nuestro auto no
puede avanzar
y salir de la parte superior de la pantalla para que
podamos hacer que
parezca que va hacia adelante
con el sprite de la carretera El sprite de carrito de obstáculos será el reto
de nuestro juego Es lo que el jugador debe
evitar para mantener su carrera. Por último, el telón de fondo de carretera
prepara el escenario para el juego, sumergiendo al jugador en el
mundo que hemos creado Ahora que tenemos un
claro entendimiento de los componentes
necesarios para nuestro juego, comencemos a importar nuestros actos. Ahora bien, esta será la primera vez que
importamos ácidos sprites desde nuestra computadora, pero no te preocupes Es un proceso sencillo. Antes de continuar, como se mencionó anteriormente, usted
tiene una opción aquí. Tienes dos tipos diferentes
de ácidos para elegir. O bien, puedes
descargar los ácidos crudos, que serán todas las diferentes
imágenes, sonidos, música, etcétera, y seguirlos mientras te mostramos cómo
importarlos y editarlos. Esto te dará algo de experiencia trabajando
con los gráficos. O si solo quieres
enfocarte en el
lado de la codificación de las cosas, puedes descargar
el activo del proyecto, que tendrá todos los sprites, música y efectos de sonido
listos para funcionar Pero personalmente, sí te animo a que sigas
junto con los activos brutos. Esto te dará
una gran experiencia. Lo primero es lo primero, vamos a
crear nuestro nuevo proyecto. Como todas las veces anteriores, solo
podemos hacer clic en seleccionar
este botón de crear. Si en esta etapa, desea
utilizar el proyecto precargado, simplemente haga clic aquí, luego
cargue desde su computadora. El paso a nuestro archivo de proyecto Runner de
tráfico de inicio. Pero veamos
el camino correcto ahora. En primer lugar, eliminemos el sprite
catch, no necesitamos. Lo siguiente que tenemos que hacer
es subir nuestro sprite antes, pasar a este botón,
pero no hacer clic en él En su lugar, podemos seleccionar
este botón justo en la parte superior que
dice, subir sprite El primer sprite que queremos
subir es nuestro sprite de coche jugador Pasando a la carpeta de activos
del proyecto. Aquí verás nuestra carpeta de corredor de
tráfico, y si haces clic en eso, verás que tenemos una
carpeta para cada uno de nuestros sprites Seleccionando nuestros PlayersPrite. Aquí podrás elegir el auto que quieras para tu jugador Sprite Seleccionaré este de
aquí y presionaré a abrir. Entonces lo tienes.
Nuestro sprite jugador está ahora en nuestro proyecto
y listo para funcionar Pero no paremos ahí.
Subamos nuestro otro sprite. Como antes, simplemente haz clic en Subir. Esta vez, podemos seleccionar
el sprite del carro de obstáculos. Aquí no importa
cuál selecciones ya que
usaremos todas ellas. Podemos seleccionar abierto. Antes de
pasar a nuestro siguiente sprite, necesitamos subir nuestros otros sprites de obstáculos para
autos Quizás estés pensando que aquí
solo tendremos un montón de diferentes sprites de
obstáculos, pero haremos algo un
poco más inteligente que eso Pasando a los disfraces
para este auto, a la derecha. Aquí podemos de nuevo, haga clic en subir. Y esta vez, podemos
seleccionar todos los demás autos, simplemente pateando este auto, manteniendo presionado el turno y
haciendo clic en el último auto Ahí lo tienes. Todos nuestros autos están en
uno. Eso te imagina. Pasemos a
nuestro siguiente sprite. De nuevo, haciendo clic en subir. Esta vez podemos seleccionar nuestro sprite de
árbol y follaje. Al igual que con nuestro sprite de auto, solo
podemos seleccionar el
primero, luego golpear abierto Después pasando al editor
de vestuario, podemos hacer clic en este botón aquí. Entonces una vez más, podemos seleccionar todos estos otros disfraces y
subir y ahí vas. Ahora solo hay
un sprite más. Pulsando subir y esta
vez podemos seleccionar esta carretera la sprite
aquí y dar clic en abrir Ese es todo nuestro sprite. ahora necesitamos subir nuestro telón de fondo. Simplemente haciendo clic en él, haciendo clic telones de fondo, y luego subir Aquí podemos elegir
esta imagen de fondo aquí y dar clic en Abrir. Eso es justo sobre eso. todos nuestros sprites listos para
ir. Prepárate para ello. Pero gran trabajo hasta el momento. Como tenemos todos nuestros
sprites subidos, hemos completado nuestra primera
etapa de desarrollo del juego También tienes una buena idea
del panorama general
del juego y por qué tenemos
todos los sprites que tenemos
25. Sentado las bases: organiza tus activos de juego: Bien. Bueno, ahora tenemos
todos nuestros sprites importados, así que tenemos todo lo que
necesitamos para comenzar a desarrollar Pero antes de empezar a codificar, creo que lo mejor es
que organicemos esto un poco mejor para que
sepamos lo que está pasando. Porque si no se podía decir, esto es un poco desordenado. Programar y bueno, la mayoría de las
otras cosas en la vida, mantenerse organizado es clave. No sé si alguna vez
has cocinado en una cocina muy desordenada, pero si la tienes,
sabrás la lucha Pero por suerte para ti, esto
va a ser rápido ya que solo hay algunas cosas que necesitan ser arregladas. Bien. En primer lugar, mudarnos a nuestros sprites de
árbol aquí, como pueden ver, esto
es simplemente demasiado grande. Tal vez estés pensando, bueno,
puedo simplemente cambiar el
tamaño por aquí. Pero piénsalo. Si accidentalmente lo
cambias de nuevo, entonces tienes que intentar
recordar cómo lo tuviste, siempre es mejor
hacerlo en el editor de código. Solo podemos
sacar esto de dos cuadras y luego este
bloque
de tamaño establecido. Vamos a establecer el tamaño en 30, y luego podemos
cambiar la posición. Vamos a esconder rápidamente el otro sprite para que
podamos ver qué está pasando Bien. Bueno, el tamaño
se ve bastante bien. Entonces para que la G bloquee, ni siquiera
necesitamos adivinar. Puedo simplemente arrastrarlo a donde
quiero justo en
la esquina de aquí, y luego simplemente copiar estas
coordenadas x y en mi ir a bloquear. Entonces, por último, podemos simplemente poner una bandera de victoria clicada
en el guión Después mirando los carriles viales. No hace falta que te preocupes demasiado porque estaremos trabajando con
esto en la siguiente lección, pero puedes simplemente arrastrarlo
al centro por ahora. Entonces para nuestro auto de obstáculos aquí. También necesitamos
hacerlo más pequeño y cambiar la posición para que podamos simplemente
arrastrar de nuevo este código, y mientras estemos aquí, también
podemos arrastrarlo
a nuestro auto jugador. Para x, solo podemos establecerlo
a cero, entonces y está bien. El tamaño puede ser un poco más grande y eso debería ser bueno por ahora. Por último, mirando nuestro auto, movamos esto al
centro y cambiemos y para que sea negativo ya que queremos que nuestro auto esté
en este lado de la pantalla. Eso es un poco demasiado abajo
nuestro auto es un poco pequeño. Nuevamente, podemos aumentar el tamaño. Entonces saquemos y un poco. Como pueden ver, esto es un
poco de juicio y todo, pero se ve bien. Bueno, ahí lo tenemos. Mira cuanto mejor se ve eso. En realidad podemos ver
lo que está pasando. Ahora que estamos
debidamente organizados, podemos empezar a cocinar. Bueno, en nuestro caso,
podemos empezar a programar.
26. Elaboración de la ilusión de movimiento: el camino hacia el realismo: Ahora que todo está en orden, podemos pasar a la siguiente etapa, que está construyendo la
mecánica del juego. Ahora, normalmente,
empezaríamos con nuestro sprite de jugador principal
porque después de todo, es nuestro jugador principal Sin embargo, antes de esto, hay algo
aún más importante, que es nuestro camino
porque hace que en realidad
parezca que estamos manejando. Ahora tal vez te estés preguntando, ¿cómo hacemos que parezca que
nuestro auto avanza? Bueno, aquí es donde entra en juego el
arte de la ilusión. Verás, en nuestro juego, queremos darle al
jugador una sensación de movimiento
continuo como
si estuviera conduciendo por
un camino sin fin. Para lograrlo, debemos
prestar mucha atención a la alineación de nuestras líneas viales y también a otros elementos visuales. Es como un truco de mago. Si lo hacemos bien, podemos crear una ilusión que se sienta real y sin fisuras
para el jugador. Ahora, imagina que estás viendo
un truco de magia bien ejecutado. Tus ojos están pegados a las manos de
los magos ya que crean
sin esfuerzo la
ilusión de la realidad Eso es lo que queremos
hacer con nuestro juego. Queremos que nuestros jugadores
queden tan cautivados por el bucle sin fisuras que no noten el
truco detrás de él Para crear esta
ilusión de movimiento, utilizaremos fondos
estirados y una manipulación inteligente
de las posiciones x e y. La clave aquí es asegurar que nuestras líneas viales y
otros elementos estén perfectamente
alineados para que el bucle parezca suave y continuo. Pero, ¿por qué es tan
importante la precisión, se puede preguntar? Bueno, la más mínima desalineación
puede romper la ilusión, haciendo que el juego se sienta menos
inmersivo y agradable Recuerda, nuestro objetivo es
cautivar al jugador y hacer que se sienta como
si realmente estuviera conduciendo por un camino interminable Esta parte podría
llegar a ser bastante complicada. Si encuentras el
desafío de la etapa dos, recuerdas, siempre
puedes descargar el ácido del proyecto completo con
los sprites completados Sin embargo, esta etapa
definitivamente aumentará tu habilidad en el diseño de vestuario
y desarrollo de juegos. Vamos a poner en marcha este
bucle sin fin. Si vamos a nuestro
sprite de carretera y luego disfraces, puedes ver que tenemos bien, solo estas líneas, ahora mismo, nuestras líneas viales son del tamaño
exacto de nuestra pantalla, si bajaran
hasta lo más mínimo, la ilusión se rompería Lo que queremos es
extender el camino más allá de
estas fronteras aquí. Si intentas hacer esto ahora, verás que simplemente se
desvanece en el Lo primero que tenemos que hacer es convertirlo en un vector, que ahora como puedes ver, nos
da una carga más opciones, entre ellas sacar la
imagen de la pantalla. Para extender esta imagen, lo que podemos hacer es derribarla. Recuerda, podemos usar las claves solo para que tengamos más control. Además, si haces un
cambio de agujero al hacer clic, puedes ver que se mueve
mucho más. De todas formas. Aquí mismo
se ve muy bien. Ahora podemos copiar
esto y luego
pegarlo antes de moverlo hacia arriba, podemos asegurarnos de que esté
exactamente alineado horizontalmente. Ahora otra vez, usando las
teclas de flecha, podemos sacarlo a colación. Ahora el paso final es
asegurarse de que estas
brechas sean las mismas. Aquí, solo mira cuidadosamente la carretera a medida que la mueves
lentamente hacia arriba para asegurarte de que estas dos brechas sean las mismas. Eso se ve bastante bien. De nuevo, esto podría tomar un poco de prueba y nunca
para que sea perfecto. Pero con eso, nuestro
cliente está listo. Ahora podemos pasar a
la parte emocionante, animándola, lo que
haremos en la siguiente lección
27. Dominando el bucle: el arte de las transiciones sin fisuras: Bien, entonces esto es todo. Que comience la ilusión. Bueno, antes de programar, veamos lo que
queremos que suceda. Esto nos ayudará a entender
lo que necesitamos codificar. Arrastrando nuestro sprite de carretera, queríamos
bajar así,
haciendo que pareciera que
estamos conduciendo Entonces cuando llegue al final, queríamos
volver al inicio,
pero hacerlo a la perfección,
así que parece que
no pasó nada. Bueno, comencemos, vamos a
agarrar un inicio ganador, un para siempre, y un
cambio y por diez. Podemos acertar rápidamente a play,
esa es la forma equivocada. Hagámoslo un diez menos. Bueno, eso es
más o menos lo que queremos. Ahora lo que tenemos que hacer
es que el camino
vuelva a subir antes de que
llegue a bajarse. Para ello, todo lo que tenemos que hacer es, bueno, no voy
a decírtelo todavía. ¿Qué tal hacer una pausa en el y
tratar de averiguar cómo
hacer este bucle perfecto usted mismo para que el
camino vuelva a subir Pausa y piensa en ello. Bueno, vamos a echar un
vistazo. En primer lugar, vamos a necesitar una condición if. Lo que queremos comprobar es la posición
y de nuestro sprite. Aquí, necesitamos verificar
si la posición y es menor que decir menos uno 60, así podemos usar este
operador para ver si y es menor que menos uno 60. Recuerda verificar en qué
dirección está apuntando la flecha. Esta manera es menos que y
esta forma es más que. Para ayudarte a recordar esto, presta atención al
tamaño al inicio. Aquí va de una talla que es menor que
donde empieza, y aquí va de
una talla que es mayor. Ahora que ya lo sabes,
podemos mover nuestro bloque dentro nuestra F y luego dentro de
nuestro bucle forever. Ahora todo lo que tenemos que hacer es volver a
cambiar la posición. Así que solo usamos un go to block, set x a cero, Handf y, para empezar, solo
podemos configurarlo en uno 60 Ahora haciendo clic en reproducir, se puede
ver este tipo de obras. Pero como también puedes ver
el bucle está muy apagado. Aquí es donde necesitamos un poco de prueba y
error para que sea perfecto. Ahora, la forma más fácil de conseguir esto es agarrando
dos ir a cuadras El primero, podemos
establecer a menos uno 60, aquí
es donde volvemos a cambiarlo, y al siguiente podemos establecer en
uno 60, que es este bloque. Ahora, primero da
clic en el primero, luego en nuestro siguiente. Bueno, se puede ver que la
posición está un poco desfasada. Lo que tiene que pasar es
que tenemos que disminuir nuestro y un poco. Eso es mejor, pero aun así un
poco fuera de lugar. De nuevo, un poco más. Eso se ve mejor.
Como puedes ver, es solo un poco de
prueba y error. Ahora bien, aunque nuestro loop es bueno, puedes ver que nuestro costu no está del
todo perfectamente alineado, así que podemos volver
al editor e intentar hacer algunos
micro ajustes De nuevo, aquí, solo necesitas un violín de llaves hasta conseguir
algo que se vea bien Bien. Bueno, con eso, podemos cambiar nuestros y valores
a este nuevo aquí. Y cuando pateamos jugamos una vez más. Sí, creo que los resultados
hablan por sí mismos. Además, aunque se ve bien, si cambiamos de
menos uno 60 a menos uno 50 y volvemos a
jugar el loop, verás que
funciona un poco mejor. Eso, amigos míos, es lo que
llamamos una ilusión propiamente dicha. Obviamente, puedes
jugar sin cesar para
conseguirlo aún más Pero por ahora eso se ve bien. Sé que este ha sido un proceso un
poco tedioso, pero confía en mí cuando digo, esta es una muy buena habilidad para tener Ahora podemos empezar a buscar en la
codificación de los otros sprites.
28. Dirigir el juego: implementación del control de los jugadores y la dinámica de capas: Ahora que parece que nuestro
auto está avanzando, ahora
podemos buscar crear
la mecánica para nuestro automóvil. Básicamente, lo que queremos que
suceda es que queremos
poder mover nuestro auto a través de
la carretera con nuestros arcos. Incluso necesito explicar
cómo hacer esto porque estoy seguro a estas alturas ya sabes cómo
conseguir este código bien
ya que hemos construido la misma mecánica en
nuestros juegos anteriores. Si quieres, puedes
intentar hacerlo por ti mismo. De lo contrario, voy a
pasar por esto rápidamente. Si te gusta,
pausa el video y mira si puedes resolver esta
parte por ti mismo. Bueno, ya conoces el sorteo. Necesitamos un para siempre,
necesitamos dos luego cuadras. Necesitamos dos de estos bloques de detección de
pulsaciones clave en cada una de nuestras declaraciones if. Entonces podemos cambiar
el primero al error de
la izquierda y el
segundo al error de la derecha. Entonces podemos entrar en
nuestros bloques de movimiento, agarrar el cambio x por, y agregar uno a cada uno de estos. Entonces para la derecha,
cambiaremos x por un
diez positivo como es, para la izquierda,
será un diez negativo. Al hacer clic en el avión
ahora. Ahí vas. Nuestro auto es controlable y nuestro juego está empezando
a tomar forma. Una cosa sin embargo, es, se
puede ver que la carretera
está encima de nuestro auto. Yo sólo voy a la carretera sprite. Podemos movernos a Los y podemos
traer aquí este bloque, que dice: Ir a, y
podemos cambiar la capa posterior. Esto es otra
cosa importante que hay que conocer. Al igual que cuando
miramos nuestra pantalla aquí, parece solo una imagen plana, pero en realidad hay
múltiples capas y cada sprite puede ser
una capa diferente Verás, las capas nos ayudan a
crear profundidad en nuestros proyectos, haciéndolos más atractivos
visualmente, y también usaremos capas
en este proyecto. Piense en capas como una pila
de papeles o un sándwich. Yo rasco, cada sprite
existe en su propia capa. Cuando agregas nuevos sprites, se colocan encima
de los existentes, y esto determina el orden en que aparecen
en la pantalla Pero se puede cambiar el
orden de estas capas. Esto te permite
organizar fácilmente tus sprites para que algunos aparezcan
encima de otros, creando profundidad y un aspecto más
pulido para tu proyecto Vas a tener la idea mejor a
medida que avancemos, pero por ahora, fíjate en lo
mucho mejor que es esto.
29. Refinación del turno: dinámica direccional y flujo lógico: Bien. Ahora necesitamos cambiar la
dirección de nuestro auto, que no solo
parezca que se desliza la pantalla sino que en realidad
gira para lograr esto, como con nuestro otro proyecto, podemos usar este bloque de
dirección de punto Pero podrías haber
notado algo extraño si tratas de usarlo. Es decir, si apuntas en dirección recta
y haces clic en él,
verás nuestro auto
apuntando hacia
un lado, lo que parece bastante raro. Pero esto tiene algo de sentido. Scratch asume que dirección predeterminada de
tus sprites
está orientada hacia la derecha. Tomemos como ejemplo el sprite de
gato predeterminado. Cuando lo
incorpores a tu proyecto, verás que realmente
parece que está mirando hacia la derecha. Cuando usas un bloque para
hacerlo boca arriba o cero grados, en realidad
parece que está arriba porque inicialmente estaba
orientado hacia la derecha. Ahora, sé que sigue siendo
un poco confuso, pero la clave aquí es
entender que scratch
asume que todos tus sprites
se enfrentan de esta manera Cuando creas tu propio
sprite o usas uno diferente, solo asegúrate de ajustar
su dirección inicial en el editor de vestuario para que mire la manera correcta cuando
empieces a trabajar con él Volviendo a nuestro auto, podemos entrar en el editor. Bien. Y usando esta flecha, podemos rotar nuestro auto para tenerlo
boca a la derecha. Y
aquí lo tienes. Ahora se puede ver
que apunta en la dirección exacta en la
que lo fijamos. Genial. Ahora, vamos a implementar
esto en nuestro código. Simplemente, lo que queremos que parezca es girar
a derecha cuando hacemos clic en
la flecha derecha y cuando hacemos clic en
la flecha izquierda. Podemos simplemente arrastrar la dirección de nuestro
punto y poner uno en cada una de
estas f declaraciones. Para el primero, podemos
tenerlo a unos 15 grados. Para el segundo,
podemos fijarlo en -50. Ahora bien, si volvemos a jugar, y luego giramos,
se puede ver que funciona. Aunque aquí
claramente hay algunos bichos. El primero es bastante
fácil de vestir, que es cuando empezamos el juego, nuestro auto apunta a un lado, que no se ve bien del todo. Simplemente podemos agregar una
dirección de punto al inicio y tenerlo apuntando
recto en el inicio. Ahora como pueden ver,
eso es mucho mejor. Aunque, como también se puede ver si dejamos de girar
y simplemente vamos derecho, nuestro auto sigue apuntando
en cualquier dirección, fue el último apuntando. Ahora bien, esto es un poco más complejo, ya que necesitamos una forma para que un automóvil señale recto si no se hace clic en ninguno de
los botones Una vez más, pausa el
video e intenta ver si puedes conseguir que esto funcione y conseguir que el auto apunte recto. ¿Lo averiguaste? Al mirar nuestro código,
puede ver que tenemos estas dos declaraciones if que verifican si estamos haciendo clic en una
tecla o en la otra clave. Pero hay otro tipo de afirmación que realmente no
hemos usado, y es tan súper importante. Si bajamos
a nuestro control, verás que tenemos
este bloque, bueno, sabemos lo que hace el bloque if, si una condición es verdadera, ejecutará algún código, si se hace clic en la flecha derecha, girará a la derecha y con este
bloque, hará lo mismo Pero si la condición no
es cierta, ejecutará cualquier
código en este bloque. Veamos esto en acción. En primer lugar, sacando
todo este código, podemos cambiarlo por esto. Aquí podemos traer en
la flecha derecha se hace clic y luego señalar
la erección y el cambio Entonces para el ls, solo vamos
a traer este otro código. Ahora, si pulsas play,
verás que si haces
clic en la flecha derecha, el auto hace lo que se espera. Pero si se nota la flecha derecha, la carta se desliza hacia la izquierda Ahora entendemos
cómo funciona todo eso. Vamos a traerlo de vuelta a
cómo fue un consejo útil. Simplemente haz clic en comandos o control, si estás en Windows
y verás que tu código vuelve a ser como era Hagámoslo. Cambiemos esta flecha
izquierda por esta LS luego movemos
el código dentro. Por último, en el LS, podemos traer en una dirección
puntual y hacer que apunte recto. Bueno, eso tiene sentido. Si hacemos clic a la derecha,
apunta a la derecha. Si hacemos clic a la izquierda,
apunta a la izquierda. De lo contrario, apunta hacia arriba. Vamos a darle una oportunidad. Bueno,
eso no está bien, ¿verdad? Tratemos de
desenredar un poco esto. Tenemos una situación en la
que hacer clic derecho no parece funcionar como se esperaba,
pero hacer clic a la izquierda sí. La respuesta está en el orden en que se procesa el código. Recuerda, en la programación, el
código se ejecuta de
arriba a abajo. Se comprueba cada condición
en el orden en que aparecen. Cuando hacemos clic a la derecha, nuestro sprite es de hecho instruido
para que apunte a la derecha. Sin embargo, hay más código después de esto en los estilos de
computadora para verificar, que es esto aquí. Si hacemos clic a la izquierda, apunte a la izquierda. Pero ya ves aquí, si esta condición no es cierta, lo que sea que esté en este
bloque va a pasar. El bloque final de código da un comando para que el sprite
apunte recto El sprite seguirá este
comando si no
se cumple esta condición porque se pierde
este bloque,
es última instancia lo que se
ejecutará Sé que la lógica de programación
es bastante. Pero cuanto más realmente
intentas entenderlo, más claro se vuelve todo, se trata de pensar
como una computadora. Dicho esto, ¿cómo solucionamos esto? Bueno, en la programación,
generalmente no quieres tener una situación en la que haya si bloques en un solo
script o bucle. En cambio, lo
que queremos usar es un F L. En vez de que este
código se vea así, vamos a agarrar otro FL. Pon este código dentro. Ponlo en el bucle. Por último, podemos poner esto si en
esta declaración. Ahora bien, si miramos el código, si se
hace clic en la flecha derecha, esto se ejecutará De lo contrario, si se hace clic en la
flecha izquierda, este código se ejecutará, y luego solo si ninguna de las condiciones
anteriores es verdadera,
no se hace clic a la izquierda ni a la derecha, nuestro automóvil apuntará Jugando de nuevo el juego, mira ahora cómo funciona a la perfección. Agregar esto if else
asegura que este código inferior solo
se pueda ejecutar si no estamos
haciendo clic en el error correcto, y luego si no estamos también
haciendo clic en el error de la izquierda, entonces finalmente, se ejecutará
esto más. Ahora todo esto puede ser un
poco confuso, pero esta es realmente la
esencia de la programación, nosotros entendiendo el
orden de las operaciones y cómo se ejecuta y
organiza el código lógicamente Confía en mí, cuanto más construyas, más claro se volverá. Juega con él y
trata de entenderlo porque son cosas
emocionantes por venir.
30. Creación de obstáculos dinámicos: el camino cobra vida: Bueno, es hora de que este espectáculo salga a la
carretera de manera bastante literal. En esta etapa,
tenemos esta ilusión de movimiento como cómo nuestros autos circulan por una
autopista y tenemos la capacidad de controlar nuestro
auto girando a la izquierda o a la derecha. Pero ahora tenemos que enfocarnos en poner nuestros
autos de obstáculos en la carretera. Estos son los autos
que vamos a estar tejiendo en medio mientras
jugamos a través de nuestro juego. Como puedes ver en esta etapa, solo
tenemos un sprite de auto, pero pronto
verás como a partir de él, podemos crear una cantidad
interminable de autos Nuevamente, antes de comenzar a codificar, pensemos en
lo que tiene que hacer. Entonces podemos considerar cómo
lograremos esto con código. Entonces, para promover la
ilusión de movimiento y
agregar un obstáculo
que debemos evitar, queremos que este auto
parezca que está conduciendo a una
velocidad más lenta que nuestro auto. Entonces estaría viniendo poco a poco
por un carril como este. Entonces tendríamos que
esquivarlo girando a la izquierda o a la derecha. Entonces intentemos abordar
el primer problema. Mudarse a nuestro sprite de autos. Primero podemos adjuntar
un bloque para siempre a este
guión actual, simplemente, todo lo que haremos es que
el auto se mueva lentamente hacia abajo por
la pantalla cambiando
el valor y bi negativo de digamos cinco. ¿Entonces golpeando play? Bueno, es perfecto. Porque viene
por el camino. Todavía parece que está
avanzando porque está retrocediendo más lento que
la carretera retrocediendo. Pero ahora que tenemos
este auto en movimiento, se
puede ver que simplemente
se detiene cuando llega
al final de la pantalla.
Y esto funciona perfectamente. Bueno, perfecto, si lo único que queremos es un obstáculo en nuestro juego,
que no es el objetivo aquí. En cambio, necesitamos que el auto
vuelva al inicio de nuestra pantalla cuando
llegue al fondo. Bueno, para hacer esto, necesitamos agregar alguna comprobación de
condición. Pero si te mueves a nuestro grupo de movimiento,
si recuerdas, teníamos esta posición y y
podemos usar esta para verificar cuál es
la posición y de nuestro sprite, que significa que podemos
verificar para ver si nuestro sprite ha llegado
al final de la pantalla, y si lo ha hecho, podemos hacer que
vuelva a la En primer lugar, lo que necesitamos
es una declaración if, notarás aquí que no
puedes poner este
bloque de posición y en la sentencia F. Bueno, por razones obvias, es como si y posicion
entonces haz algo. Bueno, eso no tiene sentido. Lo que tenemos que hacer es verificar la posición y sea
inferior a un cierto valor. Y al igual que con
nuestras líneas viales, podemos hacer esto agarrando este bloque verde
del grupo de operadores Esto es lo que comprueba si un valor es mayor
o menor que otro. Recuerda, para prestar atención
al tamaño al inicio. Aquí va de una talla que es menor que donde empieza, y aquí va de
una talla que es mayor. Queremos verificar si
y es menor que -210, que es básicamente la
parte inferior de la pantalla Ahora bien, si esta condición es cierta, queremos que nuestro auto vuelva
a la parte superior de la pantalla. Todo lo que tenemos que hacer
es traer un bloque G
dos y establecer
el valor y en 210, que es básicamente la
parte superior de la pantalla. Juega Bueno, como puedes ver, nuestro auto baja y
cuando llega al fondo, vuelve a la cima. Es bonito. Eso se
ve bastante bien. Pero todavía hay
una cosa más que
tenemos que abordar. Ese es nuestro auto. Bueno, sigue
bajando por el mismo carril, lo que haría el
juego bastante fácil porque todo lo que necesitas hacer es conducir en cualquiera de los otros
carriles y ganaríamos. Aquí no queremos victorias baratas. Entonces lo que necesitamos es que
el auto sea de alguna manera cambiar
aleatoriamente entre cada uno de estos carriles cada vez
que vuelve a la cima. Ahora bien, esto es un
poco más complicado de
lo que piensas. Pero comencemos
con lo que sabemos. Sabemos que esto va a tener algo que ver
con el valor x. Como ahora mismo, lo ponemos a cero cada vez
que va a la cima. Tenemos que cambiar eso. También sabemos
que tiene algo que
ver con escoger un número aleatorio. Para empezar, solo
llevemos el pick random
al go a x
Ahora podemos ver cuáles serán
los
límites superior e inferior
arrastrando nuestro auto
al primer carril. Ahora podemos ver cuáles serán
los
límites superior e inferior arrastrando nuestro auto
al primer carril Sí, se puede ver
que está en menos 145, y el último carril está bien 1405 Podemos hacer que x se establezca un número aleatorio de
menos 1405 a 1405 Si jugamos, puedes ver que cada vez que nuestro
auto llega al final, cambia de carril,
lo
cual es bueno. Pero el problema
es que a veces va entre nuestros carriles, lo cual no es bueno, y aquí es donde se pone
un poco complicado. Tenemos que cambiar la
forma en que abordamos esto. En lugar de establecer
el número entre menos 1405 y 1405, necesitamos hacer un
poco de matemáticas, diversión Lo que necesitamos es un bloque plus y un
bloque de tiempos, y verás por qué. Nuestra exposición de nuestro auto puede
ser un mínimo de menos 1405, podemos ingresar eso en
nuestro primer plus input Ahora hay cinco carriles
diferentes posibles en los que puede estar nuestro auto
en cualquier momento. Lo que tenemos que hacer es resolver el espacio
entre los carriles. Nuestro primer carril es menos 1405. Si lo movemos al
segundo carril, Está en -70. Ahora, 14570, te da 75, pero solo podemos decir alrededor de 75
75 es la distancia
entre los carriles Si nos movemos este
bloque de tiempos al bloque más, podemos ingresar 75, ya que hay cinco carriles, podemos volver a usar pick aleatoriamente, y aquí podemos
configurarlo en 040 parece raro ¿Por qué no uno a cinco?
Esto es porque bueno, menos 1405 es nuestro primer carril Y cualquier cosa veces cero. Entonces, si el número aleatorio es cero, nuestro auto estará en
nuestro primer carril. Sé que esto puede
ser un poco confuso. Pero a medida que trabajas más con este
tipo de bloques, mejor lo entiendes. Pero de, veamos
esto en acción. Bueno, eso se ve casi perfecto. Podemos ajustarlo solo un
poco para conseguirlo aún mejor. Como puedes ver el último
carril está un poco lejos, así que cambiemos
esto para que sea 74, trata de prueba y error. Pero sí, eso
se ve muy bien. Ahora solo siéntate,
relájate y disfruta tu creación porque
solo va a mejorar.
31. De los obstáculos al atasco de tráfico: domina la clonación para obstáculos dinámicos: Bueno, creo que realmente está
empezando a tomar forma. Tenemos nuestro camino que
bajan constantemente. Tenemos un auto que controlamos. Tenemos nuestros obstáculos
que tenemos que evitar. Ahora vamos a convertir esto
o en obstáculos generando más tráfico
al sumar más autos. Quizás estés pensando para ti mismo, bueno, esto ya es bastante fácil. Todo lo que necesito hacer es duplicar este auto de obstáculos algunas
veces y Bob es tu tío. Bueno, Bob, quizá tú tío, pero esa no es
realmente la solución. Bueno, vamos a darle un show de prueba. Ya sabes, como digo,
la solución simple es la mejor solución y
esto seguro suena simple. click derecho en nuestro auto, y luego golpeando duplicado, y hagámoslo una vez más. Ahí vamos. Ahora tenemos tres autos listos para
salir. Vamos a ponernos a prueba. Bueno, eso es algo que funciona. Pero nuestros autos aparecen todos
al mismo tiempo y a veces
en la misma línea. Podríamos simplemente ir a estos autos duplicados y una losa de espera en cada uno de ellos
en la parte superior del guión y que sea de 1 segundo
y 2 segundos para tenerlos espaciados uniformemente
y una vez más, golpeando play. Bueno, después de esperar a que
estos autos comiencen a moverse. En realidad se puede ver
que funciona bastante bien. Ahora bien, si todo funciona tan bien, entonces ¿por qué no solo
usamos la solución Déjame presentarte
un pequeño acrónimo, que se llama
código seco, código D R. Lo que significa seco es
que no te repitas. Déjame decirlo otra vez.
No te repitas. Uh, eh. Eso es muy gracioso. Esto es muy popular
dicho en la programación es a menudo duplicar código podría sonar como la solución fácil Sin embargo, cuando
empiezas a hacer esto, las cosas pueden ponerse realmente desordenadas También hace que las cosas sean
difíciles de mantener. Por ejemplo, si quisiera
cambiar la velocidad de mis autos, no
podría simplemente
cambiarlo en un solo lugar. Tendría que entrar en
cada sprite para cambiarlo. Dicho esto,
busquemos una solución más inteligente. En primer lugar, eliminar todos
estos duplicados. Después yendo a nuestro sprite de obstáculo
principal y finalmente yendo a
los bloques de control, verás que tenemos
estos bloques aquí Cuando empiezo como un clon, crear clon de y
eliminar este clon. Y estos son bloques realmente
importantes. Arrastrándolos hacia abajo, y
luego, echemos un vistazo. Probemos esto trayendo este clon de crear de mí mismo
dentro de esta declaración F. Después golpeando play, verás que cada vez que nuestro
auto llegue al final, aparece
un nuevo clon en la parte superior. Pero también ves que estos
autos realmente no se mueven. Simplemente se quedan ahí, lo cual no es realmente idea. Será que mis amigos, es para lo que está este bloque. Básicamente, lo que está sucediendo
es que nuestro guión está sonando, y luego cuando esta
condición es cierta, crea un clon de sí mismo, que es el carro de obstáculos. C es esencialmente una copia
idéntica de un sprite, como todos los disfraces que tiene, los efectos de sonido y más Sin embargo, una
diferencia clave es que un clon no es lo mismo duplicar un sprite
porque como viste, los sprites duplicados se mueven
como los normales,
mientras que el clon simplemente
estaba atascado en la parte Eso es porque el clon no
tiene acceso al script
porque este script solo se activa cuando se hace clic en la
bandera, y eso solo ocurre
una vez al principio Aquí es donde entra este
bloque. Nos permite agregar código
a nuestros sprites clonados. Si simplemente duplicamos este código y lo agregamos a
cuando empiezo como clon, luego jugamos, verás que cada vez que el personaje
llegue al final, se agrega
un clon y tiene
la misma funcionalidad. Pero como también puedes ver,
realmente simplemente no deja de coning. Pero creo que entiendes la idea. Ahora que tienes una
buena comprensión del importante concepto de código seco y cono, no te repitas.
Hagamos que esto funcione. En primer lugar, podemos
deshacernos del código en el bloque de código ya que también
podemos desconectar este código del botón de clic de
bandera de ganar. Ahora podemos agregar un
bloque para siempre y un bloque de peso, y luego esto crea un
clon de mi mismo bloque. Básicamente cada segundo
creará una c de sí mismo. Ahora para lo importante pero, vamos a arrastrar este código aquí
a cuando empiece como un clon. Recuerda, no podemos mantenerlo
así porque solo
seguirá creando nuevos conos. Básicamente, lo que podemos hacer es cuando el auto
llegue al final, podemos eliminar esta
c, vamos a probar. Una vez más, eso
no está del todo bien. El auto sólo está conduciendo vivo. Esto tiene sentido, obviamente, porque si miras el código cada vez que el auto
arranca en un clon, va a cero x y uno 90 y
Todo
lo que tenemos que hacer es
deshacernos de eso y luego mover este ir a la posición
aleatoria al
inicio del guión. Una vez más, si golpeamos play. Bueno, eso funciona mucho mejor. Hay dos
bicicletas pequeñas que podemos arreglar. En primer lugar, ocultemos
nuestro sprite principal, para que no se pegue a nuestra pantalla y luego
mostremos nuestro sprite clon Además, podemos cambiar este ir a
y a un número alto como 250, que hace que se vea
más fluido. Ahí vas. Ahora está
funcionando correctamente. Si sigues adelante, ese es un trabajo
absolutamente increíble
para completar esta lección. Realmente cubrimos algo de
terreno aquí, bien hecho. Sigamos con este
impulso y comencemos a darle vida a este juego.
32. Aleatorización de la carretera: crea patrones de tráfico reales: Bien, entonces nuestro tráfico se
ve bastante bien, y no hay ningún diseño que,
pero tenemos dos problemas. En primer lugar, el tráfico se genera a un ritmo muy
consistente, como puedes ver,
Es solo un auto, el siguiente auto, el
siguiente auto, y así sucesivamente. Realmente deberían desovar
a diferentes ritmos. En segundo lugar,
todos son el mismo auto. Si miras los
disfraces, puedes ver que tenemos múltiples tipos de autos
diferentes. Este es tu mini reto. Quiero que intentes
resolver ambos problemas. En primer lugar, hacer que
el auto genere a diferentes ritmos, luego tenerlos
sean autos diferentes Vamos. Esto se puede hacer.
Pausa el video ahora y dale este pequeño mini desafío una oportunidad a
este pequeño mini desafío. Bueno,
¿lo resolviste? Si aún no lo has
resuelto, todo tiene que ver con números
aleatorios. Déjame mostrarte a lo que me refiero. En primer lugar, para que la velocidad de
desove de autos varíe, todo lo que tenemos que hacer es arrastrar una púa al azar a
este bloque de peso, y aquí podemos
tener que variar de 0.6 segundos a 1.2 segundos. Si tuviéramos placa, se
puede ver que se ve mucho menos robótica
y un poco más natural. Por último, para que
parezca menos que los autos están saliendo de una línea de fábrica y más como tráfico normal. Aquí podemos usar disfraces. entrar en los Ls
y luego agregar este disfraz de interruptor justo
al inicio de nuestro guión,
podemos tener un cambio. Ya ves, si haces clic aquí, tenemos seis disfraces de
autos diferentes. Aquí de nuevo, también podemos
agregar un pick random. Debido a que tenemos seis disfraces, podemos elegir uno al azar 1-6. Ahora cuando golpeamos placa, bueno, eso se ve mucho mejor. En realidad está
empezando a parecer un juego adecuado.
Gran trabajo hasta el momento.
33. Dándole vida al mundo: animación del paisaje: Bien, ahora estamos en
las etapas finales de esto antes de agregar
una detección de choques, intentemos que el
escenario se mueva para que nuestro juego se sienta
más inmersivo Lo que queremos que suceda es
que este sprite de árbol
baje por el costado de la carretera a medida que empezamos a conducir y que se sienta como si estuviéramos
pasando por paisajes Este código será muy similar a nuestro código para nuestro sprite de
obstáculos Solo copiémoslo
y veamos qué pasa. Al pasar, podemos
simplemente arrastrar estos bloques. Y cuando haces clic en reproducir. Bueno, creo que eso es de esperar. Nuestros árboles simplemente actúan como autos y tan tontos como esto es
con algunas modificaciones, podemos conseguir que esto funcione para nosotros. Obviamente, no
queremos nuestros árboles en medio de
la carretera y podemos arreglar esto sacando esta
cuadra dentro del go to block. Aquí podemos luego agregar
en un pick aleatorio. B lo queremos a un
costado de la carretera, podemos hacer que escoja un número entre menos dos 50 y -200 Y creo que también podemos
mantener el tamaño aquí igual ya que se ve bien,
pegando de nuevo play. Mira lo mejor que es eso. Lo único ahora es que nuestros árboles se mueven a una velocidad
diferente a la carretera. Si volvemos a
nuestras carreteras brillantes, se
puede ver que tenemos la
velocidad establecida dos menos diez. Hagamos lo mismo con nuestros árboles. Vuelve a jugar. Eso
definitivamente es mejor. Aunque un pequeño
problema que tenemos aquí es los árboles se están apilando en
la parte inferior de la pantalla, pero podemos solucionarlo fácilmente cambiando
este F y check aquí vamos a
cambiarlo a digamos -200 Además, aumentemos
un poco
la velocidad de desove ajustando
esta selección aleatoria de 0.6 a 1.20 0.620 Bueno, eso arregla eso. Los árboles desovan más rápidamente. Buen trabajo, pero
todavía hay un problema, y estoy seguro que se puede ver, que es que sólo tenemos árboles
a un lado de la carretera. Y podríamos simplemente duplicar
el sprite, que funcionaría. Pero como sabes, siempre es
bueno mantener tu código seco. Como en, no te repitas. Pensemos en una solución
más inteligente. Ahora mismo, cuando nuestros
árboles empiezan como un clon, pasa a una posición aleatoria entre menos dos 50 y -200 Pero también queremos 202 50 como opción porque este es el lado derecho de la pantalla. Lo primero es lo primero,
dupliquemos este pick random y luego cambiemos
los valores a 202 50. Bien. Ahora que ya lo hemos hecho, cómo podemos tenerlo que a veces elige
esta selección al azar, mientras que otras veces
elige esta selección al azar. Bueno, pausa el
video y trata de ver si puedes figurar
este por tu cuenta. Aunque no es tan
fácil como podrías pensar, pero apuesto a que estás a la altura. Como siempre, hay diferentes maneras de conseguir que esto funcione. Pero te voy a mostrar cómo
podemos usar variables para resolver esto. Lo que podemos hacer es crear
una variable llamada sides. Entonces podemos agregar
este bloque de código
al inicio de nuestro cuando
empiezo como un script de cono. Entonces asegúrate de cambiar
esto para establecer la entrada de lados. Después de eso, trae un pick aleatorio y aquí nos
fijaremos para ser solo uno o dos. Ahora podemos agarrar y
luego condicional, podemos agarrar esto
es igual a dos operador, y finalmente, la variable lados. Lo que queremos hacer es
tenerlo así. Si lados es igual a uno, entonces haz lo que esté aquí, o si lados no es uno, que es dos, entonces haz
lo que esté aquí dentro. Podemos arrastrar este ir a bloquear
dentro de esta primera condición. Entonces podemos hacer duplicarlo y cambiar este pick
random por este de aquí. Entonces finalmente conectamos todos
estos bloques juntos. Repasemos por esto rápidamente. Cuando empezamos como un clon, tenemos unos lados variables, que se establecerán para ser uno
o dos, lo que indica izquierda o derecha. Entonces, si el tamaño es igual a uno, los árboles
desovan por un lado,
y si el tamaño es igual a dos, desovan en el otro Al golpear play ahí lo tienes. Tenemos árboles desovando en
ambos lados y se ve bien. Creo que ya casi estamos ahí. Solo un poco de detección de
colisiones y nuestro juego
prácticamente estará hecho.
34. Toques finales: detección de colisiones y animación de spinout: Bueno, esto es todo. Es hora de que hagamos este juego agregando
algo de detección de colisiones para detectar. Si chocamos contra un auto chocamos contra
los costados de la carretera. También estaremos agregando una animación spinout
genial para darle un efecto más dinámico
y dramático Pero primero, agreguemos una detección de accidentes simple
muerta. Pasando a nuestro sprite de reparto principal, agarraremos el estándar cuando se haga clic en la
bandera, luego para siempre, entonces, podemos agregar en este bloque conmovedor y cambiarlo para detectar autos de
obstáculos Por último, si lo hace,
vamos a hacer que se detenga o. Bueno, eso es bastante simple. Vamos a darle una oportunidad
a esto y ver carreras. Señor. Moviéndose a lo largo de las
líneas. A es dandy Y entonces si decimos
chocar contra este auto de aquí. Bueno, ahí lo tienes. No está mal. Mientras lo agregaremos.
Comprobemos también para ver si nuestro auto está tocando
el borde de cualquiera de los carriles. Y simplemente podemos
hacer esto agarrando otros dos cheques mayores que el operador y un
menos un operador Entonces arriba en el grupo de movimientos, podemos usar este bloque de
exposición, que es la
exposición actual de Así que trayendo eso a
ambos, y finalmente, podemos comprobar si la exposición de nuestros
autos es mayor o
menor que negativa 1805 Añadiendo un tope o
en ambos. Antes de jugar, veamos rápidamente qué es lo
que estamos pasando aquí. Básicamente, si nuestro auto está tocando el carro de obstáculos
, nos detenemos todos, y si la exposición de nuestros autos es
pasada 1805 o negativa 1805, que está más allá del
borde, nos detenemos Vamos a darle un viaje a esto. Como pueden ver, si
tratamos de dejar la carretera, bueno, nuestro juego termina, eso es
lo que nos gustaría ver. Ahora para el toque final, agreguemos nuestra animación de
crash spinout Entonces lo que queremos es que
nuestro auto básicamente tenga un poco de animación
donde si tocamos un obstáculo o si nos
salimos de la carretera, nuestro
auto debería girar. Creo que el mejor lugar
para comenzar con esto es en el grupo de mociones porque
aquí tenemos este bloque de giro, y si
le damos clic aquí, pueden ver nuestros giros de autos Eso es más o menos lo que queremos. Podemos traer este bloque
y luego porque
queríamos darle la vuelta unas cuantas veces para que
pareciera que está girando, podemos agarrar un bloque repetido. Si metemos esto aquí y
puedes ver cómo se ve nuestro auto
como si estuviera girando. Fresco. Ahora tenemos que hacer es duplicar
este bloque dos veces. Y luego agregarlo a cada una de
nuestras comprobaciones condicionales. Bueno, si nos fijamos en nuestro guión. Si alguna de estas
condiciones es cierta, si toca un carro de obstáculos, primero
debe girar diez veces y luego detenerse. Vamos a
darle una oportunidad a eso. Conducir por una
carretera, todo está bien. Entonces si chocamos contra un auto, bueno,
eso no es lo que queríamos. Simplemente giró por una fracción de segundo y la cara de
nuevo al frente. Pero si miras
el código cuidadosamente, eso tiene sentido porque bueno, este código en realidad está
funcionando bien, pero este código está
interfiriendo con él porque este
pedacito de script aquí está constantemente haciendo
que nuestro auto apunte recto si no
estamos girando, esto estropea nuestra animación Ahora, una forma en que podríamos
arreglar esto es simplemente arrastrando todo este bloque de código dentro de
este bucle para siempre De esta manera, estos dos guiones
no entrarán en conflicto entre
sí es si una de estas
condiciones es cierta. Al igual que si chocamos contra un auto, el código no
pasará al siguiente bit
del guión hasta que esté terminado, lo que significa que primero jugará
misión y luego se detendrá. Dándole una oportunidad a esto. Se
puede ver que funciona. Pero esta no es exactamente
una solución limpia. A ahora tenemos dos tipos
diferentes de scripts que se fusionan en uno, que puede dificultar la
comprensión y edición de tu
código a medida que avanzas Pulsar comandos o
deshacer o controles. Lo que podemos hacer en cambio es agarrar otro de
estos bloques de parada, pero cambiarlo para detener otros
scripts en el sprite Después duplicarlo dos veces, y finalmente agregarlo
al inicio de cada una de
estas comprobaciones condicionales. Si miras nuestro código ahora, si tocamos algo, detendremos cualquier otro script en el sprite que se ejecute
como este de aquí Después tocaremos la
animación y luego detendremos todo. Antes de darle una oportunidad,
vamos a cambiar este giro por algo
menos que ocho. Por último, darle una oportunidad a esto, conducir hacia abajo, todo también. Después golpeando en un auto, ahí lo
tienes. Trabajo sobresaliente. Este es en gran medida
un juego jugable, y deberías estar orgulloso
de haber llegado hasta aquí Siéntate, relájate y disfruta tu logro porque
en la siguiente sección, veremos cómo podemos transformar este juego con niveles, variables
dinámicas, efectos de
sonido, música y mucho más
35. Subida de nivel: inyecta dinamismo en el juego: Bueno, has llegado
tan lejos y has construido un juego realmente genial y está
casi listo para su publicación. Sin embargo, un problema que tenemos es
la estaticidad de nuestro juego. Al igual que, no hay niveles
con dificultad creciente. Nuestro auto se mueve a la misma velocidad. Los coches de obstáculos también
engendran a la misma velocidad, y todo esto nos deja
con un juego bastante soso Entonces, ¿cómo podemos arreglar esto? ¿Cómo podemos hacer que nuestro juego sea más entretenido aumentando
la dificultad? Bueno, sabemos que
una forma de aumentar la dificultad
sería aumentando velocidad a
la que aparecen los autos de
obstáculos o incluso mejor haciendo
que bajen más rápido Entonces, moviéndonos a nuestro carro de obstáculos, veamos las dos áreas
que controlan qué tan rápido se mueve
nuestro carro de obstáculos y qué tan rápido se genera en el juego En primer lugar, como puedes ver,
nuestro carro de obstáculos espera 0.6 a 1.2 segundos antes de que cree un
cono y aparezca en. Esta es la única parte del código
que necesitaríamos ajustar. Entonces, mirando este guión, se
puede ver que
el auto
cambia constantemente y en menos cinco. Entonces esta es su velocidad de movimiento, y la otra parte, también
necesitaríamos ajustarnos. Entonces, ahora que hemos identificado
las dos partes del código que controlan la velocidad y la tasa de
generación del sprite, ¿cómo podemos hacer que siga
siendo más difícil a medida que avanza
el juego Bueno, podríamos seguir
duplicando este código y duplicándolo y duplicándolo y
duplicándolo Entonces, por ejemplo,
cambia esto a 0.5 y
1.1 y solo sigue haciendo que el tiempo de generación sea cada vez
más corto Pero creo que sabes que
ese no es el camino a seguir. Porque como recuerdas, código
seco es importante, es decir, no te repitas,
ciertamente
nos estamos repitiendo aquí. En cambio, al igual que con
el otro juego que creamos, podemos usar variables para
controlar nuestra velocidad de juego. Pero antes de seguir
adelante y cambiar, esto es importante
que entiendas
lo importantes que
son las variables en la programación. Ahora, a menudo es tentador
simplemente ingresar valores
como este
cambio i por menos cinco Programación, esto es lo que se
llama valores codificados duros. Si bien esto está bien a veces también hay un montón
de desventajas, tomemos un momento
para considerar algunas de ellas. En primer lugar, falta de flexibilidad. Imagina que has construido un
juego con diez niveles, todos con
dificultades codificadas. Si quieres cambiar
la tasa de dificultad, como la rapidez con la que se vuelve difícil el
juego, tendrías que ajustar
cada nivel individualmente. Ahora bien, esa no es una forma muy
eficiente, ¿verdad? En segundo lugar, actualizaciones
y ampliaciones. Digamos que tu juego
se vuelve popular y
decides lanzar una
versión o expansión actualizada. Si todo está codificado duro, hacer cambios consistentes
se convierte en una tarea muy tediosa. Al igual que con nuestro juego, necesitaríamos cambiar
el mayor valor de velocidad para nuestros árboles y nuestro camino. Y por último, cuestiones de consistencia. Uno de los principales
problemas que
enfrentarás es la consistencia, es decir, si tenemos un pequeño cambio que
queremos hacer en nuestro juego, necesitaríamos
encontrar todos los valores que se vean afectados por este cambio, y si nuestro juego es grande, esta tarea se vuelve
casi imposible. Dicho todo eso, podemos mejorar mucho nuestro
código usando variables en lugar de
valores codificados en la medida de lo posible. Entonces lo que podemos hacer es tener un espacio donde ajustemos
todas las variables. Y de esta manera, nuestro juego es
fácil de administrar y actualizar. Pasando a nuestras variables. Piensa en qué
variables necesitamos
crear para que nuestro juego sea más
adaptable y escalable. Bueno, las dos cosas que queremos
controlar son nuestra velocidad de generación
y nuestra velocidad de movimiento Vamos a crear esto. En primer lugar,
golpear make variable. Podemos llamar a este primer
spawn speed, golpear Crear. Una vez más, podemos llamar a esta siguiente
velocidad de movimiento y
asegurarnos de que sea una variable global
asegurando que este
botón esté seleccionado. Entonces, hagamos esto. Ahora, en primer lugar, cambiemos nuestra velocidad de generación Ahora mismo, es este valor
codificado duro de 0.6 y 1.2. Entonces, en lugar de 0.6, arrastremos la variable de velocidad
de generación Entonces como 0.6 es
el doble del tamaño de 1.2, podemos establecer la segunda entrada para generar velocidad multiplicada por dos este momento, nuestros autos no se moverán ya que nuestra
velocidad de generación se establece en cero Pero para probar esto,
ajustémoslo rápidamente a 0.6 simplemente seleccionándolo aquí, ingresando en 0.6
y haciendo doble clic. Como pueden ver, ha cambiado. Ahora pegando play,
Ahí lo tienes. Es decir, nada ha
cambiado, pero pronto lo hará. Así que prepárate porque
en la siguiente lección, vamos a actualizar totalmente este juego y
hacerlo verdaderamente adaptable.
36. Evolución de juegos estratégicos: domina las variables para el juego dinámico: Derecha. Hasta ahora,
acabamos de cambiar la velocidad de generación a una variable
para nuestro carro de obstáculos Pero como saben, nuestros árboles y follaje también tienen el
mismo desove en efecto Hagamos lo mismo por ellos. Pasando a este sprite, puedes ver que
está establecido en 0.60 0.3 Nuestra velocidad de generación
es actualmente 0.6, y simplemente podemos arrastrar
esta variable aquí Entonces como 0.3 es la mitad de 0.6, en lugar de cronometrarlo por
dos como con nuestro auto, podemos dividirlo por dos Agarrando esta división
de los operadores, pegando nuestra variable al escribir
en dos, y golpeando rápidamente play Una vez más. Aún no pasa nada
nuevo. Pero como puedes ver, funciona. Entonces, ahora que nuestra velocidad de
desove
se ha cambiado de valores
codificados a variables, lo siguiente que necesitamos
cambiar es nuestra velocidad de movimiento Ahora, en nuestro código, tenemos tres sprites diferentes
que se mueven hacia abajo. Tenemos nuestro sprite de obstáculo,
nuestro sprite de árbol y
nuestro sprite de carril de carretera En primer lugar, con nuestro sprite de carretera. Como puede ver, nuestro
movimiento está determinado por este cambio y por un valor
negativo de diez. Simplemente tomemos nuestra variable de
velocidad de movimiento ,
arrástrala aquí. Entonces ajustemos rápidamente nuestra variable de velocidad de
movimiento a menos diez y hagamos doble clic. Entonces si le pegamos a play, como pueden
ver , eso funciona a la perfección. A continuación, pasándonos a nuestro sprite de
árbol y follaje. Aquí puedes ver,
también tenemos el movimiento establecido en un valor codificado duro
menos diez. Entonces, simplemente,
podemos reemplazar este valor codificado duro con
esta variable, y eso es todo. Entonces, finalmente, podemos
pasar a nuestro carro de obstáculos. Aquí, como puede ver,
establecemos este valor un menos cinco
en lugar de menos diez. Y lo hicimos
porque queríamos que nuestro auto se moviera un
poco más lento que nuestro camino, lo
que le dio la ilusión de
que está avanzando. Una vez más, podemos intercambiar el valor estático con nuestra variable de velocidad de
movimiento. Pero para asegurarnos de
que se mueve a una velocidad más lenta que
nuestra carretera y árboles, podemos agarrar un operador plus. Lo metemos aquí
e ingresamos en cinco, ya que menos diez más
cinco es igual a menos cinco, volvemos al mismo
valor que teníamos antes. Entonces, finalmente, haciendo clic en reproducir, podemos probar si
todo está funcionando. Y sí, nuestro juego está
funcionando como lo era antes. Sin embargo, nuestro código ahora es
súper robusto y adaptable. Así que es hora de pasar
a la parte divertida. Nos pusimos mucho trabajo
reestructurando nuestro código, pero nuestro juego básicamente juega
igual que como lo teníamos. Veamos cómo
podemos hacer uso de este nuevo y mejorado código
agregando niveles a nuestro juego. Pero antes de cambiar nada, primero
vamos a crear un nuevo sprite Ahora, realmente no
importa qué sprite seleccione y
verá y en un segundo Pero después de haber
seleccionado el sprite, también
podemos entrar en
el editor de disfraces, seleccionar todo el objeto
y golpear retroceso Probablemente ahora estás realmente
confundido. Pero básicamente, lo
que vamos a hacer es usar el sprite para establecer todas
nuestras variables en nuestro juego Ahora bien, por qué esto es bueno es porque tenemos un espacio donde se establecen
todas nuestras variables, y esto facilita
cambiar valores, actualizar y hacer
cambios en nuestro juego. Y además,
nos mantiene súper organizados. Además, ¿a quién no
le gusta estar organizado? Bueno, al menos a la
hora de programar. Entonces lo primero es lo primero, agreguemos en nuestro
bloque más crucial cuando comience haga clic. Bajando a nuestras variables, arrastremos dos de estos bloques de valores variables
establecidos, y aquí podemos establecer la velocidad de generación y la
velocidad de movimiento Lo que queremos hacer es simplemente
establecerlo en el valor actual que
tenemos en este momento para asegurar que nuestro juego siempre
comenzara la velocidad. Eso es 0.6 y menos diez. Ahora para aumentar la dificultad, todo lo que necesitas hacer es agarrar un bloque de peso de bucle
para siempre, y luego dos de estos
cambian variable por bloques. Con eso, podemos establecer
nuestro peso en 8 segundos. Entonces podemos establecer este
bloque para cambiar la velocidad de
generación y el otro
para cambiar la velocidad de movimiento Entonces, para nuestra variable de
velocidad de generación, actualmente
está establecida en 0.6 Entonces aquí solo queremos hacer
pequeños ajustes. Entonces lo que voy a hacer es cambiar
la velocidad de desove por -0.02. De esta manera, nuestros autos poco a poco
comenzarán a desovar más rápido. Entonces para nuestra velocidad de movimiento, podemos cambiar este
valor por menos uno. Ahora antes de golpear play, entendamos rápidamente
lo que está pasando aquí. En primer lugar, nuestro juego se establece en
su nivel inicial una velocidad. Luego, cada 8 segundos, disminuimos lentamente la cantidad de tiempo que tardan nuestros
autos en aparecer, y también disminuimos nuestra velocidad de
movimiento en menos uno, lo que hace que nuestros autos
y los obstáculos
parezcan que se mueven cada vez
más rápido a parezcan que se mueven medida que avanza
el juego Ahora bien, esta vez si
jugamos el juego, notarás que
cada 8 segundos, estos valores disminuyen, y nuestro juego comienza a ser
cada vez más rápido. Ahora antes de concluir
esta lección, agreguemos rápidamente
un elemento score a este juego para los derechos de fanfarronear, por
supuesto, para hacer esto, todo lo que necesitamos hacer es crear una nueva variable a la que
podamos llamar score A continuación, podemos agregar un puntaje
establecido a cero, como lo hemos hecho con
estas variables. Por último, cada 8 segundos, podemos seguir adelante y cambiar
el marcador por digamos 43 porque ¿a quién no le gusta un puntaje grande
para motivarlos Antes de hacer clic en Reproducir, ocultemos rápidamente estas
otras variables y luego movamos nuestra
variable de puntaje a la parte superior. Además, podemos simplemente hacer
doble clic sobre él, por lo que se muestra como
un número grande. Bueno, con todo eso hecho, ahora
tenemos
dificultad cada vez mayor, una puntuación, y lo más importante, un código súper
robusto que nos
permite ajustar valores en
todos nuestros espacios con facilidad. Ahora para la parte
más importante absoluta, ve y sigue jugando
el juego hasta llegar a una puntuación
lo suficientemente alta como para presumir Bien hecho.
De verdad lo estás haciendo genial.
37. Mini desafío: integración de variables para mecánicas de juego mejoradas: Ahora es el momento de
poner a prueba tus increíbles habilidades de
programación. Este es tu mini reto. Si recuerdas de
nuestra primera lección, discutimos un
proceso de tres pasos que podríamos usar al desarrollar juegos,
que fueron en primer lugar, configurar la estructura básica, que es importar nuestros sprites, entender qué debería hacer
el sprite
y, en general, cómo funcionarían nuestros
juegos En segundo lugar, desarrollar la mecánica de
juego, que es básicamente todo nuestro
código que da a nuestros juegos su funcionalidad como
coches de obstáculos que se mueven por la carretera, o nuestra carta de jugador,
moviéndose de izquierda a derecha. Entonces en tercer lugar,
pulir el juego, y este es un paso en el que
estamos más o menos ahora. Estamos en el punto en el que
nuestro juego se ve genial, pero solo necesitamos
darle ese toque extra. Y una forma de
hacerlo es agregando música y efectos de sonido. Entonces este es tu reto. Quiero que averigües
una manera de agregar un sonido cuando un auto de obstáculos pasa a nuestro auto
jugador a corta distancia. Así que al igual que si estuvieras en una carretera y escuchas
un auto pasando por
alto, haría ese
sonido a medida que pasa. Entonces quiero que hagas lo
mismo por este juego. Dos consejos que te voy a dar es que el sonido que debes usar se llama auto que vas a necesitar para usar código
dentro del grupo de detección. Con eso, pausa el
video e intenta ver si puedes agregar el
efecto de sonido a tu juego. Bien. Bueno, ¿cómo fue
eso? quizá no sea tan sencillo
como pensaste al principio. Bueno, hagamos esto t. Lo
primero que vamos a hacer es seleccionar nuestro sprite de carro
obstáculo ya que este será el
sprite que haga el sonido Después vamos a dar click
en la pestaña de sonido y elegir el sonido que
mencioné carvem Ahora, con eso sumado a nuestro
sprite, podemos ponernos a trabajar. Entonces queremos que este clon
interactúe con nuestro sprite de reparto y haga que reproduzca el sonido cuando se acerca Así que podemos utilizar
este bucle para siempre encontrado en cuando empiezo
como un script de clon. Aquí, lo que necesitamos
es verificar si nuestro sprite clon se
encuentra a cierta distancia
de nuestro sprite elenco Así podemos pasar a la pestaña de detección y agarrar este bloque que se
llama distancia dos. Aquí, podemos cambiar la entrada del puntero del mouse
a nuestro coche reproductor. Y entonces lo que necesitamos
es menos que operador, así podemos agarrar uno de estos, así como ves el código aquí, cuando nuestra y es
menor que menos dos diez, nuestro cono se borra a sí mismo En lugar de eso, podemos comprobar si la distancia de nuestro
coche jugador es menor a 90, y si lo es, podemos hacer
que reproduzca el sonido. Entonces todo lo que tenemos que hacer es
agarrar un if condicional, y luego este código de sonido de inicio. Entonces pegarlo todo junto, y finalmente arrastrar todo
este bloque dentro de nuestro bucle forever. Ahora, golpeando play,
como puedes ver, cuando pasamos por un
auto muy cerca, ahora emite un sonido. Sí, notarás que suena como que está
fallando un poco, y esto se
debe básicamente a que nuestro código sigue reproduciendo el sonido continuamente hasta que nuestro auto está fuera de alcance Pero no te preocupes por
eso ahora mismo ya cuando agreguemos nuestra música de
fondo pronto, todo
se unirá. Bueno, eso es. Con eso, nuestro auto de obstáculos tiene un efecto de
sonido genial, pruébalo. Si no lo lograste,
porque en la siguiente lección, vamos a agregar
algunos toques finales que completarán nuestro juego.
38. El toque final: enriquece la jugabilidad con efectos de sonido y música: Bueno, esto es todo. Es hora de acabar con
esta cosa. Entonces, para terminar este juego, vamos a agregar
algunos efectos de sonido más, y luego agregar algo de música de
fondo. Entonces comencemos con lo
más fácil porque, quiero decir, a quién no le gusta hacer
las cosas más fáciles primero. Pero queremos agregar un
buen sonido de fondo
a nuestro proyecto. Así que haciendo clic en nuestros
fondos, derecho, podemos agregar en un clic de
bandera cuando y un para voluta Luego moviéndonos a la pestaña de sonidos y
aspirando sobre este botón Luego podemos seleccionar subir sonido. Y aquí podemos seleccionar un sonido de fondo de nuestra carpeta de música y
efectos de sonido. Para este juego,
podemos usar funk casino. Volviendo a nuestro código, podemos arrastrar el sonido de
reproducción hasta que termine bloquear y
seleccionar funk casino o cualquier sonido que subas Y golpeando play.
Observe lo mejor que es eso. Y también fíjate como
nuestro efecto de sonido para nuestro auto funciona mucho mejor. De hecho suena bastante bien. Entonces, con eso hecho, pasemos
a nuestro siguiente efecto de sonido,
nuestro efecto de sonido de derrape de autos Y aquí, básicamente, lo que queremos que suceda
es que nuestro auto haga un sonido derrapante cuando
choquemos con un obstáculo Así que al pasar a nuestro sprite de coche
jugador, podemos agregar en este sonido Entonces haciendo clic en la
pestaña de sonidos y eligiendo un sonido, entonces
podemos buscar skid. Lo cual es un columpio aquí. Entonces seleccionándolo
y volviendo a nuestro código. Ahora, lo que queremos es
que nuestro auto reproduzca este sonido derrapante
cuando toque un obstáculo Entonces, si miras
el guión aquí, este es básicamente
el guión que detecta si nuestro auto está
tocando un obstáculo. Entonces todo lo que tenemos que hacer es agregar en esta jugada sonido de patín
al inicio de cada una
de estas comprobaciones. Entonces agregando uno a cada uno. Entonces podemos golpear play.
Golpearlo es un obstáculo. Sí. Eso no está del todo bien. Pero básicamente, lo que
está sucediendo es que nuestro sonido de patín de reproducción
está interfiriendo con nuestro otro código porque
si miras el guión, reproduce el
sonido del derrape hasta que se hace antes de que pase a
los siguientes bloques de código. Entonces para arreglar esto, todo lo que tenemos que
hacer es eliminar todos estos sonidos de
juego de patines hasta que se hagan los bloques y
reemplazarlos con este patín de sonido de arranque. Y con eso,
podemos volver a jugar. Es un obstáculo. Entonces lo
tienes. Eso es mucho mejor. Ahora, antes de
concluir esta lección, solo
hay una cosa más, y es cambiar el
tono de nuestro auto de obstáculos para que medida
que estos autos pasen
a una velocidad más rápida, también suene más rápido. Entonces, al pasar a nuestro sprite de carro de
obstáculos, todo lo que tenemos que hacer
es agarrar una bandera de victoria , hacer
clic, luego este bloque de
tono establecido y establecer
el tono en cero, que básicamente es
configurarlo por defecto cuando comienza el juego Entonces agarra un bucle para siempre. Y entonces podemos poner este
cambio efecto de tono por bloque dentro de nuestro bucle. Y por último, para asegurarse de que el terreno de juego no
vaya instantáneamente extremadamente alto. Podemos agregar bloque de peso
y cambiarlo a, digamos 10 segundos. Te dejaré probar eso
por ti mismo porque hemos llegado al final de nuestra lección
y al final de nuestra sección, y hemos completado este juego. Realmente, muy buen trabajo
para llegar hasta aquí. Ciertamente has
logrado mucho. Así que date una buena almohadilla en la espalda porque
realmente te lo mereces.
39. Embarque en una aventura de esquí arcade: conceptualización de la obra maestra: Bueno, este es un momento emocionante porque este es el comienzo
de tu próxima obra maestra. Al igual que en esta lección, comenzaremos a
desarrollar nuestro próximo juego. Odio decir eso, pero éste va a avergonzar a todos tus
proyectos pasados. Hagámoslo. Y creo que a
estas alturas, ya conoces el simulacro. Lo primero es lo primero. Empecemos por crear
nuestros nuevos proyectos. Y al igual que todas
las otras veces, podemos hacer esto simplemente haciendo
clic en este botón aquí. Ahora, antes de que hagamos algo,
si miras a la cima aquí, puedes ver que nuestro proyecto
se llama simplemente sin título, lo cual es un poco poco poco inspirado Lo primero que podemos
hacer es cambiarle el nombre a Arcade Ski Adventure,
o lo que quieras. Una cosa más, puedes eliminar
este default en sprite, ya que definitivamente no lo
necesitamos en este proyecto, no esquiar para el gato Ahora, con eso fuera del camino. Antes de importar algún
sprites o hacer algo, necesitamos obtener una visión general
de
alto nivel de nuestro juego para
entender qué es, qué hace y luego qué pasos podemos
dar para lograrlo Porque recuerda,
es importante
descomponer un gran problema
en pasos alcanzables Discutimos cómo podemos seguir un flujo de trabajo de tres pasos
al hacer juegos, que estamos configurando la estructura
básica del juego, luego desarrollando la mecánica del
juego y finalmente puliendo el juego. Ahora, esos tres pasos son geniales. Pero si bien este método funciona
muy bien para juegos más pequeños, para proyectos más ambiciosos, necesitamos un
plan de acción más detallado. Así que déjame presentarte
el proceso ampliado de cinco pasos, hecho a el proceso ampliado de cinco pasos, medida para juegos más grandes, y seguir esta
guía
te ayudará mucho con los
emocionantes juegos, aplicaciones y animaciones que
producirás en el futuro. Etapa uno, ideas y diseño. En esta etapa,
todo se trata de ideas. Imagínalo como bosquejar el
plano de nuestro juego. ¿Cuál es la historia? ¿Qué tipo de personajes estamos viendo? Cuál es el tema central. Al final de esta fase, tendremos una idea de diseño de
juego integral que describe todo
sobre nuestro juego. Etapa dos,
montando los cimientos. Piense en esto como colocar los ladrillos y el
mortero para nuestro juego. Al igual que antes,
aquí estaremos importando todos los sprites que necesites y luego
colocándolos, para que tengas una mejor idea
de cómo va a funcionar todo Etapa tres, desarrollando la mecánica de juego
central. Aquí nuestro juego comienza
a mostrar signos de vida. Aquí es donde
comienza la acción real , codificando el movimiento del jugador, estableciendo la lógica del juego,
diseñando niveles y todo lo que hace que
nuestro juego sea bien, un juego. Etapa cuatro, mejora
y expansión. Ahora que tenemos
un juego jugable, es hora de agregar capas a tal vez
a un nuevo nivel o un enemigo desafiante o
incluso a un poder sorpresa Esta etapa se trata de agregar características y mejorar nuestro juego. Entonces, cuando llegues a la etapa cuatro, necesitas
volver a la etapa uno. Entonces digamos que queremos un
nuevo enemigo en nuestro juego. Aquí, tendrías que
volver a la etapa de diseño, luego a importarlo, luego a desarrollarlo como mecánica,
si te da la idea. Y luego finalmente etapa cinco,
pulido y finalización. Este es el toque final. Refinaremos los gráficos, introduciremos efectos de sonido,
afinaremos la interfaz de usuario y probaremos rigurosamente
nuestro juego para solucionar cualquier error y mejorar la experiencia
general del usuario Entonces, al seguir el proceso
estructurado de cinco pasos, nos aseguraremos de que nuestro viaje de
desarrollo de juegos esté organizado de manera eficiente y,
lo más importante, agradable. Y recuerda, cada gran juego comienza con solo una idea simple. Con una planeación cuidadosa y una ejecución
paso a paso, realmente no
hay límite de
lo que podemos lograr. Pero con todo eso fuera del camino, empecemos con el paso uno. Esto debería ser
lo suficientemente rápido porque ya
sabemos lo
que queremos para nuestro juego. Básicamente, queremos algo no muy diferente
de nuestro último juego. Aquí vamos a tener
esos obstáculos que se nos
acercan y que
necesitamos esquivar. Esto de nuevo, le daremos al
jugador la ilusión de movimiento. Pero esta vez,
parecerá que están esquiando bajando una montaña
a través de un bosque. Aquí queremos que los
árboles se desvanezcan a vista y que nuestro jugador tenga
un bonito efecto de giro. También queremos que nuestro jugador tenga píxeles de
nieve que los sigan, que deberían parecerse a marcas de esquí verías en la nieve normal. Y eso es básicamente todo para
la primera parte de nuestro juego. Después agregamos cosas nuevas
como una pantalla de inicio, un botón de reinicio y otras cosas emocionantes que podemos volver a visitar estos primeros pasos Pero prepárate porque
para la siguiente lección, estaremos incorporando
todos nuestros sprites.
40. Estructuración del escenario: importación del Arsenal: Bueno, es hora del paso dos, que es organizar adecuadamente nuestro proyecto importando
todos nuestros sprites Ahora, recuerden para esta etapa, no
vamos a
importar nuestros inicios verdes y otras
características al juego. A recordar, con nuestro flujo de trabajo, lo discutimos antes, lo
haremos más adelante. Esto también hace que las cosas sean un
poco menos abrumadoras. Dicho esto, sin embargo,
si no quieres
seguir e
importar manualmente estas cosas, también
puedes descargar la versión de
inicio del proyecto,
y al igual que antes, haciendo
clic en este botón, luego haciendo clic en cargar
desde tu computadora. Después seleccionando el proyecto
de inicio. Aquí, verás que
tenemos todo nuestro sprite listo para funcionar,
sí, esto también incluye nuestro sprite de pantalla de inicio
y nuestros botones Dicho esto, sin embargo, como quiero que aprendas el
proceso de desarrollar un juego correctamente para que puedas hacerlo por ti mismo y
la práctica hace la perfección. Hagamos esto de la manera correcta. Ahora, vamos a traer
nuestro primer sprite. Al hacer clic en este botón aquí, podemos seleccionar nuestro sprite reproductor, que se encuentra
debajo de esta carpeta Como puedes ver, hay tres
sprites diferentes para elegir Y esto se debe a que hay
estos trajes diferentes. Simplemente podemos seleccionar
cualquiera de estos ya que agregaremos el
resto hace un momento. Golpeando abierto. Aquí,
verás a nuestro jugador sprite Ahora antes de agregar los obstáculos, agreguemos rápidamente los otros
disfraces para el sprite Pasando a la pestaña de disfraces, y haciendo clic aquí, entonces
podemos seleccionar los
otros dos disfraces. Con eso hecho, ahora podemos
importar nuestro sprite de árbol, que son los
obstáculos en nuestro juego Al hacer clic en este botón
aquí y luego pasar a nuestra carpeta de
sprites de árbol aquí Al igual que antes, podemos seleccionar cualquiera de estos sprites de
obstáculos Una vez que lo hayamos hecho,
podemos pasar a nuestra pestaña de disfraces y luego
seleccionar el resto de ellos. Y ahí tienes. Tenemos
todos nuestros sprites listos para ir Y antes de pasar
a nuestro sprite final, solo
hay algunas
modificaciones que necesitamos hacer, que es como este disfraz de arbusto
es demasiado grande, así que simplemente podemos seleccionarlo
y reducirlo así También, podemos hacer lo
mismo por estas piedras
como son también, pero grandes. Bien, bien. Entonces, antes de agregar
nuestro sprite de nieve, vamos a dimensionar estos árboles que se vean bien
porque como puedes ver, definitivamente todavía
están
para nuestro sprite de árbol, digamos que tamaño a 50, que parece mucho más pequeño en
comparación con nuestro jugador,
lo que realmente no tiene sentido a lo que realmente no tiene sentido menos que nuestro jugador sea
algún tipo de gigante Digamos que nuestro jugador sprite, mucho más pequeño, digamos 17 Entonces ahora como puedes ver
eso se ve mucho mejor. Lo último son
nuestros pixeles de nieve. Y esta vez,
vamos a hacer los nuestros propios. Ahora, para hacer esto, en lugar de
seleccionar Elegir un sprite, vamos a hacer clic en
este botón aquí, lo que nos permite diseñar
sprites propios Con esto, podemos seleccionar
la forma cuadrada. Antes de hacer algo,
necesitamos cambiar el color para que sea más
gris como la nieve. Seleccionando este botón aquí, podemos disminuir la saturación
y el brillo. Como puedes ver, tenemos
un bonito color gris. Con eso, podemos dibujar un pequeño cuadrado justo
en el medio de nuestra pantalla básicamente porque queremos que esto sea
como un sendero de nieve, podemos disminuir el tamaño, y aquí solo jugando con él hasta encontrar algo
que se vea bien. Eso se ve bien. Con eso, necesitamos más píxeles de nieve
para el otro esquí. Pero en lugar de volver a hacer
todo eso, podemos simplemente darle a este botón
duplicado. Y mientras estamos en ello, vamos a
darle a nuestros sprites un nombre como snow pixel one
y snow pixel two Entonces lo tienes.
Todos nuestros sprites son importados y listos
para cobrar vida. Así que prepárate porque estas próximas lecciones
van a ser muy divertidas.
41. Iniciación del movimiento: elaboración de la dinámica de los jugadores: Derecha. Así que tenemos todos
nuestros sprites en orden, y estamos listos para comenzar a trabajar en nuestra mecánica de
juego Y para empezar, hagamos
que nuestro sprite de jugador funcione Ahora, sólo para que podamos
enfocarnos en una cosa. Vamos a ocultar rápidamente
estos otros sprites sólo hacer clic en este icono aquí, y podemos hacer lo mismo para esto Y ahí vamos. Ahora, movamos nuestro sprite de jugador principal por la pantalla en algún lugar cerca de menos
uno a cinco. Ahí vamos. Así que tenemos a nuestro jugador sprite para poder movernos de izquierda
a derecha en la pantalla, por suerte, sabemos
bastante bien cómo
hacer esto por nuestro último
proyecto, ¿recuerdas? Vamos a traer los bloques
básicos una vez más, el W empieza para siempre y F
y también el bloque F L. Para que nuestra placa
se mueva hacia la izquierda o hacia la derecha, podemos agarrar dos de estos bloques de código pulsados por
tecla y cambiarlo a la izquierda
y el otro a la derecha. Entonces podemos
ponerlos en cada una de estas entradas F y
estructurarlo tal como lo hicimos antes. Ahora, antes de agregar en nuestro cambio x por y dirección de
punto, vamos a duplicar
este script aquí. Básicamente, estoy haciendo esto para que podamos tener dos guiones
separados, uno que controle nuestra dirección de
apuntamiento y el otro que
controle nuestro movimiento. Hacer esto mantiene nuestro código
mucho más organizado al asegurar que cada script que tenemos no
intente hacer demasiadas cosas. Esto se llama
componentización en programación y es un concepto
muy importante También hago que nuestro
código sea más reutilizable, ya que podemos crear scripts
que hagan bien ciertas cosas, y luego podemos usar el
script en diferentes proyectos. Comparado con si solo
tuviéramos un guión largo enredado que fuera específico
solo para un proyecto Como si pudiéramos usar este
script de movimiento en otro lugar. Pero si tuviera la dirección
puntual con el movimiento integrado, sería mucho más
difícil usarlo con otro código. Entonces comencemos con
nuestro guión de movimiento. Entonces hice clic con la flecha derecha, podemos cambiar x por diez, si se hace clic con la flecha izquierda, podemos cambiar x por menos
diez, y haciendo clic en reproducir Como puedes ver, nuestro
movimiento funciona, y si es un poco rudo. Pero pronto estaremos mejorando esto para que se vea más suave. Pero por ahora, vamos a
rodar con esto. Hagamos que nuestra
animación de dirección funcione ahora. Básicamente, como hicimos antes, si se hace clic con flecha derecha, podemos agregar en esta dirección de
punto y apuntar a la derecha y
si se hace clic con flecha izquierda, podemos apuntar a la
izquierda así como así Probemos eso.
Bien. Eso no está bien. Y si recuerdas de antes, porque nuestra posición de
vestuario de Sprites no
está enfrentando a la derecha,
tenemos este problema Ahora, en lugar de cambiar la dirección del vestuario y el
editor como lo hicimos antes, veamos otra solución. Aquí, podemos simplemente
establecer el punto derecho a uno oh cinco y apuntar a la izquierda a 75 y hacia adelante a 90
grados y haciendo clic en reproducir. Ves que esto funciona. Aunque podría ser una mejor práctica
cambiarlo como lo hacíamos antes. Pero como digo, si no está
quebrado, no lo arregles. Con eso hecho, todo lo que tenemos que
hacer es cambiar el disfraz. Y esto ya es bastante fácil. Entonces, si hacemos clic en la flecha derecha, podemos cambiar el disfraz
a la derecha y la L al disfraz de Ford y el traje de
izquierda a la izquierda. Así como así. A
fácil. Al hacer clic en reproducir. Como puedes ver, se
ve mucho mejor, pero te animo a que
juegues con el código, ver si tal vez puedes
modificarlo para que sea aún mejor porque
solo estamos empezando
42. Mejora del realismo: domina la dinámica de esquí: Es hora de hacer que
nuestro personaje de esquí se vea más como si realmente estuviera esquiando y menos como
si estuviera conduciendo. Porque ahora mismo,
nuestro personaje simplemente se mueve a izquierda y derecha, algo
parecido a nuestro auto. No obstante, lo que queremos, es poder deslizarse casi
como si estuvieras en la nieve, es
decir, si nos movemos hacia
la izquierda y luego soltamos Aakes debería seguir
deslizándose un poco,
mientras que por el momento,
nuestro personaje simplemente se detiene Entonces, ¿cómo podemos lograr este movimiento de giro más dinámico y
suave Y al principio, puede
parecer que no hay una respuesta
obvia aquí. Quizás estés pensando en usar
este bloque de deslizamiento aquí, pero solo puedes deslizarte a
una posición específica y no
puedes simplemente cambiar tu posición
con un movimiento de deslizamiento Sin embargo, la programación tiene que
ver con la resolución de problemas. Usando las herramientas que tenemos, y una de esas
herramientas son variables. Aquí, hay muchas
cosas que las variables pueden hacer. Veamos cómo podemos
utilizarlos a nuestro favor. Vamos a crear una
variable y la
llamaremos dirección de movimiento. Ahora volviendo a
nuestro script aquí, eliminemos este cambio x by en declaraciones
DF y arrastremos una
de ellas al bucle de cuatro. Sé que esto me parece extraño,
pero tengan paciencia conmigo. Luego arrastre esta
dirección de movimiento hacia el cambio x por. Ahora por fin, si se hace clic en la flecha
derecha, quiero cambiar la dirección del
movimiento por una Si se hace clic en la flecha izquierda, quiero cambiar la
dirección del movimiento por menos uno Y espero que esto esté
empezando a tener sentido, a, porque básicamente lo que está
sucediendo en el guión es nuestro personaje siempre se mueve en la dirección
de esta variable. Y el valor de esta
variable viene determinado por el si hacemos clic en la flecha izquierda
o derecha. Entonces vamos a darle una prueba a esto. Entonces, como puedes ver, cuando hacemos
clic a la izquierda o a la derecha, nuestra
variable de dirección de movimiento va hacia arriba y hacia abajo. Además, como puedes ver, movimiento de
nuestro jugador
es mucho más suave, y se siente mucho más
como el esquí real. Sin embargo, hay un
problema que podrías notar. Y si soltamos nuestras
llaves después de girar, nuestra
jugada simplemente sigue a la deriva en la dirección en la que iba,
lo que definitivamente no es lo ideal Entonces, para arreglar esto, necesitamos una forma para que nuestras variables vuelvan
automáticamente a cero. Y tal vez estés pensando, Oh, solo
metemos esto
dentro de nuestro bloque als. Bueno, probando eso ya verás. Si esquiamos a la izquierda y vamos,
bueno, eso es un poco duro. O notarás que si
esquiamos a la derecha, casi
va en cámara lenta. Bueno, eso es solo
porque nuestro guión F está mal configurado porque
si lo miras, tenemos una declaración F L y
una sentencia if debajo de ella, que nunca es algo que
debas hacer, ya que la L siempre debe ser la última en la comprobación
condicional. Arreglemos ahora este error. Para arreglar esto, todo
lo que tenemos que hacer es agarrar otro si bloque L. Entonces pega este código dentro, deshazte de la sentencia if, y luego finalmente pon todo
este código dentro de nuestra F L. Ahora si
lo miras, puedes ver que nuestro LS es la condición
final. Si jugamos, no
va en cámara lenta, aunque todavía tenemos el
mismo problema de parada dura. Pero antes de arreglarlo, vamos arreglar
rápidamente este otro script, como puedes ver cometimos
el mismo error aquí, mucho mejor y mucho
más limpio código esto. Ahora, arreglemos el último problema de que nuestro personaje simplemente se
detenga cuando lo soltamos. Lo primero que
podemos hacer es deshacernos de esta
dirección de movimiento establecida a cero, y aquí necesitamos una forma para que lentamente lleve nuestra
variable de vuelta a cero. La mejor manera de
hacerlo es usando las matemáticas de
nuestro viejo amigo, pero por suerte no
del tipo duro Entonces vamos a necesitar un
poco más si los cheques. Primero tomemos
uno más de estos, si bloques, y un bloque F. Pondremos el
primero dentro de aquí, y el segundo
dentro de éste. Bien. Para este primer bloque F n, básicamente
queremos comprobar si nuestra dirección de movimiento ya
es cero. Y si es así, no
queremos hacer nada más. Entonces para ello, aquí vamos
a agarrar unas cuadras, que son las dos variables de
dirección del movimiento, una mayor, una
menor que y una cuadra. Para que podamos conectar todos estos
juntos así como así. Y aquí queremos comprobar si
nuestra dirección de movimiento es mayor que 0.1
y menor que -0.1 Y lo que esto está haciendo
es básicamente comprobar nuestra dirección de movimiento no
es igual a cero. Entonces podemos poner esto en
nuestra primera condición F. Ahora al siguiente, simplemente,
podemos simplemente duplicar esto aquí, meterlo dentro de nuestra declaración F, y ponerla a cero. Básicamente, ahora, si
la dirección del movimiento es menor que cero, queremos cambiar el movimiento por un número positivo para recuperarlo
lentamente. Digamos 0.2. Entonces finalmente, en esta declaración L, podemos cambiar la
dirección del movimiento en -0.2 Todo esto puede parecer
un poco confuso. Pero si lo miras como un
todo, no es tan confuso. Pasa por ella desde arriba. Básicamente, primero estamos detectando si nuestro
sprite se está moviendo Si lo es, entonces
queremos ralentizarlo. Si se mueve hacia la izquierda, lo
ralentizamos al
aumentar este número. De lo contrario, si se está
moviendo hacia la derecha, disminuimos este número. Eso es más o menos.
Vamos a darle una oportunidad. Esquiar de izquierda y derecha
está funcionando bien. Entonces soltando nuestras llaves. Como puedes ver, nuestro jugador poco a poco llega a una parada perfecta. Ahora podemos ocultar nuestras variables de
dirección de movimiento ya que todo está funcionando. Ese es el final de
esta lección. que podría haber sido
confuso. Entonces, lo que quiero
que hagas ahora es que rara vez
mires bien el guión para entenderlo
mejor. También juega con él. Cambiar algunos valores y ver qué pasa porque de esto se
trata el aprendizaje. Siempre puedes presionar
el botón mágico, comandos o control
para hacer lo que hiciste. Deshacer hasta que
lo tengas resuelto.
43. Mejora de los árboles: aprovechando las ideas del pasado: Bien, entonces nuestro jugador sprite
se ve muy bien. Creo que es hora de pasar a nuestro sprite de árbol y follaje Ahora bien, este proceso
también va a ser bastante similar a nuestro sprite de
obstáculos de coche de nuestro juego anterior, así que podemos tomar ese conocimiento
e implementarlo aquí De eso
se trata la programación. Usando lo que has aprendido
y aplicándolo en diferentes escenarios para
resolver diferentes problemas. El primero, vamos a hacer clic en este botón aquí para que
podamos volver a ver nuestro sprite. Ahora, podríamos seguir adelante y construir todo este
código desde cero, pero quiero
mostrarte algo genial. Si miras hacia abajo en la
parte inferior de tu pantalla, verás que hay este botón que dice mochila. Y si haces clic en
él, verás que abre esta ventana
en la parte inferior. Y básicamente, lo que es esto es un lugar donde se pueden almacenar scripts y
reutilizarlos en otros lugares. Porque recuerden
como dije antes, cómo crear
código reutilizable es tan importante. Bueno, aquí, ya lo vas a ver. Si volvemos de nuevo a
nuestra carrera de tráfico, y luego a nuestro sprite de autos, lo que podemos hacer es
abrir nuestra mochila y mirar el guión aquí que controla
los autos clonados, haciéndolos deslizarse hasta el
fondo de la pantalla Lo que podemos hacer es arrastrar el guión aquí
dentro de nuestra mochila. Como también necesitamos el script que crea los clones, también
podemos agarrar eso. Antes de hacerlo, elimine este bloque de la
sentencia weight, luego arrástrelo. Ahora podemos volver a poner este bloque. De esta manera, no
tenemos todo este código que no necesitamos
en nuestra mochila. Ahora volviendo a nuestro juego de esquí, es posible que solo necesites cerrar y
volver a abrir la mochila para
refrescarla, y ahí está Ahora, todo lo que tenemos
que hacer es arrastrarlo hacia adentro, y podemos hacer lo
mismo con el guión. Y ahí tienes. Verás aquí que trae
con sus variables, que es el movimiento y la velocidad, y en realidad puedes quedarte eso ya que
las usaremos en este juego. Antes de editar el guión, arrojemos algo de luz sobre otro
principio clave de programación, la compartimentación Sí, sé que
suena como una gran palabra, pero es importante. Tratemos de
entender lo que esto significa con una visualización
del mundo real. Imagina tu juego como una
gran ciudad bulliciosa y ocupada. Ahora bien, en una ciudad, no
sólo revolverías las casas y
las oficinas y las industrias y
los parques todo en un solo
espacio, ¿ En cambio,
los ubicarías en distritos
o compartimentos, tendrías zonas residenciales y zonas
industriales y
zonas de negocios, parques, etcétera Esta es la esencia de la codificación de
compartimentación. Al segmentar nuestro código en distintas secciones
o compartimentos, cada uno dedicado a una función o tarea
específica, y al hacerlo,
logramos dos grandes beneficios Primero, un código se vuelve mucho
más organizado y manejable. Así como los funcionarios de la ciudad solo
necesitarían
revisar y administrar un
distrito específico para cualquier cambio, los desarrolladores pueden enfocarse en compartimentos
individuales de código sin sentirse abrumados por la
totalidad del código En segundo lugar, este enfoque
ayuda en gran medida a crear código reutilizable. Ahora, cuando las secciones de código se compartimentan de manera efectiva, a menudo se pueden
recoger y colocar en otro proyecto que puede ser solo algunos
ajustes mínimos, igual que reutilizamos el código de obstáculos de
nuestro juego de corredor de tráfico En este punto, quiero
mostrarles cómo podemos hacer lo mismo para nuestro juego de corredores de tráfico para darle una actualización rápida. Entonces, si vamos a nuestro sprite de jugador
principal, abre nuestra mochila y luego
arrastramos el guión dentro de ella Luego podemos volver a
nuestro juego de corredores de tráfico, refrescar la mochila y luego arrastrar el guión a
nuestro sprite principal de autos Entonces podemos eliminar
todos estos bloques de cambio x del
script así. Ahora, cambiará x por nuestra dirección de movimiento al
igual que con nuestro juego de esquí y juego de bateo. Bueno, eso funciona de alguna manera. El único problema es que la dirección de
nuestro auto se ve un poco rara. Entonces para arreglarlo. También podemos simplemente insertar estas variables de
dirección de movimiento en la dirección de nuestro punto. Entonces de esta manera, nuestro auto se enfrenta
a la forma en que está girando. Así que haciendo clic en reproducir una vez más. Bueno, eso es mucho mejor, y agrega un
elemento completamente nuevo a nuestro juego. Y fue tan rápido. Ese es el poder
del código reutilizable en la compartimentación. Pero con todo eso dicho,
volvamos a nuestro juego de esquí y también
a nuestro sprite de árbol Entonces ahora todo lo que tenemos que hacer es editar un poco
el guión para que
funcione mejor para este juego, igual que hicimos con
el juego de tráfico. Entonces podemos cambiar los
disfraces de Switch para elegir 1-11, y así es como muchos
disfraces tenemos Entonces podemos eliminar todo esto ya no
tenemos
carriles de los que preocuparnos, sino que podemos simplemente poner
en un pick random para nuestra entrada x y tenerla
entre menos 22220 Entonces podemos eliminar esta variable de velocidad de
movimiento del código y simplemente
ponerla en menos nueve. Entonces podemos establecer el tamaño en
50 ya que es nuestro tamaño actual. Por último, podemos eliminar la condición que hace sonar
la sala de tallado Dándole una oportunidad, Como
puedes ver los árboles bajan muy bien y empiezan a sentirse un
poco más como esquiar. No obstante, hay un problema, que quizás hayas
notado es que el sprite de piedra parece quedar atascado en la
parte inferior de la pantalla Bueno, podemos arreglar esto
entrando en el editor de vestuario usando la herramienta de selección
y haciendo clic en nuestra roca y luego
arrastrándola más arriba. Ahora notarás que
debería dejar de atascarse. Pero si el tuyo
sigue atascado, solo muévelo un poco más alto mismo para cualquier otro sprites que esté recibiendo estructuras, sigue moviéndolos alto hasta que
dejen de atascarse Pero ahí lo tienes. esquiando por unas pistas frescas. Te ves como un absoluto
natural que eres.
44. Elaboración de senderos de nieve: simulación de marcas de esquí: Es hora de hacer que nuestro
juego de esquí parezca un esquí a. La forma más fácil de hacerlo es
agregando una pista de nieve a
nuestro personaje principal. En esta lección, vamos
a ver cómo podemos convertir estos pequeños cuadrados en un efecto de rastro de nieve.
Lo primero es lo primero. Pasemos a uno de
nuestros sprites de píxeles de nieve. Ahora, pensemos en
lo que tiene que pasar. Básicamente, queremos que este
bloque gris vaya a nuestro esquí izquierdo. Entonces cuando está en
la base de nuestro esquí, queremos que se deslíce hacia abajo. Obviamente, esto
realmente no funcionaría si
solo tuviéramos uno ya que
realmente no tendríamos un rastro, igual que antes, podemos
aprovechar el clooning
para crear este efecto Para ahorrar algo de tiempo, vayamos
a nuestro sprite de árbol y luego arrastremos aquí el script que crea clones en
nuestro sprite de píxeles Ahora para la siguiente
parte, podemos arrastrar en el cuando inicié
un bloque clon. Ahora lo que queremos es que este
pixel vaya a nuestro esquí izquierdo, para que primero podamos mostrarlo
ya que actualmente está oculto. Entonces podemos ir a nuestro grupo de
movimientos y arrastrar en este bloque go Y luego selecciona nuestro spot de jugador. Entonces lo que queremos que suceda
es que nuestro píxel empiece a moverse hacia abajo para que
parezca que estamos avanzando. Ahora una manera fácil de hacer esto es
agarrar un bloque repetido y luego pegar un cambio
y por bloque dentro. Aquí, podemos cambiar
y por menos cinco, y finalmente, podemos
eliminar el clon. Dándole una prueba a eso. Bueno, como puedes ver,
funciona un poco, pero como tenemos
un bloque de peso aquí, no está desove
lo suficientemente rápido Simplemente, podemos eliminar este bloque y darle otra oportunidad a
ese. Bueno, eso pres bien. Creo que
verás que nuestro pixel sí engendra en el
medio de nuestro personaje, y como sabes, queremos
que siga nuestro esquí Es hora de un
mini desafío rápido. Pausa el video y trata de
ver si puedes obtener
nuestro píxel de nieve para seguir el esquí en lugar de
la mitad de nuestro sprite Ven. Pausa el video
y pruébalo. Bueno, ojalá no
intentaras complicar en este reto porque la solución en realidad es bastante fácil Aquí, todo lo que necesitas hacer es agarrar un cambio x agregándolo
debajo del bloque G dos, y simplemente seguir jugando
con este número hasta que obtengas algo
que esté perfectamente alineado con nuestro esquema como Y ahora para que el
otro esquí funcione. Podemos simplemente arrastrar
ambos scripts
a nuestro sprite aquí,
así, y luego simplemente agregar este cambio x por hasta que coincida con nuestro otro esquí como Un problema al que
también te puedes enfrentar es que tu píxel de nieve desove
frente a tu personaje de esquí Y aquí tienes que hacer es
pasar a la
pestaña Los establecer este bloque para volver a la capa y simplemente hacer clic en
él y ni siquiera
necesitas traerlo. Entonces lo tienes con el sprite más básico
y un código realmente simple, mira cuánto mejor
eso hace que el juego Ahora parece que
en realidad estamos esquiando y tenemos un sendero que
sigue detrás de nosotros. Y eso es todo por esta lección. Pero antes de irme,
te dejaré con una cita de un famoso programa que es un
tonto admiradores complejidad,
un genio, admiradores simplicidad. Recuerda, a menudo el código más
simple es el mejor código.
45. Optimización de códigos: mejora de las mecánicas de juego: Un juego realmente está
empezando a tomar forma. Pero antes de seguir adelante
y a medida que seguimos desarrollándonos, necesitamos asegurarnos de que nuestro código sea
siempre un problema robusto y
más libre A veces solo encontrarás estos errores cuando
impactan en tu juego de alguna manera. Pero cuanto más programes, más entenderás
cómo mantener limpio tu código. Pero dicho eso, echemos un
vistazo a nuestro código y veamos dónde
podemos mejorarlo. En primer lugar, mirando
nuestro sprite de árbol, aquí tenemos este peso
codificado duro 1 segundo, y eso determina la tasa
de la rapidez con la que nuestros
árboles desovan Si recuerdas de antes, tener valores codificados
no siempre es una buena idea, sobre todo si queremos modificar y mejorar nuestro
juego en el futuro. En lugar de tener este valor codificado
duro, vamos a crear una variable
para él en su lugar. Vamos a llamar a esta
variable una tasa de generación, y podemos moverla a
la entrada de peso de 1 segundo Ahora, como nuestra
tasa de desove se establece en cero, los árboles simplemente
van a inundar Pero antes de establecer
esta variable en
un valor diferente, antes,
vamos a un valor diferente, antes, crear un sprite llamado variables que podamos usar para controlar todas nuestras variables
globales Simplemente seleccionaré un
sprite aleatorio como esta bola. Cambie el nombre de dos variables, y simplemente elimine todos
sus disfraces. Ahora podemos traer
un clic de inicio cuando, luego podemos establecer nuestra variable de
tasa de generación en uno Al igual que yo pegamos play, ya
verás que funciona. Echemos un vistazo para ver
dónde más podemos mejorar. Al mirar nuestro sprite de
jugador principal, verás que
nunca establecemos el valor de nuestra dirección de movimiento
al inicio del juego Básicamente, verás que
si esquiamos hacia la izquierda, luego paramos el juego y
luego iniciamos el juego, sigue esquiando a la izquierda. Podemos arreglar esto rápidamente
volviendo a nuestro sprite variable y estableciendo nuestra
dirección de movimiento a cero Fijo. Ahora, lo siguiente que
quizás hayas notado es cómo nuestro sprite jugador puede moverse a velocidades locas a izquierda y derecha, si mantenemos presionado el tiempo suficiente Necesitamos una forma de limitar la velocidad
máxima de movimiento. Si vamos a nuestro jugador
Sprite, verás este código aquí, que si hacemos clic hacia la izquierda o hacia la derecha, simplemente
cambiamos constantemente dirección
del movimiento
por uno o menos uno Tenemos que ponerle un límite a esto. Aquí tienes un mini
reto para ti. Pausa el video e
intenta ver si
puedes evitar que esta dirección
de movimiento se ponga demasiado alta. Pausa ahora y mira si
puedes averiguarlo. ¿Lo entendiste bien? Bueno, vamos a echar un vistazo a
cómo se podría hacer. Recuerda en el programa,
a menudo hay un montón de formas de
hacer algo. Entonces, si
logras resolver este problema, pero tu solución
no se ve
igual que la mía, eso
no es un problema. La clave, sin embargo, es tener y encontrar la solución más simple pero
robusta a los problemas. Entonces aquí donde decimos, si se hace clic con la flecha izquierda, voy a agregar otra condición
if que
comprobará para asegurarse de
que el valor no sea demasiado alto antes de
aumentarlo También podemos agregar una
condición F al arrw derecho. Ahora lo que queremos comprobar es si la dirección del movimiento
es mayor a 18, que tendremos que
ser nuestra velocidad máxima. Por supuesto, -18
será nuestra velocidad máxima en
la otra dirección Comprueba si la
dirección del movimiento es
menor a -18 así Y si le damos una jugada a esto. Bueno, eso no está del todo bien, y aquí tenemos
un problema sencillo. Básicamente, sólo estamos
permitiendo que el jugador utilice la dirección de las flechas si se
mueven a más de
18 o menos de 18, queremos que sea lo
contrario de esto. Garantizar que los jugadores no puedan ir
más rápido que 18 o -18. Simplemente todo lo que tenemos que hacer
es acudir a los operadores, agarrar este nudo y pegarlos en cada una de
estas f condiciones. Así. Ahora probando
de nuevo el juego. Eso funciona mucho mejor. Ahora, antes de
cerrar este juego, agreguemos rápidamente
algunas funcionalidades para que nuestros árboles desoven
a una velocidad cada vez mayor Para ello, vamos a usar una solución rápida y sucia, que es todo lo que
hemos estado tratando de
arreglar en esta lección. Pero esto te ayudará a ver
cómo se ve el código malo. Y también, veremos una solución mucho más agradable
en una lección futura Pasando a nuestro sprite
variable, aquí, tomemos
otro al principio Todo lo que vamos a hacer es agarrar un peso y luego
agarrar una variable establecida y cambiar su entrada a tasa de
desove y luego cambiar
el peso a 15 segundos. Ahora para la
parte sucia, agarra este bloque, duplica, vuelve
a agarrarlo desde el principio y
duplicarlo nuevamente. Una vez más. Ahora vamos a
bajar lentamente la tasa de desove, y vamos a hacer esto hasta
llegar a 0.3, empezando por uno,
así como así Para que veas que
fue rápido y fácil. Pero como bien sabrás, esto definitivamente
no es un código seco, y sí nos repetimos, y este código es
muy engorroso y es
difícil de actualizar y
mantener como sabes, así que pronto veremos una solución mucho
mejor Pero por ahora, si
le damos una oportunidad a este juego, notarás que
cada 15 segundos, nuestra tasa de desove disminuye lentamente y nuestros árboles empiezan a
llegar más rápido Bonito.
46. Toques finales: perfecciona tu primer juego: Derecha. Es hora de
ponerse manos a la obra. Entonces nuestro juego se ve bien, pero hay una característica importante
que hemos ignorado, y esa es la detección de choques
porque ahora mismo, solo
podemos esquiar al contenido de
nuestro corazón. Me meto en un árbol, bueno, eso no va a detenernos, y eso sería divertido de
hacer en la vida real. Pero no funciona
así en la vida real, así que no debería funcionar
así en nuestro juego. En esta lección,
vamos a arreglarlo. Vamos a crear un nuevo
script que
detecte si nos hemos estrellado
en un árbol o no Entonces, en nuestro sprite principal,
es un procedimiento estándar. Podemos movernos en una bandera de ganar, hacer clic en una condición para siempre y
una F. Ahora, podemos
pasar a nuestra detección, traer este bloque de verificación
conmovedor y cambiarlo para detectar
nuestro sprite de árbol Entonces si esta condición es cierta, solo
podemos agregar un
simple stop all. Entonces nuestro juego se detendrá
si golpeamos algún árbol. Dándole a eso una obra de teatro.
Como puedes ver, estamos esquiando muy bien. Lo siguiente. Si
chocamos contra algún árbol. Bueno, todos desaparecen. Esto es algo que funciona, pero como puedes ver claramente, definitivamente
hay algunos temas aquí. El primero es que cómo
desaparecen los árboles y la
parada es tan repentina. El segundo tema es lo
sensible que es este código como si simplemente pateáramos al costado
de nuestro árbol nuestro juego se detiene. El primer tema,
ignoraremos por ahora ya que veremos una gran manera resolverlo en la siguiente esencia. Centrémonos en el segundo tema, que es como nuestro código
es simplemente demasiado sensible. Aquí está tu mini desafío. Aquí quiero que intentes encontrar una solución a nuestro
stop o guión. Sólo se activa si
tocamos el árbol por más de 0.2 segundos. Pausa este video ahora
y pruébalo. Como puedes
implementarlo, solo desencadena el
stop si hemos tocado el árbol por
más de 0.2 segundos. Bueno, veamos cómo se hace. Agradecidamente, la solución a
este problema es bastante simple, solo requiere un poco
de pensamiento creativo Aquí, todo lo que necesitas hacer es seleccionar esto si verificar, duplicar, eliminar la parada, luego volver a mover
esto al script, y luego podemos agarrar
un bloque de peso. Aquí lo podemos meter
entre estos dos si se comprueba. Por último, podemos
cambiarlo a 0.2 segundos. Ahora bien, si nos fijamos en el guión, básicamente comprueba para ver si estamos tocando un trío rock, y si
lo estamos, espera 0.2 segundos
y luego vuelve a verificar Si todavía
lo estamos tocando, entonces perdemos. Entonces es tan sencillo como eso. Esto básicamente significa hacer que la detección de choques
sea menos sensible.
47. Conceptos básicos de la detección de accidentes: implementación de la lógica de colisión inicial: Entonces, como saben, cuando
chocamos contra un árbol, simplemente no pueden desaparecer, que realmente
no es lo que queremos. En cambio, queremos que los árboles
se muelen lentamente a un calor. Ahora bien, si nos
fijamos en el script que tenemos aquí, básicamente, cuando tocamos el
sprite de árbol, simplemente paramos todo, y esto detiene todo el código y
está causando muchos problemas Y esto no es solo con
nuestros árboles desapareciendo, cuando paramos
todo nuestro juego se detiene Esto significa que no podemos agregar ningún botón de reinicio
ya que este botón no
funcionaría si el
código está todo detenido. Entonces, ¿cómo solucionamos esto? Ahora bien, por eso
voy a presentarles un nuevo bloque que aún no
hemos usado, que es el código del
mensaje de difusión aquí. Como puede ver, es muy similar al botón when
flag click, pero la diferencia clave es que el script no espera un clic
de bandera Wen, sino que espera a que se transmita un
mensaje específico Por ejemplo, considera un juego donde un jugador sprite
se encuentra con un cofre del tesoro. Este evento puede emitir un
mensaje, tesoro encontrado, que a su vez desencadena un
guión que escucha tesoro
encontrado y reproduce una animación de
la abertura del pecho, efecto de
sonido, eco y
el arroyo de la tapa, y la actualización de la partitura para incluir los nuevos tesoros encontrados, y todo sucede
simultáneamente Pero eso no es todo.
La función de transmisión no
se trata solo de activar
múltiples acciones a la vez Se trata de mejorar el control y la coordinación
de tu proyecto. Te permite crear proyectos
complejos interactivos y
responsivos sin el desorden de código
demasiado complicado y usando toneladas de variables que verifican
constantemente si una
condición es verdadera o Es como tener un director
dirigiendo una orquesta, asegurando cada instrumento
o en nuestro caso, cada sprite toca
en el momento adecuado para crear una experiencia hermosa y
armoniosa Derecha. Con todo eso dicho, veamos cómo podemos
mejorar nuestro código con esta función de transmisión.
Mirando nuestro código aquí. En lugar de detenerlo todo,
lo que voy a hacer es cambiarlo por este mensaje de transmisión y luego hacer clic en Nuevo mensaje y
llamarlo accidente de jugador. Ahora, solo transmitiendo
el mensaje jugador se estrelló, no va a hacer nada Ahora necesitamos crear código que escuche para esta transmisión Para ello, podemos movernos a nuestro sprite de árbol y aquí podemos agarrar esto cuando
reciba mensaje,
y el mensaje que estamos
buscando es que el jugador se estrelló Cuando recibamos este mensaje, queremos que nuestros árboles
se detengan. Ahora bien, el primer problema
que tenemos es cómo nuestros árboles tienen una velocidad de movimiento codd dura
en el momento de menos nueve, lo que no nos da mucho
control. Arreglemos esto. Simplemente, podemos
cambiar este menos nueve
por esta variable de velocidad de movimiento que
ya tenemos en nuestro proyecto. Luego pasando a
nuestro sprite variable. Podemos arrastrar en este bloque
y establecer nuestra
variable de velocidad de movimiento a menos nueve
al inicio del juego. Ahora que eso está hecho,
podemos volver
a pasar a nuestro sprite de árbol Ahora cuando recibamos el
mensaje que el jugador se estrelló, podemos cambiar nuestra velocidad de
movimiento en 0.5, podemos usar esta repetición
hasta bloquear para asegurarnos nuestros árboles estén en
una parada completa Podemos decir repetir,
agarrar este
bloque es igual y decir que la velocidad de movimiento
es igual a cero. Así como así. Ahora bien, si le damos una prueba
y chocamos contra un árbol, verás que nuestros árboles
ahora se detienen, aunque todavía es
un poco demasiado rápido. Solo podemos agregar
peso y cambiarlo a 0.1 y darle otra oportunidad. Y ahí lo tienes. Ahora solo
hay un problema. Así es como nuestros árboles
siguen desove adentro. Para resolver esto, todo lo que necesitamos
hacer es agarrar el stop o bloquear y cambiarlo para detener otros scripts
en el sprite Entonces podemos simplemente colocarlo justo al
final de nuestro guión y darle una
oportunidad más, dirigiéndose a un árbol. Bueno, como puedes ver nuestros
árboles poco a poco se detienen, que hace que parezca que
nuestro jugador se está desacelerando. Perfetto.
48. Mecánica de choque refinada: integración de mensajes de transmisión: Ahora es el momento de
la parte importante, la animación de crash. Porque si nuestro choque no
parece realmente épico, nuestros jugadores no entenderán por qué hay que evitar los árboles. Entonces echemos un vistazo a cómo
podemos mejorar este juego con una animación agradable.
Vamos a llegar a ello. Pasando a nuestro sprite de
jugador, podemos agregar en esto cuando
reciba la transmisión del crash del jugador Básicamente, lo que
queremos que suceda es nuestro sprite jugador tenga un efecto spinout cuando
toquen un árbol En pocas palabras, todo lo
que tenemos que hacer es ir
al grupo de mociones y
traer este efecto de giro Entonces solo podemos repetir
esto, cinco veces. Dándole una oportunidad a esto, saltando
hasta que golpeamos un árbol. Bueno, eso no funcionó del todo. Como pueden ver,
trata de girar, pero solo da la vuelta y además, incluso después de que nos estrellamos,
todavía podemos esquiar de izquierda a derecha, así que veamos si podemos arreglar eso Bueno, si miras de cerca, verás que el problema es causado por el guión aquí. Y solucionar este problema
es bastante sencillo. Básicamente, igual que
hicimos con el sprite de árbol. Lo que tenemos que hacer es
detener los otros guiones. Así que agarrando una parada de todos, podemos cambiarlo para detener
otros scripts en el sprite Y esta vez en lugar de poner fuera el
final del guión, podemos agregarlo al
inicio del guión. Entonces otra vez, dándole a eso una obra de teatro. Verás cuánto
mejor funciona eso. Ahora tenemos una
animación bastante bonita que funciona
cuando nos estrellamos. Pero sigo pensando que
podemos hacerlo mejor. Si miras hacia abajo nuestro guión, puedes ver que
giramos 15 grados, lo cual está bien y todo, pero no se ve
exactamente suave. Voy a hacer algo
un poco furtivo aquí. En vez de 15, voy
a girar por velocidad de movimiento. Sí, sé que esto parece raro, pero como verás, funciona
cuando le damos una obra de teatro a esto. Observe lo mejor
que es esa animación. Ahora, lo último para
mejorar esto aún más es reemplazar esta repetición cinco veces por
una repetición hasta bloquear. Ahora, al igual que hicimos
con nuestro otro guión, podemos repetir hasta que la velocidad de
movimiento sea igual a cero. Simplemente toma este bloque igual y esta variable y establece
esto en cero así. Dándole otra oportunidad,
chocando contra otro árbol. Bueno, creo que los resultados
hablan por sí mismos. Eso parece un desplome
notable.
49. Dominio de la animación accidental: mejora los comentarios de los jugadores: Algoritmo. Seguro que ya has
escuchado esa palabra antes. Se usa por todas partes y es
muy importante en la programación, pero ¿qué es exactamente un
algoritmo y qué hace? Entonces en esta lección,
vamos a descubrir algunos de
estos misterios y también
implementaremos un
algoritmo sencillo en nuestro juego Entonces lo primero es lo primero, ¿qué es un algoritmo? Bueno, imagina que estás siguiendo
una receta específica para hornear un pastel o jugando un nuevo juego que tiene un
conjunto de reglas a seguir. Eso es lo que es un algoritmo. Es como una receta
o un conjunto de reglas
que las computadoras siguen
para hacer algo genial. Dicho esto, ¿cómo utilizan
los algoritmos las computadoras? Bueno, ya sabes, cuando escribes algo en Goole y
obtienes una lista de páginas web, ese es un algoritmo que ayuda a
encontrar esas páginas por ti O alguna vez te has dado cuenta de
cómo un sitio web puede mostrarte artículos en orden de
precio de menor a mayor? Esa es una herramienta de algoritmo. O en los videojuegos, los algoritmos pueden ayudar a controlar lo que hacen
los otros personajes y decidir el resultado
de ciertas acciones. Se utilizan en casi
todas partes, desde YouTube
hasta Netflix, TikTok y Amazon Entonces ahora que tienes algún tipo de idea sobre
qué son los algoritmos, discutamos el
algoritmo que
vamos a construir en nuestro juego. Vamos a tener un
algoritmo en nuestro juego llamado algoritmo de ruta segura, juega un papel crucial
en hacer que el juego
sea desafiante y jugable.
Entonces, ¿cómo funciona? Comenzamos con un sprite rectangular posicionado en la
parte superior de la pantalla Entonces el rectángulo se mueve
lentamente hacia la izquierda o hacia la
derecha a través de la pantalla. A medida
que el rectángulo se mueve, evita que los árboles aparezcan
en su posición actual. Esta acción crea un camino
seguro para el jugador. Dicho esto, ¿por qué se
considera un algoritmo? Bueno, hay tres
razones, pasos secuenciales. El algoritmo implica
pasos específicos ejecutados en orden, posicionando el
rectángulo, su movimiento y el árbol de bloqueo.
En segundo lugar, la toma de decisiones. El movimiento aleatorio
del rectángulo requiere procesos de toma de
decisiones
y determinar qué dirección moverse
en un momento dado. En tercer lugar, la resolución de problemas. El principal problema
aquí es evitar que el jugador
quede atrapado por árboles, y el algoritmo de ruta segura aborda esto limpiando
siempre un camino. Básicamente, el
algoritmo de ruta segura asegura que siempre
haya una ruta abierta para que el
jugador se mueva evitando una situación injugable que realmente no
sería
justa en nuestro El jugador puede seguir
avanzando navegando
a través de los obstáculos, haciendo que la experiencia
de juego sea justa y atractiva. Ahora, siento, el algoritmo
equilibra el juego. Asegura que sea
desafiante por un lado, obviamente también
es
posible navegar. Esto enriquece y mejora toda
la experiencia de juego. Ahora, mientras voy a
estar construyendo esto, voy a ir a
un ritmo muy rápido ya que no vamos a estar usando esto
en nuestro juego a medida que continuemos. Esta lección es más para ayudarte a entender un concepto importante
de programación. Sin embargo, aún puedes usarlo. Si quieres cambiar
la dinámica de tu juego, un poco, aún puedes aplicar esto. primero es lo primero, necesitamos nuestro sprite rectangular y este
sprite es bastante simple Sólo podemos pulsar botón de pintura. Después en el editor, solo
podemos seleccionar esta herramienta y luego simplemente
dibujar un simple rectángulo. Podemos ajustar el tamaño de bit, así se ve algo así. Entonces yendo al código,
todo lo que tenemos que hacer es agarrar un inicio ganador, un forever, un glide, y un pick random, que nos quedaremos
bajo la entrada x Después cambiaremos el pick
random a menos 22220, y podemos establecer y en uno 80 Ahora, si jugamos,
verás que tenemos esta caja que va de un lado de la
pantalla al otro. Entonces ahora que tenemos el movimiento,
necesitamos una cosa más, que es reportar la posición y
hacemos esto para asegurarnos que los otros sprites
puedan saber en qué posición está
nuestro sprite rectángulo
en todo momento Todo lo que tenemos que hacer es
duplicar el script, quitar el planeo y pasar a otras variables
y crear una nueva, que llamaremos ruta segura Ahora podemos tomar este conjunto
en nuestro bucle para siempre, cambiarlo a camino seguro, y vamos a establecer nuestro camino
seguro a nuestra posición x. Ahora Sprite se mueve,
establece constantemente esta variable en
su posición actual Ahora, recuerda cómo dije que un
algoritmo es como hornear un pastel o jugar un juego donde necesitas seguir
instrucciones o reglas. Entonces estas son nuestras
instrucciones o reglas. Así que a nuestros árboles no se les permite desovar en la ubicación de
nuestro algoritmo sprite Entonces ahora todo lo que tenemos que
hacer es asegurarnos de que los sprites de árbol
sigan estas reglas Pasando al sprite. Si miras el guión aquí, como puedes ver, nuestros árboles
sólo van a una exposición
aleatoria Entonces para arreglar esto,
vamos a agarrar una repetición y a bloquearla e
insertarla justo por aquí. Entonces podemos duplicar
este bit aquí y poner esto ir a bloquear
dentro de nuestra repetición hasta. Por último, lo que queremos
es seguir cambiando nuestra exposición hasta que no
estemos en el camino
de nuestro rectángulo Para ello, vamos
a necesitar unos cuantos bloques, que son mayores que
un menor que y un más menos dos de nuestras variables de camino
seguro, y finalmente, dos de
nuestras exposiciones La forma en que queremos conectarnos
es así. Sí, sé que esto puede haber
sido un poco confuso. Corremos por el abrigo. Nuestros árboles desovan en una exposición
aleatoria. Entonces tenemos esta parte. Si la
exposición actual de nuestros árboles está dentro 100 píxeles a la izquierda
de nuestro camino seguro, entonces necesita intentarlo de nuevo O si nuestros árboles están a 100
píxeles a la derecha, también tiene que intentarlo de nuevo. Si no están en el camino
del sprite, continuará Ves esto en acción, podemos ir rápidamente a
nuestro sprite variable, desconectarlo por aquí y cambiar nuestra tasa de
generación a cero Entonces bajo nuestro
sprite de camino seguro, podemos ocultarlo. Ahora haciendo clic en play,
pueden ver un montón de
árboles desovando Sin embargo, todavía tenemos un camino
seguro por seguir. Entonces sí, eso es
algoritmos en pocas palabras. Sé que esta lección fue
bastante rápida, así que no te preocupes si
no pudiste
seguir adelante porque como dije, esta lección es más para darte una comprensión simple
de un concepto importante Pero para un juego, no vamos utilizar este algoritmo a
medida que continuemos, pero si quieres usarlo, eres más que bienvenido.
50. Revelación de algoritmos: cómo crear el camino seguro: Entonces, en esta etapa, hemos discutido casi todos los bloques de código
que están disponibles para nosotros. Sin embargo,
solo hay una cosa más, un bloque de código y un concepto de
codificación tan importante para la programación
que necesitaba
esperar hasta que fueras un programador bastante competente antes de presentártelo. Y eso es funciones. Entonces, ¿qué es una función?
¿Y por qué deberíamos preocuparnos por ello? Tienes una máquina para hacer juguetes, lo cual sería genial. Pones algunos materiales,
presionas un botón y
sale un carro de juguete. Cada vez que quieres un auto nuevo, solo
tienes que presionar el botón
otra vez y sale un auto. Aunque el único problema con esta máquina es cada
vez que es el mismo auto. Ahora me imagino que
tienes otra máquina que es aún mejor porque
si quieres un auto rojo, pones pintura roja y sale un auto rojo o
si quieres un auto azul, te pones
pintura azul y resultados un auto azul, entiendes la idea. Bueno, ambas máquinas
son ejemplos de funciones, excepto que una de las
funciones permite entradas que pueden
cambiar la salida. Ahora, en el mundo de la codificación, las funciones son como
ese botón mágico. Escribes una pieza de código una vez, y luego puedes
usarlo una y otra
vez con solo llamar al nombre de
la función. Ahora, algunas funciones pueden aceptar entradas como
un número o cadena, y dependiendo de
cuál sea la entrada determina qué salida
le dará
la función al igual que nuestra máquina de fabricación de
autos que da autos de diferentes colores. Pero también, algunas funciones
siempre devolverán la misma salida. ¿Cómo
funcionan las funciones? Bueno, primero, escribimos una función. Es como construir nuestra máquina
para hacer juguetes, configurarla para hacer
un juguete en particular. A continuación, cada vez
que necesitemos hacer esa tarea específica, llamamos a la función, igual que presionar el
botón en la máquina. La función luego ejecuta la tarea y
nos da el resultado, al igual que la máquina que hace
estallar un carro de juguete ¿Por qué son
importantes las funciones en la programación? Seguro que probablemente
ya podrías adivinar por qué. En primer lugar, ahorrando tiempo. Sin funciones,
tendríamos que escribir el mismo código una
y otra y otra vez, para las mismas tareas similares. Las funciones nos ahorran tiempo. Escribimos una vez y
usamos muchas, muchas veces. A continuación, organizar el código. Las funciones nos ayudan a mantener nuestro
código limpio y organizado. Cada función tiene un trabajo, y facilita el
seguimiento y la solución de cualquier problema. En tercer lugar, menos errores. Tener una pieza de
código significa que
solo hay un lugar para verificar y
arreglar si algo sale mal. No más búsquedas a través de
bloques y bloques de código. Por último, compartir código. Las funciones también
se pueden compartir entre diferentes partes de nuestro programa incluso entre diferentes programas. Como saben, el código reutilizable es
muy importante. Imagínese esto. Estás creando un juego emocionante donde un valiente caballero
va en una búsqueda. Durante esta búsqueda, la noche se
encuentra con el cofre del tesoro. Ahora, cada vez que la noche
toca un cofre, se abre, y las monedas que hay dentro de él
saltan todas. Ahora aquí hay una trampa. Nuestro juego no tiene uno, no dos, sino muchos cofres del tesoro
dispersos en diferentes niveles Queremos que cada cofre haga el
mismo acto mágico de apertura. Entonces, ¿cómo podemos hacer que
esto suceda sin escribir el mismo código
para cada cofre Aquí viene la función. Podemos escribir una función
llamada open cofre que contiene el código para hacer que el cofre se abra y salgan
monedas. Ahora, cada vez que la
noche toca un cofre, simplemente
llamamos a la función de cofre
abierto. Es como contar
el juego. Oye, haz lo de abrir
el pecho ahora, y voilá, el cofre se abre y salen
monedas y ta no importa donde
esté el cofre en el juego, funciona Y para darte un ejemplo de scratch
del mundo real de funciones y uso, hay un
proyecto popular en scratch llamado motor de movimiento suave. Te animo a que
lo revises por ti mismo. Pero haciendo clic
en play en este proyecto, fíjate como todos estos sprites
se mueven en un movimiento muy fluido Y si hacemos clic en
siguiente, de nuevo a continuación, podrás ver todos los proyectos que utilizan un movimiento suave. De todas formas, si hacemos clic en
este botón C inside, verás que existe este bloque de código
llamado bloque personalizado, y si alejamos, verás todas las
diferentes funciones. Sí, son bastante complejos. No te preocupes por tratar de
entender cómo funciona. Lo importante aquí
es lo que hacen las funciones. Si pasamos a
la pestaña de M bloques, verás todos estos bloques
diferentes. Pero básicamente, todos estos bloques se utilizan para
llamar a las funciones. Digamos que teníamos un sprite
y queríamos que subiera. Primero eliminemos todos
estos sprites para que puedas ver esta acción y
también mostrar el sprite Ahora queremos que nuestro sprite
cuadrado avance 100 pasos. Ahora, en lugar de usar el bloque de código de
movimiento, podemos llamar a esta función aquí. Como puedes ver, este bloque
da muchas opciones. Digamos que queríamos
mover 100 pasos en 2 segundos con un tipo de
flexibilización de uno Al hacer clic en reproducir, como puedes ver, nuestro sprite se mueve
suavemente por nuestra pantalla Ahora, digamos que queríamos
dar la vuelta y volver a seguir adelante. Podríamos agarrar este bloque de giro
suave. Digamos que queremos suavizar el giro 45 grados en 1 segundo con
un tipo de flexibilización de tres Entonces podemos simplemente duplicar este otro movimiento suave
y pegarlo al final. Ahora bien, si presionamos play, observa cómo nuestro sprite se mueve lenta
y suavemente hacia adelante Después da un giro suave y
finalmente vuelve a avanzar. Y todo lo que tomé fueron
tres bloques de código. Pero si estuviéramos
tratando de crear manualmente el movimiento suave
para cada movimiento, tomaría años y
nuestro código sería muy confuso entender
lo que realmente estaba pasando. En resumen, las funciones son una de las mejores
herramientas de los programadores para escribir código eficiente, organizado y limpio La función es como un
útil ayudante que hace un trabajo específico
cada vez que se lo pedimos, y es tan confiable que sabemos que ha funcionado
porque ha sido probado y reutilizado
dominando funciones, estás en tu
camino para convertirte en un codificador experto que puede hacer complejos e
interactivos
51. Dominación de funciones: el núcleo del código reutilizable: Así que hemos hablado mucho funciones y hemos
visto algunos ejemplos. Pero como saben, el verdadero
aprendizaje ocurre en el hacer. En esta lección, vamos a crear algunas funciones
propias. Para ello, solo
vamos a volver a lo básico
creando un nuevo proyecto. No creo que tenga que
explicarte cómo hacer eso. Con nuestro nuevo proyecto creado, como puedes ver, tenemos nuestro clásico
sprite de gato listo para la acción Ahora para este proyecto, vamos a hacer algo un poco diferente y
no solo con funciones. Vamos a hacer que nuestro
gato dibuje con bolígrafos, y es algo bastante
innovador. Entonces, antes de entrar en funciones, tal vez
te estés preguntando,
¿cómo uso este bolígrafo del que
estás hablando? Bueno, si miras
justo en la parte inferior, verás este
pequeño botón aquí. Ahora, si haces clic en él,
verás que trae un montón de diferentes extensiones
que puedes agregar a tu proyecto como
música y cámara, et. Y un montón de diferentes
que utilizan hardware externo. De todos modos,
lo que nos interesa es esta extensión del sorteo.
Al hacer clic en él. Como puedes ver, agrega este
grupo de código extra a nuestro proyecto y a todos estos diferentes
bloques de código que son para la pluma. Ahora, nuestro proyecto va
a ser bastante sencillo. El gato va a preguntar
cuántos círculos debemos dibujar, y luego bueno, los
va a dibujar. Para ello, podemos
agarrar un
clic de bandera de ganar y luego pasar
al grupo de detección, derribar este bloque ask. Aquí, sólo podemos decir
cuántos círculos dibujarán. Entonces, si hacemos clic en Jugar, nuestro gato pregunta cuántos círculos
debe dibujar. Podemos entrar en un número, y claro, bueno,
no pasa nada. Entonces ahora lo que vamos a hacer es crear una función
que dibuje círculos. Bajando a mis cuadras, aquí puedes ver podemos dar click en esta opción aquí para
hacer un nuevo bloque. Aquí es donde podemos
nombrar nuestra función. Yo solo lo llamaré dibujar círculo. Entonces recuerda como antes, te
dije que algunas funciones pueden tener entradas
mientras que otras no. Bueno, para nuestra función de círculo, podríamos simplemente tenerla que la
llamamos simplemente dibuja un solo
círculo y eso es todo. O podríamos hacer que acepte una entrada donde podamos elegir cuántos círculos
queremos dibujar, al igual que con el ejemplo de
la
máquina de hacer juguetes donde podemos decidir si queremos coche azul o
rojo o de cualquier color. En este caso, podemos decidir la función
acepte una entrada, lo que cambiará la salida
que crea la función. Entonces para hacer esto, todo lo que tenemos que hacer es hacer clic en
esto agregar una entrada así. Entonces como pueden ver, en la parte superior, ahora
tenemos un insumo. Voy a cambiarle el nombre a número
de círculos y luego le pegaré. Ahora, como pueden ver, ahora
tenemos este bloque aquí mismo, y aquí es donde
definimos nuestra función. Esto es básicamente como si estuviéramos construyendo la máquina diciendo lo que tiene que hacer
cuando la atrapan. Lo que queremos que
haga nuestra máquina o más bien nuestra función es dibujar círculos. Dibujar círculo es bastante sencillo. Todo lo que necesitas hacer
es bajar el bolígrafo, luego pasar al movimiento, y mover diez pasos, luego girar 15 grados y repetir
esto 30 veces así. Si solo haces clic
en esta función, verás que nuestro gato
dibuja un círculo. Eso es genial. Pero, ¿cómo
usamos esta función? Bueno, aquí le preguntamos al usuario, cuántos círculos voy a
dibujar para usar esta función. Todo lo que tenemos que hacer
es agarrar este bloque, dibujar círculo debajo,
lo que llama a nuestra función. Y si tuviéramos que jugar y
hacer clic en este botón, como pueden ver, nuestro
gato dibuja un círculo. Pero claro, hay un problema siendo que nuestro gato solo
dibuja un círculo. Aquí es donde necesitamos decirle a la función cuántos
círculos debe dibujar. En lugar de dejar este espacio en blanco, podemos ir a nuestro grupo de
sensores y tomar este bloque de respuesta
y usarlo como entrada. Básicamente, lo que esto
está haciendo es llamar a nuestra función dibujar círculo con la entrada
ingresada desde el usuario. Sin embargo, esto todavía no hará nada porque si nos
fijamos en nuestra función, nunca le decimos a la
máquina qué hacer con la entrada que obtiene
cuando se le llama. Lo que tenemos que hacer es agarrar otro bloque repetido y
poner todo esto dentro. En lugar de entrar en un valor, podemos agarrar este número de círculos bloque y ponerlo dentro. Ahora, veamos
nuestro guión paso a
paso para que podamos entenderlo
mejor. No puedo preguntar cuántos
círculos dibujar. Digamos que entramos
en cinco círculos. Entonces llamamos a nuestra función de
dibujo circular con el número
cinco como entrada. Lo que hace esta función
es que baja la pluma, y luego tenemos este bloque de repetición siendo
la entrada el
número de círculos, ya que ingresamos en cinco, como
entrada para nuestra función, va a repetir todo
este código cinco veces. El código es este movimiento y giro, que básicamente
crea el círculo. Al ver esto en acción, aquí nuestro gato pregunta cuántos
círculos queremos. Digamos tres, como pueden ver las TIC dibuja tres círculos,
así como así. El único problema que
sí tenemos es que no
podemos verlas todas ya que
todas están en la misma zona. Actualicemos un poco esta
función. Sediento, vamos a poner la pluma, para que no dibuje por todas partes Entonces haremos que nuestro
gato vaya a ninguna posición. Entonces podremos volver a bajar
la pluma. Por último, podemos tener un cambio
del color de la pluma por diez. Entonces, solo vamos a subir o cuando empecemos.
Dándole otra oportunidad a esto. Hagamos cuatro. Bueno,
eso no está del todo bien. Las TIC están haciendo lo mismo. Bueno, nuestro problema
es que todo este código debería estar dentro de
nuestro bloque de repetición. Moverlo dentro, así, y darle otra oportunidad. ¿Cuántos círculos?
Digamos siete. Poco a poco, pero seguro,
como puedes ver, nuestro gato dibuja siete círculos. También dibuja cada círculo de
un color diferente. Ahora recuerda que
las funciones set son muy útiles porque solo podemos
escribir el código una vez y usarlo una
y otra y otra vez. Bueno, si nos fijamos en este código, mientras que la función
es muy útil ya
que hace que nuestro código sea muy
fácil de entender y administrar. Como podemos ver claro
lo que está pasando, estamos haciendo una pregunta y luego estamos dibujando
cierto número de círculos. Pero en realidad no estamos usando esta función en
toda su ventaja porque, bueno, sólo estamos
llamando a la vez. Digamos que en nuestro programa,
queríamos que nuestro gato dibujara círculo si hacíamos clic en él
porque tenemos esta función Bueno, eso es sencillo de hacer. Podemos simplemente agarrar esto cuando se hace clic en
el sprite bloque, entonces solo podemos decir dibujar
círculo e ingresar uno Ahora, haciendo clic en jugar, ¿cuántos
círculos? Digamos dos. Después de que eso esté hecho. Ahora si hacemos clic en el CT, dibuja un círculo. Bonito. Además, digamos que queríamos hacer nuestro círculo
más pequeño por alguna razón. Sólo podemos
entrar en nuestra función, cambiar el movimiento para
decir cinco pasos. Ahora haciendo clic en reproducir,
entrando en uno, dibuja un círculo más pequeño. Pero también, si hacemos clic en el CT, también dibuja un círculo más pequeño. Como puede ver, el uso de esta
función garantiza que nuestro código sea consistente y que sea
fácil de administrar y fácil de usar. Ahora ese es el
poder de las funciones. Pero antes de que termine, si
quieres divertirte con esto, mantén presionado el turno mientras
haces clic en la bandera, y verás que
entra en modo turbo. Entonces si entramos en un
valor loco como 100,000, nuestro se vuelve absolutamente
loco dibujando círculos, diviértete un poco de arte con eso.
52. Exploración de funciones a través de la codificación creativa: Bueno, es momento de
volver a ello y terminar
lo que empezamos. Nuestro juego de esquí arcade es divertido, pero le falta ese elemento
crucial. Eso lo lleva de ser un
juego divertido a un juego realmente divertido, y de esto se trata el
pulido. Es la etapa final
de nuestro flujo de trabajo. Para el primer paso del pulido, vamos a mejorar un poco nuestros
gráficos, hacer que nuestro juego se sienta
mucho más real. Lo primero que quiero
discutir son las capas. Esto lo discutimos brevemente
en una lección anterior, pero volvamos a repasarlo. En scratch, cada uno de
nuestros sprites aparecen en nuestra pantalla con una posición x e
y, como ya sabéis Ahora bien, esto es fácil de ver, pero nuestros sprites
también tienen un eje z, que no podemos ver fácilmente ya todo es dos D y
estamos mirando de
arriba hacia abajo Nosotros básicamente el
eje z es la capa. Así que imagina una pila de papeles. Podrías tener 20
pedazos de papel uno encima del otro y
cada uno tiene su capa. Si el papel está en
la parte superior de la pila, está en la capa uno, y si está en la parte inferior, es la capa 20. Naturalmente, si un papel está en una capa más alta como la capa uno, cubrirá el papel que está en una capa baja como la capa dos. Exactamente lo mismo
sucede en scratch cuando nuestros sprites están
en diferentes capas Si jugamos un juego rápido
y si chocamos contra un árbol, lo verás bien, esquiamos sobre el árbol, lo cual no tiene sentido. ¿Cómo solucionamos esto? Bueno, si pasamos
a nuestra ramita de jugador, podremos agarrar otra cuando se
haga clic en la bandera y luego
subir a la pestaña Lux Aquí veremos que
tenemos dos opciones. O podemos hacer que vaya
al frente o atrás,
o podemos hacer que vaya hacia atrás
o hacia adelante una capa. Si dijéramos ir
atrás y luego golpear play, como pueden ver, nuestro
rastro de nieve va frente a nosotros. Esta no es una opción. Llevemos esto de vuelta
al frente así. Ahora bien, esta vez,
podemos decir, retroceder una capa. Ahora, en lugar de enviar
esto a la parte de atrás, solo
lo
estamos moviendo hacia atrás una capa, que significa que nuestro
sprite de jugador estará en la capa dos Ahora, arrastre el guión
sobre ambos sin píxeles. Podemos hacer que vaya
hacia atrás dos capas, y también podemos hacer lo
mismo para el otro sprite Al hacer clic en reproducir. Bueno, eso es raro. Nuestro pixel sigue al frente. ¿Alguna idea de lo que está pasando aquí? Bueno, la razón de esto es porque cada vez
que empezamos el juego, sigue retrocediendo cada
vez más capas. Lo que tenemos que hacer es ir
a cada uno de estos sprites y traer en este ir a la capa
frontal, así como así También podemos hacer lo mismo
con nuestro sprite de árbol. Podemos simplemente arrastrar en un
clic de bandera de viento y luego ir
a la capa frontal. Ahora bien, de esta manera, cuando
iniciamos nuestro juego, cada uno de nuestros sprites comienza
en la misma capa, pero nuestro jugador retrocede uno
y nuestros píxeles retroceden dos Probando esto. Como puedes
ver funciona a la perfección. Cuando chocamos contra un árbol, no
nos deslizamos frente a él. Ahora eso es mucho más realista. Con eso fuera del camino, hay una
cosa más que tenemos que hacer. Cuando jugamos el
juego, como puedes ver, nuestros árboles simplemente salen a la vista, lo cual es un poco discortante. No será mejor
si se desvanecieron. Casi como si hubiera una neblina y venían
a la vista desde la niebla. Suena genial. Pero suena
como una tarea bastante compleja. Pero no temas porque haya una manera bastante sencilla de hacerlo. Si miras a
nuestro grupo de looks, verás este cambio de
color o establecer color en. Arrastrando el efecto de color establecido
a nuestro sprite de jugador. Verás que si hacemos
clic en él, no pasa nada. Pero si cambiamos este
número por decir 40, nuestro sprite cambia de color Casi me veo como un extraterrestre. Pero esto no es lo que queremos. Podemos ponerlo de nuevo a cero. Pero verás que
si hacemos clic aquí, hay todas estas
otras opciones. El efecto que nos
interesa es este efecto fantasma. Vamos a establecerlo en 95. Y haciendo clic en él, verás
como Sprite casi se desvanece. Podemos usar esto para desvanecerse en nuestros árboles. Rápidamente reiniciándolo. Entonces podemos pasar
a nuestro sprite de árbol. Ahora bien, este es tu
próximo, mini desafío. Intenta ver si puedes
crear este efecto, donde nuestros árboles se desvanecen a la
vista en lugar de simplemente aparecer
repentinamente. Vamos,
pruébalo antes de
que te enseñemos cómo hacerlo.
¿Lo conseguiste? Veamos cómo se hace. Ahora bien, lo que queremos que suceda es cuando nuestro sprite
comienza como un clo, queremos establecer el efecto
fantasma en 95, luego hacer que se desvanezca Lo que vamos a hacer es agarrar este efecto de cambio por bloque, y de nuevo, ponerlo en fantasma. Aquí queremos arrastrarlo a este bucle para siempre para que el
efecto fantasma se desvanezca lentamente, que hace que parezca que
nuestros árboles se están desvaneciendo Para ello, necesitamos cambiar este valor porque actualmente
nuestro ghosting está en 95, y queremos
devolverlo a cero Podemos simplemente entrar en
menos tres aquí, o lo que sea que se vea mejor para usted. Vamos a darle una prueba a esto. Se puede ver que nuestros
árboles ahora parecen estar apareciendo lentamente
a la vista desde la niebla. Sí, es un efecto muy sutil, pero solo hace que nuestra
ganancia sea mucho mejor. Eso es todo por ahora.
Si puedes ver alguna otra área donde creas que se pueden mejorar
los gráficos, te animo a darle una
oportunidad y ver qué puedes hacer.
53. Mejora del realismo de juegos: gráficos y capas: Hay una cita
del famoso cineasta,
George Lucas, dice, sonido es el 50% de la película Ciertamente se
puede decir lo mismo de los videojuegos. Un juego es divertido y todos los
gráficos son bastante geniales, pero simplemente no es
muy inmersivo Transformemos nuestro
juego con sonido. En primer lugar, necesitamos un buen sonido de
fondo para nuestro juego. Ahora, como estamos esquiando la nieve, deberíamos tener algún sonido que te haga sentir como si
estuvieras esquiando en la nieve. Pasando a nuestro estado srt, podemos usar esta área
para agregar nuestros sonidos Al hacer clic en la pestaña de sonidos, podemos pasar a este
botón y hacer clic en Subir sonido. Ahora, si te mueves a
nuestra carpeta de efectos de sonido, verás que tenemos este
sonido llamado Tormenta de invierno. Al hacer clic en eso. Aquí puedes
ver que ahora se importa. Todo lo que tenemos que hacer ahora
es volver a nuestro código, agarrar una bandera de viento
clicada y un
bucle forever y luego arrastrar en el sonido de
reproducción hasta que termine el bloque Aquí como puedes ver,
ya está seleccionado nuestro sonido. Todo lo que hay que hacer
es jugar el juego. Ahora, eso es más
parecido. En realidad se siente como si estuviéramos en la nieve. Ahora, podrías quedarte con
esto tal como está, y sería bastante genial. Pero podemos hacer que se sienta aún más emocionante trayendo otro sonido,
que
en realidad es algo de música. Al hacer clic
nuevamente en el botón de subir sonido y luego
pasar a la carpeta de música. Aquí voy a elegir la canción aquí. Pero puedes elegir la canción
que más te guste. Ahora, como quiero que tanto mi música como mis efectos de sonido se reproduzcan
al mismo tiempo, simplemente
duplicaré este guión, y luego cambiaré el sonido a la nueva canción
que importamos. Y ahora todo lo
que hay que hacer es hit play. Ahora, eso me
suena más a un juego. ¿Cuáles son los sonidos
crees que necesitamos que realmente completaría
esto? Piénsalo. Esquiar, y luego estrellarse. Sí, necesitamos un sonido de borrado. Así que esta vez,
entramos en nuestro sprite reproductor, y luego subimos al
grupo de sonidos, luego pasamos a la carpeta de efectos de
sonido Y aquí puedes ver que
tenemos este efecto wipeo de esquí. Al hacer clic en eso,
entonces podemos volver a nuestro código, es bastante
simple realmente. Básicamente, cuando tocamos un árbol, queremos que empiece a
sonar, esquiar borra. Podemos simplemente arrastrar esta
cuadra por aquí. Ahora vamos a probarlo, golpeando play. Y luego chocar contra un árbol.
Bueno, ahí lo tienes. Sutil, pero un
toque agradable. Eso es todo. Todavía hay definitivamente
más que podrías hacer con sonido como un bonito efecto de esquí, sonido cuando un jugador
gira a izquierda y derecha. Pero dejaré todo eso a ti y a tu increíble creatividad. Pero como puedes ver
o mejor dicho aquí, sonido es definitivamente el 50% de la película o en
nuestro caso, el juego.
54. Inmersión amplificada: el poder del sonido: Entonces, lo siguiente que queremos
hacer en nuestra creación de juegos es hacerlo competitivo porque bien está bien
esquiar en montaña, si no podemos
presumir de una puntuación alta, entonces tenemos un problema. En esta lección, vamos a agregar un
sistema de puntuación a nuestro juego. Ahora podrías estar pensando,
yo sé cómo hacer esto. Simplemente crearé una partitura de acorde
variable, pegaré en la parte superior de
la pantalla, y ya terminé. Sí. Eso es un buen pensamiento,
y eso funcionaría. Pero hemos puesto mucho trabajo bueno en este juego y
es gráficos, y no queremos que se
decepcione con una variable de aspecto básico
que cuente la puntuación. Necesitamos algo emocionante. Podríamos empezar a diseñar un sprite de partitura genial que
se vea súper bien y también crear algunas animaciones agradables en todo eso no es lo que haremos Agarra una pluma. O escribe
esto en alguna parte. Quiero que escribas esto
porque es muy importante y te ahorrará incontables horas de
tiempo. ¿Estás listo? No intentes reinventar la rueda. Nuevamente, no reinventes la rueda. Ahora, fíjalo en alguna parte, no
lo olvidarás. No reinventes la rueda. Esto básicamente significa
que si ya se ha hecho algo, y alguien ha
pasado horas interminables trabajando en ello,
no lo reinventes Lo que digo es que, por supuesto, podríamos crear nosotros mismos el sprite de
partitura Lo que es aún mejor es que solo
pudiéramos usar el sprite de puntaje de
otra persona Es más rápido.
Y nos permite aplicar nuestro cerebro y nuestro tiempo a otras
partes de nuestra programación. De hecho, de esto se trata la
programación. Reutilizando tanto su propio código código fuente abierto
cuando esté disponible Ahora, en el contexto del scratch. Digamos que juegas al
juego de alguien y piensas, Oye, me gusta mucho cómo tienen esa linda
animación de transisión o como el ejemplo temprano con
el motor de movimiento suave En lugar de intentar crear
tu propio movimiento suave, puedes usar el de ellos
en tu propio proyecto Scratch te permite hacer esto, y lo bueno con scratch
es que automáticamente le da crédito a otras personas cuando usas su
código en tu proyecto. Hagamos esto por
nuestro propio proyecto. Aquí pueden ver, encontré
un lindo mini juego de fútbol. Si bien el juego es un poco
duro por los bordes, todavía
está en Beta después de todo. Notarás que la
animación de partitura es realmente agradable. ¿Cómo podemos usar esto
para nuestro proyecto? Bueno, lo primero que
tenemos que hacer es hacer clic en este botón C inside. Como puedes ver, ahí está el sprite de partitura
que estamos buscando Sólo para asegurarte de que estás
en la misma página que yo. Quiero que abran
este proyecto y lo pueden hacer haciendo clic en el enlace que se encuentra
debajo de la lección. O simplemente puedes
ingresar manualmente en este enlace. Si aún no lo encuentras,
todo lo que necesitas hacer es hacer clic en Archivo y cargarlo desde tu computadora
y bajo proyectos terminados, verás este
llamado Fútbol Mini Juego. Con el proyecto
abierto, ahora todo lo que tenemos que hacer es copiar sobre el sprite Para ello, todo lo que tienes que
hacer es hacer clic derecho en el Sprite, y luego seleccionar puerto Aquí puedes
guardarla a donde quieras. Sólo recuerda dónde la guardas. Yo solo elegiré descargas. Ahora volviendo a nuestro juego de esquí. Aquí podemos pasar el cursor sobre esto, elegir un sprite y luego
hacer clic en el sprite de subida Ahora, aquí puedes ver que tenemos nuestro sprite de partitura,
que podemos seleccionar Tan abierto, ahí lo tienes. Nuestro sprite de puntuación está
ahora en nuestro juego y listo para usar y pensar en
todo el tiempo que hemos ahorrado Con todo ese ahorro de tiempo,
vamos a darle al sprite un poco de personalización para que
se adapte mejor a nuestro juego Pasando al editor de vestuario, voy a eliminar todos estos disfraces y luego
hacer clic en el botón de subir. Luego pasando a
la carpeta de partitura, puedes ver que tenemos estos números
más bonitos Simplemente podemos seleccionar
el primero, luego mantener presionada la tecla shift
y dar click en el último, y haciendo esto
seleccionaremos todos ellos. Ahora podemos hacer clic en abrir. Bien. Y ahí lo tienes. Nuestro nuevo
diseño de puntuación es importado. Con eso, echemos
un vistazo al código. Como puede ver, este código
está utilizando funciones. Pero vamos a
repasarlo rápidamente. Entonces tenemos alguna idea
de lo que está pasando. Entonces, cuando se hace clic en estrella, están poniendo
la puntuación a cero Entonces parecen
tener un bucle
asegurándose que el puntaje no
entra en los negativos Entonces por aquí, están
ejecutando la función de configuración, que hace un montón de
cosas como establecer tamaño y el disfraz y
también crear una c, y luego este clon llama a
otra función y así sucesivamente. Pero por ahora, lo
dejaremos así. Eres más que bienvenido a analizar este código por ti mismo, que estoy seguro que puedes
averiguar con todo lo que ya sabes.
55. Dominación de la dinámica de la partitura: del recuento simple al borde competitivo: Bien, hagamos que la partitura funcione. Y solo para
sacarlo, si jugamos un juego y hacemos clic en el
guión por aquí, un montón de veces,
como puedes ver, nuestra puntuación empieza a aumentar. A pesar de que hay
algunos problemas en verdad arreglando porque claramente
es demasiado grande. Y si eres como yo, probablemente
habrías asumido que
podemos cambiar esto fácilmente bajando el número de tamaño establecido. Pero claramente, este no
es el caso. Pero para ahorrarle la
molestia de tratar de averiguar qué
está pasando aquí, el tamaño en realidad está establecido
por este número de aquí. Entonces lo que podemos hacer
es simplemente bajar este número para decir diez. Si golpeamos el guión,
se puede ver que funciona. A pesar de que todavía aparece
gigantesco por un segundo. Esta vez, es por
esta opción de tamaño establecido aquí abajo. Si lo ponemos a un valor bajo como 15 y le damos otra jugada al
juego. Al hacer clic en el guión,
un montón de veces, se
ve que se ve mucho mejor, aunque cuando
pasamos el número diez, nuestros números aparecen
demasiado juntos. Ahora bien, a veces la mejor
manera de solucionar un problema como este es simplemente seguir cambiando
los números hasta que funcione. Es el método de la fuerza bruta. Pero para acelerar el
tiempo, en este caso, el número que necesitamos
cambiar es el de aquí, y podemos cambiar
este número a 0.4. Dándole otra oportunidad
a eso. Cuando llegamos a diez, como pueden ver,
eso se ve mejor. Juega con estos
números de aquí para obtener un efecto más dramático o
menos dramático. Básicamente, lo que
creas que se ve mejor. Pero lo dejaré
así por ahora. Ahora que tenemos el puntaje
funcionando bien y luciendo bien, vamos a
implementarlo en nuestro juego. Y en nuestros juegos anteriores, solo
haríamos que esperara cierta cantidad de tiempo y
luego aumentara la puntuación. Pero quiero algo más
interesante que eso. Lo que quiero es que cada vez que
pasemos un árbol obstáculo para que
la puntuación aumente. Como saben, si jugamos el
juego y hacemos clic en el guión, la partitura cuenta
como puedes ver, este es un mensaje de difusión Todo lo que tenemos que hacer es
transmitir la partitura del jugador, y debería subir. Pasando a nuestro sprite de árbol. Todo lo que tenemos que hacer es repasar a este código de mensaje de transmisión y arrastrarlo a esta escritura. Justo antes de
que eliminemos el clo, entonces solo podemos
cambiarlo para que transmita la puntuación del reproductor de
mensajes Vamos a darle una oportunidad
a eso. Como puedes ver, cada vez que pasamos un
sprite de árbol, nuestra puntuación sube. Tiene un poco de animación agradable. Es casi demasiado fácil. Mira lo mucho que transforma nuestro juego. Pero una cosa que quizás hayas notado si estás tratando de vencer
al juego, y es que
sigue siendo bastante fácil. Prácticamente puedes seguir
sin parar. Vamos a arreglar eso. Pasando a nuestro sprite
variable, verás que tenemos este código
vergonzoso por aquí. Como debes saber, este no es un buen código ya que nos
repetimos. Vamos a deshacernos de todo este
código y hacer algo mejor. Pasando al grupo de
variables, podemos crear una nueva
variable llamada level. Ahora podemos usar esto para controlar la dificultad de nuestro juego. Agarrando un cuando empiece, para siempre y yo esto es
lo que vamos a hacer En primer lugar, al
inicio de nuestro guión, vamos a establecer nuestra variable de
nivel en uno. Entonces vamos a
agarrar un
operador menos que y nuestra
variable de nivel y meterla aquí. Básicamente lo que queremos
hacer es comprobar que el nivel sea inferior a diez ya que no queremos que nuestro
juego sea demasiado duro. El nivel diez será máx. Entonces podemos agarrar un peso, meterlo aquí
y ponerlo en 15. Cada 15 segundos, queremos que nuestro
nivel aumente en uno. Simplemente cambiaremos de nivel por uno. Ahora, cada 15 segundos, nuestro nivel aumentará en uno, y dejará de aumentar
cuando llegue a diez. El único problema es, bueno, esto realmente no hace
nada porque es
nuestra velocidad de engendro y velocidad las
que cambian nuestra dificultad Para aumentar la
dificultad real del juego, voy a usar la función
broadcast. Al pasar, podemos arrastrar esto y luego
hacer clic en nuevo mensaje. Voy a llamar a esto un nivel arriba. Ahora podemos arrastrar
el
bloque cuando reciba y cambiarlo para subir de nivel. Entonces lo que queremos hacer
es bajar la velocidad de desove. Podemos arrastrar un bloque
variable de cambio, establecerlo en tasa de generación
y establecerlo en -0.1 Rápidamente, mirando nuestro código. Cada 15 segundos
nuestro juego sube de nivel, lo que transmite este mensaje que aumenta nuestra velocidad de generación. Podemos hacernos una idea
de los niveles. Cambiaré esto a solo
1 segundo y presionaré play. Como se puede ver, que rápidamente
aumenta en dificultad. Hasta que finalmente
alcancemos nuestro nivel máximo, ya que puedes ver muchos
árboles desovan en, y si esto parece demasiado duro, puedes cambiarlo fácilmente
cambiando este valor aquí Además, digamos que querías un modo demente en el que también
aumentaras la velocidad Podríamos simplemente ir
a nuestras variables, arrastrar esto y cambiar la velocidad de
movimiento por menos uno. Dándole otra oportunidad a eso. Como puedes ver, nuestro juego
definitivamente se vuelve una locura. Pero de todos modos, te voy a
dejar que juegues por
ahí para que sea
perfecto porque nuestro juego, no más bien nuestra obra maestra
está casi terminada
56. Elaboración de la puerta de enlace: construcción de una pantalla de inicio atractiva: Así que estamos casi en
la línea de meta. Pero para llegar a la meta, necesita una línea de salida, y eso es exactamente lo que
estamos haciendo en esta lección. Estaremos agregando en
una pantalla de inicio. Como sabes con nuestro flujo de trabajo de
desarrollo de juegos. Lo primero que
tenemos que hacer es
pensar en cómo va a quedar
y cómo va a funcionar. Pensando en ello,
lo que simplemente queremos es una pantalla bonita que sea lo primero que aparece
cuando iniciamos el juego. Con ese
borrador de idea de 30 segundos fuera del camino, podemos pasar al paso dos, que está sentando
las bases. Lo primero es lo primero. Vamos a traer nuestro telón de fondo principal
para nuestra pantalla de inicio. Para ello, podemos
utilizar nuestro escenario principal. Al hacer clic en él, y
luego en los fondos, notarás que no
tenemos ningún telón de fondo en este
momento Sin embargo, debido a que
estamos simulando nieve, solo
estamos usando un fondo
blanco en blanco Téngalo en mente. Al hacer clic en
el botón de importación y, a continuación, pasar a la carpeta. Pantalla de inicio, podemos seleccionar estos dos
archivos de pantalla de inicio y presionar abrir. Aquí puedes ver, tenemos esta animación que
parpadea. Estás aquí texto. Pero como pueden ver, hay esta gran brecha vacía en la
parte inferior de nuestra pantalla de inicio. Aquí es donde queremos agregar una pequeña y agradable animación
que juegue con árboles. Para estos árboles,
técnicamente podríamos importarlos
a nuestros antecedentes. Sin embargo, debido a que queremos
crear un bonito efecto en capas, vamos a
convertirlo en un nuevo sprite Nuevamente, subiendo un nuevo sprite. Aquí verás que tenemos este sprite de línea de
árbol por aquí. Seleccionando eso y golpeando abierto, se pueden
ver algunos árboles bonitos. Ahora, lo que queremos es que estos árboles se muevan hacia la izquierda y luego de vuelta a la derecha, lo que creará nuestra animación. El único problema, sin embargo, es que nuestros árboles son
más o menos del tamaño exacto
de la pantalla. Hay poco
espacio para moverlos. ¿Qué hacemos? Bueno, tenemos dos
opciones para arreglar esto. O bien podríamos escalarlos, lo que funcionaría,
pero aún mejor. Si pasamos al editor de
disfraces y clic en este botón,
convertimos a vector, seleccionando esta herramienta,
lo que ahora podemos hacer es moverlo
todo hacia la derecha, copiarlo y luego pegar. Entonces podemos intentar que se
alinee un poco. Con esta línea de árbol hecha, podemos duplicar el sprite para que podamos tener dos líneas de árbol Ahora tenemos que hacer es agregar
en nuestro botón de inicio. Una vez más, presionando subir. Podemos seleccionar la imagen del botón de
inicio, y ahí la tienes, un botón de inicio
gigantesco. Genial. Pero antes de intentar
escribir cualquier código apropiado, organicemos todo esto para que
realmente tengamos una idea
de lo que está pasando. En primer lugar, arreglemos
este botón de inicio. Creo que aquí 25 es un tamaño
mucho más realista. Con eso, puedes simplemente
moverlo al fondo aquí. Por último, para nuestros árboles, queremos que sea
algo así. Esta línea de árbol debe
cubrir este espacio en blanco. Entonces esta línea de fondo
necesita estar en la parte delantera, por lo que cubre nuestro
botón de inicio solo un poco, lo que nos da un
bonito efecto de chico Bueno, eso es
básicamente todo por ahora. Nuestros sprites son importados.
Todo está en su lugar. Ahora, todo lo que tenemos
que hacer es obtener codificación. Prepárate
porque está a punto de comenzar.
57. Sentado el escenario: capas y activación para un comienzo sin fisuras: Bueno, todos nuestros nuevos
sprites están en orden. Ellos solo están esperando
que les demos vida. Ahora bien, lo primero que tenemos que hacer es acertar las capas. El único problema es que el rasguño solo te
permite establecer un sprite para ir hacia atrás o al frente o ir hacia atrás o hacia
adelante, una capa No hay opción para
que vaya a una capa específica. Actualmente, lo que
hemos estado haciendo es que nuestros sprites vayan
al frente y luego regresen bien este truco funciona, si tienes tres
o cuatro sprites, causa problemas cuando
tienes más que eso Para establecer un sprite en
una capa específica, lo que necesitas hacer es primero que el sprite vaya a la parte posterior, luego llevarlo adelante sin importar
cuantas capas sean necesarias Esto es lo contrario
de cómo lo teníamos. Si lo miras,
esta línea de árbol inferior estará en la capa más alta. Vamos a
adelantarlo seis capas. Entonces el botón
será una capa más baja para que podamos
adelantarlo cinco capas. Después el siguiente conjunto de árboles, adelantaremos cuatro capas. Lo que eso significa es que
nuestro sprite de árbol de obstáculos necesita presentar
tres capas Entonces nuestro jugador sprite, dos capas, y finalmente, nuestro pixel de nieve solo una capa Comenzando con
el sprite de nieve, podemos entrar y
cambiar esto para ir hacia atrás y luego
avanzar una capa, y hacer lo mismo con el
sprite, así como así Entonces nuestro jugador, podemos decir retroceder y luego
avanzar dos capas. Nuestros árboles también cambian
hacia atrás y podemos traer en un ir hacia adelante y
cambiarlo a tres capas. También, casi por ello. También necesitamos establecer la
capa de nuestro sprite de partitura. Vamos a arrastrar este guión
sobre él y
podemos hacer que este avance
cuatro capas, así como así. Ahora, para hacernos la vida más fácil, podemos simplemente arrastrar este código, script a cada uno de
estos nuevos sprites, agregamos así así Luego pasando a nuestro
primer conjunto de árboles, podemos avanzar cinco capas. Ahora, para nuestro botón de inicio, queremos seguir
adelante, seis capas. Por último, nuestra línea de árbol de fondo, podemos hacer que
avance siete capas. Bien, entonces eso se ve bastante bien. Ahora tenemos que hacer que
realmente funcione porque te darás cuenta si haces
clic en el botón de reproducción, bueno, tenemos una fusión rara de nuestro juego sucediendo
en nuestra pantalla de inicio. Nuestra primera prioridad es conseguir
el inicio resuelto. Básicamente lo que queremos es que nuestro juego comience cuando
hacemos clic en este botón, es
decir, esta pantalla de inicio y los árboles deben esconderse y nuestro jugador y los obstáculos
deberían aparecer. Ahora, en lugar de usar un mouse if hacia abajo y
tocar sprite, como hemos hecho
antes, podemos usar este bloque aquí cuando se hace clic en
el sprite Bien. Ahora, cuando
hacemos clic en el botón, queremos transmitir
un mensaje y el mensaje que queremos
es Iniciar juego. Arrastre en este bloque cuando se haga clic sobre el
sprite, luego el mensaje de difusión? Podemos crear un nuevo
mensaje llamado Iniciar juego. Ahora con eso hecho,
asegurémonos de que nuestros otros
sprites respondan En primer lugar, con nuestros antecedentes, podemos desconectar esta música
del clic on flag y más bien hacer que juegue con el mensaje de difusión
cuando reciba start game. De esta manera, nuestro
sonido ambiental siempre está sonando, pero nuestra música solo comienza cuando realmente comienza
el juego. Derecha. Tengo un mini reto
para ti. ¿Estás listo? Lo que queremos que suceda es nuestra animación que
gira entre estos dos fondos se
reproduzca cuando hagamos clic en la bandera. Entonces cuando hacemos clic en
el botón de inicio, queremos detener
la animación y cambiar al fondo en blanco. ¿Puedes hacer que
funcione? Aquí tienes una propina. Idalmente deberías usar
funciones para crear esto. Pausa el video
y dale a este tipo. Bien. ¿Cómo te fue? puede ser un poco más difícil de
lo que pensabas. Bien hecho si lo
conseguiste. Lo primero es lo primero. Necesitamos crear una función. Llamaremos a esta animación
de fondo. Aquí, necesitamos agregar una
entrada y podemos llamar a este juego start y darle bien. Ahora necesitamos definir
esta función. Trayendo en este clásico
para siempre y bloqueo, luego agarrando
a un operador de iguales, y aquí podemos comprobar si
los juegos empiezan igual a true Ahora si lo es, queremos
cambiar a nuestro primer telón de fondo. Pero si no lo es, queremos que se reproduzca nuestra animación. Para ello, podemos agarrar dos telones de fondo de interruptor y luego
pegar un peso en el medio, y luego un peso al final También cámbielo para iniciar
la pantalla uno y dos. Entonces todo lo que tenemos que hacer es agarrar
otro cuando se hace clic en flag, traer este bloque
para llamar a nuestra función, y luego establecer la entrada en false Entonces podemos arrastrar otro cuando
reciba bloque así, configurarlo para iniciar el juego, luego traer esta
llamada de función y configurarlo verdadero. Pero ahora, me acabo dar cuenta de que esto realmente
no tiene sentido porque llamar animación de
fondo con false inicia la animación mientras la llama con verdaderos fines, pero ignoraremos ese
descuido por ahora. Al hacer clic en reproducir. Como puedes
ver nuestras obras de animación. Al hacer clic en inicio, se
va y empieza nuestra música. Ahora con todo eso hecho,
pasemos a nuestros sprites de árbol Este será un
poco más fácil. En primer lugar, arrastrando en
un clic de bandera when. Aquí solo podemos
mostrar el sprite. Después arrastrando en
el
bloque cuando recibí y configurándolo para iniciar juego,
podemos ocultar el sprite Por último, necesitamos
crear animación. Ahora para esto, podemos simplemente agarrar un bucle para siempre y
un bucle repetido. Dentro del bucle de repetición, podríamos tener un cambio x por cinco y luego esperar 0.5 segundos. Entonces podemos simplemente duplicar esto y esta vez
configurarlo en menos cinco. Por último, al inicio
de nuestro guión, pongamos la
posición x a cero y fijemos la y en su posición
actual. Ahora bien, para nuestro otro sprite de árbol, porque es lo mismo, podemos simplemente arrastrar ambos
scripts a él así Lo único que sí tenemos que
hacer es cambiar la posición y. Aquí podemos simplemente fijarlo
a su posición actual. Al hacer clic en reproducir. Como puedes ver, tenemos una linda animación
con los árboles haciendo clic en inicio. El desaparecer. Ahora bien, claramente, hay un
problema de que nuestro sprite y árboles siguen funcionando.
Abordemos eso. En primer lugar, pasando a
nuestro sprite de jugador, podemos simplemente arrastrar en una piel sobre esta bandera en la que se hizo clic y
luego arrastrar cuando reciba, configurarlo para iniciar el juego, y luego arrastrar en un bloque de show Ahora podemos simplemente arrastrar
esto cuando recibí bloque en nuestro sprite de árbol,
nuestros sprites de píxeles de nieve
y nuestro sprite de puntaje Primero, moviéndonos a
nuestro sprite de árbol, aquí podemos arrastrar el guión
a nuestro W I received start game y
pegarlo en el clic when flag Después moviéndonos a nuestro pixel de nieve, podemos hacer exactamente lo
mismo aquí. Cambiando eso y
moviendo la piel, así como así. Con el segundo sprite de nieve, también
podemos hacer lo
mismo cambiar y movernos Por último, con nuestra puntuación. Aquí podemos simplemente arrastrar este script de llamada de función de
configuración a nuestro W I receive start game Last, puedes arrastrar en una escondite
sobre la bandera W pulsada Al hacer clic en reproducir. Como pueden ver, eso se ve bastante bien. Cuando hacemos clic en Inicio, bueno, hay algunos problemas. De todos modos, nos
ocuparemos de todo esto en la siguiente lección donde
terminaremos este juego Pero te animo a darle una oportunidad y tratar de ver si puedes arreglar estos pequeños
problemas finales por tu cuenta.
58. El toque final: refinamientos y revelaciones: Bueno, ahora es la gran final. Es hora de terminar
lo que empezamos. Esta es la
fase final de desarrollo. Es donde miramos
a través de todo nuestro código, probamos nuestro juego un montón de veces, aseguramos de que todo esté
perfecto antes del lanzamiento. Pero lo primero es lo primero,
tenemos un problema cuando
hacemos clic en Inicio, que es como todos estos
sprites no se dispersan Vamos a arreglarlo uno por uno. En primer lugar, con nuestro botón de inicio, todo lo que tenemos que hacer es arrastrar
el bloque cuando reciba, cambiarlo para iniciar el juego y
luego arrastrar en un bloque de ocultar. A continuación, arrastre hasta la bandera
W, haga clic en. Probando esto y haciendo clic. Inicio, podemos ver que funciona. Ahora pasando a nuestro sprite
de árbol aquí es donde cometimos un
error anteriormente cuando
arrastramos este bloque de show
recibo inicio bloque de juego En realidad, no necesitamos esto ya esto sucede automáticamente
en nuestro otro script, así que solo podemos eliminarlo. Ahora podemos literalmente hacer lo
mismo con los otros sprites. En primer lugar, nuestro pixel de nieve. Solo quita el show. Entonces el segundo
pixel de nieve, haz lo mismo. Por último, con nuestra partitura, también
podemos eliminar el espectáculo. Juego de patadas. Después
golpeando inicio. Como puede ver, nuestro
problema se ha solucionado. Ahora, hay una animación más que quiero agregar a
nuestra pantalla de inicio, y es para nuestro botón de inicio. Aquí quiero que el botón
para acercar y alejar. Básicamente va a ser un código
muy similar
a nuestro sprite de árbol Pasando a él,
podemos simplemente arrastrar una bandera se hizo clic para siempre
para repetir bloques Y dos cambian de tamaño por bloques, que podemos pegar
en cada uno de estos. Para el primero,
podemos fijarlo 0.2 y los dos últimos -0.2 Lo último que tenemos que
hacer es establecer el tamaño a su tamaño actual, que es 25. Entonces solo trae un bloque de ir a bloquear para asegurarse de que se
mantenga en posición. Eso es todo. Golpeando play, como puedes ver, tenemos una pequeña
animación agradable y haciendo clic en iniciar. Bueno, eso funciona bien. Ahora, una cosa extra que se
puede mejorar son
nuestros árboles de obstáculos. Si has jugado el
juego el tiempo suficiente, puedes ver que los árboles simplemente
aparecen en una formación de líneas, que no se ve muy natural. Pasando a nuestro sprite de árbol, todo lo que tienes que hacer es duplicar
el script aquí, así Pero ahora, si tuviéramos que jugarlo, estos árboles engendrarían exactamente
al mismo tiempo, lo que sería
aún más natural Queremos cierta variabilidad. Para arreglar esto, necesitamos
usar un poco de matemáticas y sé lo mucho
que amas tus matemáticas. Lo que podemos hacer es eliminar
esta variable aquí, y luego pasar
a los operadores y agarrar algunos bloques aquí, que son esto más
un pick random, un bloque times y
un bloque de división. Entonces podemos duplicar nuestra variable
spawn dos veces. Ahora que tenemos todas las piezas, necesitamos conectarlas tasa de
desove más pick random, luego los tiempos bloquean
en la primera entrada Luego inserte este
bloque de división en esta entrada, y luego las variables de engendro
en cada una de estas entradas Ahora, con todo eso conectado, para la primera entrada, podemos escribir dos y negativo
uno para el segundo. Repasemos rápidamente
por esto para
que entiendas lo
que estamos haciendo aquí. Cuando comienza el juego,
continuamente creamos clones. Ahora, para que el cono se sienta
más natural y en lugar de esperar
siempre la misma cantidad
de tiempo entre clones, agregamos algo de aleatoriedad Determinamos el
tiempo de espera de la siguiente manera. En primer lugar, tomar la tasa
de desove establecida. Ejemplo 0.5 segundos. En segundo lugar, elegir aleatoriamente un valor entre la mitad de la tasa de desove, restarlo de sí mismo, haciéndola negativa y
la tasa de desove completa En tercer lugar, agregue este
valor aleatorio a la tasa de generación. Por ejemplo, si la tasa de
desove es 0.5, el tiempo de espera puede
estar en cualquier lugar entre 0.25 y 0.5 segundos. La variación aleatoria asegura que
los conos no aparezcan demasiado predecible y
le da un miedo mucho más natural No obstante, lo único que podemos
necesitar en este momento es nuestra velocidad de desove porque ahora tenemos dos
conjuntos de obstáculos Para ello, podemos bajar la
tasa de desove inicial aumentando este número aquí o cambiando cuánto
disminuye por aquí Bien. Ahora, hay otro problema que
quizás hayas captado. Si eliminas esta declaración de
peso, verás cómo a veces
los árboles aparecen uno
frente al otro.
¿Cómo solucionamos esto? Todo lo que tenemos que hacer
es agarrar un bloque de
capa ir a y un bloque de capa de
movimiento. Entonces bajo el guión aquí, cuando empiezo como clon, queríamos ir a retroceder una capa, y luego adelantarnos,
digamos 35 capas. Hacer esto asegura que nuestros
árboles se coloquen correctamente, y también que nuestro jugador
esté detrás de nuestro árbol. Podemos probarlo. Si
tienes buen ojo, notarás que los árboles
están apilados correctamente y también nuestro jugador se escurre
detrás de nuestros árboles Entonces en esta etapa, hemos llegado a un momento muy
importante. Siga con nosotros. Realmente lo hago. Tienes que
seguirnos. Solo tómate un momento. Pon uno de tus brazos
en el aire. Vamos. Asegúrate de
que lo estás haciendo. Pon un brazo en el aire. Ahora, baja lo más lejos que puedas detrás de ti.
¿Estás haciendo eso? Bueno. Ahora, toca en algún lugar en la mitad de tu
espalda. Excelente. Acabas de estirarte.
Pero lo más importante, te has dado
una merecida palmadita en la espalda. Bien hecho. Tu juego está completo y llegar hasta aquí
significa que eres uno de nuestros mejores estudiantes y demuestra
que
tienes la persistencia
de un programador real. Bien hecho. Te ha ido
muy bien en atraparte. Creo que es hora de
que te sientes
relájate y disfrutes de lo
que has creado. ¿Por qué no
desafías a tus amigos y familiares a jugar tu juego? Oye, si vas a agregar una mecánica secreta que
hace que el juego sea más difícil
cuando jugaron, quién soy yo para juzgar,
es tu juego. Es tu persistencia
y perseverancia que te ha traído aquí un trabajo
fantástico y bien hecho
59. Introducción al curso de HTML: Hola, soy Craig ya. Es Josh Yo. Sí, y vamos a
traerte a través de nuestro curso de introducción a HTML cinco.
Curso muy emocionante. El objetivo de este
curso es
enseñarte los conceptos básicos de HTML cinco, qué se trata y cómo
puedes llegar a
ser realmente un codificador de HTML y
configurar tu primer sitio web Vamos a tener una visión general rápida
de lo que vamos a cubrir. Vamos a en
esta primera sección, comenzar en nuestra primera sección
es una introducción al HTML, cómo funciona, cómo
se arma, editor
Brown que
puedes usar todos los básicos. Deja que te pongas cómodo. Es muy importante. Cuando cantas a la comida,
quieres estar cómodo Entonces empezaremos a ver el formato de las imágenes y cómo
podemos cambiar los tamaños, cómo podemos agregar imágenes. Luego, equipado con
eso, está casi
listo para armar sus primeras
páginas web en nuestro sitio web. Nuestra tercera sección
va a analizar esencialmente
armar todo esto y crear
su primer sitio web. Entonces estaremos mirando
mesas, fondos y más. Esto va a ser básicamente
cómo hacer que tu sitio web vea bien y ordenado y no tener todo
solo por ahí, poniendo un fondo un
poco como la habitación de Josh a veces. No lo quieres
todo por ahí. O sea, si pudieras
organizar tu vida en tu habitación de manera muy
parecida a un sitio web HTML, quiero decir, podría verse muy
ordenado. Esa es esa sección. Entonces, bueno, botones,
dimensionamiento de enlaces y mucho más. Nos vamos a involucrar un
poco más. Veremos cómo
puedes vincular páginas,
crear botones, cambiar el
tamaño de las imágenes, etcétera No, solo para aclararlo, este es un curso introductorio. No vas a
estar al final de esto como, yo soy un maestro. Soy el Jedi de todos los
desarrolladores de programación de páginas web. La idea es que es
presentarte lo básico. Pero al final de
esto, ¿no te sentirás cómodo trabajando con HTML? Y una vez que te sientes cómodo
trabajando con él, hay tantas opciones
para ir más allá, ya que todos
exploramos en esta lección
y otras después. Entonces debes tener una pregunta, y la pregunta obvia
que está en tu mente es sí, eso es exactamente. ¿Qué es HTML cinco? ¿Por qué son cinco? ¿Por qué
no son cuatro, tres, dos, uno? ¿Por qué tiene un número?
¿De qué se trata? Esa es una muy buena
pregunta, y, por supuesto. Si fuiste un aprendiz activo y vamos a
alentarlo en este curso Si fueras un aprendiz activo, en realidad
irías y Google. Te reto. Vamos. Me atrevo a hacer una pausa ahora
y ir a buscarlo en Google. Bien, entonces, ¿qué averiguaste? Bueno, ya lo
descubriste, ¿no? Ese HTML cinco en realidad se compone
esencialmente de tres partes. Es la parte HTML, el CSS, que significa
cascada ¿Lo
buscabas? Hojas de estilo. Y JS, ¿qué significa? JavaScript. Bien, entonces estas son las tres partes que
conforman HTML cinco. HTML es, de hecho,
un entorno. Entonces HTML esencialmente
es lo que permite que sus sitios web hablen entre
sí para comprender
lo que realmente está sucediendo. Lo veremos en un
momento. Entonces junto a eso, hay un CSS, que dije es una hoja de estilo en
cascada CSS, Josh, ¿de qué se trata todo
eso? Entonces CSS es básicamente como bien, con HTML, puedes hacer tu sitio web se vea realmente
bien solo con HTML. Y luego con CSS, básicamente, así es como pones muchos
pequeños efectos y estilos y
animaciones y todo ese tipo de cosas que solo hacen que tu sitio web se vea
aún más hermoso. Entonces HTML es el esqueleto
entonces CSS es la piel. Es la piel la que lo repasa. Y luego, claro, si
quieres que tenga
movimiento tener corazón,
tener el corazón latiendo que está bombeando ahí dentro
eso le está dando vida, última instancia, necesitas JS,
que es JavaScript. Y aquí es realmente donde
estás empezando a codificar cosas que van a
hacer el procesamiento que se sienta detrás y dentro del esqueleto y la
piel. Entonces eso es HTML. HTML five está compuesto por
HTML, CSS y JavaScript. Pero en este curso,
no vamos a estar
mirando CSS y JavaScript. Vamos a estar
viendo HTML porque ahí es donde
empieza todo. Esa es la base. Así que muy rápido para
explicarte cómo funciona esto. HTML es esencialmente código. Es código que se encuentra en una página, como se ve aquí, y realmente
es código de computadora. Es un código que permite que una computadora entienda
lo que dice otra, y este código se pasa alrededor, y ese código luego se envía
a un navegador. Y dentro del navegador, interpreta este código, que es lo que
vamos a estar aprendiendo, y lo muestra de cierta
manera Esencialmente, todo lo que
es HTML es una serie de códigos, lenguaje de
programación
que un navegador puede interpretar y luego
saber mostrar las cosas. Por ejemplo, va a decir, quiero una foto. Quiero que la foto
esté por aquí. Quiero algo de texto y quiero que
el texto esté por aquí. Todo eso está escrito en
este código, que es HTML, lenguaje de marcado de
hipertexto, y luego cualquier
navegador que estés usando, ya sea Chrome o
Explorer o Safari o lo que sea, interpretará ese
código y lo mostrará Vamos a estar
aprendiendo sobre HTML y cómo podemos crear sitios web
básicos. Primero mira eso,
eso es bastante agotador.
¿Qué dices, Josh? Se ve muy confuso. Y probablemente lo hayas
encontrado en diferentes etapas. Si en algún momento, mira el código fuente
detrás de una página web, esto es lo que hay detrás de
las páginas web. Se ve agotador, como, guau, lo que está pasando ahí Pero vamos a
ver en un momento, realidad no es tan difícil. Una vez que entiendes los
conceptos básicos de cómo funciona HTML, en realidad
es bastante
fácil y estás
a punto de empoderarte para
convertirte en un codificador HTML Aquí hay un ejemplo de un
segmento de código HTML. De nuevo, parece, guau, lo que está pasando aquí. Realmente es bastante sencillo. Esencialmente, todo lo que está compuesto por
ese código
HTML es una serie de etiquetas. Verás que hay una etiqueta,
una etiqueta es algo que ocurre entre esos
pequeños corchetes, esos pequeños
corchetes diagonales. Aquí tenemos una etiqueta llamada cabeza. Ahora para cada etiqueta o
para la mayoría de ellas, por cada etiqueta de apertura, habrá una etiqueta de cierre. Una etiqueta de cierre va precedida
de una diagonal hacia adelante. Puedes ver aquí
tenemos un slash delantero, cabeza y cabeza es
la etiqueta de apertura Si miras a tu alrededor,
deberías poder ver algunas otras etiquetas de apertura
y cierre. Ahí tenemos uno que
no parece tan obvio, y ahí podemos ver
la etiqueta de cierre. Pero nuevamente, esa es nuestra etiqueta A. Ahí está abierto, a
pesar de que hay algunos otros
pequeños componentes, no te
preocupes por el momento,
pero ahí está el cierre. ¿Ves alguna otra? Sí,
hay una etiqueta H uno, el cierre, el abierto, no,
no, no, no, no, no, no vaya. Esencialmente, de
eso se trata HTML. Se trata de código, código
que se compone de etiquetas, y estas cosas son
interpretadas por nuestro navegador. Lo que vas a estar
aprendiendo es escribir este código. Entonces eso es todo. Eso es lo que vamos a
estar cubriendo este curso. HTML, introducción a HTML. Esperamos que estés emocionado.
Estamos emocionados. Sí. Nos vemos del otro lado. Todo bien. Nos vemos ahí, prepara tu cerebro,
te calientan los dedos y
aprendamos sobre HTML.
60. Editor de textos de Sublime: Derecha. Entonces, lo que vamos a hacer desde el principio
es que vamos a tener que estar descargando se
llama Sublime Text Editor. Ahora,
te vamos a mostrar cómo hacer eso y vamos a estar trabajando
con Sublime Text Editor. Pero quiero mostrarles
por qué vamos a estar usando esto como nuestro editor de
texto para HTML. Ahora, voy a
pegar el HTML. inmediato, cuando
lo pegue te darás cuenta, hay colores y
hay sangría etcétera Cuando trabajas en un
editor de texto como Sublime, hace que el trabajo y la disposición de tu
HTML sean muy fáciles de ver. Si hago clic en la tabla de
palabras ahí, inmediatamente
ves
que está resaltado donde está el otro extremo
de su etiqueta. No te preocupes por los
detalles en este momento. Quieres mostrarte eso es lo que se ve un editor de texto
especializado que editor de texto
especializado que
ha sido diseñado para HTML. comparación con si trabajaste en algún
editor de texto normal como Text Edit, si notas ahora lo
pego ahí, no
hay codificación de colores en comparación con lo que
teníamos en Sublime. Si hago clic en una etiqueta de
apertura como Head, no
sabrías
que esa es la etiqueta de
cierre de
ahí, etcétera Hay muchos
beneficios de trabajar en un editor de texto que ha sido diseñado
específicamente para HTML. Eso es lo que queremos
hacer. Tenemos que conseguir esto. Entonces, desde el principio,
tienes que ir y descargarlo.
Entonces así es como lo haces. Bien, entonces si te estás
preguntando cómo descargar este editor de texto, hay muchos editores de texto,
muchos, hay en línea, hay muchos
hay
corchetes, sublínea tantos Sublínea una bonita.
Mucha gente lo usa. Básicamente, tienes sublínea Texto tres y
sublínea Texto dos y uno Pero tres han estado
en Beta desde hace años, así que solo vamos a usar. Dos. Sí. Así que entra en Google y busca Descargar
sublínea Texto dos Sí, si solo pones Sublime text o
lo que quieras o Sublime text también, eso
debería hacerlo por ti. Bien, entonces ahí lo
ves Sublime TestErNTSA entonces tenemos todos estos operativos Así que si
eres gente
de Mac como nosotros, vas a ir a Pero si eres una
persona de Windows, eso es genial. Viento nos gusta Windows. Nos encanta Windows.
Amamos a todos. Eres una persona Linux, lo que sea. Simplemente escoge tu versión y la descargarás.
Es bastante simple. Básicamente simplemente harás clic
en el enlace de la versión que quieras y luego
descargarás ese archivo. En cuanto a nosotros, sería, es un archivo DMG, y lo
descargaríamos a tus Bien, entonces ya hemos
descargado esto. Entonces, cuando lo abras, solo
verás una nueva pestaña vacía y
sin título que
tenemos ahí Entonces esto es básicamente esto es lo que
obtienes cuando lo abres, no mucho. Estás trabajando en una pizarra en blanco. Ahora, recuerda lo que estamos
haciendo en este curso, estamos viendo cómo construir
un sitio web desde cero y, um mientras hay herramientas
especiales que
pueden intentar
hacerlo por ti aprendiendo el HTML, lo que estás haciendo
es que estás aprendiendo el lenguaje de tuercas
que hay detrás de la web. Se ve un poco intimidante porque te
enfrentas a esta pantalla grande, oscura y
aterradora que no
tiene nada en ella, pero vas a
aprender que pronto, aunque haya
mucho texto en ella, entiendes lo que eso significa Bien, así que
lo primero que hacemos solo para comenzar con nuestro HTML tienes que guardar tu
proyecto porque obviamente HTML es una cosa, tienes CSS. Así que cuando lo guardamos, simplemente golpeamos Comando S y
podremos ir a un escritorio. Incluso podemos hacer una
nueva carpeta para una web. Sí, obviamente, todos
tus archivos que
vas a estar creando son pequeños archivos HTML
separados. Bien. Cada uno de estos va a ser
necesario Va a requerir un nombre y
te estamos sugiriendo que los guardes todos en una carpeta. Simplemente lo llamaremos
nuestro sitio web y luego aseguraremos de que tenga un HTML de
punto al final. Así es como sabe lo que
estás editando y cómo se va a formatear cuando estemos editando y todo
ese tipo de cosas. Cuando lo guardamos obviamente
y lo abrimos, Google sabe que este
es un sitio HTML. Además, es una buena idea cuando estos van a ser nombres de
archivo en última instancia. Si vas a
usar un nombre como este, es una buena idea
en lugar de usar espacios, que serán reemplazados por pequeños personajes
divertidos, es escribirlo como una
palabra o poner pequeños guiones Ahí tenemos un sitio web dot HTML diciéndole que
se trata de un archivo HTML. Bien, entonces ahora lo guardamos. Se puede ver instantáneamente
en la parte superior ahí, tiene nuestro sitio web dot HTML. Este es realmente un entorno bastante
sencillo. Entonces en cualquier etapa, archivo, archivo nuevo, puedes
crear otro. Puedes cambiarle
el nombre e incluso puedes tener varias pestañas abiertas si quieres y lo
veremos más adelante. Pero básicamente, este es el entorno donde
vas a estar creando tu sitio web y
escribiendo tu código HTML. ¿Sabes qué hacer? Salir ahí fuera, ve y descarga Sublime Text dos o tal vez tres si es totalmente de la
versión Beta, lo que quieras. Son muy iguales, y vas a necesitar
eso para continuar. No te atrevas a ver
nada más hasta que hayas
hecho eso, goo hazlo. Bien, nos vemos en la siguiente.
61. El esqueleto HTML: Bienvenido de nuevo.
Sólo tengo una pregunta. Una pregunta para ti. ¿Descargaste
este texto Sublime? Porque si no
paraste ahora mismo, vuelve porque de eso se trataba
la lección anterior. Si quieres
participar, este curso, recuerda que este curso
se trata de estar activo. Se trata de estar involucrado.
¿Qué dices, Josh? Sí. Todo sobre estar activo. Porque así es como
aprendes. Entonces, si no has descargado el
Editor de texto, pulsa pausa ahora. Ahí estaba mi pausa, y
vuelves a descargar. Pero asumo que ya lo
has hecho. Entonces ahora tenemos nuestro Sublime
Text Editor, y como dijimos, es mucho mejor que tener solo un negocio normal de
editor de texto yendo
a dar formato a las cosas. Ahora podemos hacer
cosas geniales. Y lo que
queremos mostrarte es
el proceso, ¿no? Queremos mostrar el proceso. ¿Cuál es el proceso básico
que implica? ¿Cómo vamos
a empezar a recibir algún texto en nuestra página ahora mismo? Es así que básicamente, hay
dos partes en esto. Recuerda lo que estás haciendo,
estás creando código HTML, que es el código fuente
que se encuentra detrás de las páginas web. Eso tiene que
guardarse en un archivo, y luego ese archivo se
abrirá dentro de un navegador
donde pueda mostrarse. El navegador es el
intérprete del archivo. Entiende lo que significa
el código fuente. Por lo que este código fuente
es interpretado por Chrome o Safari o cualquier
navegador que estés usando. Entonces es dar un ejemplo Hola. ¿Cómo estás? Usted es lo que ahora hemos escrito
en el archivo D. Fantástico. Bien, entonces ya sabes, ya que hemos guardado este
proyecto en particular bajo HTML web. Ahora bien, si vamos a
este Este archivo, sí, podemos decir abrir y luego abrir con como nos gusta Chrome porque algunas cosas como Safari o Internet Explorer no
se mostrarán cuando nos avancemos más, verás muchas
cosas que Chrome hará que otras que hayas puesto en un determinado trozo
de código y luego Safari e Internet Explorer no mostrarán ese tipo de cosas. Sí, todo eso
fastidia. Lo que siempre
debes recordar
hacer si no lo has hecho si has hecho todos estos cambios y sigues teniendo
el mismo error, es como, no es hacer esto, no
es poner
la nueva frase. Si solo decimos
comando y golpeamos S, notarás que por aquí, tiene el comando guardar S. Ahora cuando refresquemos nuestra pestaña, y así como un pequeño consejo
hinty para ti,
te darás cuenta cuando escribas algo alto, no se guarda Se puede ver que tiene un poco.en ella ahí eso indica
que aún no estás salvado. Obviamente, si cruzo por
aquí y me refresco
para ver el archivo, no tiene la nueva
parte que acabo de agregar. Tan importante, cuando
escribas algo aquí, guarda, así que voy a darle al
Comando S. Aviso, ya no es un puntito indicando que ahora está guardado. Si vuelvo aquí de nuevo, ahora
se está reflejando. Lo tengo. Es un proceso muy
sencillo. Escribe tu código
aquí, presionas guardar y luego lo abres en el navegador. Pero cada vez
que estás en el navegador, necesitas volver a cargarlo para que vuelva a echar un vistazo al archivo Bien, entonces una cosa
que también notaremos es con espaciado, como digamos. Sí, pongámoslo un espacio.
Hagamos que se vea mejor. Bien, entonces
vamos a saludar y luego la siguiente
persona dice hola. Un pequeño par de espacios de
línea ahí. Si hacemos esto,
no es realmente necesario. Hola. Sí, extiéndalo. Lo extenderemos. ¿Qué tal una especie de
hacerlo así que esté muy bien extendido, hola hola. Y luego así tira de
nuestra página y luego, ya
sabes, no sé, un
par de signos de exclamación Eso se ve genial. Así que
guarda esos comandos. Bien, ahora te das cuenta cuando
estábamos recién hechos página. Sí, ¿qué es? No lo ha hecho. Parece basura Sí, es basura.
Es decir, lo escribimos Mira cómo lo escribimos.
Fue hermoso. Fue como, eso está
en la primera línea. Es bastante obvio. Eso está en la línea cuatro. Entonces no está funcionando. Las cosas
se estropearon, Joshua Bien, entonces con Sublime text, no
es mirar si
tienes un montón de espacios y cuánto lo
estás
espaciando y todo eso. Obviamente, si tienes un
espacio en él va a poner el único espacio
para tus oraciones, pero no va a
organizarlo así. Para eso, tienes que
poner el tuyo propio, tenemos estos espacios sin
brackets. Es un poco de
código que le pones para decirle lo que está pasando. Le dices a la página web la
cantidad de espacios que sí, así que la conclusión, esto no es lo que se llama un WizzzyWigra ¿Sabes lo que significa eso?
Wizywig. Joshua, ¿qué es Whizzie Vamos, diles. Es lo que ves es
qué. Entonces ese es Wizzywig Así que recuerda,
en realidad eres un codificador. Cuando trabajas en HTML,
estás construyendo código así no solo lo pones así y piensas cuando
voy al otro lado, solo va a
tomarlo todo como aparece en una línea. Entonces lo que tenemos que hacer es que realmente
necesitamos poner
los códigos en los que van
a explicar al navegador en caso de Chrome cómo va
a mostrar esto como una página. Y ahí es donde entran
los
conceptos básicos del HTML y el uso de
algo llamado tags. Bien. Una etiqueta muy fundamental. Esto no es para meter los espacios, pero luego cubriremos todas
esas cosas. Básicamente cada página de HMI
que tengas tiene esto. Una vez que hayas guardado tu proyecto como h dot whatever sit HTML, si solo abres, este
atajo no funcionará. Si vamos HTML y luego
presionamos el botón de tabulación, notarás que
saca todo por ti. Tienes la cabeza. No hace falta que te preocupes por
lo que todo esto. Sí, vamos a ir a
explicarte todo esto. Tu cuerpo. Básicamente
llamamos a esto el esqueleto. Tienes una cabeza
y una así es. Entonces antes hasta ahora, no
tenías
cabeza en el cuerpo, solo
haces esto y
tienes una cabeza en el cuerpo. Sí. Entonces este es tu
esqueleto para HTML y luego vamos a llenar
esto para rellenar esto en
el código de nuestro sitio web. Absolutamente. Entonces básicamente, de nuevo, por eso estamos usando Sublime porque ¿qué está haciendo
Sublime por ti? Sublime
te está dando la estructura. Entonces fue muy sencillo. Sólo te vamos a
mostrar una vez más. Entonces no es HTML. Estamos haciendo código HTML, así que escribas HTML, y luego golpeas el blanco. ¿Qué dijimos?
¿Estabas escuchando? Tab. En cuanto tabules,
vamos a usar esto una y otra vez, no
vas a olvidar esto. Inmediatamente te da la estructura básica
para una página HTML. Muy rápido, solo quiero
mostrarte la estructura. Siempre comienza con
una etiqueta HTML de apertura. Todos estos se llaman etiquetas. las cosas que ocurren entre los dos pequeños apoyos
se les llama etiquetas Comienza con una apertura y luego justo al
final es una final. Como dijimos en nuestra sesión
anterior, cuando haga clic en ésta,
verán ambos en ahora resaltados. La etiqueta de apertura está justo
entre las llaves. La etiqueta de cierre siempre
tiene una barra diagonal hacia adelante, y luego el código Te ha dado HTML
open, HTML close. Vamos a ver los detalles de estos
otros más tarde, cabeza abierta en la parte superior ahí, la cabeza cerca justo debajo de ella. Título abierto, cierre de título, cuerpo abierto, cierre de cuerpo. Básicamente
te está dando como dijo Josué, ¿día? Esqueleto esqueleto.
Básicamente, con HDMI, todo lo que vamos a hacer es construir el esqueleto
en este curso, que es nuestro curso para principiantes. Vamos a estar
construyendo el esqueleto, que es básicamente la mayor parte de lo que estás viendo
en todos los sitios web. Entonces te metes en CSS, lo que hace que se vea un poco más agradable. Eso es lo que llamas la piel, y luego tienes
JavaScript, ¿qué es? Es como un corazón bombeando ahí es donde se vuelve
realmente complicado. Sí, pero paso
a paso. Un tiempo. Una vez que hayas dominado
esto, el esqueleto, otro curso, puedes ver cómo vamos
a hacer la piel Entonces si realmente quieres darle corazón a esta cosa y
hacer que esta cosa funcione, que es todo el
procesamiento y la lógica, así que eso es cosas reales de codificación,
ese es el JavaScript. De eso se trata HTML cinco. HTML five está compuesto por
HTML, CSS y JavaScript. Vas a estar aprendiendo
en este curso todo sobre el HTML o la parte HTML,
lo cual es muy divertido. Tienes la oportunidad de crear un pequeño
sitio web básico y
vas a estar tan orgulloso como un dobladillo ruso
en un mercado chino. Bien. No creo que esa
gallina estaría muy orgullosa. Entonces, en la siguiente lección, cubriremos
lo que vamos a hacer en la cabeza y el
cuerpo y todo eso. Así que ve y dobla esto, haz tu pequeño HTML, presiona el botón de tabulación.
Derecha. Obtener esto en. Sólo quiero
mostrarte una
cosita mientras estamos aquí es si ahora empezamos a
jugar con estas cosas, y recuerda cuando te
mostramos antes, no
pasa nada interesante de ese lado. Una vez que empezamos a usar códigos
para hacer cosas interesantes, y otra vez, no te preocupes por ello, pero esto es un
hola, ¿cómo estás? Y ahora he puesto esto
en un código de encabezado, y ahora lo estoy guardando. Entonces estoy usando códigos para mostrar o para decirle al navegador
cómo mostrar eso. Entonces voy, Cruz, nos refrescamos. Y, se ha ido bonito y grande. Por lo que de inmediato le está aplicando algún nivel de formático. Bien, así que eso es
lo que está haciendo HTML. HTML le está diciendo
cómo mostrar el código que hay
aquí. Entonces, ¿tu turno? Sube ahí, has descargado
tu Sublime Text Editor. Solo juega un poco
porque en nuestras próximas lecciones, vamos a echar
un vistazo y empezar a
mirar estas diferentes etiquetas, qué significan, cómo las
usas a medida que comenzamos a construir tu
primer sitio web.
62. Etiquetas HTML: Bienvenida de nuevo. Estamos en
nuestro Sublime Text Editor, y si sigues las instrucciones de
la lección anterior, no solo
habrías
descargado el editor de texto, habrías visto
algunos de los conceptos básicos ya que escribimos código aquí Este es nuestro
código fuente, código fuente HTML, y luego pasamos a nuestro navegador en el otro
lado donde puede ver ese código fuente interpretado y mostrado en
la página del navegador. Entonces, lo que queremos ver ahora son solo algunos
de los conceptos básicos
en torno a las etiquetas
y cómo funciona el etiquetado Ahora bien, si recuerdas,
esto es HTML, la
etiqueta más importante o la primera etiqueta que tienes que tener es
¿qué? Así es. HTML. Simplemente escribes HTML, y luego presionas
tab, el botón tab, e inmediatamente produce
lo que nos referimos
como el esqueleto. Si recuerdas suficiente lección
previa, dijimos que este es nuestro esqueleto. Se compone de estas etiquetas HTML, apertura
HTML y etiqueta cierre
HTML,
y varias otras. Vamos a echar un
pequeño vistazo alrededor de algunos de estos tanques y
explicar brevemente los tanques
que tenemos aquí. Entonces vamos a
ver algunos tanques que te permiten hacer algún formateo básico
solo para que tengas una idea un poco de
cómo funciona esto. Bien, para
empezar, como sabes, tenemos cabeza y
tenemos nuestro cuerpo. Entonces la cabeza, generalmente, todo lo que pones ahí realmente es tu título para tu sitio web, lo que sea, si es que
hay algo. O sea, si vas y
miras en este momento, nuestro sitio web es todo lo que tiene es el título que está
sentado aquí dentro la pestaña es lo que
lo llamamos sitio web punto HTML.
Eso no es muy emocionante. Entonces, si vamos dentro
del título real, verás que podemos nombrar
esa pestaña específica. Entonces como sabes, si
vas en Youtube o Google, instantáneamente
sabes dónde está porque dice lo que sea
Youtube o Google. Ahora cuando guardamos esto y
volvemos a refrescarlo, vemos un
sitio web genial que hice. Así que fíjate que eso es diferente. Ahí está el nombre
HTML real, nuestro sitio web, no HTML, pero este
aquí es el título, que obviamente es mucho más
útil. También es útil. Este título para tus
buscadores. Entonces, cuando empiezan a
buscar cosas en torno a cómo se llama
tu sitio web, esto ayuda cuando se trata de que el buscador sea
más fácil capaz de identificarte. Hay otras cosas
que pueden pasar por debajo de la cabeza. Por lo general, son metadatos
sobre tu sitio. Metadatos significa datos
sobre los datos. Son otras cosas que
pueden explicar tu sitio. No vamos a
mirarlo en este momento. Por el momento, todo lo que
realmente te interesa es el título. Eso es lo único
que tienes que poner dentro de esta primera
parte, que es la cabeza. Eso nos lleva a la siguiente parte, que ahora es nuestro cuerpo. Bien, entonces esto es que
podemos nombrar un sitio o lo que sea y todas las cosas que
tenemos en el sitio, ya
sabes, páginas que tienen mucho contenido y todo
ese tipo de cosas. Entonces iremos primero a través. Si acabamos de decir hola, nos daremos cuenta cuando digamos esto, claro, se ven hermosos. Se va a quedar muy
pequeño. Muy poco interesante Podemos repasar estos
diferentes para que podamos repasar H uno. Pestaña de cabeza. Bien. Entonces ahora qué son estos, estos son H uno, H dos, H tres y etcétera, vamos a echar un vistazo Estos son tipos de encabezado. Entonces básicamente está diciendo, Bien, me gustaría poner
un trozo de texto y quiero que sea
encabezado tipo uno. Entonces podemos teclear. Sí, llamémoslo
encabezado uno para que en realidad
puedas ver un
ejemplo de lo que se ve. Sólo haremos uno más, así que
haremos H dos por ahora. Pestaña Hi tab. Llamemos a éste
ahora cabeza de dos. Ahora vamos a ver que estas son etiquetas
especiales que
han sido formateadas. Y HTML los reconoce. De inmediato, ya ves
lo que ha pasado. encabezado uno es una etiqueta grande, así que estás obteniendo un encabezado
grande y encabezado dos es un
poco más pequeño. Bien, entonces con HTML, va todo el
camino hasta H six, lo cual está bien, vamos
a darle una oportunidad a ese. H six, hit tab, y vamos a teclear H
cabeza de seis y guardarla. Vaya al navegador L,
actualice, vuelva a cargarlo. Y ahí tenemos a un pequeño tipo minky minky
. Bien. Entonces más cosas que
tenemos más allá de cabecera es si vamos aquí y solo
escribimos B, tocamos eso suena
para brillante, apuesto. Bien, entonces es Sahl Bolt. Si queremos hacer
algunos pernos de texto, así que si solo escribimos bola. B B B negrita. Negrita. Sé audaz. Aquí vamos. Bien, entonces volveremos a escribir
algo al lado de él no vamos a poner
esto en ninguna etiqueta. Sólo verás la diferencia, nosotros decimos eso, refrescarla. Podemos ver Bien, así que nota dos cosas que son importantes si tienes ojitos muy
notorios. La primera es,
notarás que esta está en negrita y
esa no en negrita. Así es exactamente
como lo dijimos aquí. Esta se sienta
dentro de las etiquetas, B, y cierra B. Esta no. Pero podrías haber esperado que
esto estuviera en la siguiente línea. Observe aquí, no está en la siguiente línea.
Bien, entiendo. Recuerda, lo mencionamos
en una sesión anterior, luego te
mostraremos cómo poner
las cosas en líneas separadas. Pero esto no es un layout. El hecho de que incluso pudiera
meter otra línea ahí, podría meter algunos
espacios frente a eso, guardarlo, cruzar por aquí. ¿Cómo crees que va a quedar cuando golpee refrescar? Quiero tomar una conjetura. ¿Qué crees
que va a quedar? Acabo de cambiarlo. Lo
moví por otra línea. Lo he movido al otro lado. En realidad, voy a moverlo
justo al otro lado. Ahora bien, en realidad debería
venir directamente después de eso, pero unas filas
más tarde. Bien, ahorra. ¿Qué aspecto va a tener? Exactamente lo mismo.
Nada cambió. Notarás que
nada cambia,
aunque lo guardé y lo refresqué porque este no es
un espacio de formato Es lo que yo lo mencioné. No es un ambiente de whizzywig
. Así que eso no hace absolutamente
ninguna diferencia. Todo el formateo
lo hacen las etiquetas. Las etiquetas son muy importantes. Y de hecho, solo quiero tener
una idea de cuántas, muchas, muchas etiquetas hay, si
presionas el soporte de apertura, inmediatamente
aparecerá todas las etiquetas. Y el error carga y carga y cargas
y cargas de etiquetas. Y así obviamente puedes elegir, y estábamos
mirando la etiqueta en negrita, y puedes ver las
diferentes cabezas de etiquetas. Podría elegir eso
así así. Entonces esa es otra
forma de hacerlo, y elegirá
una etiqueta para ti. Entonces ahí tenemos una cabeza
de cuatro y guarda eso, regresa, echa un vistazo, y
tenemos una cabeza de cuatro. Bien, entonces ojalá hayas
aprendido mucho sobre las etiquetas y el cuerpo y donde pones todo este tipo de
cosas y vas a explorar, pruébalo tú mismo,
revisas muchas de las etiquetas. Te darás cuenta.
Muchos de ellos no harán nada a menos que hagas
algo muy específico. Entonces puedes probar estas etiquetas h1b, visa o cambiar directamente a texto Hacen que tu sitio web
se vea diferente. Ve a jugar, diviértete, mira lo que también te metes. Es como vas
a aprender nuestro
animamos a cometer errores cuando estás haciendo cosas porque, ya sabes, todos
cometemos errores, y está bien. Entonces, a lo mejor estás buscando hacer una etiqueta audaz o algo así
y haces eso y dices:
Bien, esto va a
ser audaz y ahorras, y es muy emocionante porque esa última cosa
va a ser en negrita, y te
pasa a cruzar y echar un vistazo y está en negrita, pero no por las razones que
pensaste porque si
miras con cuidado, no
has cerrado
la etiqueta audaz aquí, y lo que va
a pasar es que todo lo que
viene después, la tienda va a ser
embaldada aunque
creas que está terminada Ahora, por eso
es muy importante ver
que tu etiqueta
está abierta y cerrada, y esa etiqueta ahí no se
ha cerrado. Entonces debería tener
un cierre a delanteros B y cerrar, y eso es correcto. Diviértete, lío,
haz lo tuyo. En definitiva, se
trata de divertirse,
hacer tomas, lo que sea.
Bien, ve a hacerlo.
63. Conclusión y ejercicio: Bien, entonces en esta primera sección, hemos estado aprendiendo sobre los
fundamentos de este entorno. Hemos estado aprendiendo sobre
Sublime Text Editor. Hemos aprendido sobre
los conceptos básicos del HTML, cómo es realmente como
un pequeño esqueleto que te ayuda a
construir tu sitio web. Usamos código fuente que se compone de ¿cómo se llaman
estas cosas? Etiqueta. Eso es.
Se llaman etiquetas, y cada etiqueta tiene una
apertura y un cierre. Puedes ver la diferencia
porque tiene
un poco de slash hacia adelante
para mostrarte el cierre Hemos visto cómo tienes
un abridor HTML y más cercano. Entonces tienes tu
sección de encabezado, que es esta parte, que realmente no
necesitas hacer mucho además de tal vez poner un título, si quieres
indicar tu título. Tienes tu sección corporal que está entre el cuerpo
y el cuerpo cercano. Pero ahora es tu turno
de probar un poco. Recuerdas que siempre guardas cuando
cruzas y miras, es tu turno de intentarlo. Esto es lo que nos
gustaría que hicieras. Lo que me gustaría que hicieras es pongamos esto como H dos es ¿qué? ¿Qué? ¿Qué opinas? Si realmente puedes pensar el
¿Qué debemos elegir? AA. L. Bien, hay una gran. ¿Quién sabe
qué es la etiqueta? ¿Qué crees que hace
la etiqueta LR? Bien, entonces, ¿qué me
gustaría que hicieras? Y Joshua y yo pensamos que esto es una gran
cosita porque cuando veas la etiqueta LR
y la
pruebes, la
entenderás y es bastante genial. No te lo vamos a
decir. Es hora de que aprendas
intentando por ti mismo. Entonces lo que quiero que
hagas es muy sencillo, muy sencillo. Es la etiqueta de IA. Quieres
saber lo que hace. Entonces has oído hablar de Google. Excelente. Lo que nos
gustaría que hicieras, no lo
voy a hacer es
lo que es la etiqueta AI HTML? Bien, quiero que vayas y lo busques en
Google, leas sobre ello, así obtienes un poco de
comprensión porque hay algunas cosas divertidas que puedes
hacer con él que tal vez no entiendas si
solo lo haces de inmediato. Y luego una vez que hayas hecho
eso, pruébalo. Nos gustaría que agregaras una etiqueta de IA a tu
sitio web. Entonces, lo tengo. ¿Qué crees que hace
la etiqueta AI? Ve a Google, haz una pequeña búsqueda en
Google de él, mira lo que
se te ocurre, lee
eso para que estés siendo
activo en tu aprendizaje. Y luego cuando hayas
hecho eso, ve, ah, vuelve y mételo. Prueba una etiqueta de IA. Pero léelo primero para que veas
lo que hace, para que
veas cómo puedes
cambiarlo de una etiqueta Ai sencilla haciendo algo para convertirlo en algo
ligeramente diferente, pero vas
a tener que ir y averiguarlo por ti mismo. Entonces esa es tu tarea para esto primero
te permita jugar un poco, acostumbrarte al ambiente, y poner algún H
uno, algunos H dos,
algunas negritas, si quieres, y jugar un poco de
la etiqueta AR también Ve a divertirte, a
aprender, a cometer errores. Pero así es como
vas a aprender y aquí si tienes alguna duda, si no
entiendes nada, siéntete libre de hacer un comentario en la sección de comentarios y
haremos todo lo posible para ayudarte. Ve y diviértete, haz
el viaje de aprendizaje.
64. Aparecer en la sección: Bien hecho.
Termina esa sección, pero se pone aún mejor
en la siguiente sección. En la siguiente sección,
vamos
a ver cómo hacer que se vea bien. ¿Cómo puedes agregar un fondo
interesante detrás de tu sitio web?
¿Qué pasa con un logotipo? No solo
te vamos a mostrar cómo insertar un logotipo, incluso te
mostraremos
lugares a los que puedes ir para diseñar un logotipo sin costo alguno. Entonces la siguiente sección
es realmente emocionante. Vamos a hacer que este
sitio web luzca fantástico. Vamos a
llevarlo al siguiente nivel. Vamos a hacer que tu sitio web empiece a convertirse en
algo profesional. Entonces, ¿a qué
esperas? Llegar a la siguiente lección. Te estamos
esperando ahí.
65. Párrafos y descansos: Bienvenido a la segunda parte del
curso ICML, ira con Craig. Josh. Entonces, Josh, ¿cuál es el plan para esta parte
del curso? ¿Qué
vamos a estar viendo? Bien, entonces en este,
vamos a estar viendo cómo hacer una oración, un párrafo, y básicamente cómo podemos hacerla agradable y
ordenada y lo que sea, vamos a tomar algunas citas ahora
y solo vamos a ver cómo va
a quedar con etiquetas. Sí, vamos a
explorar algunas etiquetas más, y vamos a la derecha, así que vimos antes
que no puedes
simplemente meter cosas y esperar
que todo vaya a funcionar. Tienes que usar realmente las etiquetas HTML si
quieres que las cosas pasen. Vamos a estar trabajando
en nuestro pequeño bloc de notas, lo hayas llamado.
Acabamos de llamarlo nuestro sitio web. Creo que la idea es que tenemos algunas citas geniales
sobre educación. Nos gustaría crear una
pequeña página web que tenga citas sobre lo
genial que es la educación. ¿Cómo empezamos? ¿Te acuerdas? Estamos en texto Sublime.
¿Qué hacemos para empezar? Le pegamos a la H, porque esta es una página HTML y no le
pegas no tiene Bien. Entonces tienes una ficha en
la palabra f. Sólo arriba. Bueno, solo estaba entusiasmado. HTML. Bien. Y luego le das a tabulador y luego
ahí lo tenemos. Bien. Así que no puedes
ser totalmente vago, solo presiona H HTML, y
tienes lo básico y
estás listo para rockear. Entonces, ¿qué pasa bajo Título? Bien, entonces un Título, como sabemos. Entonces, ¿qué estamos haciendo? ¿Cuál es
este sitio web que va a ser? Esto va a ser
citas sobre Educación. Educación. Cotizaciones.
Parece algo razonable. Bien, entonces ahora
vamos a deambular
hacia el interior del cuerpo Bien, entonces queremos poner
algunas citas aquí. Tenemos algunos. ¿
Te lo puedes creer? Los tenemos ahí solo
esperándonos. Tenemos tres citas
realmente geniales. Aquí está uno agradable de
nuestro amigo Albert. Entonces vamos a usar esa. Ahora bien, si simplemente
lo metemos así,
eso no va a ser bueno. Ya sabes, eso no
va a salir bien. De hecho, podemos salvarla. Por el momento,
parecerá que está bien, pero no
hay formato. Cuando tratamos de meter
otro en, va a
resultar malo. Entonces ahora, si tratamos de meter
otro en ustedes verán aquí. Sí, y eso no
va a funcionar. Tomemos nuestra
segunda cita central, esta de nuestro amigo Nelson. Parece que hemos
puesto la demanda. Sí, queremos uno en cada línea. Quiero decir, es importante
tratar de mantener las cosas vagamente ordenadas aquí porque solo
te muestra lo que está pasando Sabrás algo realmente
tabulado para que pueda ver qué hay entre mi etiqueta de apertura
corporal y el cierre Yo creo, bueno, eso
va a ser genial. Guárdala, atropella, pégale. Y nada malo, feo.
Todo está en una línea. ¿Por qué? Porque el navegador Chrome
está interpretando el HTML Por lo que dice el HTML, todo
esto es solo
una frase larga. Así que tenemos que usar nuestras etiquetas. ¿Y qué estamos haciendo aquí?
Se trata de párrafos. Se trata de un párrafo.
Bien, entonces tenemos esta etiqueta especial llamada la etiqueta
P, que es el párrafo. Le pegaste a P y luego
te dieron una Tab. Sí. Ahora con el párrafo, básicamente todo lo
que hay dentro de esto, como todas las palabras y esas cosas, se
quedarán juntas
en una oración. Así que nada puede entrar
entre palabras aleatorias que son código no pueden aparecer
aleatoriamente en el medio. Entonces todo lo que está
en el párrafo se mantiene unido muy pulcramente. Bien. Entonces vamos a mover esa etiqueta de párrafo de
cierre para que esté del otro lado de nuestra cita de
Albert Einstein, y eso
va a ser todo como uno, queremos volver a hacerlo porque tenemos una
segunda cita ahí, P y le damos a tabulador y
tomamos la etiqueta de cierre, que es el
párrafo P hacia adelante, pegado al Ahora tenemos dos de ellos. Si ahora nos refrescamos, ahí vamos. Eso se ve mucho mejor.
Creo que tuvimos una tercera. Bien podríamos pegar el
tercero al ver que estábamos respecto porque hay
otra cita realmente genial. Aquí hay uno de
Benny. Benny Frank. Tiene una cita muy bonita, cual
disfruto particularmente porque se trata
de decirme y olvido enseñarme
involucrarme y aprendo. Eso es lo que estamos tratando de
hacer en este curso. Queremos involucrarte.
Lo que voy a hacer es que voy a darle a P. Tab, y estoy en una pasta. Y ahí está en el medio, así que ahora tenemos
tres citas geniales. Y si hacemos un refresco,
ahí los tenemos. La educación es lo que
queda después de que uno haya olvidado lo que se ha
aprendido en la escuela, dijo el famoso Albert Einstein Y voy a entregar a Josué, quien ahora va a
decir la segunda cita en voz de Nelson Mandela No voy a
hacerlo. Si la Educación es el arma más perfecta, que puedes usar para
cambiar el mundo. No creo que haya
un muy buen consejo. ¿Qué tiene Benjamín Benjar? Dime, y me olvido. Enséñame, y recuerdo, involúcrame, y
aprendo. ¿Cómo lo hice? Y no creo que
sean muy buenos. Creo que Albert
sería un poco más alemán. Educación ya es lo que
queda después de qué? Uno ha olvidado lo que uno ha
aprendido en tu escuela ya. Bien. Bien, entonces no estamos
haciendo una cosa de actores de voz. Sólo queremos ver
cuáles son las citas. Entonces funcionan de esa manera. Se ve muy limpio por allá. Y si has explorado
más de las etiquetas, ya
sabes, existe
esta etiqueta BR Sí, porque lo que
sería genial, Josh. Porque por el momento,
si solo regresas aquí, como el de Benji, dime y me olvido y me
enseño y recuerdo que todos serían
geniales si esos fueran todos en líneas separadas, tal vez Creo que una BR va a ser
la que hay al final, se
puede ver que hay bastantes. Entonces, ¿no podría decirte qué? ¿Y qué pasa con solo hacerlo?
¿Por qué no hacemos eso? Y acabamos de golpear a Enter entre ellos así,
y eso es bastante genial. Y luego simplemente nos quedamos
ahí y luego se ve así.
¿Qué tal eso? Sí. Bien. Oye,
así es genial. Yo lo he guardado. Vamos a través, y
no pasa nada. ¿Por qué? Bien, entonces si queremos
ponerlos en diferentes líneas, tenemos esta
etiqueta especial llamada BR, así que significa break. Es un salto de línea. Entonces ahora tenemos ahí una
pequeña etiqueta BR. Vamos a poner otro ahí. Entonces al final de estas líneas,
queremos que sea un descanso. Cada vez que pones un BR. Entonces lo que sí sugiero es mostrarle cómo le
gustaría que se viera. Yo hice que pareciera que cada
uno estaba en su propia línea, pero tienes que usar el
BR. Ahí lo tenemos. Ahora tienes un salto
de línea. Dime y me olvido de BR, rompe. Enséñame recuerdo BR y me
involucré cuando aprendí BR, y así ahora se está
formateando como queríamos. Entonces es un simple. Se trata de usar las etiquetas. Aquí hemos mirado dos etiquetas. Sí. Tenemos la BR, la P, y obviamente,
tenemos un esqueleto. Sí, aquí, lo tenemos todo
sentado en el esqueleto. Ahora hemos logrado
crear una
cosita agradable de citas. Incluso sin los espacios, obviamente
podemos poner estos BR en estos otros porque si tuvieras que ver una cotización
normalmente no la ves en una línea, la
verías así Especialmente W quieres
que tus pequeñas citas se vean más bonitas, Romperlo. Romperlo. También qué aviso
hemos usado realmente, aunque se trata de un párrafo, como dijo antes Joshua, está la parte inicial del
párrafo y la parte de cierre. Se pueden hacer que las BRs rompan
etiquetas en el medio, por lo que eso se aplicará
a ese párrafo Entonces aquí
lo tenemos. Un párrafo. Si realmente quieres
dejarlo claro, puedes hacerlo. Pero nuevamente, esto no le hará
nada al formateo. Simplemente podría ayudar a tu
legibilidad de tu código. Es importante tratar de
mantener su código legible, de uso y denso. Si vas a
tener un párrafo, ponlo para que sea fácil de ver, hazlo para que te sea legible. No va a impactar, como
saben, no va impactar al pop final, pero al menos se puede
ver lo que está pasando. Sí, exactamente. Si tuviéramos que ir tu arma más poderosa y tuviéramos que poner una BR al azar, BR y eso lo hacemos. Verás, realmente no sabemos cómo va a resultar
esto. Ponemos otra BR aquí. Y ahora cuando guardemos esto, realmente no sabemos
que va a salir, así que tendríamos que
refrescar esto. Ahora solo puedes ver entonces, en lugar de hacer eso, como haces tus
espacios bajos, vas aquí. Ahora podemos ver
aquí mismo cómo
va a quedar nuestra frase, va a ser
algo así. Obviamente, todos van
a estar enganchados al borde. Ahora cuando esté
buscando mi código, estaré como, Bien, aquí
es donde
pongo mi B, ahí es
donde pongo mi ser. Entonces es una buena idea. Entonces
lo que estamos diciendo es que la etiqueta que estás usando aquí
va a impactar
cómo finalmente aparece. Pero trata de exponerlo
como quieres que aparezca, y luego podrás ver que
tienes donde están tus etiquetas. Entonces podemos ver cómo las etiquetas de
párrafo, podemos ver cómo dos etiquetas de ruptura. Como verás,
realmente no importa si pones la etiqueta del freno al final o
al principio, es solo una etiqueta. Cuando le pega,
va a hacer un descanso ahí. Entonces no es demasiado importante. Verás en esa
primera,
tenemos las etiquetas de freno con ese
aspecto, el inicio de la línea no
hace diferencia. Significa antes de la palabra que, y Nelson,
va a haber un descanso, y eso va a
estar en la siguiente línea. Oh, hay algunos conceptos básicos en torno a la creación de un pequeño sitio. Así que ahora hemos configurado
nuestro pequeño y divertido sitio web con algunas citas en él. Demasiado fácil. ¿Crees que podrían
averiguar cómo poner una
rúbrica ahí? Sí, eso creo. ¿Crees que sí? Creo que ustedes, C. Yo creo que ustedes.
¿Y una rúbrica? Solo queremos un encabezamiento
en la parte superior aquí allá dice increíbles citas de educación. ¿Cómo vamos a
hacer eso? Vamos, piénsalo un poco. Nos
das un poco de pensamiento. No te lo vamos a
decir. Si no recuerdas, vuelve a esa sección
anterior. Queremos poner una
rúbrica aquí. ¿Cómo lo harías? Bien,
ve a por ello. Que se diviertan un poco.
66. Estilos y listas: La educación es lo que
queda después de que uno haya olvidado lo que
se ha aprendido en la escuela. Sí. ¿Sí, Joshua? Sí. Sí. Sí. Sí. Bien, bien. Bien,
entonces, ¿qué hemos hecho hasta ahora Hemos estado
armando un sitio
poco interesante de fascat con algunas citas de educación, pero creo que podemos
hacer esta sara Sí, definitivamente
se puede hacer este spa. ¿Qué crees que estamos
necesitando aquí? Entonces formateando. Sí, creo que tenemos que
cambiarlo un poco solo para que se vean como
citas, no solo como. Ahí es un poco aburrido. Entonces tal vez consideremos qué
tipo de esta parte aquí,
la cita real. Si ponemos eso en cursiva, ¿
podríamos hacerlo? Sí. Bien, entonces consigamos
las citas en cursiva Bien, entonces para hacer cursiva, todo lo que vamos a hacer es
asegurarnos de que pones un espacio, luego ponemos nuestro yo
y luego lo tabulamos Y ya verás que tenemos I. Yo para I. Tal. Sí. Entonces. Eso es bastante fácil.
I en cursiva. Bien, así que pongamos el,
no todo el asunto. Solo pongamos las
citas en cursiva. Y creo que deberíamos
ver cómo se ve eso. Sí, así. Sí,
eso es muy bueno. Bueno, ¿qué hay de mí? Yo soy Nelson y Mandla. También quiero tener las
cursivas para mi abrigo. Quiero ver cómo
cambiaste el mundo. Bien, sí. Sí, pero ¿y yo qué? Yo soy Benjamín Franklin. También quiero cursiva
para mi cuarto de galón. Sí, así podemos poner decir. Sí, vamos, hombre,
sigue con eso. Todos ellos. Sí, todos
queremos tener citas en cursiva Um, bien. Vamos, X. O Benjamín. O nada. Ahora podemos O para éste, no
tenemos ningún descanso, así podemos mirar lo que
queda después. ¿Qué queda después? Poner un descanso. Ya, eso es bueno. A veces
me gusta tener un descanso. Sí, entonces pon pon otro
descanso ahí, yate. Y Muy guapa. Dices esto. Bien, vamos a echar un vistazo. Bien, entonces se ve un poco mejor. Oh, Benjamín Franklin, su
nombre está en cursiva. Ooh Bien, pon esto demasiado
temprano, demasiado tarde. que veas lo
importante que es también tratar de ver a dónde van
tus etiquetas. Y obviamente,
no es tan difícil. Rápidamente se ve, derecho. Entonces ahora
solo tenemos las citas. Pongamos el
nombre de Albert Einstein en la siguiente línea. Verás, de
momento, su nombre está en la misma línea. Entonces,
¿qué necesitamos ahí? Necesitamos otra BR. Bien, así que hit entra
pasa a la siguiente línea, para que veas
ahí es donde va a ir y luego poner el BR. Entonces ahora deberíamos estar luciendo
bastante calientes y geniales. Aquí vamos. Ahí vamos. Bien. Hablemos en fresco. Pero ahora tengo otra idea. ¿No quieres ideas?
Mm hmm. Tú lo haces. O suenas como si estuvieras absolutamente fascinado por mi otra idea Tengo mi idea. Está bien. No, tengo dos buenas ideas. El primero es, pongamos
algunas cosas en negrita, también. Podemos ser los nombres y las negritas. Vamos con los nombres
porque puede hacerlos
destacar porque todavía se están
perdiendo un poco ahí. Bien. Así que vamos a usar
cursiva y negrita y se rompe y se puede ver como todos
estos empiezan a acumularse. Entonces tenemos esta
pequeña sección. Vamos B es la etiqueta B. Algunas de las etiquetas
son realmente obvias. I para cursiva, B para negrita. Nuevamente, abriendo negrita,
donde quieres que vaya, la etiqueta final en negrita. Pero todo este tiempo,
fíjate que P, la etiqueta de párrafo es lo que encapsula
todo el párrafo Nosotros lo dijimos al inicio que el párrafo es toda
la pieza. Dentro de él, puedes tener descansos, puedes tener negrita,
cursiva y muchos otros Ahora vamos a poner en negrita cada uno
de los nombres de nuestros señores. Bien, entonces señores,
prepárense para ser audaces. Nosotros vamos aquí, lo salvamos. Nos refrescamos, y ahora te das
cuenta. Sí. Esa es la mirada. Dan dulce, dulce, dulce, mascota. Sí, así podemos negrita
cuando queramos. Sí. A tope. Buena idea. Sí, pero, B. B. Creo que podríamos
superar uno mejor que esto ¿Diablos es eso? ¿Te diré qué? Tengo algunas
citas geniales. Y se va. Tengo algo genial,
tenemos renuncias rien
up se cierra Um, películas Quiero decir, si te lo preguntara,
Joshua, ya sabes,
si te preguntara,
¿cuál dirías que es tu mejor película que trata sobre el aprendizaje de la educación
y ese tipo de cosas? Las mejores películas. Sí, bueno, sólo dame una. Estás bien. Uh,
tantos, tantos. Tantos, muchos.
Hay bastantes. Yo gracioso no he visto la Libertad
como la conozco, bastante buena. Bien, esa es
una genial. Entonces, digamos que lo que queremos hacer
ahora es que queremos, como, poner una lista de películas
educativas. Entonces vamos a decir,
lo que tal vez diga Ah top como sea que
lo deletree películas educativas. Derecha. Ahora, podríamos hacer todo lo atrevido
y todo, pero eso no va a lo vamos a saltarlo como una H dos. No tenemos demasiado grandes, no demasiado
miramos los encabezados antes, H dos es un tipo de encabezado. Entonces aquí vamos a usar
un encabezado de segundo nivel, así que no es demasiado
dramáticamente bolsa. Echemos un vistazo a cómo
se ve eso ahí. Bien, eso no está
tan mal. Quiero decir, lo que podríamos hacer es
demostrar que realmente
recordamos el hecho de
que la línea 19 no tenga nada en ella no significa que la línea 19 no
tenga nada en ella. Podríamos poner un descanso
ahí si quisiéramos, lo que solo
nos daría un poco de espacio entre,
ya sabes, ahí vamos. Entonces eso es
bajar uno. Bien, entonces, ¿
cuál era esa que
estabas diciendo? Escritores de Libertad. Escritores de Libertad. Entonces ahora, si lo pongo así,
¿qué va a pasar? Probablemente no va a
salir tan bien, ¿verdad? No. Bien, está ahí,
pero eso no es bueno. que queremos, como, Bueno, pensemos en
algunas otras películas, y vamos a conseguir
tal vez nuestras tres mejores. ¿Qué tal nuestros
tres primeros? Los tres primeros. Ustedes ahí afuera,
están vigilando. ¿Cuáles son tus
tres mejores películas educativas? ¿Qué es eso, señor? Lo siento, señor. ¿Qué Amor? Oh, lo siento, lo sé. Aquí diciendo: Oh, Oh,
tous señor con amor. Sí, sí, sí,
esa es una gran. Bien, entonces um tous señor ¿Con amor? Sí, Tse con Amor. Bien, hermosa. Francés. En realidad no es una película
francesa. Bien, M Mo Craven. ¿Quieres
saber cuál es el mío? Mhm Esta es la película
que Rock the World. Esta es la película. Además de películas educativas,
esta es súper genial. Ir D Sí. Ir da. ¿Lo reconoces? La famosa línea Carpe Dame de la película Dead Poets Society. Oh, sí. Esa fue una famosa película de
Robin Williams. Sociedad de Poetas Muertos. Derecha. Fantástico. Bien,
entonces esos son un horror. No es un horror.
Ahí es donde está como esta famosa escena
y está viendo esta fotografía en la
pared cuando sabes, es de hace como 200 años, 180 y todos los niños
están muertos, obviamente. Esto es y a medida que se inclinan
cerca se inclinan cerca ya que
todos se inclinan cerca, él va. Viga. Y se dan la vuelta y
miran al maestro y
piensan que está loco, pero qué
significa Copy Dame, Aprovecha el momento Dice señores, esa gente
está empujando las margaritas. Vías que la vida por delante de ti
puede marcar la diferencia. Bien, estamos siendo
desviados, sí. Pero aquí vamos.
Bien. Son feas. Joshua, ¿qué está
pasando? ¿Qué está pasando? Obviamente, no hemos
puesto ninguna etiqueta para que podamos usar
frenos y esas cosas, pero en realidad los queremos como pequeñas viñetas, ¿no? Sí. Bien. Entonces te enseñé honestamente a
buscar en esta lista. ¿Qué lista? ¿Qué son los Is? Sí. ¿Tú hiciste eso? Dijiste
ve y mira lo que es LI. Es una lista. ¿Lo hiciste? Espero que lo hayas hecho. Bien. Entonces aquí van a usar la etiqueta LI? Sí. Entonces, ¿de qué se trata esto, Josh? ¿Qué
es lo que esperábamos que va a pasar? Oh sobre uno mismo, es solo
básicamente un elemento de lista. Entonces si tienes algo en
yo, va a ser como, Bien, ese es un elemento de
cierto tipo de lista. Así que tenemos todos esos. Bien, entonces tenemos
tres en esta lista, cruzamos y echamos un
vistazo. Bien, creo que tienen una
pequeña lista de viñetas. Sí. Entonces sabemos que todos
son parte de
algún tipo de lista. No es una lista específica. Por eso ves
ahora solo tenemos
solo el s. Lo que realmente querías
hacer es poner O, que significa lista ordenada. Lista desordenada. Sí, lo haremos. Lo que
realmente queríamos hacer es ponernos a Nosotros, lo que significa lista desordenada, que es nuestra viñeta Y esto va a esto significa que todas estas palabras de aquí están destinadas
a estar juntas. Todos estos son parte de
nuestra lista desordenada. Es como con nuestro
párrafo abriendo y cerrando para un párrafo que dice que ese es el comienzo
y ese es
el N. Lo mismo te aplica
con una lista desordenada, UL Ahí está el inicio y ahí está
el N. Significa que todos estos pertenecen a
esa lista desordenada Hay dos partes
en esto. Ally es cada elemento de la lista. UL dice que es una lista desordenada. Ve y toma unas cuadritas, ya
verás que sabe
que todas estas cuelgan juntas. Solo hay sangría
correctamente porque
sabe que esta es una lista.
Pero ¿sabes qué? Para mí, algunas de esas, esas son las tres mejores películas educativas, pero no son solo puntos. De hecho
quiero decir, en realidad, en mi opinión, este es mi no sé cuál
es tu favorito, pero realmente no
importa porque
voy a ser yo el
que escriba ahora, y creo que es lo mejor, pero no quiero que solo
aparezca en la parte superior. Quiero que sea uno, dos, tres. Entonces, ¿cuál es el problema con eso? Bien, entonces U lista desordenada. Si solo hacemos una lista Oh, ordenada, ahora no. Tan simple como eso. Ahora va
a ser una lista ordenada, así que así que hemos cambiado UL a OL, desordenada a lista ordenada, y y pot society, número uno, la roca ahí tenemos en nuestras tres
mejores películas educativas Carpve consiguió un buen oyente. No tengo que
empujarla demasiado lista. Eso se ve bastante
genial. Sí, así se puede ver que es muy pequeña
comparada con esa fuente. Entonces, obviamente, si quieres, podríamos cambiar todas las
tallas. Te dejaré hacer eso. Puedes mirar a través de todos
los encabezados, los H tres, puedes intentar
hacerlo audaz solo para que sea agradable y Exactamente. Se. Bien, así que hemos hecho algunas cosas
realmente interesantes al mirar nuestra codificación. Nos hemos
involucrado bastante y desarrollado ahora. Puedes ver que estamos usando
múltiples tipos de etiquetas, y te toca
a ti tener un pequeño intento. Por qué y ver si puedes
configurar un pequeño sitio divertido o una pequeña página como esa con
algo que sea
importante para ti, tal vez citas de educación o citas recetas o citas de películas
o citas de vida, lo que quieras, sobre para ti.
67. Tablas: el secreto detrás de la disposición HTML: Correcto, entonces estás
rockeando como una coda HTML. ¿Qué opinas?
¿Ya son como ninjas ? Todavía no, pero. A ellos les gustan los micro ninjas. Como cerca de ninjas. Pero ahora, estoy viendo esto. Se ve genial. Se ve genial. Pero,
¿qué opinas, Josh? Oh, necesita estilo.
Necesita más. Sí, ¿sabes qué
sería genial? Tenemos esto como grande enorme. Parece que aquí
hay un oso polar perdido
en una tormenta de nieve Hay todo un oso
polar perdido en lo de
la tormenta de nieve que
va por aquí Sería más genial, a lo mejor si
estos fueran así, luego uno al
lado, el siguiente. Todos ustedes están en una línea. Sí, así que las pequeñas citas
en un bloque así. Pero ahora, si volvemos aquí, tiene sentido, tenemos
párrafos, tenemos la P y
la P. Pero quiero decir, ¿cómo lo vamos a conseguir para
que vaya uno al lado del otro? Necesitamos algo más, algo que nos
permita poner los tres uno al lado del otro. Estamos buscando mesas. Mesas, bebé. Otra llamada de lista sobre la mesa. Sí. Mesas. ¿Deberíamos hacer mesas? Sí. Vamos a darle la vuelta a las tornas. Haremos mesas. Entonces,
¿cómo hacemos las mesas? Mesas es muy
sencillo. Muy sencillo. Al igual que hicimos con
las listas, como ustedes saben, tenemos nuestro OL, después hemos puesto todas nuestras listas y luego
hacemos otro OL con mesas, bastante
hacemos lo mismo. Es como una cosa compuesta. Lista ordenada, tenía lista de pedidos
y Ais múltiples partes a ella. Esto va a contar todo lo
que hay en las mesas. Entonces tenemos la etiqueta de apertura y las mesas terminan ahí mismo. Entonces lo puse ahí.
Nuevamente, lo que me parece, como dije antes,
es bastante útil si solo
usas un poco de tabulación solo para que veas
exactamente lo que está pasando Te ayudará a
realizar un seguimiento porque de lo contrario, lo que puede suceder a medida que tu HTML
se hace cada vez más grande, puedes
empezar a
confundirte un poco en cuanto a lo que está pasando. Usa un poco de tabulación y ya
puedes ver, puedo ver con bastante claridad,
eso está todo dentro de mi mesa Derecha. ¿Qué necesitamos a continuación? Es un elemento de mesa. Pero
eso no está terminado, ¿verdad? No. Tenemos un TR
que es tratar tarántula Nosotros tenemos TRs y tú tienes TD. TR es tu fila de tabla, tienes un montón de
filas y luego tienes tus filas de tabla son así que solo necesitamos
esencialmente una tabla de filas, estoy asumiendo porque eso
sería en una columna. Estos van a estar todos en la sentada de la segunda columna. Es una tabla de una fila, pero con múltiples
columnas en esa tabla. Sí. Ponemos un TR
al principio y luego tomamos esto justo aquí y vamos a poner
esto al final. Esto es porque
sólo tenemos una fila, por
eso estamos poniendo
al final. Así que aquí atrás, ponemos
eso ahí mismo. Entonces, en nuestra fila, tenemos una mesa. De nuevo, lo que
vamos a hacer rápido, sólo
voy a
hacer un poco de sangría aquí para que
podamos hacer un seguimiento Entonces, esencialmente, lo que
tenemos es una mesa, y esta tabla tiene una fila. Ahora, podrías poner más filas y veremos una etapa posterior, pero sería tan simple
como poner otro TR y
tendrías otra fila. Pero por el momento no necesitamos
eso. Sólo vamos a
hacer una tabla de una fila. Sí. Entonces ahora para hacerlo cada uno de esos es
una columna en la tabla. Sí. Entonces tenemos nuestro TD. TD es todos nuestros datos dentro de la derecha. Bien, entonces los TD básicamente representan
los datos de tu tabla. Entonces cada elemento que va
a estar en la fila es un TD. Entonces tenemos tres
citas. Entonces cada uno de estos. El primero de
Albert es un TD y verás que tiene un TD de
apertura y un TD de cierre. Siguiente, TD. Y así fue Nelson
Mandela Education. Hombre usado. Hombre, estoy apostando. Quiero decir que la educación
es Benjamin Franklin, y él quiere su
propio TD, también. Ahí tienes un TR,
y eso no está bien. Oh, eso no está bien
para mí. Yo soy Benji ¿Por qué no me dan TD? Sí, vamos, voy a
necesitar ir a TD. Benji va a conseguir su propio TD. Ahí va. Y
ahí mismo lo conseguimos. Todo el mundo tiene un
TD. Refrescaré a ese bebé Rocking, Rocking Parece que estamos cubriendo mucha más pantalla y
no estamos desperdiciando tanto. Bien, entonces las tablas son un
elemento secreto que se utilizan, no como cabría esperar. Normalmente esperas que
Arth pueda tener mesas, vas a ver líneas
y puedes hacerlo Se pueden crear
tablas que tengan todos los pequeños
contornos, etcétera Pero las tablas en realidad se usan
más a menudo como elemento de diseño
porque te permiten poner
las cosas
una al lado de la otra. Como veremos nuestra siguiente
lección, tal vez, por ejemplo, sería genial tener
algo justo por encima un encabezado o una imagen por
encima de esos o lo que sea. Entonces las mesas son el secreto. Te contamos esto
entre ustedes y nosotros. Mesas. Dables. Mesas. Sí, mesas. Todos son lo secreto
del estilo que no mucha gente conoce. Entonces así es como puede arreglar, señor. Entonces, ¿qué opinas, Josh? Se ve bien.
No estamos desperdiciando tanto espacio. Obviamente,
tenemos más opciones con mesas. Puedes
hacer esta investigación. Podemos poner en columnas que básicamente espacian tus mesas. Pero por ahora, esto
se ve bien. Obviamente, eso se está poniendo más
meollo arenoso con nuestras mesas Entonces creo que nuestras mesas
se ven geniales. ve bastante bien. Las tablas son muy importante
cuando estás haciendo sitios web. Sí. Entonces en nuestra siguiente lección, porque vas a querer
revisar esta siguiente lección, tenemos que tomar la mesa, podemos extenderla un poco más, vamos a agregar otra fila. Entonces vamos a poner
algo realmente especial, pero solo
calificaste para hacerlo si sales y lo intentas
por ti mismo. Vamos. Salga y crea para
ti mismo una mesita
, juega con ella,
mira cómo funciona. Muy sencillo. Debe tener una etiqueta de mesa de apertura, etiqueta de mesa de
cierre. Entonces, ¿cuántas filas quieres? Bueno, comenzando con una
fila, etiqueta de apertura, cierre, y luego para cada elemento en ella, se tiene un TD de apertura y
un cierre para datos de tabla. Tan simple como eso. Salga
y diviértase un poco.
68. Agregar imagen: Bienvenido de nuevo. Nuestro pequeño sitio web está llegando,
luciendo súper genial. Pero podemos hacer que se vea mejor. Sí, podemos. Desafío.
Sí. ¿Crees? Sí, creo que podemos hacer que se
vea mejor. ¿Te convenciste? Sí, sólo para agregar
eso. Ese Choi V. ¿Eso
es lo que vas a
decir? Oh. Bien, lo que sea. Pero quiero empezar
como una cosita. Tenemos estas
pequeñas cosas geniales y columnas para ver cómo esas
quizás serían un poco más agradables en el centro Ahora bien, centrar es algo
bastante útil solo para hacer por cualquier razón, si quieres centrar
un trozo de texto o lo que sea vamos a centrar cosas que están
en las columnas Recuerda, tenemos nuestra fila, y en esa fila,
tenemos elementos de datos, que esencialmente nuestras columnas. Aquí está el primero, y
ese es un párrafo que se compone entre la apertura
y el cierre P. Ahora bien, lo que podemos hacer es
usar la etiqueta central. Es realmente bastante simple. Adivina qué es. Simplemente
escribe la palabra centro, y es la etiqueta central,
y luego puedes simplemente
copiarla y ponerla entre nuestras ps de apertura y
cierre así que obviamente, lo que tenemos que hacer
es que tenemos
que volver a hacer eso para cada uno de ellos. Vamos a meter
la etiqueta central. Entonces nuevamente, solo puedes hacer centro y hacerlo así queremos que cada uno
de ellos esté centrado. Entonces hay un pequeño atajo
genial que
podemos ver más tarde que puede ayudarte a hacer
esto un poco más fácil. Por el momento solo
mantenemos una cosa a la vez, así que etiqueta central,
abriendo y cerrando. Bien, así que echemos
un vistazo cruzando. Aquí vamos. ¿Qué debería pasar? Tres, dos, uno. Bang. Bien, tú
una especie de buena idea. Ahora se han centrado
en cada una de esas columnas. Cierto, así que no es
fan no prohibir no está mal. Pero sabes que le da
mucho más ordenado. Oh, esto es hermoso, pero ¿sabes qué lo
haría más hermoso? De una imagen. Oh, si, si, si,
como este Youtube. Sabes, esto es genial.
¿Qué opinas? Sí. Tienes tu texto, luego arriba de él,
tenemos nuestras imágenes. Sí, entonces tienes el
texto debajo de una imagen. Entonces, si tuviéramos un diseño así, teníamos nuestro texto o nuestra imagen. Entonces tal vez sea un poco
aburrido por el momento. Necesitamos a Sire V. ¿Quién es este? El contratante V. ¿De quién es esto? El hoi V. ¿Es esa
la palabra correcta? Mi no lo sé. Lo que sea. Sabes,
solo necesito que se vea así. ¿Cuál es la
palabra que busco? ¿Qué somos? Necesitamos esa, como, imagen es aburrida.
Sólo son los techs. Entonces lo que sería genial, Josh, es que si tuviéramos, como, una foto de Albert Ya Ermste
Nelson Nelson Mandela Benjamín, señores, Franklin.
Por encima de cada uno de estos. Entonces creo que podemos
hacer esa roca. Entonces, ¿qué vamos a hacer? Así que vamos
a tener que encontrar esas imágenes. Vamos a tener que
encontrar esas imágenes. Bien, entonces eso es
lo primero que vamos a hacer. Así que vayamos y diríjamos
a nuestro amigo Google. Vamos a
ir específicamente a la búsqueda de imágenes de Google porque ese es el lugar
más fácil para ir
y buscar imágenes. Y quien fue nuestro primer compañero que teníamos por allá, Albert. Albert Einstein. Entonces, si queremos obtener
una imagen de Albert, lo que puedes hacer es
un pequeño consejo aquí. En lugar de obtener una enorme imagen
gigantesca que
va a tardar mucho
en cargarse en tu sitio y causar todo tipo de problemas, puedes controlar
múltiples elementos aquí Entonces, cuando hayas hecho clic en herramientas, verás un pequeño menú desplegable
y te dará algunas opciones Y puedes elegir cualquier
talla grande, mediana. Incluso puedes elegir
un tamaño de icono, que obviamente va
a ser agradable y pequeño. Así que vamos a por eso. Todo bien. A ver, hay una pequeña
foto interesante de Elbert Te gusta con
estas pequeñas lenguas sobresalen aquí, Elbert Derecha. Entonces, cuando encontraste
una imagen que te guste, lo que necesitas hacer
es obtener la dirección de la imagen donde se almacena
esta imagen, ¿bien? Entonces haces clic derecho y
eliges Copiar tarro de imagen. Sí. Dirección de imagen, sí. Sí. Dirección de imagen. Sí,
así que vamos a necesitar esa dirección porque
ahí es donde está alojada la imagen. Tu imagen tiene que ser alojada en alguna parte. Es muy importante. Entonces, o necesitas subir tu imagen a un lugar
donde puedas alojarla. Entonces, por ejemplo, podrías
alojarlo en Google Drive, Dropbox, donde quieras si estás pagando
por algún hosting. Pero en última instancia,
tiene que ser señalarlo. Ahora, podrías alojarlo
localmente en tu propio sitio web, pero luego solo
funcionaría en tu computadora. Pero una vez que has
publicado en la web, gente no puede acceder a
tu disco duro local. Por lo que necesita ser alojado en línea. Entonces de todos modos, solo estamos
usando estos, solo estamos apuntando a esta imagen que está almacenada en el sitio web de alguien. Y vamos a Nipacrosia. Ahora bien, lo que tenemos que
hacer, ¿Josué es qué? Necesitamos más filas. Sí, creo que
metemos otra fila, así que vamos a
poner una fila por encima de ella. ¿Cuántas filas
vamos en este momento? Tenemos una fila. A, tenemos una fila. Se puede ver empezando por ahí. Entonces vamos a
poner en otro. TR. Entonces estamos listos para poner en otra fila ahí,
hacer algunas pequeñas especificaciones. Entonces, ¿ahora qué viene después? Tenemos que poner TDs. Bien, entonces vamos
a poner en nuestros TDs, que van a ser nuestros
datos, así que esencialmente podemos terminar con tres de estos Entonces vamos a tener uno de
estos para eso va a ocurrir por encima
de cada una de las filas de abajo, habrá una para cada una. Bien, nos instalamos bien. Ahora nos quedamos en blanco
si lo miramos en esta etapa y guardamos eso
va a quedar increíble, nada
va a gustarle. Podrías haber notado que simplemente saltó un poco porque realidad
es una
fila en blanco sentada ahí, pero nada en ella. Bien, ¿qué sigue? ¿Cómo insertamos una imagen?
Eso es lo que quiero. Ahora con la imagen, aquí
es donde llegamos a lo que la mayoría de los sitios web
tienen son imágenes, y en realidad es bastante fácil. Si solo tecleamos IMG
y le pulsas Tab, esto va a autocompletar Siempre hay que darle a la pestaña. Pt. Como puedes ver
si hacemos esto, puedes ver la
sugerencia IMG le pegó. Sí, va a tener
eso. Más fácil de hacer, solo ve IMG, haz clic en pestaña y
verás que Auto cae, SRC es igual, y
tiene este Esperando algo.
Ahora, SRC es la fuente Eso quiere saber dónde
está almacenada la imagen. Eso es lo que estábamos
diciendo hace un momento. Hay que informarle en cuanto a
dónde se almacena la imagen. Tiene que guardarse en alguna parte. Ahora obviamente, va
a ser una página web en línea. La imagen tiene que
ser almacenada en línea. Entonces por el momento,
los que estamos agarrando están almacenados
en el sitio de alguien, básicamente
va
a poner eso ahí Sí. Entonces ahora si pegamos, este es el enlace a la imagen. Entonces ese es un enlace al sitio web de
alguien donde está esa imagen,
y ahí vamos. Ahí está Albert lengua
fuera. Sólo un pequeño punto. Ten mucho cuidado es que la fuente
tiene que apuntar a una imagen, no a otra
página HTML o algo así. Observe al final, esto
necesita ser una imagen, un JPEG, PNG, algún tipo de archivo de imagen porque si no lo haces bien,
no vas a obtener la imagen. Sí. De hecho, si cruzamos con
quién tenemos a continuación, Nelson. Vamos a buscar a Nelson.
¿Nelson? Pues tú. Bien, así que seguimos
buscando los tamaños de los iconos. ¿Cuál
queremos? Esa es una. Éste. Se puede utilizar.
Yo puedo usar esa. Ahora, de nuevo, ahora mira de cerca, fomente el ojo estoy
haciendo un click derecho. Ahora bien, lo que estamos haciendo aquí es que no estoy copiando
una dirección de Link. Eso es diferente. Estoy copiando la dirección de la imagen
porque una dirección de Link, déjame mostrarte
si copié eso y solo sube y
pegarlo para que
veas cómo se ve. Es una cosa larga que
se ve así. No hay punto PNG, no hay punto JPEG. Bien, no
vamos a hacer eso. Estamos copiando una dirección de imagen. En realidad quiero
la dirección exacta donde se
nota la imagen. Ahí está. Verás, termina
con un JPEG. Entonces eso es lo que queremos
la dirección de la imagen. Entonces, Josh, ¿qué
vamos a hacer ahora? Pegar. Entonces G tabot. Y pegar. Bien, entonces ese es nuestro segundo , y luego lo
conseguimos uno más. Tenemos que encontrar al viejo Benji. Sí. Ben hombre? ¿Dónde estás? Oh, vamos a ver. Este
se ve bien. Como verás, fue en un día
lateral porque tenemos trozas en un tamaño específico de estafa Todos ellos serán 256 por 256. Ya te darás cuenta,
guarda esta imagen guardada. Copia imagen vestido.
Oh. Eso lo guardamos. Lo metemos aquí. Mételo adentro. Stick
Benji Benji ir Ahí vas. Benji está adentro Ahora, te das cuenta cuando refresquemos nuestra pestaña verás que todas son del mismo tamaño como si no las
tuviéramos así, no
serían del mismo tamaño. Sí. Quiero decir, eso puede hacer
que se vea un poco feo. Digamos,
elegimos específicamente tamaños de iconos
que lo hicieron agradable. Déjame mostrarte si
tengo que ir a decir grande. Aquí es cuando vamos a encontrar alguna otra talla para el
buen viejo Benji, y ahí está Benji Ahora ya ves que es camino de regreso. Eso es 2744 por 189. Ahora bien, en realidad no
querría una imagen tan grande. Realmente va a hacer cosas que sean un
poco más pequeñas. Pero además del tamaño, lo que va a pasar
es si tuviera
que tomar esa dirección de imagen y ponerla y
sustituyamos lo
que tenemos aquí para Benji por la nueva Vamos a reemplazar
ese poquito, sacarlo y
pegar el nuevo en. Echa un vistazo a lo que sucede. ¿Qué tan hermoso va a ser
esto? Qué bonito o
va a ser o no. Bien, a ver lo que ha pasado. Esa es realmente grande. Está tardando mucho
tiempo incluso en cargarse. No se ve bien. No es del mismo tamaño.
Vamos, Z eso. Antes de hacer eso, tenemos otra opción. Y
otra opción. Entonces quieres esta imagen, pero Se de vuelta. Es bonito
y blanco y negro. Pero es posible que no siempre obtengas las imágenes exactamente
del mismo tamaño. Sí. Así que solo vamos con Así que en realidad puedes especificar
el ancho de tu imagen. Entonces va a escalar tu
imagen a un cierto ancho. Entonces decimos ancho igual, luego invertí mas, y, y diremos 266. Creo que eso es lo que fueron
los otros. Así que vamos a echarle un vistazo. A
Benji, trabaja con nosotros Benji Trabaja con nosotros Benji.
Trabaja con nosotros Benji Sigue siendo muy grande para cargar. Bien, entonces él es el ancho correcto w, pero obviamente, la altura
sería diferente. Sí, porque teníamos una plaza. Si tuviéramos que establecer también
la altura, sería muy cuadrado. Un banjie largo. Sí. Pero puedes ver que tiene las mismas
dimensiones que Ok, así que eso se ve bastante genial. Para que puedas alterar y jugar con
los elementos de ancho de las cosas. Entonces puedes agregarlo al final y alterar el ancho de
cualquiera de estos manualmente. Y obviamente, hay que jugar con la
altura, etcétera. Así que idealmente, si estás tratando de que
todo se vea igual, vas a tener que tratar de encontrar
las imágenes iguales. O obviamente puedes descargar las imágenes y
recortarlas tú mismo. Oh, ahí
tenemos tres de ellos. Tenemos esto que no se
ve muy mal. Sí. Sí, tenemos a Albert
y Nelson y Benjamin. Entonces, lo que hemos hecho
sin que la gente lo sepa. Tenemos dos filas aquí sentadas con tres columnas controlando esto, y tenemos imágenes. Creo que eso se
ve bastante bien. Sí. Es decir, una historia empieza
a parecerse a un sitio web. Sí, creo que
en realidad parece que tenemos una cita.
¿Qué pasa con nuestra gente? Sé lo que necesitamos.
Sólo una última cosa. Solo necesitamos un
encabezado en la parte superior. Sí. ¿Qué dices? Yo digo. Dices. ¡Oh! Entonces, ¿qué usaríamos? Vamos a usar el H uno. H una cabecera. Podemos decir algo
sobre las citas. Cotizaciones de educación. Sí. Citas de educación
que rocían mi Mundo. Bien. Eso lo guardamos. Así que lo guardamos. Y aquí vamos. Educación cruzan
a Rock my world. Ahora, de nuevo, el Benji es un
poco lento en subir. La razón por la que Benji tarda
en subir es ¿qué? Es que la imagen es realmente grande. Ese es también el
problema de tener que elegir una imagen muy
grande. ¿Ves? Sí, no estoy contento con Benji. Voy a regresar y cambiar a
Benji a otro tipo. Voy a decir Benji, esos
me gustan o en realidad
incluso puedes decir exactamente. Esa es
la otra opción. Podrías elegir una imagen
que sea de un tamaño específico. Ya sabes, pero yo estaba
contento con nuestro Benji que específicamente
era de buen tamaño Ben no te dejaste llevar
demasiado. Entonces yo soy hombre se ve
bastante miserable ahí. Sí. Pero en fin,
mantengámoslo aquí. Hay un bonito 2561.
Copia la dirección de la imagen. Puedes mantener el
tamaño adentro si quieres. Dice 266, así que probablemente
lo va a
estirar ligeramente. Pero vamos a
meterlo ahí. Pon esa. Creo
que eso va a ser mejor. Y podemos ver cómo estamos
mirando y sacudiendo nuestro mundo. Sí, sí, se ve mejor. Tenemos Benji bengi, fantástico. Ahí lo tenemos. Podemos
alterar el tamaño de esto. Podemos alterar el
tamaño de todos ellos. Si los quisiéramos todos
un poco más pequeños, sería
lo más fácil posible. Es una manera fácil decir
decidimos que queríamos todos estos Josué un poco más pequeños dijimos que los queremos
todos no sé, 220 y queremos pegar
ese 220 en todos ellos. Porque queremos
repetirlo, así que me pregunto si cada uno con 220. Sé que podemos copiar y pegar. Sí, manera fácil de
repetirlo pero digamos,
no tenemos nada de eso. Estamos empezando así. Mantenemos el mando,
te darás cuenta ahí. Nosotros, solo mantienes presionado el comando. Entonces ya ves que
tenemos dos maldiciones. Al hacer clic mientras mantienes el comando. Mientras haces clic, debes
mantener presionado el comando. Hacemos clic en darle
otro cursor. Tenemos tres maldiciones parpadeantes. Sí. Ahora si tecleamos decimos lo que es y luego podemos
ahorrar 200 o algo así. 200. Lo que sea. Eso lo guardamos
y ahora cuando nos refrescamos. Está aquí. Ahí
vamos. Un poco más aquí. Oh. Derecha. Eso es fantástico. Entonces esa fue una pequeña técnica muy
genial. Entonces, si quieres que
se haga algo en múltiples lugares,
puedes tener tres cosas. Simplemente mantén presionado
el comando y haces clic en todos los lugares que
quieras que suceda. Derecha. Entonces ahí vamos. Esto debería quedar
bastante impresionante. Tenemos un pequeño
sitio web genial entrando ahora. Tenemos ataques a la cabeza, tenemos tablas,
y luego tenemos imágenes, tú tienes formato. Tienes listas. Tienes
cosas fantásticas pasando. Tan bien hecho en esta etapa. ¿Sabes qué? Creo que esta
gente merece un respiro. Salga a tomar una taza de café. Ir a correr. Creo que
tenemos que salir a correr. Bien, vamos a correr. Ve a tomar una taza de café. Te veremos de nuevo
en el otro lado.
69. Entre bastidores: fuente de la página: Bien, lo estamos meciendo aquí. Como dice la cosa, la educación cita
una roca mi mundo. Entonces a estas alturas, tú al
final de nuestra sección, y ojalá te hayas dado cuenta
de algunos de los conceptos básicos. Entonces lo que queremos hacer en
esta cosa de conclusión es mostrarte algo realmente genial y darte un reto.
Joshua, ¿están a la altura? Sí. Ah. Tú calculas,
sí, ellos pueden hacerlo. Bien, él tiene confianza
en ti. No estoy muy seguro. Entonces veamos qué puedes hacer. Entonces, en primer lugar, solo
queremos mostrarte
algo realmente genial. Como ya sabrás, tu
sitio es este código HTML básicamente es
interpretado por Chrome o tu navegador y te
muestra la página. Ahora, lo que puedes hacer es ir y ver el
código fuente a cualquier página. No importa cuál, lo
usaremos como mi en simplemente haciendo clic derecho abajo en la
parte inferior aquí en Chrome, verás pocas fuentes de página. Ahora si estás usando otro
navegador, invariablemente, va a estar en
una de las opciones donde puedas ver, por
ejemplo, puedes
llegar a las mismas cosas bajo Ver desarrollador Dependiendo del
navegador que estés usando, habrá algún lugar donde
puedas ver la fuente de la página. Estoy haciendo clic derecho y puedo hacer
clic Ver la fuente de la página, y aquí vamos. Vamos a ver qué
existe dentro de ese código. Ahí vamos. Ese es nuestro código. Eso es exactamente lo que escribimos. Se ve exactamente
igual que teníamos antes. Ese es el código real
donde lo estábamos desarrollando en Sublime, y aquí está. Entonces básicamente es
tomar este código e interpretarlo
como esa página web Todos nuestros códigos, nuestros enlaces, todo aquí ahora que antes te
parecía locura Yo ahora tiene sentido. Tiene sentido, nena. Entonces, ¿qué más tenemos aquí, Josh? Bien, entonces otra
opción con chrome, tienes esta inspeccionar, así que básicamente te lleva a esto donde ves
si vamos aquí, eso es lo que sea que el cuerpo
tenga un margen corporal, todo ese tipo de cosas. En lugar de eso, puedes
seleccionar una cosa específica. Digamos si seleccionamos esto. Se puede inspeccionar
eso y ver qué fue lo que se compuso así que
ahora se ve aquí, esto se hace en una etiqueta B. Algo interesante es que
en realidad puedes cambiar esto vamos. ¿Y qué tal vamos a
convertirlo en una etiqueta U. A Ahí vamos. Si lo cambiamos
así, ahora ya verás. Lo cambié de negrita a línea. Bien, entonces obviamente solo lo está cambiando en
términos de una pantalla, pero está mostrando que puedes saltar
inmediatamente a una pieza
o algo
así y decir, bueno, ¿dónde está el código HTML
para esta pieza en particular? Qué aspecto tiene
e incluso cambiarlo. Sí. Entonces ahora puedes ver obviamente
esto no va a afectar el sitio web a nadie más. Sí, es
simplemente una forma en la que puedes ver
lo que está pasando. Sí. Si refrescas,
esto se va a haber ido. Entonces podrías volver a hacer ese cambio a tu código fuente
original. Sí. Eso es
algo muy interesante de lo que puedes conocer. Algo chulo que
puedes hacer con Chrome. Bien, entonces ahí lo
tenemos. Eso es muy genial. Ese es nuestro sitio. Y si quieres cerrar
eso, vas a volver a como
era originalmente. Nada ha cambiado. Entonces has aprendido algunas cosas geniales
y mecedoras Ustedes consideran que están a la altura. Creo que estás preparado para armar un código como este Bien, bien, así que
aquí está la cosa. Si aún no lo has hecho, tu tarea es crear un sitio de balanceo como el que
tienes aquí con un par de imágenes
debajo de eso usando una tabla,
algo de texto, haciendo uso de
una combinación de H uno,
H dos y lo que sea la cabeza
que te guste y algo
del formato y algo que se vea formateado así Es muy importante
que hagas esto porque vamos a
estar reuniendo todo
esto en nuestra siguiente sección
donde vamos a intentar construir algo que
sea un sitio de varias páginas. Queremos que estés seguro de que
sabes cómo hacer esto. Armarlo y como un pequeño desafío
agregado, vea si puede
averiguar cómo
puede ajustar el ancho
de estas columnas. Recuerda que esta es
una mesa. Esta es una fila y
tenemos los datos de nuestra tabla sentados en cada una de las filas como tenemos aquí, nuestros
diversos datos de tabla. ¿Hay alguna manera que puedas usar
con alguien o alguna pista? Que podamos esparcir estos. Entonces, tienes que encontrar una
etiqueta o no es una etiqueta. En realidad es una adición
a la etiqueta TD que bien, funciona con la etiqueta TD y nuestras etiquetas TR que pueden
ajustar el ancho. No va a ser muy
difícil averiguar cuál el ancho y el ancho de columna y todos esos,
puedes averiguarlo. Entonces mira si puedes averiguarlo, configurar algo
similar a esto, y mira si puedes incluso jugar un poco con el
ancho Bien, entonces ese es tu reto. Te voy a contar a la altura. Y eso es con lo que
queremos dejarte. Y de aquí en adelante,
vamos a tomar el ritmo y hacer algo súper emocionante en la siguiente sección a medida que lo
juntamos todo.
70. ¡Es increíble lo que veremos en la siguiente sección!: Correcto, lo estás haciendo fantástico, pero lo que
viene después es aún mejor. En la siguiente sección, te
vamos a mostrar cómo construir
realmente tu página web, cómo usar cosas como
listas, tablas e imágenes. Vas a
transformar tu sitio web. Vas a empezar a
llegar a la esencia de lo que trata
un sitio web de
poner tus propias imágenes, el secreto de las tablas y cómo puedes poner
listas y ordenar cosas. Así que queremos verte del otro lado
porque se va a
poner aún más emocionante a medida
que vamos subiendo el aprendizaje. Nos vemos en la siguiente lección.
71. Elección de un sitio web y tema: Bienvenido a nuestra siguiente sección. A estas alturas, deberías
estar bien versado. Tu cerebro debería estar en marcha, y ojalá tus
dedos estén flojos y diestros porque has estado probando toda la codificación HTML
que hemos estado aprendiendo Así que ahora queremos
tomar tus habilidades y ver si podemos
juntarlas todas en algo genial y divertido. Entonces ya
construimos nuestro sitio web, que es nuestra pequeña
cosa divertida de las citas de educación
que rocían mi mundo. Pero ahora es el momento de tomar esto por completo y probar
algo diferente. Entonces, ¿sabes en qué estaba pensando? Sí. ¿Cómo sabes
lo que estaba pensando? Porque Google Ks. Google lo sabe. Google solo te
da esa
sensación a veces, ya
sabes, pastel de amor. Entonces me encontré con algo.
¿O te cruzaste con esto? Creo que diría que los
dos nos topamos con ello. Este tipo de cosas. ¿Qué
tenemos aquí? ¿Qué pasa? Este es básicamente un sitio web
de un montón de recetas. Puedes ir y yo estaría como,
animar este pastel de chocolate. Falta pastel de chocolate. Si vamos aquí,
veremos que tienen una imagen. Eso se ve bien. Con
este pastel y título. Sí, esta gente a la que
le gusta demasiado el pastel. Y luego tiene alguna
información al costado. Entonces tiene algunas instrucciones. Todos los detalles sobre el pastel. Sí. Entonces es básicamente un sitio
relativamente simple. Tiene un montón de imágenes y obviamente el diseño,
puedes decidir cómo lo quieres. Pero básicamente, estoy
viendo esta parte aquí. Tiene un montón
de pequeñas imágenes. Cada uno de ellos es un pastel en el que puedes hacer click y te
va a mostrar algunos. Bien, entonces nos centraremos en tratar de hacer una de estas
pequeñas cosas de tabuleta aquí. Sí, una vez que has
hecho uno, quiero decir, básicamente es
lo mismo una y otra vez. Es lo mismo.
Entonces obviamente, como sabes lo que
hicimos con nuestras citas, tenemos todas estas pequeñas
imágenes, puedes ver con esto. En lugar de tener una cotización, tienen cualquier pastel de
chocolate, y lo tienen
todo en una mesa. Ya sabes como dijimos,
mesa mesa, fila fila, fila fila fila. Sí, así que es básicamente como una
mesa, igual que lo hemos hecho nosotros. Veamos si podemos
configurar algo como esto, algo delicioso, algo súper dulce y hacer nuestro
propio sitio web de pasteles. Suena bien. Bien, así
que ese es nuestro plan. Nuestro plan es para la sección. Lo siento por esto. Si tienes hambre,
este es tu momento. Voy a salir a buscarte un pastel y te lo
meteré en la garganta porque esto
va a ser duro, muy duro porque
vamos a estar haciendo tu delicioso sitio web de pasteles. Así que prepárate, prepárate
mentalmente, físicamente, emocionalmente y todo lo
demás mientras nos preparamos para una sabrosa
experiencia de pastel en línea.
72. Cómo crear un logotipo: Se ve estéril.
Pero sin miedo. Se ve Barren parece que no
hay nada ahí,
porque en realidad, aquí no
hay nada, y
queremos terminar
algo así Mm. Bien, entonces es
un sitio web bastante involucrado en el sentido de que sí tiene otros aspectos como
correos electrónicos y nombres. Pero los conceptos básicos son
en realidad bastante simples, y eso es en lo que nos
vamos a centrar
en este
curso introductorio en HTML. Así que lo básico está aquí arriba, tenemos una
especie de encabezado. Y entonces si miras aquí, sí
tenemos algún tipo de mesa
con imágenes en ella. Entonces, Josh, ¿qué
vamos a hacer para empezar? Porque esto no
parece uno H. No, no. A ver, si lo
repasamos con nuestro
ratón, ya se puede ver. Sí, puedes destacar eso.
Entonces eso es en realidad texto, pero entonces esto no. Esto de aquí no es ex y esta imagen y si entras a inspeccionar rápidamente
descubrirás que no es texto. Así que obviamente han creado.
Tienen un pequeño logo. Entonces eso es lo que queremos hacer. Queremos ir a crear un
logo que vamos a poner en la parte superior y luego poner
una mesa para algunas imágenes. Así que vamos
a empezar con lo básico. Bien. En primer lugar,
queremos ahorrar. Creo que hay un tranvía para nosotros. Entonces abrimos una nueva pestaña. Ya entramos. Vamos. Entonces ahora entramos. Bien, ¿así que vamos
a llamar a esto? Bien. Lo mejor. Sitio para tartas. No te acuerdas. Tenemos que poner el punto HTML. No lo olvides. No olvides el HTML de punto. L, L. Ya lo tienes. Entonces ahora lo sé. Sabe que esto no
va a ser un CSS. O algo más, loco. Derecha. Entonces, ¿qué hacemos a
continuación? ¿Te acuerdas? HTML tab y B
Ahí tenemos magia. Todo aparece. Entonces ya está diciendo,
¿cuál es el título del sitio? Creo que deberíamos
ponerlo aquí. El mejor. Entonces eso va a
aparecer en la parte superior, recuerda, Mejor sitio de pasteles. Sí. Bien, así
que eso es bastante simple. Entonces por el momento eso
no es nada demasiado grande, pero lo que vamos
a querer hacer cuando se
trata del logo, tal vez
volvamos a eso. Vamos a configurar rápidamente la estructura para nuestra mesa que
va a poner, tener
las fotos del pastel. Sí. Bien, así
que eso va a ir. Si miramos esto, obviamente,
no hace falta que
lo copie particularmente, pero
es bastante agradable. Tienen tres por tres, y nosotros solo haremos uno,
dos, tres abajo, así
que son nueve en total. Puedo hacer tantos como
quieras, haz eso, empezamos con nuestra mesa. Etiqueta de mesa. Sí. Y luego dentro, tenemos tenemos
tres juegos de TR Entonces tenemos que hacer filas. ¿Bien? Así que tenemos nuestras filas, y así va a haber una, y puedes quedarte todos ahí para hacer nuestras
tres filas rápidamente. Ni tu mesa y
otra, ¿no? Sí. Las filas. Derecha. Entonces tres filas, y
luego dentro de cada fila. Tenemos tres TD, que es nuestra tabla que
es básicamente nuestra columna Entonces va a haber tres
columnas dentro de cada fila. Sí. Bien, demasiado fácil, hay otra columna, y
hay otra columna. Sí. Entonces, básicamente,
podríamos simplemente copiar eso. Sí, y sólo pegarlo. Y lo vamos a meter
dentro de cada una de nuestras filas. Sí. Demasiado fácil. Bien, entonces vamos a meter
eso ahí dentro. Y necesitamos uno más
justo por aquí. Y la vida va
a ser simplemente perfecta. Pequeña configuración perfecta. Lo que tenemos es que una mesa
va a ver
empezando por ahí, terminando ahí, y
tenemos la fila uno, fila dos y la fila tres. Dentro de cada fila, vamos
a tener tres columnas. Sí, eso va a ser agradable
y fácil, tres por tres. Bien, entonces vamos a guardarlo en caso de que
vamos a echarle un vistazo. No va a haber
demasiado para ver, pero vamos abrirnos en nuestro navegador. Así que mi mejor sitio de pasteles. Sí, y abrimos esa
miga. Ahí va ella. Ella no es absolutamente nada ahí. Bien, entonces obviamente, no
se puede ver la mesa. Todo lo que puedes ver es que
hemos dado un nombre. Si recuerdas, podríamos ir a
ver la fuente de la página, y luego verías que
hay de todo. Pero no hay nada
en las columnas en el asado ni nada por
el momento. Pero eso es genial. Tenemos lo básico
de lo que queremos. Derecha. Así que vamos a, um,
podríamos usar H one. Sí. ¿Te acuerdas de eso?
Podríamos usar H one, pero podríamos simplemente poner como parte
del cuerpo solo para darte un poco de sabor de lo
que probarían. Oh, eso es increíble. Podríamos haber hecho esto
y decir el mejor pastel st, que es, ya sabes,
no está mal. Yo no lo llamaría
el mejor sitio de pasteles. Sí, esos no van
a ser los mejores pasteles, pero ahí tenemos los mejores pasteles. Sabes, quiero decir, está bien, pero quiero decir, esto es más genial. Por aquí, ya sabes, tienen como que parece un.
¿Qué dirías? Tiene eso como Choi V. Ya sabes, ¿cómo
pondrías eso Tiene que se ve
mejor que el nuestro. Sí, sí, se ve mejor
que eso. A mí me encanta. Entonces lo que tenemos que hacer es que
quieras tener tu propio logo. Rápidamente
te mostramos que esto es extra, sin costo extra por esto, nada. Puedes
hacer tu propio logo. No tienes que ir a
buscar alguna persona cara. Hay muchas
maneras de hacer esto. Te vamos a mostrar
rápidamente cómo en lugar de tener
el mejor sitio de pasteles, puedes crear tu propio logotipo. Aquí hay solo un sitio web. Literalmente podrías
hacer esto. usar PowerPoint para hacer tu
propio logo, haz lo que quieras. La conclusión es que
tienes que terminar con una imagen. Y así solo vamos
a mostrarte rápidamente logo design.org
gratis, cómo
podrías hacerlo rápidamente aquí Bien, para que podamos ver que
tenemos todas estas cosas. Simplemente crea mi logo. Sí, he estado en crear
logo para nuestro sitio de patadas, solo
vamos y hacemos clic en crear
Logo en logo gratis design.org, y solo piensa por un tiempo, ya que todos los elfos inteligentes que están dentro del sistema se
están reuniendo Bien. ¿Qué queremos
elegir? Uno, vamos a ver. ¿Es cakey? No
sé qué es el pastel. Eso parece
pizzaish. No. A ver. Estos pasteles millones
de temas. Oh, mi. Incluso hay comida y
bebida. Hay comida y bebida 169 comida y bebida una. Oh, veamos si
puedes encontrar una Burger, esta le gusta.
Hay como cakey Eso ya está bastante cerca. Sí. Entonces este no
deberías? Bien. Así que simplemente haces clic en él, y
ahí lo trae a través. Y ahora podemos decir, Oh, qué pastel
fácil ¿Cómo llamamos? El mejor arte de pasteles que realmente
no tenemos. Bien, entonces nos vamos a
llamar a nosotros mismos los Mejores pasteles. Los mejores pasteles. Los mejores pasteles.
Es muy original. Todo está hecho, puedes
mover las cosas, puedes dejarla caer ligeramente. Puedes cambiar las
imágenes, moverlas. No vamos a
tocar demasiado. No es un curso de edición. Esto es solo
mostrarte cómo puedes
hacerlo . Un pequeño y encantador ir. Eso es hermoso.
Puedes agregar más formas. Esto se puede resolver. Esto no tienes que ser un
científico cohete para hacer esto. Sí, parece bastante
sencillo. Tenemos a nuestro pequeño.
¿Eres feliz o los colores? ¿Feliz? Sí, todo lo que no tenemos que ser
demasiado quisquillosos en esto Puedo ver que hay muchos
elementos en esto. Bien, así que sólo lo vamos
a dejar así. Como ves, tenemos
una opción de ahorro bajo. Bien, entonces esta es la esencia
de todo esto. Al final del
día, sea lo que sea que estés usando cualquier diseñador, incluso si estás usando PowerPoint, necesitas guardarlo en un archivo
JPEG o en un archivo PNG. Mi dinero, dinero, pero no, no, se necesita
dinero si
vas a tomar las bajas Rs 200 por 200, probablemente
esté bien, solo
por un pequeño logo para nosotros. Bien, entonces. Bien, así que una vez que hayas corrido el guantelete y hayas
puesto tu correo electrónico, ojalá te
vayan a enviar un enlace a donde puedas
obtener tu logo gratis Entonces vamos a ir a echar
un vistazo y ver si podemos encontrar eso del otro
lado, agarra nuestro logo. Bien, para que
veas ahí está. Yo nos mando un correo electrónico con nuestro pequeño logo,
hay un aspecto tan cool. Y así ya por
fin podemos descargarla y obtener la imagen que
tanto requerimos desesperadamente
para nuestro sitio web Derecha. Entonces ahora
tenemos que guardar esto en un lugar adecuado donde se almacene
todo lo demás. Así que sólo vamos a
dejarlo aquí con todos los demás archivos. Es bueno mantener
todo en un solo lugar. Y así ahora está guardado
en esa carpeta. Entonces vamos en esa carpeta, vamos a ver que
tenemos nuestros diversos sitios, y también tenemos un pequeño archivo
PNG, y ahí está. Así que tenemos nuestros logotipos poco logo de baja res,
pero está ahí, y ahora podemos
usarlo en nuestro sitio web. El punto es que puedes
crear un logo como sea tu um en este ejemplo, hemos usado diseño de logo gratis. Hay muchas de estas cosas. Simplemente lo buscabas en Google. Encuentra
uno que más te convenga. Como decíamos, solo ve y
crea uno en alguna edición. Incluso puedes crear uno en PowerPoint, Keynote, etcétera. Ahí está nuestro logo. Lo que sigue es que queremos que se inserte
ese logo, en lugar de esta
aburrida H una cosa aquí, eso no es tan interesante. Josh, llévatelo. Consigamos que eso se inserte
como un logotipo de imagen. Bien, así que en realidad podemos poner esto en la cabeza
porque es un logotipo, eso es una cosa que también
puedes hacer. Vamos IMG tabularlo en. Ahora tiene un espacio para la imagen. Ahora bien, si solo agarramos
un logo aquí, mira. Así que en realidad no estamos
usando un logotipo en línea. Ahora recuerda, si tuvieras que
publicar este sitio web en línea, mientras que este sitio web
va a funcionar localmente, si tienes que publicar
en línea, esa imagen tendría que ser almacenada
online en alguna parte. Voy a refrescar eso.
Tenemos nuestro pequeño logo. Entonces hay un logo. Eso
se ve mucho mejor. Todo lo que Josh ha hecho es agarrar
la imagen que se almacena localmente en esa misma
carpeta que el mejor HTML de Cakes. Otra forma también
de obtener esta imagen. Si hubiéramos renombrado esto, no
obtendríamos la imagen Nosotros solo vamos aquí, podemos decir abrir Worth Now si
decimos openw Chrome, verás que nos muestra
Dropbox usa Craig Blewett Si volvemos a decir eso, dándote el camino completo hacia él. Sí. Esta es también otra
forma de ir Comando C, sustituir esto por eso
y ahora decimos esto, vuelve ahí. Va
a ser la sentada. Sí. Bien. Entonces la primera vez que lo
metemos sin el camino, lo que va a
hacer es que solo
va a buscar en
la carpeta actual. Se va a buscar en la
carpeta donde mejor pastel HTML. Si renombramos esto,
si acabamos de decir, o si había otra carpeta, no la
va a encontrar. Pastel. Ahora bien, si lo
tuviéramos así, vamos, ahorra. Refresca eso. Va a ser malo,
va a ser malo.
No hay nada. Sí, así que
podríamos actualizar el nombre. Entonces, si volvemos a encontrarlo, abrimos esto de nuevo con cromo. Se puede obtener de nuevo el camino completo. En realidad es mejor
en lugar de tener un nombre aleatorio como el
que teníamos allí antes. Qué es ese 967,
eso es ridículo. Para darle un nombre que sea
vagamente comprensible. Cuando lees tu
código, ya sabes, bien, esa es mi imagen de pastel, logo de
pastel o algo así, dale un nombre que sea
sensato, y obviamente ahora, deberías poder verlo aparecer una vez más
dentro de nuestro sitio web. Bien, así que eso es bastante simple. Así que hemos cubierto lo básico. Tenemos nuestro mejor
sitio de pasteles en funcionamiento. Tenemos un título.
Tenemos un pequeño logo ahí, y hemos montado la mesa. Entonces estamos listos. Estamos
listos para asumirlo. Bien, entonces ya sabes
lo que tienes que hacer. Ve a comer un pedazo
de pastel y configura tu esqueleto básico para
tu mejor sitio web de pasteles.
73. Obtén imágenes gratuitas (legales) para tu sitio web: Entonces el esqueleto está en su lugar. El logo está en su lugar, pero necesitamos más. Entonces tenemos la estructura de nuestra
mesita. Pero lo que necesitamos,
Josué, ¿qué es? Necesitamos imágenes. Necesitamos los pasteles. O sea, eso no es que tiene
un logo muy chulo, los mejores pasteles, pero
necesitamos los pasteles.
Necesitamos las imágenes. Ahora, obviamente, si
hay un lado real en que vendas pasteles o hagas
algo así, te
voy a sugerir que tomes
fotos de tus propios pasteles. Pero en aras
de no tener tiempo para hornear
nueve pasteles diferentes, te
vamos a mostrar
una pista muy furtiva Ahora, no quieres simplemente
continuar
puedes ir a images.google.com
y buscar pasteles Pero ahora, ve a tener cuidado, hay cosas con derechos de autor por
ahí, sí, sí Entonces, para encontrar algunas imágenes
realmente geniales, y puedes usar esto para
todo tipo de imágenes, puedes ir a pixabay.com Aquí puede obtener
imágenes gratis de realty. Es simplemente hermoso. Puedes dejarlos caer. compartidos por nuestra
generosa comunidad, uno y 0.1 millones de imágenes. Entonces es súper fantástico. Aquí hay tantas
imágenes geniales. Vamos. ¿Qué vas
a buscar? Uh. Pasteles, Pasteles, Pasteles, tartas. Ese es el tamaño de los pasteles.
Los pasteles son buenos. Igual que buscar imágenes de Google. Lo que puedes hacer
es que aquí hay una especificación. Puedes elegir que solo
quieras fotos, etcétera. Incluso puedes elegir que quieres
fondos transparentes, e incluso puedes empezar a decir, Bueno, querías
cierto tipo de tamaño. Ahí está. Y aquí, tenemos mucho pastel. Lo que vamos a
necesitar hacer es elegir
un pastel de aspecto delicioso. Entonces Joshua dime cuando
veas tu cinta. Sí, así que vamos a pasar
del topless. Bien. Hermoso. Así que de nuevo, todo lo que tienes
que hacer es abrir nuevas pestañas porque vas
a tener bastantes. Bien, entonces vamos
a abrir un par de pasteles en diferentes
tablillas para que
podamos rápidamente vamos a necesitar
finalmente nueve pasteles. Pero solo te mostraremos haciendo uno o dos solo para que
te hagas la idea, y puedas averiguar
el resto. Delicioso. Apenas a través. Bien, entonces tiene una fila de pastel, así que vamos a tener
esa, esa. Y, hombre, esto se ve bien. Bien, entonces lo que tendríamos que
hacer ahora es ¿qué
vamos a hacer? Voy a tener que descargarla. Vamos a tener
que descargarlos. Nuevamente, hay dos
formas en las que podríamos hacer esto. Podríamos vincularnos directamente
a esta imagen, copiar la dirección de la imagen o como te mostramos anteriormente,
podrías descargarla. El problema de simplemente
vincular directamente a la imagen que se almacena en
línea en el sitio de otra persona, si la borran, vas a tener un problema
en tu sitio web. Descargarlo significa que
tienes control sobre él, pero también significa que si quieres publicar
tu sitio web,
vas a tener
que poner esa imagen en línea en alguna parte. Vamos a descargar estas imágenes. Sólo vamos a salvarlos. Puedes elegir Guardar como, o incluso mejor si
eliges descargar gratis, en realidad
puedes
elegir el tamaño. ¿A qué debemos ir? ¿Debería
simplemente ir con las imágenes más pequeñas? A lo mejor. Sí, bueno, quiero decir, la
conclusión es que no vamos a necesitar imágenes realmente grandes porque sólo
vamos a pegarlas. Quiero decir, puedes. Depende de ti. Lo que quieras
hacer con las imágenes. El s hit descargar y
va a descargar esa imagen. Voy a
darles algún tipo de nombres
sensatos, pastel uno. Obviamente,
les darías un nombre
más inteligente que eso y nosotros
vamos a hacer lo
mismo con todos nuestros pasteles. Vamos a
descargar el pastel dos. Y llama a eso pastel, también. Y te estás dando la
idea de esta etapa. Y es descargar pastel número
tres esa resolución. Y entonces
tendrías que hacer esto para todos tus pasteles o tendrías
que tener tus propias imágenes. Pero PixAR lugar genial para
conseguirte algunas imágenes.
Entonces ahí lo tenemos. Ahora tenemos tres
imágenes descargadas, y vamos a necesitar
ponerlas en nuestra mesa. Josh. ¿Qué opinas? Tiene que ser bastante simple. Sí, así que ahí tenemos todas
nuestras imágenes. Podemos ver decente
Delicioso, delicioso. Nuevamente, ten cuidado con
el tamaño de las imágenes. Este es un tamaño decente. Es de tamaño medio para la web. No quieres que sea de riesgo
demasiado alto porque entonces va a ser más lento de cargar. Pero obviamente, también quieres
que se vea vagamente decente en una bonita
imagen de tipo pantalla escrita, laptop o computadora Bien, entonces ahora podemos copiar esto. Deja que te asegures de obtener el JPEG
ahora copiamos esto. Vamos. S. Ahora ponemos imagen
en nuestra mesa así IMG. Ahora ponemos nuestro
pequeño enlace ahí, ahora tiene k punto j peg, guarda esto para ver cómo se ve
nuestro sitio web hasta
ahora. Es muy grande. Es una gran madre de pastel. De verdad se llega a ver
el detalle de eso. Entonces, podemos juguetear con
el tamaño de lets ahora, pero pongamos en nuestro pastel Bueno, primero ponte creo,
luego podemos cambiar el ancho. Entonces volvemos a encontrarla. En realidad, conocemos los
nombres. Podemos discutir esto. Mantenga presionado el comando y
verá que va a haber dos
maldiciones parpadeando así Ahora cuando vamos IMG, hacen todo
al mismo tiempo ¿Ves así? Ahora
podemos ir pastel. Ni siquiera tenemos que simplemente
venir vi solo tenemos
que cambiar eso a cuatro pastel. Tenemos uno, dos y
tres. Dos. Y uno. Vamos a tomar hacia atrás.
Sí, lo que sea. De todos modos, ahora decimos que esto
va a quedar muy cosita, pero podemos. Bien. Chatea ahora. Derecha. Entonces como pueden ver, sí
tenemos nuestros tres pasteles. Están sentados en
una fila, una mesa, pero son enormes entreas Bien, entonces ahora usando nuestro
pequeño consejo, comando. Vamos, mando. Mantenga presionado,
vamos, mientras da clic. Ahora ya podemos irnos. Podemos cambiar el ancho igual. ¿Qué
debemos hacer? Bueno, algo así como
que lo hagamos. Vamos a probar 200. 200, 26 oh no, 200. Me gustaría tener
200. Cien 201. Bien, 201. Decir eso. Es bueno. Experimento. Oh, creo que eso es demasiado pequeño.
Quieres un poco más grande. 307. Ciento ciento 707 Ne me
escucha. ¿Esto
es probablemente qué? Oh, te escucho
la primera vez. Bien. No está mal. No está mal. No está mal. Bien, entonces
ahí tenemos una fila. Tenemos una fila de
tres pastelitos, no se ven muy mal. Y sí, lo que
vamos a tener que bajar no te va a
hacer que lo sufras, probablemente
nos gustaría poner unas filas más de pastel para que
se vea un
poco mejor. Pero ahí lo tenemos hasta el momento. A ti para que
pongas esa disposición de tu lado para ver si puedes conseguir tu página
con un pequeño logo y una fila de pasteles en
ella o dos o tres. Y creo que estamos acercándonos a que algo pase aquí. Así que recuerda todo el plan, todo
el plan es terminar
con algo así, y lo
juguetearemos un poco más en la siguiente lección para que la gente
pueda mirarlos, hacer clic en algo
y ver una receta
74. Imágenes de fondo: Entonces los pasteles están llegando. Si echas un vistazo
aquí, te darás cuenta que ahora tenemos a nueve pasteles. A tres por tres, estamos tratando de
imitar esta sentada aquí. De nuevo, puedes elegir la talla. Acabamos de hacer un poco más grande porque aquí
no vamos a hacer todo
esto de la señal,
que obviamente podrías. Solo estamos tratando de que
sea más atractivo visualmente. Entonces tenemos nuestro encabezado y
tenemos nuestros nueve pasteles. Entonces así es como se
ve en este momento. Esencialmente,
tenemos nuestra imagen de cabeza, que está en la parte superior
aquí, y tenemos nuestra mesa con tres
filas, fila, fila dos y fila tres, y en cada fila, tenemos tres columnas con nuestros diferentes pasteles y ellos
tienen nuestros diferentes nombres. Um, pero lo que necesitamos es que esto sea un
poco más interesante. ¿Qué crees que necesitamos, Josh? Creo que necesitamos los
nombres de nuestros pasteles, llegar a algunas ideas
de lo que vamos a llamar pasteles individuales, y también necesitamos un fondo. Sí, eso estaría bien.
Empieza a lucir ordenada. Bien, entonces quieres poner
un poco de texto. Quiero decir, ya ves aquí, cada uno
de estos tiene algo escrito debajo del
pastel, como se llama. Así que tenemos que poner un poco de texto debajo de estos pasteles, y, sí, tal vez un poco de fondo
solo para agregar un poco de algo a esto. Así que vamos a conseguir algo de texto
debajo de estos pasteles. Bien, entonces tenemos todas nuestras
mesas preparadas para nosotros. Entonces todo lo que tenemos que
hacer, como pueden ver, tenemos un TD aquí. Entonces aquí es básicamente
donde tenemos una imagen de pastel y todo. Entonces dentro de ese TD, vamos a poner Algunas tomas. Entonces esta es nuestra
primera. ¿Qué hace eso? ¿Parece un
pastel de zanahoria o algo así? Sí, pastel de zanahoria o pastel de zanahoria
húmedo. Sí. Entonces fresa. Y decir eso antes de que lo hagamos. Vamos a convertirlo en un
párrafo así que solo pis. Así que eso va a
asegurar que simplemente se mantenga bien juntos, así que la zanahoria húmeda patea
ahora y muy fresca. Una patada de curret de Mistre. Sí, pero necesita. Parece irritante
. Creo que hay que ponerla de
lado ahí. ¿A qué crees que enviamos? Creo que deberíamos centrarnos. Bien, entonces centro, señor Centro solo
ponemos eso así, y tomemos un
squizzy en eso Bien. Veamos que debería
estar centrado en la celda, si yay, ya, ya, ya ya, ya, ya, ya También necesitamos un poco de
estilo para esto. Definitivamente pienso que
deberíamos tener algo
porque solos, digo que necesitamos H tres
o algo así para esto. Un H tres en eso?
Siempre cambiamos, así que empezamos con H
tres. Vamos aquí. Solo tomemos eso
y lo pondremos, um ahora lo guardamos,
y veamos. Es un poco
mejor. Sí, creo que se ve un
poco mejor. Bien, entonces ves que realmente no
puedes andar por ahí como
quieras Para que se le pueda decir a los sars. Puedes hacer lo que quieras. Bien, así
que asumiendo que eso es lo que
queremos, vamos a tener que recoger algunos pequeños nombres
para otros. Esto va a
tener que repetirse. Así es una
manera agradable y fácil de repetirlo. Entonces, saquemos
esto por ahora. Solo saquemos esto. Bien. Entonces ahora podemos agarrar aquí toda
esta sección, ahorrándonos mucho tiempo. Copiarlo. Vamos, mira. Sí. Y ahora, lo que le
mostré esta orden de
mantener pulsada. Mantenga presionado el comando. Manténganla abajo. Sigue aguantando, sigue aguantando porque vamos a poner
esto en todos estos lugares. Sí, no. Y pega todo lo que golpeas
pasa en todos esos espacios. Sí. Entonces ahora vamos a una pestaña para que
podamos ser tabulados. Así que ahora pegamos. Pegar. Ahora podemos teclear. Obviamente, lo que escribimos
ahora va a ser mismo sería lo
mismo para cada uno, así que no tenemos pastel de
zanahoria húmedo para todos ellos. Entonces ahora soltamos el Sí, lo
guardaré ahora en cuanto no
estemos manteniendo presionado el
comando y hagamos clic hacia abajo, va a ser uno. Seleccionados ahora volvemos a uno. Este era nuestro pastel húmedo de zanahoria. No estoy seguro
de cuáles van a ser los nombres de todos nuestros
otros. Vamos a tener que
idear toda una gama de nombres creativos para nuestros
pasteles flick crust allí Derecha. Así que aquí se puede ver a
Sposas a exceso de velocidad ungrat Tenemos todos nuestros pasteles, todo desde vainilla y chocolate hasta el pastel
que sea, el pastel sorpresa,
el pastel
húmedo, el
pastel navideño o lo que sea. Así que no está mal. Entonces lo que hemos logrado
hacer es que hemos puesto en todos los detalles del pastel, ponerlos todos en
Hbies en este momento Pero necesitamos un trasfondo. A los fondos, los
blancos un poco aburridos. Qué tal poner esencialmente
lo que es un fondo,
es como una imagen que va
a sentar detrás de todo esto. Pero a medida que te desplazas, se sienta ahí atrás.
Entonces, ¿cómo se hace eso? Bien, entonces lo que básicamente
queremos es un trasfondo. O tienes un
fondo que es muy grande y voy a
cubrir toda tu área, o puedes tener un fondo
que es más pequeño y HTML repetirá automáticamente
repetir repetir esa imagen. Tiene que ser una imagen
repetible. Si vas a la Fonda, podemos ver que tenemos esta, pero eso no va
a repetirse muy bien Ese será uno que
simplemente se superpondrá en todo el asunto. Entonces lo usaremos más tarde,
pero por el momento, esa no es
una buena para el jefe de invierno. Nosotros tenemos esto. Ahora bien, esto es en realidad repetible.
Eso es como la guerra. Realmente no me doy cuenta si es lo noto un poquito obviamente, hay algunos pasteles cortando, pero apenas te darás
cuenta cuando se ha agrandado y ahí están
los pasteles que lo cubren. Así que en realidad puedes buscar imágenes que estén
hechas específicamente para este tipo de cosas. Esta imagen, me gusta
el estilo de la misma, por lo que podemos agregarla. En la etiqueta corporal que tenemos aquí, que es un cuerpo, vamos a poner
en segundo plano. Esto básicamente nos está diciendo en el cuerpo principal de nuestro HTML, va a
haber un
fondo, lo que va a ser, es simplemente fondo igual
y luego tenemos un pensamiento. Si volvemos a nuestro expediente, podemos ver cuál es su nombre. A, asegúrate de obtener
el PNG. Vamos, C. El nombre completo. Ahora, cuando
lo pegues, guárdalo. Ahora tenemos un
fondo, así que dale. Refrescalo. Bien, entonces verás que
verás aunque
tuvieras varias filas, esa imagen de fondo sólo
va a seguir repitiéndose. Así que un poco ruidoso
con muchas imágenes, así que solo ten cuidado con eso.
Pero entiendes la idea. Entonces, obviamente, quieres
buscar uno que esté limpio, depende del tipo de apariencia de tu
sitio web. Entonces con este,
probablemente buscaríamos menos. Solo queremos que la gente
se vea abrumada por los pasteles. Sí, tantas opciones.
Entonces, ¿cuántas opciones? Sí, así es básicamente como vamos a poner
en nuestros antecedentes. Y realmente está empezando a aparecer con todas estas
cosas que estamos agregando. Bien, entonces ahí
lo tenemos. Tenemos nuestro sitio web. Se acerca, y
ahora lo que tenemos que
hacer es porque la gente
ahora podría navegar por nuestro sitio web,
mirar las cosas. Y recuerda este, cuando llegaste a un sitio y
podías hacer clic, ya ves, medida que te mueves sobre algo,
viene una manita, y es como, ah,
hay algo. Quiero saber cómo
se hace
el apagón o se
hace este apagón, pastel de
chocolate, y
hasta
ahora va a reventar con información adicional Entonces eso es lo que nos estamos
perdiendo en este momento, ya
sabes, aquí
no pasa nada. Todo lo que hemos hecho hasta ahora
es mostrarte cómo
crear un sitio web de una página. ¿Cómo se crea un sitio web real que consta
de más de una página? Eso viene a continuación. Antes de hacerlo,
ya sabes lo que tienes que hacer, conseguir tu sitio web, conseguir algunos pasteles, conseguir
tus imágenes
coladas ahí, en algunas descripciones, tirar un fondo si
te gusta el fondo,
y sigue la historia para que
estés y sigue la historia para que
estés participando y te
veremos del otro lado
75. Wow: un adelanto de la siguiente sección: Guau. Ya casi estás ahí. Una sección más para ir,
y en la siguiente sección, vamos a estar
ampliando tu sitio web. Un sitio web no es solo una
página. Son varias páginas. Entonces, ¿cómo se crean páginas
adicionales, hipervínculos y bonus, incrustando videos de Youtube
en su Entonces la siguiente sección es PAT. Es emocionante, y es donde
finalmente todo se une, y te conviertes en un increíble desarrollador web
HTML. Así que no te quedes ahí
mirándome. otro lado está un video, el siguiente video, donde realmente se pone emocionante. Nos vemos ahí.
76. Cómo hacer una segunda página: Guau. Ya casi estás ahí. Una sección más para ir,
y en la siguiente sección, vamos a estar
ampliando tu sitio web. Un sitio web no es solo una
página. Son varias páginas. Entonces, ¿cómo se crean páginas
adicionales, hipervínculos y bonus, incrustando videos de Youtube
en su Entonces la siguiente sección es PAT. Es emocionante, y es donde
finalmente todo se une, y te conviertes en un increíble desarrollador web
HTML. Así que no te quedes ahí
mirándome. otro lado está un video, el siguiente video, donde realmente se pone emocionante. Nos vemos ahí.
77. Un truco de espaciado astuto: Su. Se ve húmedo,
se ve delicioso. Tenemos nuestras dos páginas, pero sí, eso no es del todo bueno. Entonces este un poco ordenado
en esto arriba un poco antes de que te enseñemos cómo
vincular las dos páginas juntas. Así que tenemos que mover
este a través
un poco a su
posición aquí, y luego tenemos que
agregar algo, que apuesto que
va a ser un qué? Una receta? Sí, una receta, y eso va a
ir aquí en una
mesita que nos va
a ayudar a hacer eso. Entonces, lo primero es, ¿cómo en el mundo vamos a
mover eso por ahí? Bien. Entonces no hay muchas maneras de
hacerlo en HTML. Sí. Entonces, si estamos usando CSS. Sí, entonces tienes
muchas más opciones. Este no es un curso CSS. Hay
formas muy complicadas de hacer un HTML. Deberían hacer nuestro curso CSS, y luego el
curso de JavaScript. Pero eso es lo siguiente. Esto es lo que
tienes para acertar. Esto es HTML es lo básico. Así que tenemos que
hackearlo un poco. Bien. Entonces lo que
vamos a querer agregar, que es muy sencillo, pero parece un
poco poco efectivo Esto va a hacer. Será T es HTML, y no queremos
entrar en algunas cosas difíciles
haciendo esto. Sí. Así que tenemos que mover
este pastel a través, y podemos centrarlo,
pero eso sólo va a centrarlo en la celda. Entonces necesitamos hacer algunos
espacios, esencialmente. Entonces ya sabes si hacemos eso,
no hace nada. Eso no va a hacer qua
Tenemos esta cosita llamada el énfasis y NPSP, que es un espacio sin corchete. Un espacio sin soporte. Bien. Entonces ahora veamos qué pasa. Entonces lo pones en el
espacio del desayuno ahorra eso. Sí, échale un vistazo. Se
movió alrededor de un milímetro Sí, así que no pasa mucho. Aquí es donde
vas a estar como, ¿qué? Él. Quiero copiar eso. Sí, lo pegué
mucho y mucho y mucho. Entonces estás creando muchas
pequeñas especias ahí. Sí, porque va a ser muy complicado de cualquier manera, aunque
parezca poco efectivo Ahora es? No vamos
a conseguir nada través de la pantalla
así como así. Así que es una
forma un poco hacky de hacerlo usando HTML. Pero sí, funciona. Ya que todo lo que hemos hecho
es que ahora solo metido un montón de
pequeños espacios aquí. Básicamente es solo
tratar de lograrlo. Nuevamente, si quisieras poner más en solo como sea tu menú
necesitas obtenerlo justo para que sea perfecto, sigue
golpeándolo de nuevo Y vas a decir,
eh, eso es justo en el acto. Bien. Entonces eso no está mal.
Está ahí sentado. Se ve bastante
genial y Dandy. Entonces ahora queremos
poner en nuestra receta. Sí, vamos a
ir por ese lado. Entonces vamos a necesitar
otro TD necesitamos otro TD. Entonces una segunda columna ahí dentro. Vamos aquí. T le pegó al TD. Golpea la pestaña, dale. Sí. Bien, entonces realmente no
conocemos las recetas de Craig fuera. lo que te refieres con una receta de Craig, usamos Asly Google. Google. Receta. Búscalo justo adentro y esto
está en un pastel de quilates, podemos hacerlo en el carotake simplemente
iremos así Nosotros no quiero decir, si alguno de ustedes
no es una buena
receta de pastel de zanahoria , nos pueden ayudar después. Pero nosotros los chicos de HTML.
Comemos pastel de zanahoria. No vamos a
intentar lograrlo. Vamos a poner eso, pero antes de hacerlo, hemos
visto que Google también hizo esto. Tres. Todo esto de la lista
lo que ordené lista. Bien. Sí, queremos una lista
de pedidos. Fantástico. Y golpéelo en el espacio.
Sí, dale a la pestaña. Bien. Entonces dentro,
ordené la lista que queremos. Quiero enumerar artículos. Oh, ¿así que vamos
a tener que poner unos cuantos como aquí? Sólo va a
ser uno porque es una lista, y luego quedarse. Sí, así que solo pon eso. ¿Los artículos se metieron ahí? Bien, así que vamos a ir ahí. Nosotros solo Se ve
bastante desordenado. Vamos solo estos hola, vamos, él, vamos,
vamos, vamos, vamos. Esto se está poniendo realmente
desordenado en este momento. Ahí vamos. Ya lo
tienes. Ya lo tienes. No, yo no. Voy demasiado lejos. Bien, podemos hacer esto. Siempre lo conseguí. Ahí vamos. Tabadín. Tabain baby,
Tabin Ahí vamos Se ve un poco mejor. Bien, entonces tenemos
que romper esto. Entonces cada uno tiene que ser un tallo. Entonces tomemos esa orden. Entonces va a terminar. Ese termina ahí mismo. Esa es nuestra primera lista.
Creamos otra lista. Yo diría que termina
después de los puntos porque eso es un nueve pulgadas. Sí, porque eso también está dentro, pero vamos a
pegarlos al final de cada
línea o algo ahí. Oh, sí, pégala ahí. Y la segunda lista de allá. Oh, solo hagámonos un favor aquí y solo
usemos un pequeño comando. Sí. Hazlo todo junto. pararé ahí al final de cada una,
cerraré las listas. Sí. Entonces
vamos a cerrarlo. Oh, cerca. Derecha. Así que ahora todos han sido hechos
parte de nuestra lista ordenada. Echemos un vistazo a eso. Ah, eso se ve mucho mejor. Bien, entonces vamos a necesitar espaciar esto un poco
porque como puedes ver, también lo que han
hecho es cuando se hace demasiado tiempo, tú atrapando BR, entonces rompes la línea. Podemos ver a
dónde va demasiado tiempo? Esta esponjosa. Azúcar, digo, ahí es donde lo rompemos hasta. Vamos a hasta, poner en BR Guarde eso hace un momento. No va a
ser muy largo, así que ahora va a volver a poner
en dos líneas después. ¿Dónde está el
agua? Más allá de eso. Se puede ver que todo requiere un poco. Esto es codificación. En realidad tienes
que especificar todos los pequeños detalles. Ahora, mucho, hay algunos atajos a su alrededor a medida
que usas CSS, pero es muy útil para
ti aprender a hacerlo todo básicamente HTML porque más
adelante cuando te hagas
más avanzado, necesitas entender
lo básico. Sí, eso se ve bien excepto que tenemos que
mover eso al otro lado. Entonces una vez que planeas vamos
a tener que espaciarlo. Pero si
metemos como tenemos con
estos espacios aquí mismo, si lo metemos
ahí, se va a confundir mucho
porque ahora es como, a
cuál debo ponerle un
montón de espacios. Entonces en lugar de eso,
vamos a agregar en otra tabla. Entonces TD otra columna. Bien. Vamos a añadir otro. Entonces eso va
a tener muchos espacios en la columna. Entonces
no lo vas a poder ver. Así que básicamente, todo
lo que estamos haciendo es que vamos a añadir en una columna entre
los dos que
va a ir aquí y
sólo vamos a entonces poner en un montón
de espacios. Bien. Ahora ya veremos. Ahí vamos. Bien, así que en realidad tenemos una columna
en blanco en el medio ahí. Puedes ajustar el tamaño
de esa columna media, muchos espacios que la
quieras, pero eso se ve así Tal vez, saca algunos. Vamos a ir aquí.
Oh, detente. A ver si está buscando. Tan perfeccionista. Supongo. Bien, entonces ahí vamos.
Eso se ve bastante bien, creo. Um, sí. Así que nos estamos acercando
bastante a tener este sitio web increíblemente maestro
e increíble Te voy a mostrar
una cosa más que vas a hacer y eso lo
haremos en el siguiente video, pero vas
a tener que ser paciente para eso. Mostrarte cómo puedes
agregar realmente un video a tu página. Y eso sería
genial. Video de alguien haciendo el pastel,
¿qué tan genial sería eso? Y entonces todo' izquierda es
vincularlo todo arriba. Así que muy cerca de ti, si puedes hacer que tu segunda página se vea
un poco más agradable, agrega las imágenes, muévalas a través,
tratando de alinearlas, y mira cómo
funciona todo para ti Así que deja de mirar
y empieza a hacer. ¿Recuerdas nuestra famosa cita? ¿Conoces esta cita que nos
gustó de la educación? Sí, ¿cuánto
aprendes haciendo? Bueno, sal ahí fuera y hazlo.
78. Incrustar un video de Youtube: Bien, entonces estoy
oliendo a pastel fresco. Ahora, tenemos un problema. El problema es que la
receta hay, um, además de estar incompleta, creo que es una receta de pastel de
chocolate. Sí. Bien, pero
tengo una solución. Sí. ¿Sabes qué
es? No, tú no. ¿Sabes cuál es mi
solución? Es una idea. Tienes una idea. Te
voy a mostrar la magia. La magia. ¿Cómo
adivinaste? Bien, ahí vamos. Youtube, ¿sabes lo
genial que sería,
como, tener un video
dentro de tu página? Eso va a hacer que
sea súper increíble. En realidad no es tan caliente. Ahora que entiendes
los conceptos básicos del HTML, voy a mostrar cómo
puedes agregar realmente un video. Así que he hecho un poco de Google o un poco de searchia para
hacer un pastel de zanahoria, y se me ha ocurrido uno muy popular, 1 millón de visitas Entonces este tiene que ser increíble. Entonces, aunque mi receta de pastel de
chocolate no funcione para
pastel de zanahoria, está bien. Vamos a conseguir que
emita pastel de zanahoria. Entonces, lo que ahora vamos a hacer
queremos incrustar su video. Vienes aquí y eliges Compartir y no chit,
no te vistes Ir a donde dice Embed. Y aquí
van a ver código. En realidad hay un par
de cosas que puedes hacer. Muestra los controles del jugador y todo
tipo de cosas que
van a ser incluidas
en tu opción de cama. Mostrar videos sugeridos. Se podría decir, no quiero eso después. Yo sólo
quiero este video. Incluso puedes comenzar en
cierto punto si quieres. Pero todo lo que tienes
que hacer es agarrar eso. Ahora lo reconoces
. ¿Qué es eso? Eso es algún código. Eso es código HTML.
No es tan complejo. No hemos hecho exactamente el código
específico, pero te darás la idea porque todo el
código HTML es similar. Vamos a mandar, a verlo. Y vamos a hacerlo. Vamos a volver aquí y justo al fondo aquí,
veamos qué pasa. Vamos a comandar V, y vamos a simplemente pegar en ese bit de código que
acabamos de encontrar. En realidad es un fragmento de código I
, lo
que significa que es
algo que va a estar contenido
dentro de un marco. Pero no hace falta que
te preocupes demasiado por eso. Solo tienes que
copiarlo y
verás que tiene el ancho y
el alto y luego
tiene la fuente del video y cuál es el borde del marco y si
permitir pantalla completa o no. Esas son solo algunas opciones,
pero echemos un vistazo. Tan simple como eso, nos
encontramos con nuestro mejor
sitio de pasteles y golpeamos refrescar. Y ahí está el video. Ha aparecido en nuestra página. Ahora, obviamente, no es
exactamente así como nos gustaría. lo mejor nos gustaría que fuera un
poco más pequeño y que encajara aquí. Entonces la solución a eso,
con este que hicimos, podemos uh agregar en un
montón de espacios, y ha dado esta opción
para agregar ancho y corazón. Bien, entonces ahora solo
queremos que sea un
poco más pequeño que eso. Si lo tuviéramos acaba de cambiar
este digamos 36360. Lo que esto va a hacer es que
va a hacer una
imagen como un cuadrado, y queremos mantener
las mismas proporciones. Lo que tenemos aquí escala
proporcional. G. O sea, puedes
agarrar una calculadora y resolverla tú mismo. Ahí está nuestro
ancho y alto originales aquí. Si acabas de tener eso y
dices que redimensionar nos
da, van a ser dos oh 2.5 Si sólo ponemos en el
corazón dos oh dos. Si no mantienes la
proporción correcta, va a hacer que
sea muy larga o muy blanda
o muy rara Entonces así que aquí. Sí. Entonces ahora puedes ver que
en realidad es el tamaño correcto. Sí, así que
ahora se ve de la talla correcta. Sí. Pero aún necesita
ser trasladado a través. Sí. Así que al igual que
hicimos con este, vamos a tener que añadir
en muchos espacios antes. Así que vamos a agarrar esto. Agarra algunos espacios. No hace falta que
pongamos eso ahí mismo.
Vamos a probar eso. Puede ahorrar. Hemos puesto refrescar
esto y Oh, casi ahí. Yo sólo unos cuantos más. Vamos a sólo dos batidos de
una cola de perro pequeño. Oh, mi. Ve al golfo. Bien, así que vamos a guardar eso. Digamos,
ya es suficiente. Vamos a probar eso. Todo en la afinación fina. Bien. Oh, tan cerca cerca. Creo que vas a
necesitar una más. Creo que es Timor. No, no,
porque es un montón. Sí, es la hora.
Vamos. Te lo dije, te lo dije. Sí,
eso es perfecto. Es perfecto. Le has
dado. Le has dado. Eso se ve
muy bien. Quiero decir, podríamos sentarnos aquí y jugar.
Pero entiendes la idea. Así que sí, tenemos nuestros sitios en realidad
luciendo bastante geniales. Tenemos nuestra receta. Tenemos una pequeña imagen.
Tenemos nuestro video. Y ahora ya verás
si golpeas play. Este video ahora va a estar jugando o el mejor pastel de zanahoria de la
historia. El mejor CarotkeH para lograrlo. Así que todo está sucediendo aquí en tu sitio y en realidad has
hecho todo esto. Quiero decir, es bastante impresionante. Todo está incrustado en su sitio. Ahí vamos. Ve a lo largo incrusta un video en tu sitio.
Te enseñamos cómo hacerlo. Simplemente
toma el código de inserción y se encuentra e
inserta en su sitio. Recuerda, es posible que
solo necesites cambiar el ancho y
la altura proporcionalmente, agregar algunos pequeños espacios y estás listo para
rockear y rodar Entonces solo queda una cosa. Y eso es para vincular esta
página con esa página, y luego tienes
un sitio web completo. Así que a ti. Ya casi estamos ahí y tú lo estás
haciendo fantástico.
79. Vinculación de páginas web: Bueno, tenemos, creo, los mejores pasteles, el mejor sitio, y todo se ve
súper increíble. Entonces tenemos nuestras dos páginas, pero hay una cosa que
queda porque
un sitio web no es solo una página web o páginas
web separadas.
Necesitan estar conectados. Entonces queremos sobre un click
en ese compañero de ahí, y queremos llegar
a esta página. Entonces, ¿cómo lo hacemos? Volviendo al HTML. Recuerda,
tenemos nuestras dos páginas. Esa es nuestra página de pastel de zanahoria. Esta es nuestra página principal, que se
llamaría nuestra página principal, y queremos conectar las dos. Bien, entonces tenemos
esta opción que
nos da la opción de
enlazar. Para enlazar páginas. Sí. Sí. Bien. Entonces por aquí, aquí es donde tenemos
nuestro pastel de zanahoria húmedo. Primero te voy a mostrar
esta opción de enlace. Si vas, en realidad
hagámoslo justo en la parte inferior, solo para dar un ejemplo. Entonces si decimos etiqueta A, solo escribe A, ve ahí. Esto se llama etiqueta de anclaje. Te está permitiendo anclar y vincular algo
a otra cosa. Sí. Entonces este va
a ser el nombre de nuestro sitio web. Entonces vamos a querer
vincularlo a esto decir eso. Ahora esto es lo que vemos
dentro de estos pequeños dentro de los comunes en esto
es lo que van a ver. Entonces, si es texto, va
a ser como el pastel de zanahoria. Lo que sea. Ahora mismo no
importa. Verás, esto es sólo texto. Entonces ahora si lo refrescamos, verás con texto
que estará en azul. Ahora estás muy
familiarizado con esos. Ves esas pequeñas
cosas subrayadas, sí, ahí vamos. Cuando hiciste clic en
Hey, ¿qué hizo? Yo nos llevé
a esa página. Ese es tu viejo texto de
hipervínculo familiar subrayado. Nos lleva
a través de la nueva página. Así de sencillo es. Todo lo que fue es usar este aTag poniendo el enlace y luego cualquiera que fuera el texto Pero eso no es realmente
lo que queremos hacer, Josh. Queremos
vincularlo realmente a la imagen, no a algún bit aleatorio de
texto al final de ahí. Entonces, esto es
realmente muy fácil. Todo lo que vamos a hacer,
podemos tomar eso en realidad, y luego iremos aquí, que es donde
tenemos nuestra imagen. Entonces dentro de esto,
vamos a poner nuestra imagen. Después de TD, solo pon eso. Podemos usar la
etiqueta A. Intercambio de heno Deshazte del heno. Después imagen imagen ahí mismo. Vamos a tomar eso
y lo vamos a poner dentro de la etiqueta A. Ponlo dentro. En lugar de tener el
texto dentro del aTag, estamos poniendo en nuestra etiqueta de
imagen dentro del Atag Sí, así que vamos a tener
un poco de cosa extra. Decimos que ahora queremos refrescar. Entonces nada se ve
diferente excepto como veis, cuando vamos aquí. Nada. Cuando vamos ahí,
tenemos el dedo. Derecha. Dale el dedo. Ahora, cuando hacemos clic en él. Sí, nena. Somos cohetes. Casi parece, como se
puede ver la misma imagen. La trae ahí. Es el
¿Cuál es la palabra para ello? Aafeitarse. Sí. Bien, pero sabes qué,
en realidad. ¿Por qué no? Uh, también agrega el enlace a
ese pastel húmedo de zanahoria. Por el momento, si hacen
clic ahí, nada
va a estar probablemente
en la página equivocada. No va a pasar nada
si la pateas de todos modos. Pero si haces clic aquí,
no va a pasar nada. Yo estaría genial si eso también es, tal vez hipervínculo.
Si quisieras hacer ambas cosas. Lo que podemos hacer es
que solo tendremos que
tomar esto podría poner la etiqueta
A aquí también. Podrías simplemente hacer otra etiqueta
A para Mistarotake. Una etiqueta, podría copiarla, pero tenemos
tantas cosas en ella. Vas y lo pones dentro del ht. Se pone en una etiqueta del espacio A. Ahora todos tenemos aquí estas
pequeñas palabras. Déjalos caer dentro dentro. Hecho mal, hecho muy mal. Ahí vamos. Fantástico.
Sí, ahí lo tienes. Ahí lo tienes. Te meces Sí. Bien, entonces ahora
cuando nos refresquemos. Ahí vamos. Ahora tenemos un
hipervínculo en ambos. Entonces haces clic en cualquiera de los dos, vas a llegar
a la pieza equivocada. Um eso no es inteligente. Sí, no he puesto
ningún enlace desde entonces. Sí. Eso es muy inteligente. Todo lo que has hecho es que te has
puesto pastel de zanahoria húmedo. Eso es brillante.
Todo en los errores. Sí, ahí vamos. Y ahora te
trae a través. Ahí vamos. Eso se
ve fantástico. En esta etapa, básicamente
tenemos un sitio web completo. Tienes todas tus imágenes. Los puedes ver,
puedes incrustarlos. Tenemos antecedentes,
tenemos logotipos, tenemos enlaces en los que se puede hacer clic, tenemos segundas páginas Tenemos tablas
usadas para formatear, tenemos videos incrustados. Esto es fantástico. Yo sólo creo que hay
una cosa más. De ninguna manera. Una cosa más de esa manera. Empiezas a sonar como
cuál es su nombre de Apple, sólo
hay una cosa más. No está en Vamos, Steve. No es una gran cosa aquí. Es el nuevo iPhone. ¿Qué es? ¿Qué es? De nuevo
, sólo va a ser. ¿Qué es? Entonces, cuando hacemos
clic en esta imagen, no
queremos tener que hacer
clic en el botón Atrás. Sí, como un botón esa
pequeña flecha. Sí. Yo lo tengo. Bien,
entonces tengo a Handy en mi fonder una pequeña
flecha aquí mismo Puede que no sea
el mejor, pero, ya
sabes, una flecha es una flecha, así que simplemente volveremos, puedes ir a Pixel Bay, puedes encontrar flechas
y lo que quieras. Entonces, lo que sea,
vamos a poner esto. Va a estar cerca de la
cima en alguna parte, ¿verdad? Sí, ponlo justo en
la parte superior debajo del cuerpo. Sí, debajo del cuerpo, hasta
podría hacerlo
a la cabeza porque
es algo así como que no lo sé. No lo sé.
Sólo hagámoslo en el cuerpo. Hagámoslo en el cuerpo.
Podemos ver cómo se ve eso. Bien, entonces nosotros también. Es una imagen, pégala,
pega el nombre ahí dentro. Guárdalo. Bien, entonces esto. Es un bebé grande,
podemos simplemente como, Sí, vamos a tener que pequeños en
ese pueblo pequeños que eso. Eso me gusta. Es
pequeño que eso. Sí. Con iguales, ¿qué debemos hacer? 30. 30 pequeños. 206. No, es que va a
ser como yo. No lo es. Lo es. Va a ser, va a estar equivocado. Ya
te lo dije. Se equivoca. Gracias. Gracias. Gracias. Gracias. Bien. Diré 45. Sí. Ver no quiere
escuchar. Reloj 45. Sí, señor. Bien. Entonces
un poco pequeña. 82. 130. Siempre
quiere hacerse demasiado grande. 82 minúsculos. Sí, eso es bueno.
Ahora tenemos que enlazar. No lo sé. Ahora es
algo apestoso
encima de mi logo, pero de todos modos No, es bueno. No, puedo. Ese logo es sólo
una cosita. Puedes ver
cuánto tiempo puedes pasar jugueteando con estas cosas,
pero te estás haciendo Así que nos pegamos en unas pequeñas flechas, una flecha hacia atrás, pero no es
sólo una imagen que queremos. También necesitamos
usar la etiqueta ancla porque queremos
convertirla en un hipervínculo Sí, vas a tener que
ir ahí en un hipervínculo. Se va a hiperenlazar de
nuevo a su página. Di eso y lo metemos ahí. Ahora, finalmente, el sitio web se
ve realmente muy bien. Haga clic ahí. Ahí tenemos un acceso
agradable y fácil aquí. Y cuando le pegas? Sí, atrás. Oh, una cosa más,
Steve. Te reprenden Oye, eso fue
fantástico. Ahora podemos ir a buscar acabamos de
hacer un pastel de chocolate. Vamos a ir a
buscar algunos más. La mejor parte es, pero
ustedes vengan a ver esto en realidad tienen un verdadero pastel de
chocolate esperándonos, una mezcla de zanahoria
y todo. Creo que vamos a ir
a comer eso ahora mismo. Esta es una vez que puedes
tener tu pastel y comértelo. Entonces, ahí lo tenemos. Un mejor
sitio web de pastel de chocolate que puedas desear. Y tienes la idea, y
nunca obtuviste las habilidades, tienes la capacidad de
crear tu propio sitio web. Así que ojalá
hayas aprendido muchas cosas
increíbles e increíbles. Es muy sencillo. Este es el inicio de
un viaje increíble. Aprender a codificar,
aprender a usar HTML es realmente, muy emocionante. Así que esperamos que te hayas divertido
mucho salir ahí fuera. La mejor manera de
aprender es jugar. Divertido, comete errores. Eso está bien. Crear cosas. Veamos cómo funcionan, pruébalo, sobre todo, compártelo con nosotros. Dinos qué quieres,
qué no funciona, qué funciona, qué más
te gustaría probar. También nos encantaría aprender de ti. Es un viaje de aprendizaje. Queremos estar juntos en ello
contigo, y esperamos que te
hayas divertido mucho. Así que sal ahí, pruébalo.
80. Caos: ¿puedes hacerlo?: Bienvenido a Canva. Lo que quiero mostrarles es cómo esta
poderosa herramienta en línea, canva.com puede ser utilizada para apoyar el enfoque docente
del aula activada, que es específicamente
la pedagogía del caos Se podría pensar que el caos
es algo malo, pero el caos es algo
con lo que
tenemos que lidiar todo el tiempo. Y cuando tenemos
demasiada información o muy poca información o incluso información conflictiva, lo importante es
poder
juntar toda esa información y ponerla en algo que la lleve sucintamente a
la representación visual Y una de las formas que
se hace muy poderosamente
es a través de lo que se
llama infografía Una infografía es
esencialmente una gran cantidad de información
compleja que
se ha condensado en representación
visual, y de eso se trata esta
pedagogía del caos Tratando de resumir, destilar, obtener la esencia de nuestro aprendizaje Canva es un gran
sitio para hacer eso. Entonces, si te encuentras con
Canva y eliges la infografía, se
te presentará
toda una gama de plantillas Todo lo que tienes que hacer ahora es
elegir uno que creas que se ajuste a
lo que quieres
armar, tu resumen. A lo mejor quieres hacer
una serie de puntos, así podrías elegir
uno así. O si sigues bajando, verás esta
la con balas, no tan interesante en términos
de no ser tan gráfica, pero a lo mejor hay diez cosas
que quieres recordar Qué gran manera de
unirlos sucintamente a todos. Te puedes poner bastante visual
, a lo mejor quieres
hacerlo así. Muestra cuatro elementos
que son clave para ti y así sucesivamente y va. Notarás que
la mayoría de ellos tienen gratis, lo que significa que no hay costo,
lo cual es una gran ventaja. Algunos de ellos sí pagas,
solo cuídate de eso. Esencialmente, todo lo que necesitas
hacer es elegir uno
que creas, bueno, este sería genial
para representar mi pensamiento. Baja, elige una infografía
que te parezca, bueno, voy a usar esta como imagen visual
de lo que he aprendido en este curso en
particular Quiero decir, bueno,
cosas que he aprendido, hay muchas de ellas
y me pregunto cuál sería una gran manera para
mí de representar esto. Nuevamente, con solo pensar en
esto por unos minutos, tienes que
intentar destilar tu aprendizaje hasta
algo que tenga sentido Escojamos una de
estas infografías para representar nuestro aprendizaje Por qué, este de aquí se ve divertido. Vamos a
recogerlo. Vamos a seguir adelante. Es un gráfico de info gratuito. En pocas palabras, todo lo que
necesitas hacer es poder hacer un poco el zoom para que
lo veas con mayor claridad. Ahora puedes editar. Es
tan sencillo como eso. Puedes hacer clic en cualquier elemento
y editar tu aprendizaje. Si quieres cambiar la
fuente o el tamaño de fuente, simplemente haz clic en él, ve a la parte superior y podrás
cambiar la fuente. Puedes cambiar los colores, puedes cambiar todo
tipo de cosas. Realmente es bastante sencillo. Ahora solo es cuestión de
bajar tu contenido. Si quieres insertar
algo en imagen, nuevo, esto también es
realmente sencillo. Hay toda una
gama de elementos que se
pueden insertar en
el lado izquierdo, verás una opción para elegir qué elementos te
gustaría insertar. Puedes buscar en estos. Pueden ser iconos,
líneas, ilustraciones, o simplemente podrías buscar por aquí cualquiera que sea la
imagen que estés buscando. A lo mejor estás buscando HTML. inmediato, va a llegar
a tener un montón de imágenes. Nuevamente, si son gratuitos,
puedes usarlos. Para
que tengas que pagar. A lo mejor quiero
usar este de aquí. Dije: Sí, ese es
exactamente el que quiero. Haga clic en él. Se coloca en la página. Ahora puedes redimensionarlo y
ponerlo donde quieras. Para deshacerme de una imagen,
no quiero esa, da clic en ella, presiona Eliminar y puedo
poner mi imagen aquí. Cambiar el tamaño es un proceso sencillo. También puedes subir tus propias
imágenes si quieres. Si buscabas o algo así, y no estabas contento con, no
me gusta ninguno de esos, puedes ir y subir tu propia imagen, pero
estoy contento con esto. Es gratis. Tiene que ver con CSS. Eso parece bastante bueno o
podría llevarme uno de estos. Vamos a llevarnos este de
aquí, y voy a usar eso. Ese es esencialmente el proceso que puedes seguir haciendo eso. Simplemente editas cada uno de los
elementos y al final del mismo, podrás producir por ti mismo una
representación visual encantadora de las cosas clave que aprendiste. Una vez que hayas terminado,
puedes simplemente presionar Descargar y podrás
descargar tu imagen. Puedes descargarla en formato PNG, JPEG o PDF, tan
simple como eso. Al final del día, lo que ahora
has creado
es que has creado una encantadora infografía simple
de lo que has aprendido Es una gran manera de destilar tu aprendizaje y
recordarlo. Al final del día,
ahora tienes una imagen que resume los puntos clave
de lo que has aprendido A ti, toma lo que
sea que estés aprendiendo, comunícate con Canva
y crea por ti mismo una
representación infográfica de tu Acabarás de
experimentar el poder
del aula activada
enseñando pedagogía del caos y cómo
te ayudará a recordar tu aprendizaje
81. Conclusión: Guau. Bien hecho. Has
llegado al final del curso. Debes estar sintiéndote súper amplificador, súper emocionado porque si llegaste hasta aquí,
te ha ido súper bien. Creo que lo has hecho muy bien. Has aprendido a hacer tu
propio sitio web desde
no saber nada hasta construir este
increíble sitio web con dos páginas, enlaces, imágenes, y ahora puedes continuar solo.
Aprendiendo a medida que avanzas. Absolutamente. Esto
es solo un comienzo. Entonces, lo que has hecho hasta ahora es que
has aprendido lo básico, has aprendido a tomar código
HTML, armarlo. Ahora eres programador de programas y
HTML. Luego construye tu primer sitio web. Puedes tener dos
páginas, tres páginas, 20 páginas, lo que quieras.
Es un punto de partida. Aquí es donde comienza,
pero hay mucho más. Hay más que puedes
aprender sobre HTML. Esperamos que te hayas dado
la confianza para aprender ahí y estar atentos a nuestros
otros cursos sobre HTML. Luego están los
otros aspectos. ¿Recuerdas lo que dijimos que HTML
cinco está compuesto de qué? HTML. CSS. ¿Y cuál es la última?
Vamos. Diles. JavaScript. JavaScript, claro, eso
lo sabías. Esas tres cosas son de
lo que trata HTML cinco, y en breve tendremos cursos
sobre esas que saldrán. Probablemente
ya estén ahí, así que échales un vistazo. Entonces ha sido emocionante.
Nos encantó tenerte. Por favor, póngase en contacto con nosotros. Queremos escuchar sus comentarios, platicar con nosotros en las discusiones. Tengo preguntas, pregúntanos y por favor danos
esa reseña de Five Star. Eso queremos. Si no es Cinco Estrellas, hay
algo que no te gusta. Eso no es lo que es, porque parte de nuestro
viaje de aprendizaje es mejorar. Queremos hacerlo cada vez
mejor, y solo podemos
hacerlo con tu aporte. Por lo que valoramos tus comentarios. Valoramos estar en el curso, dile a tus amigos
si lo disfrutaste. También nos encantaría verte en uno
de nuestros cursos. Así que no olvides
conectarte con nosotros. Hemos
tenido una gran diversión. Hemos disfrutado
enseñándote y todo mejor en tus
viajes HTML en el futuro. Sí, adiós. Que se diviertan mucho. Sigue aprendiendo. Ver.
82. Por qué programar con Python: Hola, soy Craig. Hola, soy Sarah. Y vamos
a ser tu anfitrión en este emocionante viaje donde
aprendes a programar. Déjame contarte un
poco sobre mí. Tengo experiencia
en tecnología. Tengo un doctorado en tecnología
educativa, y lo que mis verdaderas pasiones
ha sido la codificación. Absolutamente me encanta. Y no había nada
más emocionante que cuando mi hija también quiso
meterse en la codificación. Así que estoy en mi último año
de codificación en la universidad, y hasta ahora me ha
encantado absolutamente. No puedo esperar para ir
a hacer postgrado e informática el próximo año y continuar mi viaje de
programación Realmente me ha encantado
cada minuto, y tengo muchas ganas compartir este amor
con todos ustedes. Sí, entonces queremos decirte ¿por qué
deberías estar
aprendiendo a programar? Sencillo. Fama. Se
trata de la fama. Ahora bien, no estoy
diciendo necesariamente que te vas a hacer
famoso. Bien puede, sabemos que
hay mucha gente que se ha hecho famosa
con las cosas que codificaron, como personas como
Mark Zuckerberg,
Bill Gates, y otros Pero la fama es un acrónimo.
Es sinónimo de diversión. Logro. Habilidades de supervivencia y ganancias de la edad milenaria. Entonces, echemos un vistazo
rápido a esos. Tan divertido. La codificación puede
ser muy divertida. Sé que la mayoría de la gente piensa que la codificación podría estar sentada
en una habitación oscura, grabando en tu computadora Pero en serio, es todo lo
contrario. En primer lugar, estás creando algo nuevo,
algo emocionante. Casi se siente como si
estuvieras contando una historia. Y al escribir tu código
en tu computadora, estás haciendo que las cosas sucedan,
estás creando un juego, y es simplemente una experiencia
muy emocionante, y es una de las cosas más agradables
que me encanta hacer. Vas a averiguar
por qué es tan divertido, pero eso nos lleva
a lo siguiente logro de logros es
algo que a todos nos gusta, y Sarah te va a
contar un poco. La programación solo te da esta increíble sensación
de logro. Así que el cerebro desafiante. Definitivamente puedo estar de
acuerdo con esa. La programación
desafía constantemente tu cerebro. Quiero decir, mira ese cerebro. Intentas encontrar soluciones
a problemas que
tal vez ni siquiera existan. Así que pasas este tiempo trabajando, tratando de resolver algo. Cuando haces que ese
programa funcione, cuando obtienes esa
respuesta correcta,
es la sensación más increíble. Entonces, en segundo lugar, estás haciendo cosas, estás creando cosas. Una vez que terminaste tu juego, tienes esta cosa física que puedes ir y
mostrarle a alguien. Guau. Mira, esto es lo que
hice y pueden ir a probarlo y
pueden
ver físicamente lo que has creado. Sabes, solo quiero
entrar conmigo,
me encantaría ser artista o
algo así o escribir libros, y muchas veces no
tenemos esas habilidades. Pero es tan agradable cuando
has hecho esas cosas, has hecho esa
pintura, puedes
mirarla e ir, guau,
y mostrársela a la gente. Bueno, ya sea que
puedas hacer eso o no, eso es algo que
puedes hacer con la codificación. Puedes escribir este programa
que se quede atrás. Me sienta en la tienda de aplicaciones,
se sienta en tu computadora. Es una increíble
sensación de logro. Iba a decir,
siempre está ahí, nunca desaparecerá. Por último, te ayuda a
ser eficiente. Hay tantas cosas que
son repetitivas en tu vida. Puede ser algo que estés
haciendo en tu computadora o que necesites
hacer una y otra vez. Puedes usar la codificación
para hacer eso por ti. Puede ser que
necesites una app para almacenar tus artículos de maquillaje o equilibrar tus libros o
lo que sea que sea. La codificación te permite hacer todas
estas cosas por ti mismo. Haces tus propias
aplicaciones, realmente hace que tu vida sea mucho más
eficiente que productiva. Pero eso nos lleva a la M. Es divertido. Eso es todo emocionante. Pero más que esto, llegas a estas habilidades de supervivencia de la
era milenaria Estas son estas
habilidades que necesitamos. Ahora, en el pasado, cuando vivías en la edad oscura en las cuevas, hacíamos habilidades como
hacer fuegos y correr más rápido que el tigre
diente de sable Ahora necesitamos diferentes
habilidades para sobrevivir. Necesitamos habilidades, y estas son habilidades que han
sido identificadas como críticas si queremos que nos vaya
bien en nuestro mundo moderno. Habilidades como ser certero, saber resolver problemas, estar preparado para tomar riesgos, una habilidad vital en
este mundo moderno, ser creativo,
ser productivo, aprender a trabajar
juntos y colaborar. Una muy importante, la persistencia, no rendirse porque
demasiadas personas se dan por vencidas demasiado rápido, siendo curiosas, y luego también
pensando lógicamente, cada una de
esas habilidades de la
era milenaria se
desarrolla en A medida que aprendes a codificar,
aprendes a volverte persistente, creativo, lógico, todas estas habilidades increíblemente
importantes. No solo
aprendes a codificar y producir código y
producir programas, aprendes estas habilidades que
te
colocarán en un buen lugar para cualquiera que sea tu carrera
y lo que estés haciendo en la vida en
el siglo XXI. Entonces eso nos lleva
a la E, que es. Ganancias. Las ganancias son de
importancia crítica porque a todos nos gustan las ganancias. En cuanto a las ganancias,
lo primero
es que las oportunidades de empleo
están fuera de la tabla. Conseguir trabajos para codificadores es probablemente una de
las cosas más fáciles Si eres un código, si
sabes desarrollarte, es una de las oportunidades más
buscadas. Pero no es sólo eso, si
eres una especie de personas, no
quiero esas
ocho hasta las 6:00 P.M. Job. Quiero trabajar por cuenta propia. No hay otra
industria en la que tengas más oportunidades de
trabajar por cuenta propia que como programador. Puedes estar sentado en la
isla desierta o en la cafetería, escribiendo código, vendiendo
aplicaciones, codificando para personas. Todo el mundo está buscando
a alguien que escriba código para ellos, que escriba un programa que
les ayude a oportunidades masivas. Entonces esos son ellos, tan fáciles de recordar,
¿por qué quieres codificar? Fama. Es primero. Divertido. Logro. Estas
habilidades y ganancias de la edad milenaria. Entonces por eso queremos en este curso
disfrutes de todo, y vas a pasar
un rato fantástico. Entonces además de la fama, vas a pasar
un rato maravilloso. Nos vemos del otro lado.
83. Obtener tus propias alas: Ahora que hemos
descargado Python, vamos a
descargar nuestro IDE. Entonces, ¿qué es un IDE? Es sinónimo de un entorno de
desarrollo integrado, y lo que hace es que solo
facilita un poco la codificación. Entonces esconde las cosas que realmente no
necesitamos ver. Nos da un montón
de funciones y otras cosas que simplemente hacen que sea
mucho más simple y más
fácil de codificar. Entonces para nuestro IDE,
vamos a usar Wing. Hay muchos
ID diferentes por ahí, y estoy seguro que a través de
tu viaje de codificación, aprenderás y usarás muchos diferentes, pero para nuestras clases,
vamos a estar usando Wing. Entonces necesitas ir a
wingwar.com fordlash Descargas. Una vez que estés aquí,
entonces vas a ir al botón Descargar e
ir a Wing one oh one. Entonces ya ves que hay
pocas otras opciones. Wing one oh one es solo la versión gratuita y
tiene todo lo que necesitarás definitivamente mientras
comienzas a codificar, pero probablemente por
unos buenos meses o incluso años. Por lo que ahora te
llevará automáticamente a la versión que necesites para cualquier sistema
operativo que estés usando. Entonces estoy usando una Mac, así que me está
dando esta opción. Sólo tienes que descargar lo que
sea que tenga aquí para ti. Así que adelante y haz clic en
el botón de descarga. Te va a dar algunos
pasos los cuales puedes leer, pero también te voy a llevar a través de
todo paso a paso. Así que una vez que se descargue aquí, sólo
vamos a hacer click. Una vez que haya terminado de abrirse, va a
aparecer con una ventana. Para Mac, simplemente arrastra esto aquí y
comenzará el proceso de instalación. Para los usuarios de Mac, una vez que
haya terminado de descargarse, sólo
vamos a
hacer click en las aplicaciones. Entonces tenemos que buscarlo. Ves que está por aquí y
voy a hacer doble clic. Aquí, solo dices abierto. Entonces solo necesitas
hacer clic en Excepto. Y ahora lo tenemos descargado. Entonces, una cosa que solo necesitas
verificar es asegurarte de que
lo que diga aquí sea la misma versión del pathon
que acabas de descargar De lo contrario, las cosas no funcionarán. Y si no lo es, solo
contáctame y te puedo ayudar. De lo contrario, hay
muchos foros en línea que te explicarán lo que
haces si esto no es lo mismo. Ahora tenemos Wing descargado, y estamos casi
listos para comenzar a codificar.
84. Python y Wing: qué combo: Ahora estamos dentro de nuestro Wing ID, y solo voy
a mostrarte algunas cosas
básicas para comenzar. En primer lugar, para
crear un documento, darás clic en
este icono aquí arriba, y ahora esto te permite
comenzar a escribir algún código. Si quieres cerrarlo
o ya no lo necesitas, haces clic en la X del lado
derecho aquí, y eso cerrará
el documento. También puede utilizar este icono para crear varios
documentos a la vez. Verás que se guardan
automáticamente como generalmente sin título
y un número Con la codificación, su nombre de su documento
es muy importante. Entonces quieres guardarlo como
algo que tenga sentido, que cubriremos más adelante. Entonces para guardar, solo tienes que hacer clic en
Archivo aquí arriba y
vamos a elegir Guardar como
para cambiar el nombre. Siempre que estés guardando,
asegúrate de que cuando
cambies el nombre, no
elimines también el punto PY. Si lo haces, entonces tu
documento ya no
podrá ejecutarse como ruta y programa, por lo que obtendrás un error. Entonces llamemos a esto
y hagamos clic en Guardar. Ya ves que ha cambiado aquí
arriba en la parte superior. Entonces esos son algunos
conceptos básicos sobre Wing. Y a medida que vayas
pasando por el curso, te convertirás en todo un
experto en el uso de esta identificación.
85. Tu primer programa: Derecha. Este es el momento
que has estado esperando. Porque en un par de segundos, vas a
ser programador. Sé que es difícil creer
que vas a ser programador literalmente
en unos segundos. Entonces Sarah,
hazlos programadores. Bien, entonces obviamente, escribir tu primer programa siempre es
una experiencia emocionante. De hecho, tendría una cámara afuera ahora capturando este momento, el momento selfie porque
esto es increíble Bien, así que vamos a
meternos en ello. Entonces, una de las declaraciones más
básicas en la programación es una declaración
llamada declaración impresa, y es bastante
autoexplicativa. Imprime. Imprime. Imprime. Entonces va a imprimir
algo en tus pantallas. Para poder usarlo, todo lo que
tenemos que hacer es escribir e imprimir. Y ahora queremos obviamente, imprimir
algo en nuestra pantalla. Entonces vamos a
imprimir algún texto. Para imprimir texto, hay
que usar comillas. Ahora, notarás
que SIR está escribiendo, Wing ya está reconociendo
lo que son Python y los comandos. Entonces mientras escribes print,
verás cambiar de color, reconoce como un comando
válido
ya que
también se reconoce que
hay dos pequeños corchetes que Saras puso ahí necesitábamos Si no hubieras guardado
este archivo como DopiYT, notarás que ninguno de
los colores saldrá Todo va a ser
simplemente en negro. Entonces quieres asegurarte de que tus cosas sí tengan diferentes colores
porque entonces ya sabes, Wing
lo está reconociendo como un archivo Python. Bien, entonces el primer programa que
escribirán casi todos los programadores se
llama Hello World Básicamente, es impreso y luego entre comillas, Hello World. Entonces podrás ver Grand
moment, drum roll. Guau, tu primer programa.
Ya lo has hecho. Ahí está en la
parte inferior, aquí es donde se muestran
sus pantallas. Entonces te está mostrando
cuál es la salida
del programa. Hola mundo. Y eso ahora
te convierte oficialmente en programador. Entonces, bien hecho. En este punto, puedes
correr por la casa gritando, tomándote selfies,
Instagram it, compartirlo. Di la palabra,
eres programador. Y es tan simple
como eso, simple declaración de
impresión que muestra
algo en tu pantalla. Con comas invertidas, debes poner lo que es ese texto Obviamente, podrías ser
un poco más creativo, pero el primer programa clásico
o la mayoría de los programadores es
el de Hello World Bien, entonces ahora vamos a hacer esto un
poco más interesante. Vamos a sumar
a nuestra sentencia. Para que puedas hacer la oración
el tiempo que quieras, de verdad. Entonces en vez de
decir hola mundo, voy a poner mi nombre
y tú puedes poner tu nombre. Entonces Hola Sarah. Y te darás cuenta de nuevo, aparece aquí. Este es nuestro camino en shell y cualquier texto o cualquier cosa
que imprima usando esta declaración print va a aparecer dentro de esta
Python en shell. Entonces podemos imprimir más de
una línea si queremos. Tenemos nuestra primera declaración,
que fue hola Sarah. Ahora digamos que queremos
escribir, ¿cómo estás? Bien, ahora ya verás
cuando ejecutemos nuestro programa, está impreso era Hellas luego en la siguiente
línea, está impreso ¿Cómo estás imprimiendo dos estados de cuenta impresos
diferentes? Entonces es tan sencillo
como eso. Quiero decir, no
podría ser más fácil, esencialmente, como
acabamos de decir, eres programador, así que,
vamos, pruébalo. Pruebe algunas declaraciones impresas.
Es una forma divertida de empezar, y solo va a ser más y más divertido de aquí en adelante.
86. Estoy estancado. ¿Ahora qué?: Solo quería tocar rápidamente la programación y depuración Eso es deshacerte de
los pequeños bichos bestiales que entran en tu programa
y resolver problemas La programación es una especie
de proceso iterativo. Significa que tienes que dar
vueltas y vueltas. Cometes errores.
Tienes que averiguarlo. Y eso es lo que
lo hace emocionante. como un proceso
de resolución de
problemas. Y entonces sí hay que
seguir intentándolo. Y a medida que vayamos por el
curso, ya lo verán. Te daremos ejemplos
donde realmente nos
equivocamos a propósito para que podamos mostrarte y cómo
resuelves las cosas. Ahora, vas
a aprender mucho en este curso, pero garantizado, absolutamente al 100%,
van a ser cosas que vas a probar
que simplemente no parecen funcionar como te dijimos. La Opción entonces es
llegar ahora a alguien, y lo encantador
es que Google está ahí. Google. Puedes venir
aquí y decir, por favor ayúdame. Google simplemente le
gustará, Bien, bien. Quizá eso no te
ayude. Tienes que ser un poco
más específico. Simplemente puedes simplemente Google
literalmente sea lo que sea. Digamos, tienes una
consulta de Path sobre algo. Ahora, uno de los lugares que
encontramos que es
realmente bueno es StackOverflow Solo puedes Google
Stackoverflow y lo encontraré. De hecho, Google te llevará directamente a Stackoverflow
y te permitirá
escribir una búsqueda
solo en ese sitio El desbordamiento
de pila es donde mucha gente inteligente comparte ideas, hace
preguntas, obtiene respuestas. Por ejemplo, mencionamos anteriormente a veces cuando
instalas Wing one oh one, está usando la versión incorrecta de
Python solo para darte
un ejemplo, self. Dije Wing one oh one, versión
incorrecta de Python, y cuando apilar desbordamiento, va
a llegar a muchas opciones. Aquí vamos. Configura
Python 3.32 a partir de eso Dices, Oh, yo podría leer eso, y probablemente vas
a encontrar tus respuestas. Entonces básicamente, todos
estos diferentes sitios o enlaces que vienen preguntas que la
gente ha hecho. Notarás que si
buscas algo incluso
en desbordamiento de pila, se han hecho
casi todas las
preguntas. Si tienes algún problema, hay una gran posibilidad de que
alguien más haya tenido
exactamente el mismo problema. Entonces con la programación, si
tienes alguna pregunta, no te limites a ir a uno
de estos sitios y escribir tu pregunta y
esperar a que alguien te responda. Los programadores se molestan mucho
si no te has metido en la investigación y en realidad no
has intentado encontrar la respuesta
antes de preguntarle
a Sí, pero muchas de estas preguntas han
surgido una y otra vez. Es decir, esto lo
preguntaron hace cuatro años. Solo asegúrate de haber
investigado completamente tu problema, y si realmente
no puedes encontrar una solución, entonces ponla en
uno de estos sitios Lo que también es muy bueno desbordamiento de
Ssk Stack es que
las respuestas se votan
dependiendo de lo buenas que sean Entonces verás si respuesta tiene más likes o
lo que sea, sube más alto. Entonces obviamente funciona
para más gente. Entonces, si no encuentras la
respuesta en ningún lado aquí, has buscado en todo el sitio. Realmente no lo estás
haciendo bien, entonces por todos los medios, pulsa hacer una
pregunta y escribe
tu propia pregunta. Entonces, la línea de fondo es que
vas a tener que
llegar a la gente. Pero en nuestro moderno mundo de Google, con tantos expertos conectados, tienes la garantía de que
vas a encontrar tu respuesta. Sea cual sea el problema que
hayas tenido, puedes estar seguro de que alguien más
tuvo ese mismo problema. Así que prepárate para eso.
Sólo tienes que salir, buscar, y antes de que te des
cuenta, vas a obtener una
respuesta a tu pregunta. Eso es parte de la aventura. Ahí radica el
aprendizaje. Aprender radica en cometer errores, y luego
corregirlos. Y lo que es emocionante es que hay
tanta gente ahí fuera. Y, por supuesto, estamos más que contentos si
quieres comunicarte con nosotros, haznos una pregunta,
estaremos encantados de ayudarte también. Pero a medida que avanzas, medida que te
vuelves cada vez más poderoso e
increíble e inteligente, vas
a querer extender tus alas. El juego de palabras. Extiende tus alas y busca en la gran web
respuestas a tus preguntas.
87. Resumen: Ya hemos llegado al
final de la sección, y ahora todos ustedes son programadores Básicamente podríamos
parar ahora y
podrías irte a casa y terminar, pero creo que hay
mucho más que puedes. Hay mucho más por venir y cosas
mucho más emocionantes. Verás a medida que vayas mejorando
y mejorando en la programación, se vuelve cada vez más emocionante
y más interesante. Un resumen rápido de lo que hemos
hecho en esta sección. Descargamos Python,
descargamos Wing y escribimos nuestro primer programa. Hasta ahora, has aprendido
un comando de Python, print, y has visto el resultado aquí abajo
como similar a ese. También mencionamos cómo puedes llegar y obtener algo de ayuda. Encontrarás entornos como
Wing si tienen manuales
y cosas y algún tipo de eso incluso te
llevan
al manual de Python que siempre te
puede ayudar si
quieres e incluso al sitio web de
Python. Mucho. También a menudo miro la documentación para cualquier
idioma que estés usando. Entonces, si en realidad solo vas y miras la
documentación de Python, explica bastante bien exactamente qué hace todo y cómo está destinado a usarse. Nuevamente, mucho de lo que pasa incluso desde
la instalación de los módulos, hasta los tutoriales, etcétera, está aquí Entonces esa es otra opción de lo que puedes hacer
para dar la vuelta. Entonces, eso es todo. Estás al
final de esta primera sección. Te ha ido extremadamente bien. Puedes ir y solo tal vez
descansar un par de minutos, y te veremos de nuevo
del otro lado porque
va a empezar a ponerse realmente
emocionante a medida que avanzamos.
88. Variables: porque el cambio es bueno: Bueno, se va a poner
realmente emocionante ahora porque queremos cubrir
algo llamado variables. Ahora, antes de que pienses, ¿qué pasa el mundo son esas cosas? En la vida, todos necesitamos
lugares para guardar cosas. Entonces, quiero decir, si
tienes zapatos, quiero decir, tal vez los vas
a guardar en un armario a menos que
tengas muchos zapatos Si tienes comida, ya sabes, leche y queso y
cosas así, vas a guardarla
en un refrigerador. Si tienes un auto, lo vas a guardar
en una cochera. Todas estas cosas deben
almacenarse en algún lugar, y esas son contenedores útiles, y lo mismo se aplica cuando se
trata de programación. Tenemos que guardar cosas porque a veces hay
que recordar cosas. Entonces tal vez necesites
recordar una puntuación alta en un juego o cuál es el
contador y algo así. Hay tantas razones por las que
necesitas recordar cosas, y esos pequeños contenedores que almacenas cosas
y que
quieres recordar se
llaman variables. Así que echemos un
vistazo a cómo implementas variables dentro de Python. Bien, entonces así es como
usamos las variables. Básicamente, la sintaxis para crear una nueva variable
es muy simple. Entonces digamos que
quiero guardar mi nombre. Yo creo una variable llamada name, pero solo escribiendo name. Luego ponemos un igual,
que se conoce como operador de asignación y lo
igualamos a lo que
quisiéramos nombre para almacenar. De nuevo, voy a almacenar a Sarah. Todo esto que está haciendo es que
solo está tomando la palabra, Sara y ahora la está
guardando dentro de la alacena Contenedor. Contenedor. Entonces en este caso, las variables muy
importantes que le des a tus variables un nombre
que sea significativo. Entonces por ejemplo, en realidad podríamos
haber llamado a esto X. Pero más tarde, cuando empieces a trabajar
con tus variables, vas a decir, ¿Qué era X? Ah, no puedo recordar. Así que siempre dale a tus variables
un nombre útil. Entonces, debido a que esta
variable en particular está almacenando nombre, lo
hemos hecho, de hecho,
podríamos incluso querer ser más específicos y
llamarlo nombre de pila. Entonces simplemente está
tomando el nombre de Sarah. Ahora fíjate que su nombre
es comms invertidos. Es muy importante. Eso lo explicaremos en un momento, y es asignarlo
a la variable Entonces también hay
un par de nombres que no puedes usar como variables. En primer lugar, una cosa
que no puedes hacer o un nombre no puedes hacer una variable no puedes
hacer una variable, comienza con mayúscula. Esto simplemente no es
sintácticamente correcto. Los programadores nunca inician la línea de código con mayúscula para
casi cualquier cosa En todos esos años donde tus profesores de
inglés te
decían que hicieras eso, y ahí
sale por la ventana. Eso es lo que nos gusta
de la programación. Se mete con las reglas. Aquí, lo siguiente que no
puedes hacer es comenzar con un número
o cualquier símbolo. En cuanto lo haga, verán
que esto realmente
ha cambiado color porque ya no entiende lo que está haciendo. Entonces no se puede comenzar
con un número. No se puede comenzar con un símbolo. Básicamente, lo mantienes simple, escribe tu nombre de variable, algo que tenga sentido y luego solo
asignarlo a lo que quieras. Ahora, podrías, si quieres
llamarlo primer nombre número uno. Está bien poner un
número al final del mismo porque tal vez estés
almacenando el primer nombre uno, nombre dos o
algo así, está bien. Pero generalmente, mantenlo simple, mantenlo en minúsculas y mantenlo algo
que tenga sentido Bien, entonces verás esa
impresión si ejecuto este programa, no
va a hacer nada, y eso es porque
en realidad no he impreso nada. Así que ahora vamos a imprimir nuestra variable. Entonces lo que básicamente queremos hacer es que queremos imprimir
el nombre Sarah, pero queremos imprimirlo usando el nombre de las variables,
que es nombre de pila. Entonces para hacer eso, ahora todo lo que tienes que hacer es tocar
el nombre de las variables. Entonces te darás cuenta
aquí, no
lo he puesto en
comas invertidas ni nada Si es una variable,
solo la escribes tal como es, nada alrededor de ella, y
ahora cuando la
ejecutemos, verás que ahora está impresa. Entonces porque es una
variable todo lo que realmente se hace es imprimir lo que está
almacenado dentro de aquí. Sarah dijo, es
muy importante que eso no sea una coma invertida ¿Qué crees que
pasaría si le pusiéramos comas
invertidas? Piénsalo. ¿Qué pasaría si pusiéramos comas
invertidas alrededor de esto? Ponga dos
comas invertidas y ejecútela. En realidad está imprimiendo
la palabra nombre de pila, igual que imprimió
la palabra Serra. Ahora pienso que es
justo lo que se llama una cuerda y es
solo imprimir eso. Con una variable, no pones tu variable en comas
invertidas porque realidad
estás
interesado en lo que está almacenado dentro de ella.
Es un contenedor. Podemos eliminarlos y
podremos imprimir el nombre
que ahí está almacenado. Ahora, lo que también es
bueno con las variables, y esto veremos si
se vuelve poderosa es que solo podemos cambiar lo que
entra en la variable. Así que ya podemos poner mi nombre aquí. Y sin cambiar
esta pieza de código, notaremos en la parte inferior, cambia para imprimir mi nombre. Entonces está cambiando porque se trata
simplemente de imprimir lo que
se almacena dentro de la variable. Entonces así es como
funcionan las variables de manera realmente simple. Una vez más, realmente puedes poner lo que quieras dentro
de estas comas invertidas, pero lo que sea que esté dentro
de las comas invertidas ahora se convierte en nombre de pila Entonces, si quería hacer cambios
en tal vez un saludo, Ahora bien, qué va a
imprimir, Craig, ¿cómo estás? Entonces puedes hacer esto
todo el tiempo que quieras, pero obviamente, quieres hacer algo
que tenga sentido. Ahora bien, esto ya no tiene
sentido porque hemos llamado un
nombre de pila y hemos dicho, Craig, ¿cómo estás? Entonces es posible que desee
cambiar esto a
llamarse saludo y
más bien imprimir saludo. Entonces hay mucho más que
vamos a hacer con las variables. Los usamos en casi
todas las cosas. Probablemente sean una de las partes más importantes de la programación. Noto que
lo he cambiado a saludo. ¿Qué crees que
va a pasar ahora? Voy a saludar,
Craig, ¿cómo estás? Y luego vamos a
decir imprimir. Nombre de pila. Bien. Verás aquí abajo, Python no está contento. Básicamente te está diciendo
en medio de todo esto, es decir en la línea tres. En la línea tres,
verás por aquí, algo malo está pasando. Dice, tienes
esta cosa donde dice imprimir primer nombre, pero no sé qué es. El nombre no está definido. Bien, entonces lo que
realmente dice es que no
hay ninguna variable llamada primer día. Ve, A, mira, cometí un error porque cambié
el nombre de mi variable. Mi variable es
en realidad saludar. Entonces si lo ejecuto ahora, ahí vamos. Otro error común que la gente sí comete es si pones
esta declaración impresa, antes de la declaración de saludo, ¿qué crees que
va a pasar? Nuevamente, dice que no está definido. Entonces esto podría ser
confuso porque dirás que lo has
definido aquí abajo. Pero la forma en que funciona Python es que lee lo que has escrito
de arriba a abajo. Entonces, si has impreso saludo pero no has definido saludo
antes de
imprimirlo, no sabe de
lo que estás
hablando porque es la línea roja uno, imprime saludo y
eso es todo lo que se lee. No te ha visto definir la variable saludo
en la línea tres. Bien, entonces es muy importante que definas tus variables adelantado y las cargues
con el contenido antes
de intentar trabajar con ellas con el contenido antes
de intentar trabajar con Entonces esa es básicamente tu introducción a las variables. Así que diviértete un poco. Crea algunas pequeñas variables tantas
como quieras, y usa el comando print
o la sentencia print, y podrás imprimir lo que hay
en ellas. Vamos. Que se diviertan un poco.
89. Tipos de datos: porque no todos son iguales: Hablar de guardar cosas. Hemos hablado de variables. Ahora, mencionamos que las variables son como lugares de almacenamiento
donde pones las cosas. Pero cuando lo piensas, en realidad
tienes
diferentes lugares donde almacenas
diferentes cosas. Entonces, ya sabes,
podríamos ver algunas de estas cosas en un contenedor grande como ese que almacena cajas, o supongo que podrías
guardar un auto ahí, pero no guardarías tu pavo congelado para
Acción de Gracias aquí, ¿verdad? Y supongo que a menos que
tengas una enorme oferta de zapatos, probablemente no
usarías esta tienda tus zapatos y eso
iría en tu alacena Y sigue y va, si
tienes libros, vas a
guardar libros tal vez en algún tipo de estantería Entonces el punto es que almacenamos diferentes cosas en
diferentes espacios. Los autos van a los garajes, comida va a las neveras, los cuchillos y tenedores
van a los cajones, y sigue y sigue Por lo que es importante cuando llegamos
a nuestra programación que nos demos cuenta de que diferentes espacios
almacenan cosas diferentes. Y así nuestras variables son en realidad de diferentes tipos y se
llaman tipos de datos. Entonces cuando llegamos a las variables, no todas las variables son iguales. Entonces empezamos, y
miramos la única variable, que era un saludo o un nombre, y teníamos algo que
almacenamos en ella. Pero en realidad necesitamos
entender que obtienes diferentes
tipos de variables, y es importante que lo
entendamos un poco. Hay un par de
diferentes tipos de variables, pero nos vamos a centrar en las variables
más importantes y
básicas que tiene Pan. Puedes ver aquí hay una lista de los
diferentes tipos de datos, y en realidad vamos
a cubrir la mayoría de estos. Pero para
empezar, voy a
mirar a los tres primeros. En primer lugar, voy
a mirar cadenas porque en realidad ya
sabes qué son las cuerdas. Entonces si volvemos a nuestro
programa, ya verás, recuerda cuando te lo dije, si estás escribiendo
algo que sea texto, ponlo entre comillas. Así que esto realmente crea
algo llamado cadena. Entonces, básicamente, cualquier cosa que pongas entre
comillas es una cadena. Entonces lo que pasa con las cuerdas
es que está totalmente ignorado. Lo que sea que pongas ahí,
puedes poner lo que puedas poner en
símbolos especiales si quieres. Se puede poner en
casi cualquier cosa. Esa es la cosa con
una cuerda. A una cuerda no le importa lo que haya ahí dentro. Así que puedes volverte loco aquí dentro. Incluso puedes almacenar solo un
número entre comillas, pero ahora
ya no es un número. Se ve como una cadena o texto. Bien, eso es muy importante
porque veremos un tipo diferente o
diferente tipo de datos que te
permita almacenar números. Entonces, si quisieras
hacer cálculos, no
almacenarías
tu número como una cadena porque entonces no lo
verá como un número. Bien, así que ya puedes ver aquí otro
tipo de datos son los números. Por lo que los números se pueden dividir en un par de
subcategorías diferentes Los más importantes
que realmente necesitas
conocer son los enteros y los flotadores Entonces puedes ver aquí, básicamente, si intentas resolverlo, puedes ver fácilmente que un entero es algo que no tiene decimal. Entonces básicamente, es solo
uno sin puntos. Es un número entero.
Cinco, siete, tres, y una lata decimal De nuevo, muchas veces no necesitas
los decimales. Entonces tal vez estás haciendo un contador. Cuantas ardillas hay en mi
Gard y una, dos, tres. Nuevamente, a menos que le hayas hecho algo
a una de las ardillas, no
deberías tener
1.1 ardillas Pero si estás haciendo
un cálculo, ¿cuál es el promedio
de ardillas en mi Gard? Y obviamente, ahora tal vez quieras obtener
el número promedio es 3.2. Entonces ahí es cuando decidirías si estás usando
un entero o no. El Python es bastante inteligente, y casi automáticamente
averiguará qué tipo de datos
estás tratando de usar. Entonces si ahora escribo mi número, como mi
nombre de variable y quiero asignarlo al valor numérico. Puedo asignarlo a
lo que quiera. Digamos que quiero ir 38. Ahora he creado una
variable llamada mi número, que está almacenando un tipo de
datos llamado un entero en lugar de antes donde teníamos
un almacenamiento de una cadena. Ahora si
quisiéramos imprimir esto y queríamos imprimir mi número. Vas a
verlo solo imprime 38. Seguro que puedes adivinar. Ahora pongo si pongo
comillas alrededor de este 38, en realidad imprime
exactamente lo mismo. Entonces imprimiendo solo un valor. Es solo mostrarte el
contenido del número. En realidad no está haciendo
nada con él. Pero veremos en un momento que si no es un entero,
puedes tener un problema. Ahora donde esto se vuelve importante es cuando se quiere sumar
cosas o restar cosas, que
en realidad veremos con más detalle más adelante Pero por ahora, solo necesitas
saber si quieres
escribir un entero,
solo escríbalo. Si quiero hacer ahora,
que sea un flotador, solo
puedo poner el decimal, y esto ahora se llama flotador. Bien, entonces el último
tipo de datos que vamos a ver es un
tipo de datos llamado Boolean Los booleanos son básicamente una
palabra elegante para verdadero o falso. Sí. Se, esto es
algo genial de aprender el programa porque puedes impresionar a tus amigos y familiares. Ahora, prueba esta cosa, te lo
prometo de esta manera. Vas a servir la
cena esta noche. Ojalá, todavía
cenes alrededor de la mesa. Y
lo estás cantando alrededor de la mesa y solo platicando,
platicando , y luego solo dices:
Oh, perdón, ¿puedes
pasarme el Booleano Me refería a la sal, y toda
tu familia te va
a mirar y se va, Hombre. ¿Qué hiciste? Eres tan listo. Y te lo prometo
de ahí en adelante, ellos van a pensar que
eres la persona. Así que impresionarlos
con las grandes palabras, gran palabra para que
los impresione con un booleano Entonces, ¿qué son mil millones? Sí, bueno, en realidad, de
nuevo en eso, hecho
recuerdo en mi primera conferencia
sobre programación, mi profesor me dijo que a los
programadores les encanta usar palabras
confusas para cosas
más simples para hacer que
todos los demás piensen que
estás hablando de algo que es realmente
complicado y Obviamente, así que eso es básicamente
lo que es la programación. Si solo aprendes las palabras
más confusas, en realidad
estás aprendiendo cosas que ya
conoces, pero justas. Así que solo les gustan las palabras de fantasía. Exactamente. Por eso estamos tratando que esto sea accesible
para todos. Sabemos que cualquiera puede hacer esto si solo te pones
tu mente en ello. Así que de vuelta en T Booleanos,
verdaderos o falsos. Entonces ahora vamos a escribir una variable
booleana. Sí, porque mi número no tendría sentido para ser booleano Bien, la gente a menudo solo
acorta el booleano a Bo. Bien, entonces como dije antes, este solo puede ser el
valor verdadero o falso. No puedo escribir
nada más en valor booleano. En cuanto escribo algo que no dice verdadero o falso, ya no
es un valor booleano Entonces esto realmente no hace
nada muy emocionante, pero verás por qué
son tan importantes más adelante. Simplemente va a
imprimir el valor verdadero. Pero si cambié
esto a uno verdadero, ahora
se va a quejar porque piensa que
esto es una cadena, pero no tenemos
comillas alrededor de ella. Sí, y también, como
ves en la parte inferior aquí, realidad piensa que este
es el nombre de una variable. Entonces, abajo,
notarás que no está definido como
decir que uno verdadero no
está definido porque está asumiendo que esto debe
ser una variable, algo en lo que has
almacenado algo en otro lugar, pero no puedo encontrar. Obviamente, si hiciste esto y le pones
comas invertidas a su alrededor,
bueno, obviamente, ahora, a
pesar de que se llama Moul, en realidad
esto es solo una
cadena que has creado Así que en realidad no has
creado un booleano en absoluto. Y así es por eso
que es importante. Incluso si haces eso, recuerda, eso todavía no va a ser
un booleano. Es una cuerda. Entonces los booleanos son simplemente, como decía Sara, verdaderos o falsos Y también puedes ver un
cambio de color, diciéndote que esta es una palabra
reservada en Python. Entonces entonces obviamente, también
puedes usar false. Otra cosa solo
asegúrate de que estás haciendo es para los valores booleanos, la primera theta tiene
que ser una mayúscula,
entonces es cierto con una T mayúscula o falso con una F
mayúscula de lo contrario, nuevo no Asegúrate de que sea
el color correcto. Sí, estas son algunas de las tonterías de estos lenguajes de
programación. Se ponen un poco irritantes,
pero te acostumbras a ello. Mencionamos anteriormente
que no
comienzas tus variables
con la mayúscula, pero puedes, como ves aquí, tener una letra mayúscula
dentro de tu nombre de variable, lo que a veces ayuda a intentar
que sea más fácil de leer. Entonces podrías tener mi nombre
o mi cuerda o mi toro. Y así como lo tienes,
tenemos una gran B. Así que está bien. Entonces letras minúsculas al principio, pero cuando estás asignando
un valor booleano, debe
ser una
F mayúscula o así esos
son los tres tipos de datos más
importantes que necesitaremos por ahora, y ya sabes
mucho más Se puede ver que
hay un par más. Veremos algunos
de estos más adelante, pero estos son todo
lo que necesitas por ahora.
90. Operadores: Para mirar a algunos operadores. Ahora, qué operadores, ya sabes, hiciste matemáticas en
la escuela, más menos. ¿Cómo se
llamaba esa cosa bod Mass? Soportes de división. Sin embargo, pensabas que esas cosas no
tenían valor. Por supuesto,
tienen valor. Como sabes, cuando
vas a sacar ese calculador y hacer ejercicio, ya
sabes, cuánto propina tienes para darle a
alguien o lo que sea. Estás usando operadores. Y lo mismo aplica
en nuestra programación. Y hay una gama de
exactamente los mismos operadores, y algunos pequeños
especiales que simplemente hacen la vida un
poco más fácil. Entonces tenemos plus. Muy sencillo. Si quiero tomar A más B, son 30. Es tan
simple como cualquier cosa. Entiendes la resta, así que ese es solo el
pequeño guión, el pequeño guión es
nuestra La multiplicación en la
programación no es una X. Es el asterct de la estrella Entonces ese es un símbolo que usamos para multiplicar dos
valores juntos La división es una barra delantera, no una espalda. Ten
cuidado con eso. Debe ser una barra hacia adelante. Eso es lo que usamos para la división. Bajando, aquí hay una
pequeña especial. Es este signo de porcentaje, y es lo que
se llama módulo. Es exactamente lo
mismo que la división. La única diferencia es que te
da como respuesta, cuál fue el resto. Por ejemplo, si tuviera
cuatro divide o 5/2, y lo usé como división, obtendrías la respuesta
de 5/2 va y dos veces,
así que tienes dos puntos, cualquiera que sea Si hiciera un módulo y pusiera cinco y signo porcentual dos, diría, bueno, dos
va a cinco dos veces, eso es dos, resto uno. Y así la respuesta sería la porción restante, sólo una. Entonces eso es lo que es el módulo. Y podemos recoger un
poco más tarde donde
veas que lo usas, pero por el momento no es
tan importante. Exponente. Ahí es cuando algo está al poder de algo. Voy a 110 a la potencia de dos, entonces va a ser un diez starstr dos Y finalmente,
tienes esta cosa que se llama división de
piso, y básicamente todo lo que
hace es redondear algo Entonces decimos nueve fuertes,
menos forjar menos dos, en vez de darte cuatro
puntos algo, es solo darte los cuatro Entonces no te está dando ninguna de las partes restantes. Te está
dando un entero. Esos son los operadores básicos. Entonces estos son operadores muy
geniales, y veamos cómo
podemos usarlos realmente. Bien, así que
comencemos con la fácil. Vamos a crear una variable que
va a almacenar un número. Pero en realidad,
vamos a hacer que esta variable sea un poco más interesante. No sólo vamos
a almacenar cinco. Quiero almacenar cinco más dos. Entonces ahora, dentro de esta
variable M num, en realidad es al principio, lo primero que
va a hacer es que va a sumar cinco más dos, que es siete, y
luego va a tomar el valor siete y
almacenar eso en mi num. Entonces no es almacenar
toda esta expresión en su lugar, lo
primero que pasa cuando se ejecuta
el programa, lo que hace es que se
necesitan cinco más dos. Bien, eso es igual a siete, y luego va M num ahora
es igual a siete. En comparación con si ponemos lo que crees que
pasaría si
pusiéramos dos pequeñas
cadenas por ahí, comas
invertidas, eso
sería algo totalmente diferente Entonces
en realidad estaría almacenando cinco más dos la
expresión real ahí dentro. Si metemos mi num y corrimos eso, vas a ver impreso
del fondo por aquí, tiene cinco más dos. Pero si lo quitamos entonces mira hacia abajo hasta la
parte inferior de tu pantalla, verás que tiene siete. Así que hagamos de hecho esta declaración impresa un
poco más emocionante porque digamos que estamos
ejecutando este programa y lo
ejecutamos y vino
y imprimió siete. Eso realmente no te
dice mucho. Ni siquiera
te dice que lo que
realmente estás tratando de
resolver es cinco más dos. Entonces, para
decirle realmente a la persona que está leyendo tu salida de tu programa lo
que estabas tratando de hacer, lo que puedes hacer es agregar más de un elemento
a tu declaración impresa. Entonces lo que ahora
voy a hacer es que
en realidad voy a imprimir
primero una cadena que dice cinco
más dos es igual a. Y luego voy a poner una coma e
imprimir la variable Entonces básicamente lo que
está haciendo la coma es que es que
le está diciendo a Wing o Python que quieres imprimir
dos cosas diferentes Póngalos juntos. Armarlos en
una sola declaración impresa, ejecútelo y hábilmente tenga más
sentido Sí, ya ves en la parte inferior
cinco más dos es igual a siete. En realidad, este es un tipo de
lo que se llama concatenación. Es donde estás poniendo dos cosas y
sumarlas juntas, donde estás agregando una cuerda
y algo juntos. Entonces esa es una palabra elegante. Puedes agregarlo a otras palabras elegantes que
ya aprendiste. Entonces es simplemente
tomar dos cosas. En este caso, es
tomar una variable de cadena o más bien un número de
variable de cadena, una variable entera e
imprimirla junto a un trozo de texto o una realmente puede concatenar tantas
cosas como quieras en esta declaración print diciendo que quiero poner algunos signos de
exclamación, ahora
va a
imprimir la cadena,
cinco más dos, luego la variable, M o más bien un número de
variable de cadena,
una variable entera e
imprimirla junto a
un trozo de texto o una realmente puede
concatenar tantas
cosas como quieras en
esta declaración print diciendo que
quiero poner algunos signos de
exclamación, ahora
va a
imprimir la cadena,
cinco más dos,
luego la variable, M
número, y luego
otra cadena, que tiene un montón
de signos de exclamación. Eso fue suma con enteros. Nuevamente, puedes agregar dos flotadores si
quieres , y eso es
lo mismo Además siempre va a hacer lo mismo.
Se va a sumar. O obviamente esto ya
no es cinco más dos porque ahora está
haciendo 5.1 más 2.1. Pero de todos modos, básicamente lo que
estoy tratando de decir es que
puedes agregar dos entegers,
puedes agregar Es solo suma,
suma normal como lo haces en matemáticas. Bien. Entonces vamos a
decir, resta división Todo es bastante
autoexplicativo. Si ponemos un menos ahí, va a imprimir
cinco menos dos. Si recuerdas cuál era
el signo de división,
fue este slash delantero Ahora va cinco
dividir por dos. Entonces si eres realmente listo, tal vez recuerdes lo que hizo
esta cosa llamada división de
piso. Básicamente me llevé los cinco y solo está
imprimiendo los dos. Básicamente se trata de
convertir ese flotador, que debería imprimir 2.5, 5/2 Esto ahora solo
imprime el entero, así que básicamente borra todo después
del decimal ¿Qué pasa con ese módulo uno? Te voy a mostrar lo que hizo el
módulo uno si te gusta te estamos
explicando antes, imprime
lo que queda. Entonces obviamente, dos
va a entrar en cinco, dos veces, como mi papá
explicó antes. Quedan dos o cuatro con uno. Entonces, si cambiamos esto a solo
digamos ninguno, también
va a imprimir uno. Excelente. Qué gran ejemplo fue
ese. ¿Qué tal cinco? Bien, podemos engordar. Después del trabajo. Excelente. Cinco va a nueve, un resto, cuatro. Bien. ¿Y qué pasa con nosotros
no hicimos multiplicador? Gato espera ¿recuerdas lo que suena
el multiplicador?
¿Pensaste que era eso? No, no es eso. Es
eso. Bien, nueve por cinco. 45. ¿
Lo arreglaste antes mirar? Ojalá lo
hayan resuelto. Bien. Ahora, lo divertido con los operadores es
que con tapetes, obviamente, operadores, que
solo usas son con números. Pero en la programación, en realidad también
puedes usarlo con cadenas. Así que vamos a crear una cadena. Hagámoslo nuestro color
favorito, por ejemplo, mi color
favorito es el azul. En lugar de simplemente decir azul, quiero agregarle algo. Entonces con cadenas, solo
puedes agregar cadenas a cadenas y enteros
a enteros o básicamente, solo
puedes agregar una cadena
a una cadena y solo
puedes agregar un
número a un número No se puede mezclar. Cuando trabajas con tipos de datos, no
puedes mezclarlos. Eso no les gusta.
Se ponen muy molestos. Entonces, si queremos sumar
dos cadenas juntas, bueno, tienen
que ser ambas cadenas. Si intentas agregar un número
entero a una cadena, no
va a bajar. Guau. Bien, así que ahora voy a imprimir esta cadena concatenada cadena llamada
mystring Y va a simplemente
imprimir esa frase. Pero lo que sí notas aquí
es cuando usas esta edición, no
pone en este espacio. Básicamente es simplemente tomar
lo que escribiste ahí y agregar lo que escribiste ahí directamente hasta el final
de lo que está antes. Una cosa que deberías
una cosa que debo
decirte al agregar cadenas es que ya no se
llama adición, ahora
se llama concatenación Esto en realidad se llama concatenar dos
cadenas juntas Pero obviamente, lo que
he hecho aquí, realmente
no tiene sentido porque podría haber puesto todo eso dentro de
la primera cadena. Digamos que quiero hacer llamémoslo Musring uno
y ahora quiero llamarlo a esto Mi color favorito. Ahora en lugar de imprimir, juntando esos dos
en el primero, ahora los
he puesto en sus
propias variables separadas, y ahora los voy a
concatenar en
la declaración print como les mostré antes Bien, ahora, aquí, de nuevo, notarás que no
pone en ese espacio para ti. Entonces, si quieres un espacio,
es bastante sencillo. Usted acaba de poner en su propio. Obviamente, un espacio es
solo una cuerda con. Acabo de hacer clic en
la barra espaciadora ahí y la agregué entre ellas
y la volví a imprimir, y ahora la tengo en un centro de aspecto más
correcto Entonces, esencialmente, lo que hemos
hecho es que hemos
sumado dos variables
que hemos creado, MyString y MyString one, que son ambas variables de cadena, y hemos creado
una pieza de texto, una pieza de cadena que
estamos agregando como parte de Entonces mientras estos sean
todos lo mismo, donde se va a enfadar es si empiezas
a mezclar las cosas, ahora estamos tratando de agregar lo que no es una
cadena a una cadena. Eso es un entero. Aquí abajo, verás error de tipo. No muy contento con
lo que has hecho. Algo malo, no lo hagas.
Esto no es una cadena. Debe ser una cuerda, e
incluso te dice ahí. Así que mantén
juntos los mismos tipos de datos y la vida será feliz. Con cadenas, todo lo que puedes hacer
en realidad es sumar, lo que dijimos se
llamaba concatenación No se puede restar,
multiplicar o dividir porque eso realmente no tiene sentido Qué es M menos el color favorito.
Eso no tiene sentido. Bien, entonces con cadenas, puedes usar suma
con números, puedes volverte salvaje y usar cualquiera
de esos diferentes operadores. Entonces antes de donde te
mostramos aquí, tratando de agregar este
número nueve a una cadena, viste que obtuvimos un error. Así que de nuevo, obviamente, bueno,
tal vez no obviamente, pero si hicimos esto un número
entero en su lugar o un número, llamémoslo Mt y digamos que es igual a 14. Ahora en esta declaración impresa, si ahora fuimos M Int, más cinco y decidimos
imprimir eso, no nos va a dar
un error porque Python se
ha dado cuenta de que este valor
aquí es un número. Este valor aquí con el que estamos
sumando es un número, así que sí, puedo hacer esto. Pero si este cambio a mi
cadena, como vimos antes, ahora se evalúa esto
primero como azul, como
lo hemos definido aquí arriba, y el segundo,
se evalúa como entero o como número. Ahora nos lo ha dicho, ¿cómo puedo
añadir una cadena a un número? Eso es imposible y nos
va a dar un error. Correcto, por lo que es una breve introducción a
los distintos operadores. vamos a estar
usando mucho. Puedes familiarizarte
bastante con
ellos a medida que avanzamos. Pero como ves,
no son tan difíciles. No es tan diferente
a lo que hubieras
aprendido solo en tus
matemáticas de vuelta a la escuela Entonces eso son los operadores, y diviértanse un poco,
jueguen con ellos. Y mientras mantengas
a tus operadores todos al mismo tiempo,
la vida será buena.
91. Cómo ser interactivo: un poco de entrada: Ahora vamos a
ver algo que te permita
hacer tu programación un poco más emocionante y casi un poco más personal
para tu usuario. Porque por el momento, quiero decir, hemos estado usando
print, pero, ya sabes, eso es como cuando todo es
output. Necesitamos algunos. Entrada. Entrada. Así que sigamos
adelante y miremos Input. Ya sabes, conoces a esas
personas que son todas solo platicas, nunca te
dan un momento. Sí, bueno, de eso se trata de lo que
han sido las impresiones. Sólo habla, habla, habla. Es hora
de que consigas alguna entrada. Bien, así que por suerte con Python, nos lo
han hecho
muy fácil. Así que mucho antes de que lo tuviéramos,
vamos a poner en una
declaración impresa. Imprimir, hola. Ahora podemos usar Input. Entonces nuevamente, solo tecleamos input. Y ahora, básicamente,
lo que sea que pongas dentro estos soportes es en realidad lo que se va a
imprimir en la pantalla. Entonces es casi como si
estuvieras haciendo una pregunta. Bien, así que preguntemos al
usuario cuál es su nombre. Entonces, ¿cuál es tu nombre? Sí, ¿cuál es tu nombre? Bien, entonces ahora es como dije, lo que sea que pongas
aquí es la pregunta, y te da ahora este
pequeño cursor parpadeante, lo que significa que puedes escribir
dentro del caparazón ahora. Entonces mi nombre es Sarah. Y luego simplemente fui e imprimí
lo que sea que escriba el usuario. Así que vamos a ejecutarlo de nuevo
e imprimir otra cosa, cuál es tu nombre, Craig. Y simplemente se ha ido adelante
e imprimió a Craig. Entonces eso no es demasiado
emocionante, pero quiero decir, es tomar lo que el
usuario ha escrito, y lo ha leído y
ahora sabe que el
nombre del usuario es Craig Sí, Path es bastante feliz. Pero no sólo queremos
leer un nombre y dejar que
se reimprima. De hecho queremos hacer
algo con esto. Sí, tenemos que
guardarlo en alguna parte. Entonces, ¿cómo se
llaman esas cosas? Esas variables. Sí, exactamente. ¿Eres estas variables que son una
buena razón para existir? ¿No solo para guardar zapatos
y autos y turcos? Lo es, y he guardado mi nombre. He guardado esto bien, he guardado la respuesta a esta pregunta dentro de
la variable, mi nombre. Entonces podría ser un
poco confuso. Se pensaría que esto está almacenando todo
esto Input.
¿Cuál es tu nombre? Pero mi nombre no está almacenando esto. Se trata de almacenar cualquier tipo
de usuario. Entonces otra vez, ya verás, ¿cuál es tu nombre si luego
voy y escribo Sarah? No va a hacer
nada, pero lo que Parton realmente ha
hecho es que ha tomado este valor Sarah como cadena y
lo ha guardado dentro de mi nombre Entonces podríamos echar un vistazo dentro esa variable de mi nombre y tener un pequeño apretón y ver
qué hay almacenado ahí dentro Entonces, usando nuestra declaración impresa, ahora
queremos imprimir mi nombre. Y mira lo que
en realidad está almacenando. Hagamos un nombre diferente. Molly. Bien, vamos a hacer Molly. Eso es genial. Ahora, sin cambiar el
código real del programa, podemos seguir ejecutando este programa y
escribiendo nuevas entradas, y esas se están almacenando. Para que puedas
ver de inmediato lo que está pasando ahora. El código ya no necesita
cambiar . Eso sigue siendo lo mismo. Esa variable está
sosteniendo un valor, y así el usuario puede ingresar ese valor y se
almacena en esa variable. Aquí es donde ahora comienza a
entrar el poder de
las variables porque podemos
ingresar cosas en ellas, o el usuario puede ingresar
valores en la variable. Entonces, digamos que estabas creando un juego y muchos juegos podrían pedirte
que ingreses tu nombre. Pueden hacer que el juego te
parezca un poco más
personalizado. Digamos que pediste el nombre de usuario y luego quieres
saludarles. Recuerda, es el
hola y luego si quieres agregar algo nuevo
a la declaración impresa, solo
pones esa coma Ahora, ¿cuál es tu nombre? Danny, te va a
decir Hola, Danny. Entonces se tomó lo
que sea que ese usuario haya escrito, lo
almacenó en esta variable, mi nombre y lo imprimió aquí Y recuerda, lo que sea que
el usuario escriba aquí se toma como una cadena. Entonces aunque hubiera ido y
mecanografiado mi nombre como ocho, dice hola ocho, pero esto no es un número.
Esto es una cadena. Cualquier cosa que el usuario
ingrese es tomada por Python como
una cadena. Puedes divertirte tanto aquí.
Quieres divertirte un poco. Quieres
hacerte sentir bien. Haz esto. Simplemente haz
un pequeño cambio. Y luego pulsa Ejecutar, escribe tu nombre y pulsa Enter. Oh, me siento tan fantástica. Y vas a seguir corriendo
una y otra y otra vez y hacernos
sentir bien. ¿No es increíble la
programación? Te hace sentir
bien con esto. Se puede hacer casi cualquier cosa. Bien. Entonces eso fue insumo. Un rápido vistazo a él.
También es algo muy poderoso. Lo estaremos usando mucho después. Y sí, adelante, diviértete
un poco más con él, prueba cosas diferentes
e inicia el programa.
92. Resumen: Hecho, bien hecho. Has llegado
al final de la sección. Hemos hecho mucho
en esta sección. Entonces aquí tienes un
pequeño resumen solo para ayudarte a recordar, empezamos con variables, y las variables son esas cosas que básicamente es un
opuesto a una constante. Una constante es algo
que puede cambiar. Una variable es algo
que puede cambiar. Y una variable es un contenedor donde se puede almacenar algo. Entonces, si tuvieras una variable llamada mi variable y
otra sección hecha, eso es básicamente
solo un contenedor. Hemos almacenado ese trozo de texto o lo que se llama
cadena en una variable. Y así eso fue lo primero que hicimos en la importancia
de las variables. Entonces nos fijamos en los tipos de datos. Ahora bien, no todas las variables
son iguales de crédito. Nosotros acabamos de decir, por ejemplo, no guardas el
pavo en la alacena, no guardas el
auto en tu estantería Bueno, lo mismo se aplica a
las variables y tipos de datos. Entonces puedes tener una
variable que sea un entero como mi edad.
Bueno, ahí vamos. Cerca de 103. Ese es un tipo de datos
entero. Y obtienes diferentes
tipos de tipos de datos. Obtiene tipos de datos de cadena, obtiene tipos de datos booleanos
y una amplia gama
de tipos diferentes Entonces, al poner 103
en comas invertidas, de
repente mi edad
es en realidad una cadena, y miramos lo
importante que era tener
cuidado con tus tipos de datos, especialmente si empiezas
a intentar mezclarlos No los mezcles. Entonces estamos
mirando a los operadores. Operadores, todas esas
pequeñas cosas que se sientan entre números o entre variables o incluso
entre cadenas. Entonces podemos usar operadores
para sumar cosas, para
multiplicar las cosas por cosas divinas. Entonces, si hubiéramos creado
una variable que es una variable entera
llamada Menna dis four, podemos sumar dos
variables juntas Entonces conseguimos mi edad más, mi final, 103 más
cuatro, y es 107. Quizá podríamos dividirlos. Entonces recordamos que
teníamos el letrero de división, Ford slash, y nos dio
algo diferente, 25.75 E incluso había otros,
si pudieras recordar, teníamos algunos realmente divertidos que podríamos incluir
que solo te
mostrarían la base de tu división y no ninguno
de los restos y así sucesivamente Entonces esos eran operadores. Después seguimos adelante y
miramos a Input. Queríamos que nuestros programas
platicaran para que nos involucraran. Y aquí es donde empieza a entrar el poder de la
programación, y aquí es donde
todo esto se unió porque estas variables son
contenedores que albergan cosas. Pero obviamente, no podemos tener a
la persona que usa el programa entrando y cambiando en
el código, las variables. Entonces queremos tener un prompt. Queremos hacerles una pregunta, y queremos que el resultado de su respuesta a
esa pregunta se almacene potencialmente
en una variable. Por ejemplo, si
creamos una variable llamada terminada y ahora
queríamos hacerles una pregunta o
decirles, bien hecho. ¿Estás contento, etcétera, entonces
usaríamos
el comando Input Y así entonces se les
incitaría a insuflar, bien hecho. ¿Estás contento, y entonces
podría exhibirse. Obviamente podríamos
optar por luego imprimir esa variable terminada y luego imprimiría
lo que estaba almacenado dentro
de esa variable. Entonces, usar Input con
variables ahora abre todo
un mundo de oportunidades
y posibilidades. Aquí es donde la codificación
realmente se vuelve emocionante. Entonces sí, ya estamos todos terminados. Ya terminamos esta
sección, bien hecho. Has logrado un gran paso
siguiente y ahora estás pasando a donde
vamos a
meternos en algunas cosas realmente,
realmente emocionantes. Puedes ver que los huesos y
los fundamentos de tus programas
se están uniendo. Pero se trata de practicar,
pruébalo por ti mismo una y
otra y otra vez, haz que sea como
tu segundo idioma. No olvides que
hay preguntas y cuestionarios al final de la
sección, asegúrate de hacerlos Obviamente, cuanto más intentes
y cuanto más practiques, mejor te volverás haciendo las preguntas realmente te ayuda a recordar y probar por ti mismo las diferentes
cosas que hemos estado mostrando.
93. Por qué todos necesitamos listas: Quieres mirar listas. Yo es algo con lo que todos tenemos que
lidiar en la vida, ya
sabes lo que es. Tenemos listas y listas, y
tenemos listas sobre listas. Y sí, vamos
a comprar el pan,
la leche, y lo
que sea que sea, los huevos. Entonces, ¿qué es una lista? Bueno, obviamente, una lista es
simplemente un arreglo de artículos que tienen algún vínculo
entre sí. Ahora bien, no hace lío. Quieres decir que tienen
que ser los mismos huevos y la leche no son
exactamente lo mismo, pero todos forman parte
de una lista de compras, o puedes tener una lista de calificaciones de estudiantes o
lo que sea. Entonces es algún tipo
de arreglo, y normalmente porque
pertenecen juntos, quiere trabajar
con ellos juntos. Entonces aquí es donde las listas
son realmente importantes. Entonces en lugar de tener variables
separadas. Entonces quieres tener variables para almacenar
los nombres de tus alumnos. Podrías tener mi nombre
uno, dos, tres, cuatro, cinco, pero todos son nombres, y todos tienen que ver
con nuestros alumnos. A lo mejor lo que sería
mejor es si pudieras tenerlos todos en una sola lista. Y así las listas son un espacio especial donde puedes almacenar muchas cosas juntas que
tienen alguna relación. Entonces eso es lo que vamos
a echar un vistazo en esta sección es cómo puedes crear listas como un tipo de variable
especial, y luego cómo puedes trabajar con listas
porque realmente
hacen la vida mucho más fácil como
lo hacen para nosotros en la vida normal. Veamos las listas.
94. Creación de tu propia lista: Ahora que ya has tenido
el intento de enumerar, veamos cómo podemos
usarlos y dónde los usaremos
realmente. Empecemos por
crear una lista. Digamos, queremos almacenar una lista de todos los amigos a los que quieres invitar
a una fiesta. Podríamos hacer lo que
hacíamos antes y decir tal vez amigo uno como variable, y vamos a llamar esa amiga Mary y
luego ir amiga dos. Pero puedes ver que esto puede
empezar a ser un poco repetitivo sobre todo si
tienes muchos amigos, amigos tres, amigo cuatro, y vas
a seguir teniendo que
agregarlos todos a tu lista así Y se va a poner un
poco desordenado
tener que lidiar con todas
esas variables diferentes Esencialmente, todos
pertenecen a una lista. Son tus amigos de la fiesta. Bien, así que vamos
en lugar de seguir y seguir y
escribir cinco, 20 variables diferentes, vamos a
almacenarlas en un solo lugar. Entonces, para crear una lista, llamemos a esta lista amigos. Todo lo que tienes que hacer es poner
estos dos corchetes. Entonces ahora en realidad tengo una
lista. Es una lista vacía. No está almacenando nada, pero Python ahora ve
esto como una lista. Bien, entonces en realidad es
un tipo especial de datos. Entonces esto es ahora que
realmente has creado, ves que es distinto de solo ser
un entero o una cadena. Este es en realidad un tipo de lista con el
que ahora puedes trabajar. Entonces comencemos a almacenar
esos amigos en nuestra lista. Ahora, recuerden, estos son nombres, así que los vamos a almacenar todos como cadenas y para
almacenar una cadena, usamos comas invertidas Ahora, para separar los diferentes
nombres, usamos comas. Entonces primer nombre,
Mary, próxima amiga. Bien, vamos otra vez con Fred. Pongamos mi nombre
aquí. Podemos ser amigos. Bien, puedes continuar todo
el tiempo que quieras. Vamos. Un nombre más. Charlie. Bien, entonces aquí hay
una lista de cuatro amigos. Nuevamente, si imprimimos esto,
no va a mostrar nada. Pero lo que Python ha hecho es que tomado esta lista,
Mary Fred, Sarah, Charlie, y se ha guardado todo eso
dentro de esta variable
llamada friends. Así que ahora primero vamos imprimirlo solo para asegurarnos de
que eso es lo que está haciendo. Imprime la variable amigos. Y ahí ves,
se guarda como una lista. No es una cuerda. No los ha almacenado a todos como
una sola oración en su interior. No, en realidad se puede ver
cada una de las comas invertidas. Sí, cada uno de ellos tiene un pequeño conjunto de comas invertidas a su alrededor indicando que cada uno de
ellos es una cadena individual, por lo que ve como cuatro nombres
separados Bien, entonces ahora tenemos
estos en una lista, pero ahora
digamos que quiero enviarle una invitación a Sarah. ¿Cómo puedo decir ahora que quiero enviársela
a Sarah? Entonces lo que vamos a hacer es en todos los lenguajes de programación, tenemos algo
llamado indexación. Lo que eso básicamente
significa es que cada elemento nuestra lista tiene un
número específico asociado a él. Entonces ahora, pensarías
que si tuviera que
preguntarte qué número de
la lista es Sara, te vas a ir,
Oh, eso es fácil. María de Sarah, Fred, Sarah. Sarah tiene tres, pero
te equivocarías. Mal. Las computadoras son solo
un poco diferentes. Como dijimos antes.
Las computadoras pueden parecer un poco confusas para las
personas que no saben
nada de ellas, pero en cuanto
empiezas a aprender la forma en que trabajan,
su idioma, realmente tiene mucho más
sentido y es muy simple. Entonces, ¿qué necesitas
recordar con las computadoras el conteo
comienza desde cero Entonces aquí, en vez de ir uno, dos, tres, cuatro, cinco, lo que sea, vamos cero,
uno, dos, tres. Entonces donde podrías
haber pensado antes, Sara sería la número
tres en la lista, realidad está indexada dos Digamos ahora
que quiero poder imprimir ese nombre, Sarah. No quiero ninguno de
los otros nombres. Yo sólo quiero a Sarah. Para sacar ese nombre, usamos lo que dije
antes, la indexación. De nuevo, esto puede
parecer un poco confuso, pero estamos usando
corchetes nuevamente. Quizás una manera fácil de
recordarlo es si quiero llamar a un
número de la lista, estoy usando los mismos
corchetes, pero no necesariamente
significa lo mismo en absoluto. Esto significa que quieres llamar
a ese número. Lo que he escrito aquí, he
escrito el nombre de una lista, amigos y estoy diciendo que quiero
índice dos de esa Posición índice número
dos, así que cero, uno, dos, y abajo abajo aquí, ya ves, encontramos a Sarah. Entonces, si intentamos cero, queríamos a Mary,
en realidad usaríamos Zerra Ahí vamos al fondo,
se sacó a Mary. Bien, entonces, ¿qué pasa
si ponemos cinco? Buena pregunta. Esa es una
buena pregunta. Ahí vamos. No feliz. Lo verás
por la parte inferior ahí. Te ha dado un error de índice. El índice de la lista está fuera de rango obviamente porque no hay una posición cinco o un valor en
la posición cinco en tu lista. Y obviamente,
lo mismo con los negativos. Pero en realidad se
quejó de esos cinco porque sólo
hay cuatro
elementos diferentes en esta lista, y sólo
sube al índice tres Bien, así que de nuevo, en vez de
ahora tener que escribir hola, co amigo uno, hola,
coma amigo dos,
podemos cambiar fácilmente ese número y
digamos que estás invitado. Y queríamos invitar a Charlie y no
olvidar esa coma Bien. Y entonces podrías
hacerlo con los demás. Y en realidad vamos a más adelante mirar
algo llamado loops, lo que hace que esto sea
aún más potente. Entonces, como puedes ver, lentamente, las cosas empiezan a complicarse
cada vez más, ya que tus programas empiezan a alargarse cada vez más
y eventualmente vas a
tener programas que pueden tener miles de líneas de largo. Queremos intentar hacer
un seguimiento de lo que estamos haciendo. cuando
bajes en la línea 373, podrías desplazarte
hacia atrás a la línea cuatro y no tener idea de lo
que estabas escribiendo allí. Para ayudarnos como programadores y también
ayudar a otras personas cuando puedan leer tu código o tratar de entender
lo que has estado haciendo, tenemos algo
llamado comentarios Todos nuestros comentarios
es muy sencillo. Es un hash tag y
lo que quieras. Bien, ahora este hola
hashtag hola. Lo que básicamente hace Python es
que ignora por completo esto. Entonces los comentarios son para
ti mismo. Es para ayudarte. Python, cuando ejecuta el programa, ni
siquiera ve esto. Entonces, cualquier cosa después de ese hashtag,
ignora por completo. Puedes tener un espacio
y decir, lo que sea. Por lo que el punto de comentar es muy importante.
Como dijo Sarah. Muchos programadores piensan, Oh, sólo
van
a apresurarse y codificar. Pero entienda esto. Aunque alguien más no
tenga que mirar tu código, si vas a
mirar el
código de otra persona y no lo han
comentado, no tienes idea de
lo que han hecho. Pero incluso tú mismo, vuelves una semana o un
mes después y miras tu código y
no puedes recordar por qué hiciste ciertas cosas. Por lo que es muy importante. Es un buen hábito entrar
para empezar a agregar comentarios. Puedes agregar comentarios en línea. Puedes agregar comentarios
en su propia línea, así que quizás quieras
decir, ya sabes, el código de abajo aquí es donde estamos imprimiendo los nombres
de los amigos, etcétera Realmente importante poner
tantos comentarios como puedas solo para recordarte a ti mismo y los demás que están leyendo el
código lo que está pasando. Es un buen hábito,
acostúmbrate. Estarás muy agradecido si
pones comentarios porque tienes la garantía de que
volverás más tarde, y te vas a ir, ¿Qué
en el mundo estaba haciendo?
95. Cómo trabajar con listas: Que sepamos crear lista, empecemos a hacer algunas cosas más complicadas y
más emocionantes. Entonces ahora que tenemos esta
lista llamada amigos
, a lo mejor ya no
queremos invitar, digamos que ya no queremos invitar
a Sarah a la fiesta y
queremos cambiar este valor. Queremos que sea
dinámico en este momento, es una lista estática que
se ha establecido en el programa. Tan dinámico significa
que podemos cambiar los valores dentro de esta
lista llamada amigos. Vamos a Austin. ¿Qué comando crees que
vas a usar para permitir
al usuario cambiar el valor que se almacena
dentro de esta lista? Lo siento. ¿Qué dijiste? No, no
puedo aquí. Vas a
tener que callarte. Entiende que estamos a
kilómetros de ti. ¿Qué dijiste? Dijaste, creo que
escuché Input. Bien hecho. Eso es exactamente. Eso es. Definitivamente he estado escuchando. Bien, entonces primero antes de pedirle
al usuario que ingrese el nombre, vamos a tener que
decirle a nuestra lista amigos qué valor queremos cambiar. Entonces es bastante similar
a lo que hacíamos antes. Usando la indexación, como
decíamos, queríamos cambiar
este valor, Sara, que era index, ojalá
recuerdes dos. Índice dos. Sara uno, dos. Queremos cambiar ya no
a Sara pero digamos, mi papá me reemplazó y queremos verificar que la lista
haya cambiado realmente, así que queremos luego
imprimir esa lista. Tal vez para verificar realmente que definitivamente cambió. Queremos primero imprimir cuál era
la lista antes de cambiar el valor y luego imprimir cuál era
la lista después de que
cambiamos el valor. La primera línea que imprima va a ser la lista anterior, la segunda línea, la lista después. Ya ves que el primero
fue lo que enseñamos aquí, entonces decidimos que no, ya no
queremos a Sara. Cambiemos ese
valor a Craig. Simplemente cambió ese valor, Sara a ser Craig. Pero tal vez queremos
hacerlo más emocionante y como
decíamos antes, queremos que el usuario ingrese a
quién quiere que venga. Así que en vez de decidir que
queremos que igual a amigo, vamos a preguntar, de nuevo,
al usuario, y como tú tan hábilmente recordado
antes, usamos Input Ahora sólo vamos a escribir un prompt. Esta es la parte que viene
en el comercio invertido haciéndole la pregunta al usuario,
escriba el nombre de un amigo. ¿Dónde va a guardarse el
nombre de este amigo? Se va a almacenar en
la lista en la posición dos. Para que podamos ver la lista cómo
se ve en estos momentos. Mary Fred, Sarah Charlie, y vamos a probar
Claire ahí vamos. Ahora, Mary, Fred
Clare y Charlie. El usuario ahora realmente está
ingresando un valor, pero se está almacenando en una
posición dentro de la lista Recuerda, si esto cambiamos a cuatro y les pedimos que tipeen
y vamos a ir lo mismo. ¿Qué crees que
va a pasar? Vas a obtener un
error porque no
hay posición
cuatro en esa lista. Tenemos 01, dos, tres, Charlie es el
último en esa posición. Sólo se puede cambiar lo que ya
está en la lista. Entonces esas son listas. Te estás haciendo una idea justa. Y nuevamente, se trata de una herramienta
muy importante, tipo variable
muy importante, en cierto sentido, que puedes usar y manipular y se vuelven muy
potentes cuando miramos más adelante a los bucles
porque ahora puedes correr alrededor de un bucle una lista y llenarla muy
rápidamente o imprimirla. Entonces son realmente útiles, puedes
divertirte mucho. Así que diviértete un poco. Juega con tus listas. Ellos son una parte importante de la organización.
96. Esta es una lista sólida: A veces en la vida, hay listas que
no quieres cambiar. A lo mejor es una lista de
tus personas favoritas. A lo mejor es una lista de tus restaurantes
favoritos. A lo mejor es una lista de tus películas favoritas,
cualquiera que sea. A veces las listas no
deberían cambiar. Ahora por el momento,
puedes ver que nuestra lista puede cambiar muy fácil
y es muy útil, y hay muchas
razones por las que queremos hacer eso. Pero, ¿y si no queremos que nuestra
lista cambie independientemente? Bien, en Python, esa
lista que no puede cambiar es llamada o tupla. La gente lo pronuncia de otra manera. Voy a ir con tupla. Tupla porque eso
responde tupla. Sí. Más fácil de recordar. Bien, entonces esta
lista inmutada es en realidad bastante fácil de cambiar de
una lista cambiante Entonces para
hacer de esto una tupla, todo lo que estoy haciendo es poner entre corchetes
en lugar
de corchetes Ahora bien, lo que esto significa, esto significa que pase lo que pase, no
puedo cambiar esta lista. No puedo añadir un nombre, no
puedo cambiar un nombre. Bueno, una vez que se crea, es una lista sólida. Entonces esa gente viene a la fiesta,
son mejores amigos. Entonces, antes de que este programa sea exactamente el mismo
que lo teníamos antes, cambiamos este nombre Sarah por el nombre que
el usuario lo ingresó. Ahora vamos a intentarlo de nuevo, ejecutar el mismo programa,
pero ahora usando un tupple Entonces volvamos a escribir a Clare. Y de inmediato, te
va a dar un error
diciendo que el objeto tupla no
admite Entonces, lo que eso significa es
básicamente en términos simples, la lista no se puede cambiar. Eso es lo que significa en inglés. ¿No es hermoso el objeto tupla no
admite la asignación de
artículos En inglés, significa que no
puedes cambiar esta lista, amigo. Es una lista sólida y atascada. La razón por la que
querrías hacer esto es básicamente para evitar
cometer errores tontos. Entonces si hubiera tenido esto como una lista
con los corchetes, pero no quería cambiarlo. Era algo
que era importante. Fue algo que permaneció igual durante todo
el programa, y de alguna manera cometí
un error tonto y un artículo sí se cambió y ejecutas tu programa
y de repente
no está haciendo lo que querías hacer y no entiendes por qué. El motivo es porque
se cambió algo que no estaba
destinado a cambiar. Si al principio lo hubiera
definido como una tupla,
entonces en cuanto
trato de cambiarlo algún lugar tarde en el
programa, no me dejaría Tiraría
esa flecha diciendo, perdón, no se puede cambiar esto. Ejemplo clásico
sería que quisieras crear una lista que tuviera los
meses del año. En lo que va de enero de marzo, no
cambian. Siempre los mismos
meses del año. Eso se
crearía más que solo como una lista, sino como una tupla Y así entonces podrías imprimir
fácilmente el mes 12, meses, 11, etcétera, haciendo referencia al
artículo correcto en la Bien, así que eso fue tuplas, y son
listas sólidas. Listas sólidas.
97. Resumen: Derecha resumen rápido de lo que hemos cubierto
en esta sección. Hemos cubierto listas y por qué tienes listas y esto es
muy importante para la vida. Y miramos
cómo puedes crear una lista simplemente definiendo cualquiera que sea tu
nombre de lista y luego entre
corchetes
enumerando todos los elementos que van a
estar en esa lista. Puedes imprimir tu lista y acceder a la lista simplemente usando número de
índice,
recordarlo siempre comienza en cero, por qué necesitamos lista
es cero, uno, dos y tres, y es así de
simple. Y así cuando ejecutamos eso,
producimos una lista de
lo que hay dentro de la lista. Así que la lista es realmente genial. También miramos tuplas. Las tuplas son exactamente iguales. Todo lo que hacemos es si cambiamos de los corchetes a
los corchetes de curva, de
repente, esa
lista no puede cambiar. En este ejemplo, todo
va a seguir igual ya que no estamos
tratando de cambiar nada, pero esa lista te dará un error de asignación si intentas cambiar algo
en ella después. Entonces eso son listas y tuplas. Son una
forma muy conveniente de almacenar cosas que son similares y
necesitan ser
trabajadas en grupos, como decíamos, una lista de amigos y tal vez sean
meses del año o tal vez
sean valores de tabla de impuestos, sea lo que sea,
almacenarlos en una lista es muy poderoso. Veremos más adelante
cómo puedes usarlos. Entonces esa es la lista, y te dejamos
a ti la lista de todas tus necesidades y deseos y que te
diviertas tanto como
puedas programando en Python.
98. Es importante tomar decisiones: Decisiones, decisiones, decisiones. La vida está llena de decisiones. ¿Qué vas a estudiar? ¿Qué trabajo vas a tomar? ¿Con quién te vas a casar?
¿Qué auto vas a comprar? ¿Vas a conseguir las
verduras o el chocolate? Sí, decisiones de decisión. Y las decisiones también son
muy importantes a la hora de codificar,
porque así es como porque así es como tantas cosas
operan así más grandes que eso, es lo mismo que eso, y
necesitamos tener decisiones. De hecho, un área entera, lo que se llama diagramas de flujo, a menudo
se usa para
tratar de definir y decidir y dejar claro cómo funciona la lógica de
su programa. ¿Funciona la lámpara? No.
Bueno, ¿está enchufado? No, entonces enchúfelo. Sí, está enchufado. Entonces tenemos diagramas de flujo para tratar de
elaborar decisiones. Ahora, obviamente,
pueden llegar a ser cada más complejos estos diagramas medida que se
tienen que tomar más y más decisiones Entonces, en esta sección, queremos echar un
vistazo a un comando especial, que es la declaración I
y partes relacionadas con ella, la declaración IL que te
ayude a trabajar a
través de decisiones y
te ayude a tomar decisiones en Python. Entonces ahora nuestros programas van a comenzar a subir
al siguiente nivel y ponerse bastante emocionantes porque aquí
es donde
empezamos a ver cómo
podemos usar el poder de
todo lo que hemos estado haciendo, todas las declaraciones,
todas las variables, o los operadores, y
llevarlos al siguiente nivel
usando la decisión. Así que vayamos a Python y veamos qué podemos
hacer con las decisiones.
99. If: una palabra pequeña con grandes implicaciones: Entonces hemos mirado la
importancia de las decisiones en la vida. Ahora para implementar esto en Python, y Python implementa
decisiones y te da la capacidad de tomar decisiones usando lo que se llama
la declaración if. Entonces echemos un vistazo a cómo
podemos usar la declaración if para tomar decisiones útiles y decisiones interesantes
dentro de Python. Si las declaraciones son una
parte fundamental muy importante de la programación. Constantemente a lo largo de
tu carrera de programación, encontrarás que los
estarás usando
mucho y realmente
son muy útiles. Básicamente, lo que hacen es que te
permitan decidir
qué camino tomar en
base a cosas anteriores
que puedan haber sucedido y en
base a condiciones que pueden
ser verdaderas o falsas. Ojalá tenga más
sentido para ti si te doy un ejemplo. La sintaxis básica de una
sentencia if se ve así. Entonces comenzamos con
una F. Entonces tenemos una variable que queremos verificar si esta variable es verdadera
o falsa. Así que en realidad probablemente debería
crear esa variable primero, así que tiene un poco más de sentido. Tenemos una variable.
Hagamos de esto nuestra edad. Entonces digamos que tenemos 16. Bien. Ahora, queremos
escribir un programa que nos pueda
decir si esta persona
puede conducir en función de su edad. Entonces en nuestro país, la edad a la
que puedes conducir es de 18 años. Entonces para comprobar si mi variable de edad tiene la
edad suficiente para
que la persona pueda conducir, lo que vamos a hacer es que
vamos a usar esta declaración I. Entonces la sintaxis es si entonces la
variable que queremos comprobar, entonces ahora queremos comprobar
si esta variable de mi edad es menor o igual a la
unidad de límite de edad en nuestro país. Entonces como dije, ese límite de
edad era de 18 años. Entonces lo que verán es que
pongo en este pequeño pozo, estos pequeños símbolos de aquí. Y lo que significan estos símbolos es, si mi edad es menor de 18 años,
entonces algo va a pasar. Bien, así que básicamente,
hay muchos operadores condicionales
diferentes que podemos usar. Entonces, lo que ves aquí es que
este tipo de te muestra cuál es el camino y el
símbolo y lo que significa en matemáticas porque estos
símbolos deberían ser bastante familiares para ti si has
hecho algún tipo de matemáticas. Básicamente calificas. Básicamente. Esta es la misma. Menos significa menos que
mayor de lo que es mayor, entonces entonces
realmente no tenemos esta codificación. En lugar de poner este
signo igual debajo así, vamos menos o iguales entonces, igual, mayor que igual a. Entonces si quieres verificar si dos variables son
iguales entre sí, no
usamos un signo igual, sino que usamos doble así. A menudo ese es otro
error que
cometen los programadores cuando intentan aprender
por primera vez Podría poner solo
uno en lugar de dos. Pero repasaremos ejemplos
y te daremos preguntas donde podrías usar estos para que todos se vuelvan más familiares. Entonces, por último, teníamos
éste para comprobar si algo no es
igual a algo. Entonces volviendo a nuestro
código, continuemos. Si mi edad, que es mi variable de edad aquí arriba es
menor y no igual a 18, entonces queremos imprimir
algo al usuario. Entonces vamos a
imprimir digamos,
lo siento, no lo suficientemente mayor para conducir. Bien, así que vamos a ejecutar esto
y ver qué hace hasta ahora. Bien, entonces lo que nuestro programa básicamente
ha hecho es que
se ha ido a esta primera línea. Se ha hecho que mi edad sea igual a
16. Entonces está probando. ¿Este valor es mi edad, que es 16, menor que
igual a 18? Sí, lo es. Esto se evalúa como verdadero. Entonces está imprimiendo, lo siento, no tiene la edad suficiente para conducir. Ahora, cambiemos este valor a un número mayor que 18.
Vamos a hacerlo 19. Como pueden ver, no pasa nada porque ya
ha entrado el programa. Está comprobado está
elicinando no así que no imprime esto y
va, Ahora bien, lo que quizás hayas notado, que en
realidad no mencioné al principio es esta
sangría aquí En cuanto haga clic en
Entrar, en esta línea. Yo me llevé a la siguiente línea, pero dejó esta sangría Ahora bien, esa sangría es
realmente muy importante. Bien, entonces la sangría
es sumamente importante. Como señaló Sarah,
todo lo que se sangraba es parte de que la
condición sea verdad Ahora mira lo que pasa si
quitamos la sangría. Por el momento, si
Sarah golpea a correr, veremos que sí,
no va a pasar nada. Entonces bajemos esa edad
para que quede por debajo de los 18. Y deberíamos imprimir
esas dos líneas. Ahí lo hace. Lo siento, no
tienes la edad suficiente para conducir. Algún día, lo estarás. Eso es porque esas dos
líneas han sido evaluadas verdaderas y así son parte de esa condición
y ambas imprimieron. Ahora, veamos
qué pasa si nos
movemos y nos metemos con
la sangría Entonces vamos a tirar de ese
segundo hacia atrás, y sigue pareciendo, Bueno, bien si mi edad es
menor que igual a 18, lo
que hace, debería
hacer esas dos líneas. Bueno, echemos un vistazo
y veamos qué pasa ahora. Bien, sigue
imprimiendo las dos líneas, así que podríamos pensar, bueno,
todo está bien. Ahora, ahí no hay problema. Imprimió las dos líneas
tal como cabría esperar. Bien, ahora vamos a cambiar la edad para que sea
mayor a 18. Entonces ahora no debería imprimir
ninguna de esas líneas porque la condición no es cierta. Pero oh, no, mira ahí, está impresa esa línea.
Algún día, lo estarás. Entonces lo que ha pasado
es esencialmente, es verificar si la
edad es menor a 18 años, y si es cierto, imprime esa línea. Lo siento, no
tienes la edad suficiente. Si tiene más de 18 años, no imprimirá esa
línea, pero de cualquier manera, siempre
imprimirá la
línea número cuatro, porque ya no hay
parte de la condición if. Por eso es muy importante que uses la sangría Si no tiene sangría, no se
considerará parte de la condición if Por lo que es muy importante
mantener esa sangría. Otra razón por la que también
quieres mantener la sangría, ayuda a
que
todo sea lógico A medida que tus programas se hacen
cada vez más largos, hablamos antes
sobre el uso de comentarios, pero también la sangría
te ayuda a dar sentido a
lo que está pasando Como veremos más adelante,
vamos a tener ifs y más ifs y ifs y ss y se puede
involucrar bastante Haciendo esto un poco
más interesante, ahora
vamos a imprimir algo si esta persona es mayor de 18 años. Entonces te vas a ir, si
mi edad es mayor a 18. Bien, sólo vamos a imprimir. Sí. Bien, entonces todo esto ahora va a hacer es que
tenemos dos declaraciones if, que básicamente esta
está casi
bien, está haciendo el mismo tipo de
cosas que la anterior,
pero excepto que ahora tenemos
una condición diferente. Entonces ahora cuando programo peroratas
, tengo mi edad igual a 19 Primero va a
comprobarlo. ¿Bien? ¿Es menor que igual a 18? No, no lo es. Así que ignora todo este código
que ha sido sangrado. Y ve a buscar el
siguiente código que
no esté sangría, entonces
va a venir aquí ¿Es mayor que
18? Oh, sí, lo es. Entonces veamos qué pasa, obviamente va a luego imprimir esta
declaración por aquí. Realmente puedes tener tantas declaraciones
if como quieras,
pero lo que te estaremos
explicando más adelante
es que esta no es realmente una forma
muy eficiente codificar y hay formas
mucho mejores de
hacerlo en lugar de tener
múltiples declaraciones if, pero lo estaremos viendo
en nuestra siguiente lección. Entonces en este momento,
todo lo que tienes que
entender es el
concepto de un si, cómo puedes tener una variable. Puedes tener un operador
condicional aquí mientras miramos
los diversos, y luego mientras
todo esté sangrado,
si eso se evalúa como verdadero, si eso se evalúa como verdadero, entonces todo lo que esté sangría debajo de él será ejecutado
entonces Entonces esa es nuestra declaración if. Una
declaración muy poderosa nos ayuda a tomar decisiones y
ramificar en nuestro código Y veamos a dónde podemos
llevar esto en la siguiente lección.
100. Si - de otro modo - por qué las alternativas son buenas: Mirando la declaración if
y hemos visto cómo
podemos usar múltiples declaraciones
para hacer evaluaciones. Pero con solo mirar esto, hay algo sospechosamente,
no al 100% aquí mismo. Mencionamos que
en nuestro país, la edad de manejo es de 18 años. Ahora bien, aquí es donde
existe la
necesidad de lógica en tu programación. Si nos fijamos en esas
dos condiciones. Si mi edad es
menor o igual a 18, imprime lo siento, no tienes la
edad suficiente para conducir, y entonces si mi edad es
mayor a 18, sí, puedes manejar. ¿Se puede detectar cuál
es el problema si la edad oficial de manejo
en nuestro país es de 18 años? Sarah, ¿cuál es el problema? Ojalá,
lograste detectarlo, pero básicamente todo
va perfectamente bien. Pero como mi papá
mencionó antes, en realidad
esto es solo
un error lógico. Entonces lo que realmente
queríamos es que quisiéramos si mi g es menor a 80, no
podemos conducir, pero si
tienes 18, puedes. Entonces esto debería convertirse entonces si mi H es
mayor que igual a 18. Entonces estos errores de lógica que
a menudo son más complicados de encontrar. hemos mostrado si
te equivocas con la sintaxis de algo,
va a detectarlo. Entonces digamos, por ejemplo, nos olvidamos de poner las comas
invertidas ahí, lo
ejecutamos, e inmediatamente
podemos ver en la parte inferior aquí, error de
sintaxis, y te está
diciendo que las cosas están mal Las computadoras pueden ayudarte
con ese tipo de cosas. Truco es
acertar tu lógica , y eso es
muy importante. Eso es lo emocionante de
aprender el programa es que necesitas ser lógico y entonces debes
pensarlo. Veremos más adelante
en la depuración cómo puedes intentar resolver algunos de estos problemas porque no siempre
son tan fáciles de detectar, pero
eso es parte de la diversión Bien, entonces ahora que
arreglamos ese error lógico, hagamos que este programa sea
un poco más genérico. Genérico. Lo que pasa con la programación es que quieres
probar y la razón por la que usamos variables y cosas así es
que nuestros programas
casi pueden ser reutilizables
y no tenemos que
reescribir el mismo código una y
otra vez Ahora bien, como
habrás notado, sí, hemos escrito yo mag
menos de 18 aquí, y luego escribimos, I mag es mayor que igual a 18 aquí. En lugar de escribirlo ahí
afuera dos veces y dar las posibilidades de que de alguna manera
podríamos estropearlo, si ahora dijera 19, entonces otra vez, mi lógica está equivocada. En lugar de hacer eso, más
bien creemos una variable que almacene el límite de edad para
conducir. Y lo bueno de
esto es que ahora podemos usar esta variable y
sólo tenemos que hacer un
cambio en un solo lugar. Entonces vamos a establecer aquí el límite de edad para
conducir en 18. Entonces en vez de ahora poner
el número 18 aquí, vamos a poner
en la variable. Entonces este es un uso mucho más
eficiente de la codificación porque ahora
tenemos una variable, que es el límite de edad, y
podemos usarla varias veces. Y entonces sí, puedes conducir. Ahora podemos cambiar ese límite de
edad en un solo lugar. A lo mejor tu límite de edad es de 21 o lo que sea que sea en tu país, y podemos ejecutar muy rápidamente el mismo programa y
ver si funciona. Aquí el límite de edad es de
15 años. Ejecutarlo, sí. Bien. Si tienes 19 años,
ciertamente puedes conducir. Bien. Entonces eso es básicamente también solo mostrarte que
puedes comparar dos variables. La segunda parte aquí
no tiene que ser un número. Puede ser una variable. Y luego también veremos otras cosas u otros
tipos de datos que también pueden ser. Pero por ahora, vamos
a ver las declaraciones se. Entonces antes mencioné
que en realidad no es una buena idea escribir un montón de declaraciones
if como esta porque hay una mejor
manera de hacerlo. Bien. Entonces, la razón por la que
queremos usar una sentencia else, que Sarah echará un
vistazo en un momento es la forma en
que ese programa se ejecuta de
arriba a abajo de explicar que van a
hacer cada línea. El único lugar donde va a hacer un salto es si una
condición no es cierta. Por ejemplo, aquí, si mi
edad es menor que el límite de edad, y esa condición no es cierta, saltará ese
trozo de código o esas dos líneas y luego
saltará a la siguiente. Ahora bien, si tienes múltiples declaraciones
if como nosotros te
tenemos en la línea tres, línea seis, etcétera, tu programa tiene que
pasar por todo eso Puede que no
parezca un gran problema. Pero a medida que obtienes programas cada vez más grandes, eso lo ralentiza. Si estás tratando de tal vez escribir
un juego o escribir algo que necesite un mejor rendimiento,
todo eso cuenta. Es una
forma muy ineficiente de codificar. Lo que realmente queremos es que
si esta condición es cierta, debe hacer eso y luego ignorar las otras partes
de la condición, que se llama la parte else. Alternativamente, si esta
condición no es verdadera, ignore eso y luego ejecute la parte verdadera. Eso es
lo que hace una otra. En lugar de lo que te tenemos,
tengo que evaluarlo, luego evaluar otro
vamos a cambiar
esto a una F
y una y solo
evaluaremos una parte de esto
haciéndolo más eficiente. Demos un ejemplo
de una declaración. Las declaraciones L son en realidad
muy, muy simples de usar. Todo lo que necesitas saber es cómo escribir eso.
Eso es una declaración. No tiene ninguna
condición porque básicamente lo que más significa es,
si todo lo que está por encima de
esta afirmación es falso, entonces imprima esto. Es la única condición es que todas las declaraciones if
por encima de ella fueran falsas. Ahora lo que queríamos hacer es nuestro primero comprobé si la edad
era menor que el límite de edad, lo contrario si la edad no es
menor que el límite de edad, entonces obviamente la persona
debe poder conducir. Vamos a imprimir esa
declaración otra vez. Imprimir Bien. Esto hará exactamente lo que
teníamos antes y se ve,
19 es la edad,
el límite de edad es de 15
es 19 menos de 15. No, entonces va directo a los Ls y imprime
esto por aquí. Nuevamente, si cambio esto a menos del límite de edad para conducir, se comprueba eso y se dice:
Oh, sí, eso es cierto,
y está impreso eso. Pero lo que ha sido eficiente
ahora es que no se puede ver esto, pero en realidad ni siquiera ha
mirado esta parte aquí. Entonces, si bien no
lo estamos viendo ni las
ganancias de rendimiento aquí, así es como debes codificar. Es mucho más
efectivo y estamos tratando de enseñarte
buenos hábitos por adelantado Así que no uses múltiples
declaraciones if si es posible que uses una sentencia se.
101. Instrucción If- elif- else: Veamos si podemos
traspasar los límites un poco más y hacer casi un programa de
inteligencia artificial. Bien. No va
a ser del todo IA, pero digamos que queremos
intentar dar algunos consejos. Entonces este va a ser tu asesor personal sobre qué hacer en las
distintas temporadas. Así que escojamos las
diferentes estaciones. Y así vamos a imprimir consejos dependiendo de la temporada
que sea. Y para cada temporada, vamos a imprimir un consejo
diferente. Entonces digamos que es invierno. Entonces invierno nuestro consejo en invierno es
que te vistes con gusto. Así que no olvides vestirte
con gusto si es invierno. Es un consejo realmente genial, y es algo que nunca
debes olvidar. Derecha. Entonces, ¿ese es
nuestro consejo de invierno? Tomemos el otro extremo. A lo mejor es verano. Entonces nuestro consejo de verano es
que no te olvides del protector solar. Quieres salir y divertirte mucho, pero, ya sabes, más que ponerte un
poco de protector solar si va a ser
demasiado tiempo bajo el sol. Cierto, ¿qué tal los consejos de
primavera? Entonces creo que la primavera es un
momento hermoso para tomar fotos. Así que recuerda tu cámara. En este día y edad,
siempre tenemos tu teléfono en ti. Probablemente no necesites
recordar tu cámara. Pero de todos modos, recuerda tu
cámara para que puedas obtener algunas buenas selecciones de
las hermosas flores que están brotando por
todas partes. Entonces tenemos el otoño, esa hermosa estación en la que
todas las hojas están cayendo. Lo importante que hay que
recordar en otoño es que no te olvides de
saltar sobre las hojas. Debe hacer eso.
Todos van a hacer eso bien, un gran montón de hojas y
saltar arriba y abajo de ella. Este es nuestro increíble
consejo que queremos darle a la gente en
función de la temporada. Ahora, obviamente, si solo
ejecutamos el programa así,
eso es bastante inútil. Es decir, esto va a
imprimir cuatro consejos, y eso no es
particularmente útil. Entonces lo que queremos hacer es que
necesitamos tener una
variable que
vamos a capturar
sea cual sea la temporada. Vamos a crear una variable arriba en la parte superior y capturar
lo que sea la temporada. Esta es mi temporada, y podemos fijarla a lo que sea. Entonces digamos que el
primero es el verano. Entonces ahora tenemos que hacer algo
donde se va a comprobar. En base a lo que se
almacene en mi temporada, sólo va a imprimir
uno de estos cuatro. Ahora, miramos en el ston
anterior como un if else. Ahora bien, no puede simplemente comprobar
el primero y decir, es verano si no es ir a
imprimir lo siguiente. De hecho, necesita verificar
esencialmente cuatro veces. Aquí es donde
queremos
presentarles la siguiente declaración, que es la otra si estado. Todas las declaraciones condicionales tienen
que comenzar con una declaración if. No se puede comenzar con
una declaración L. No puede comenzar con
la declaración SIF que estoy a punto de mostrarle ahora Todos ellos tienen que
comenzar con la I. Primero
comprobemos si nuestra variable de temporada
es igual a verano. Si mi temporada y recuerdo
duplicar igual a es
igual al verano, entonces queremos hacer algo. En primer lugar, estoy seguro que te has dado cuenta es que no estoy
usando enteros aquí En realidad estoy usando cuerdas. Entonces con las declaraciones de FNL , se
puede comparar,
como dije antes, muchos tipos de datos
diferentes Entonces aquí, lo que
va a hacer
es que va a comprobar
si esta variable, que hemos puesto en verano es exactamente la
misma que esta palabra aquí, entonces va a ser verdad. Entonces, si acabo de cambiar
una letra aquí, te
lo
mostraré más tarde, ya no va
a ser igual a esto. Entonces si esto de aquí, esta variable aquí es exactamente
la misma que esta de aquí, entonces va a ser verdad. Por lo que ahora queremos imprimir esta declaración para recordarle a gente que no olvide
el protector solar. Recuerda, tiene que ser sangrada. De lo contrario, no lo imprimirá. Entonces, si eso es cierto, va
a ejecutar las sentencias
indentadas Entonces ahora vamos a mirar
a LSF. Alf, abreviado a
solo ser ALF, que es la forma en que lo escribes, básicamente significa otra cosa si
esta afirmación no es cierta, entonces hagamos la siguiente Lo siguiente que nos gustaría
comprobar es si mi temporada es igual a Invierno. Invierno. Si es invierno, queríamos estampar
este vestido con gusto. Bien. Ahora tenemos cuatro
declaraciones que queremos usar o cuatro recordatorios que queremos
imprimir basados en la temporada, en realidad
necesitamos
otro Alsaf La temporada de Alsf M es igual a primavera queríamos
recordar tu cámara Entonces, por último, queríamos
imprimir este para el otoño. De hecho, podría escribir otra declaración de lsf
y poner esto aquí Pero cada declaración if, pero cada declaración elseif
tiene que terminar con otra. Podría hacer esto de dos maneras. En primer lugar, podría simplemente poner
otro Alsif como mis otros y comprobar Ls si mi temporada es igual a otoño entonces imprimir
esto por aquí Pero ahora todavía tenemos que
agregar eso más, pase lo que pase, porque
estamos haciendo serfs Y entonces, ¿qué ponemos aquí? Quiero decir, podríamos
escribir un mensaje o tal vez
realmente tenga sentido. Podemos escribir. Sí, está mal. Sí, sí, sí,
sí, sí. ¿Debería? Bien, entonces tenemos que tener esta
otra declaración al final. Y esta afirmación ls en realidad
puede ser muy útil en esta situación
porque como dije antes, como dije antes,
si solo una letra está apagada en esta mi variable de
temporada, entonces
va a venir aquí. Entonces si tuviéramos verano
escrito así, va a ir, no, no es igual a
eso, no es igual a eso,
no igual a eso, no igual a eso, no igual a eso. Entonces, ¿qué temporada es? Entonces, quiero decir, tu usuario
va a ser como, no
entiendo, montan rellas acaban de
poner un error tipográfico Así que vamos a
hacer que sea más fácil para tu usuario entender
lo que ha pasado. El resto es esencialmente
una captura de todos. Así que podríamos haber
usado al otro bebé. Podrías haber pensado,
bueno, podríamos haberlo usado para atrapar para el otoño, pero en realidad no hubiera sido cierto porque como te mostró
Sarah, si mal deletreaste el verano,
hubiera dicho, No te olvides de saltar en las hojas porque esa
hubiera sido
la Bien. Así que necesitábamos
revisar cada uno de ellos como si y otro si,
y luego finalmente, demás se convierte en una
trampa para todos, es decir, no, no
te acertaste ninguna de
las estaciones, has hecho algo
mal, y así puede imprimir. No has elegido
una temporada correcta. Bien, así que vamos a
ejecutarlo tal como está. Y lo que nuestro programa
hizo es que llegó aquí, mi temporada es igual a Sama comprobar el primer comunicado.
¿Es igual a Sama? Sí, vamos a imprimir esto. Y entonces ignora todo esto. Ni siquiera bien, no ejecuta esto en absoluto, y simplemente imprime esta
declaración por aquí. Ahora, como estaba
explicando antes, deletreemos mal a Summer. Ahora es comprobar que está
comprobado todos estos y dijo, oh no, no es igual
a ninguno de estos. Por último, imprime
esta declaración, que dice, por aquí, no
has elegido
una temporada correcta. Obviamente si hubiéramos
cambiado esto a uno de los otros, digamos primavera. Ahora va a comprobar esto, comprobar esto, y luego
finalmente comprobarlo. Oh, sí, esto es cierto. Imprime, recuerda tu cámara
e ignora el resto. Básicamente, lo demás es
solo permitirle verificar más de una cosas de una
manera más eficiente. Puedes ver que
hay muchas veces en
las que te gustaría
hacer algo como esto. A menudo hay
ocasiones en las que necesitas hacer más de una
verificación condicional y
no pones muchas declaraciones if porque necesitas
hacer tu codefficient O usas un Fe si
son solo dos, de lo contrario, usa un sef ILS
hasta finalmente un s. Básicamente solo
recuerda que cada declaración
if necesita un else y nunca llego a
sangrar también
102. Seamos lógicos: operadores booleanos: Operadores booleanos. Ahora es otra
gran palabra que
puedes pequeña frase que
puedes lanzar por ahí. Mencionamos a Boolean antes, y realmente eso es solo una charla de computadora
elegante para saber si las cosas son lógicas y ellas
condicionan que
puedas tener ands y ors y cosas así Entonces son muy útiles
porque muchas veces en la vida, tenemos que decir, Bueno, si esto y aquello es cierto, si esto o aquello es cierto. Queremos mostrarte
un ejemplo donde tal vez tengamos un
club o algo así, y queremos cobrarle a la
gente en función de la edad, ya sea que puedan entrar
y ver las películas aquí o bailar o
lo que sea Pero hay dos cosas
que van a impactar el
precio del boleto de entrada, una es
la edad y la otra es si
eres miembro. Entonces, sea lo que sea que eso signifique ,
basado en tu
edad, si tu edad es un cierto rango, vas a conseguir
un precio diferente. Obviamente, si eres
miembro, que es un valor booleano true false, también
va a
impactar tu Así que vamos a
configurar if y nuestros Alcefs, pero ya van a
ver que vamos a usar más de una condición aquí y vamos a usar
rangos. Entonces comencemos. Digamos que si la edad de
la persona es quizá, no
sé, menos los niños, menores o iguales a cinco, entonces van a ser libres. Vamos a imprimir precios gratis o lo que sea
simplemente imprimir gratis. Sólo vamos
a ahora básicamente entonces el siguiente es así
que ese es el primero. Ahora queremos hacer una
ACIA y comprobar, bueno, si la edad es a partir de los seis, entonces va a ser
mayor que igual a seis. Pero si es entre
seis y digamos, no
sé,
escojamos a adolescentes 13. Entonces ahora tenemos un rango, por lo que necesitamos verificar si
son mayores que iguales a seis y menores que la edad de 13 años. Entonces, lo que
notarás aquí es por cada condición
que quieras verificar, tienes que escribir
esta declaración completa. No puedo simplemente decir si la edad
es mayor que igual a seis y luego ignorar
el punto y decir, y menor o menor que 13. Tienes que reescribir
todo el estado de cuenta
que quieres verificar Entonces hay que escribir si tu
edad es mayor a seis, y luego también quiero comprobar
si la edad es menor a 30. El motivo de ello es
porque esa segunda prueba, menor de 13
años, no
tenemos que usar la variable edad. Podríamos haber usado
algo más como
te mostraremos en un momento. Entonces en este caso, en
realidad hemos creado un rango, así que vamos a imprimir el precio
es de $5 o lo que sea que sea. Entonces, ahora estamos
comprobando un rango. Hemos usado este conector
booleano, este A para
verificar realmente un rango Ahora vamos a hacer
otro ALCIF y decir: Bien, s si su edad es
mayor o igual a 13, tenemos que capturar a los Y vamos a levantarnos, no
sé cuál es la edad de
pensión probablemente 60 años menos de 60 años, y esta va a ser
la persona de precio completo. Por lo que el precio de impresión es de $10. Hay una ganga por entrar
y ver una película en la pantalla grande de nuestro
club que hemos organizado. Entonces su precio es
ahora el total de $10. Derecha. Ahora, ahora queremos
comprobar nuestra cuarta categoría, y nuestra cuarta categoría
va a ser algo
un poco especial. Entonces nuestra cuarta categoría
es para nuestros pensionados. Entonces si la edad es
mayor o igual a 60, esos
son nuestros pensionados, van a conseguir esto a un
precio súper ganga de digamos, una de las pensiones
va a conseguirla Pienso en $1. Bien. Eso es fantástico. Obtienen un precio especial de $1. Este es un excelente
club para visitar. Pero no son solo
los pensionados, ya ves, ahora, lo que no te das cuenta
es que si recuerdas, también
obtienes el precio del
pensionista Ahora eso es increíble. tener dos condiciones aquí. No sólo si la edad
es mayor a 60, sino que todos los miembros son iguales a verdad. Esto es importante ahora porque
esto es una declaración o, lo que significa que cualquiera
de estos puede ser cierto. O la edad es
mayor que igual a 60, en cuyo caso, va a imprimir
el precio es de $1 o miembro es igual a
true y luego
también va a imprimir el
precio es igual a $1. Fue una declaración A, entonces eso obviamente
significaría que ambos tienen que ser ciertos para que imprima
este precio como $1. Pero es un todo, así que cualquiera de estos puede ser cierto. Lo que también podrías
haber notado es usamos algo nuevo
que
antes no teníamos es que comprobamos que si esta variable
es igual a true, que es un valor booleano Entonces, al hacer esto, básicamente es hacer exactamente lo que tenemos
en todas nuestras otras cosas. Pero en lugar de
verificarlo contra un valor, es verificar si es cierto. Entonces, si el miembro es igual
a verdadero, entonces haz esto. De lo contrario, si no es igual
a verdad, entonces no lo hagas. Entonces básicamente, es
solo verificar si es cierto o si no es cierto. Y en base a
eso, o bien imprimirá
esto o Sí, nota, este es un
tipo especial de variables. Recuerden que
hablamos, tenemos una serie de variables o
enteros en este caso Esta es una variable booleana. Simplemente tiene dos
valores, falso o verdadero. No lo pongas en comas invertidas. Eso lo convertiría en
cadena. Esto no es una cadena. Básicamente se usa para
probar verdades y falsos, que puedas ver el
color de eso, cómo ha cambiado
y aquí también Entonces reconoce que un booleano es
un verdadero o un falso Entonces, ¿qué queda para
acabar con esto? ¿Qué nos falta?
Bueno, recuerda, tenemos que tener el catchall Entonces necesitaríamos una declaración para decir qué pasa si
ninguno de estos es cierto, y tal vez digamos, ya sabes, error en la edad o lo que sea, entrada de
error o simplemente algo así. Ya sabes, solo captas
que han ingresado algo correctamente
en la entrada. Bien, entonces ahora vamos a ejecutarlo. ¿Bien? Hemos establecido que nuestra
edad es igual a 20, por lo que ha pasado por
todos estos, y si intentas encontrar la condición
adecuada tú mismo, verás que esta
es la que evaluó a verdad porque 20 es mayor que 13
y 20 es menor que 60. Entonces se imprime aquí abajo. El precio es de $10. Ahora vamos a cambiar
esto a otra era. Vamos a probarlo con cinco. Oh, ahí vamos. El precio es gratis. Entonces todo esto parece que está
funcionando absolutamente fantástico. Entonces lo sé,
intentemos hacerlos miembros. Entonces cambiemos de miembro a true. Entonces realmente, lo que debería pasar es que debería decir que
su precio es de $1. ¿Libre? ¿Qué? Eso es una locura. No, pero queremos que sea
que sean miembros. Pero ya ves lo que está
pasando aquí. Y en este caso, bien, entonces el miembro ha anotado,
y eso es genial. Pero si el miembro tenía mayor edad como 55 y
deberían estar obteniendo una
gratis, no lo son. Están recibiendo un precio
de 10 dólares porque está evaluando 55 entre
los 13 y 60 años de edad. Entonces, lo que está sucediendo aquí es recordar que tu programa
empieza a funcionar desde arriba, funciona hacia abajo,
así lo comprueba. No, no es cierto. Comprueba eso, no es cierto. Comprueba eso. Sí, es cierto. Imprime eso e
ignora al resto. De hecho ni siquiera
llego aquí para verificar, Oh, pero si el miembro es cierto, deberíamos estar teniendo
un precio de $1. Tenemos que añadir algo más. Tenemos que asegurarnos de que
cuando verifica las edades, también verifica
que
no son miembros porque
el miembro es un rango de precios
diferente. Ahora, obviamente, no
tendríamos que aplicarlo a los menos de cinco porque
eso obviamente es irrelevante, eso es gratis
seas miembro o no Pero a partir de este momento, de ese seis a 13
y el siguiente, tenemos que comprobar si
son miembros o no. Para ello, sólo tenemos que
añadir en otra declaración. Para ello, queremos comprobar
si entre estas edades y su
estatus de miembro es falso, y yo no hice un doble igual. Bien, entonces ya lo
comprobamos, ¿de acuerdo? Esa es su edad, y no
son miembros. Y nuevamente, aquí
queremos checar. Así que básicamente Cpm ritmo. Lo divertido es que
en realidad estamos poniendo
múltiples condiciones, y esto es lo que cada vez más
puedes hacer. Puedes involucrarte bastante. Entonces, esencialmente ahora, esto
debería funcionar. Entonces lo ejecutamos. Y sí, el precio es de $1, porque lo que está
haciendo es a pesar los 55 años cayeron en
la categoría 13 a 60, esa parte era cierta, pero la tercera condición no era cierta porque tienen
miembros iguales a verdaderos, y esto dice que miembro
debe igual a falso. Por lo que toda esa
condición fue rechazada. Y pasó a
la categoría final, y decía que es gran edad en
igual 60 o miembros verdaderos. Ese es cierto porque
son miembros, y así el precio es de $1. Para que puedas ver de dónde entra la
lógica en esto. De verdad tienes que estar pensando. Pero está bien cometer errores. Si las cosas no
funcionan de inmediato, miras,
piensas en ello, y puedes
averiguar qué está pasando. Entonces este es nuestro Ilsifs y juntando las condiciones booleanas Se pone bastante emocionante, y todas estas cosas
van a venir a jugar cuando escribamos nuestro juego más adelante.
103. Resumen: Tiempo de resumen y un poco de bono. ¿Qué hemos cubierto?
Hemos cubierto la importancia de tomar
decisiones. Tendremos que tomar
decisiones en la vida y no hay otro lugar
más importante que
tomar decisiones en tu código
y la forma en que lo hacemos en Python es usando la
declaración if. Muy sencillo. Es si alguna condición es cierta, entonces algo
sucederá después de eso. Vimos que necesitábamos
algo más que una declaración F. Analizamos cómo se puede
tener una F y una declaración, y pasamos más allá de eso, diciendo, bueno, a veces tienes múltiples afirmaciones que necesitan ser evaluadas si son ciertas. Teníamos yo y luego ASF, eso es simplemente abreviado a. ELF. Algo así como un
elefante. Entonces este último ejemplo lo
miramos, podríamos comprobar múltiples
rangos de cosas de edades. Luego lo empujamos
más para decir,
Bueno, también puedes tener operadores
booleanos, lo que significa que en realidad estás
empezando a usar s y
s para combinar múltiples comprobaciones de
variables Podríamos verificar una edad
mayor a seis o menos de 13 años. Y otra variable
que era miembro, que es una
variable booleana que solo
puede tener un valor verdadero
o falso Entonces ahora terminamos con
una condición que está comprobando tres
cosas diferentes y todas ellas, o la combinación
de todas ellas juntas
debe evaluar a true antes de que se ejecute la sentencia
que se indenta El precio es de $5
solo se imprimirá si la edad que se selecciona está entre el rango de
seis y menor a 13, y no son miembros. Ahora en ese punto de decir
y no son miembros, en realidad
hay otro
pequeño atajo que puedes hacer. Verás en
este momento, mencionamos que miembro es un
tipo especial de variables, Booleano sólo puede tener
un cajón de falso En realidad no necesitas
escribir falso y verdadero. Hay otra manera en la
que se puede hacer esto. Queríamos mostrarte esa
manera primero, así que tiene sentido, pero hay una forma ligeramente
atajo que es mejor usar siempre y cuando sepas lo que estás
haciendo. ¿Qué haces? Para poder usar
esa vía atajo, tenemos que retroceder esta condición aquí
donde hemos dicho, es igual a falso? En cambio, lo único que tenemos que
escribir es esta palabra, no. Esto en realidad se lee más como una frase en inglés,
si lo piensas bien. Es verificar si
solo entre esto y si esta persona no
es miembro. Entonces, en vez de escribir
como teníamos aquí, ¿es igual a falso, que
es lo mismo que decir, esta persona no
es miembro? Básicamente podemos simplemente
escribir y no miembro. Nuevamente, podemos cambiarlo aquí. Bueno, esto hace que sea un
poco más fácil en cierto sentido de leer,
y obviamente es una notación
más corta, pero solo necesitas
entender lo que
realmente estás diciendo aquí. Lo que va a tener
que hacer ahora el último decir miembro es igual si es cierto, solo
puedes eliminarlo totalmente. Ahora, usted lee tiene sentido. Es la edad
mayor a 60 o miembro. Eso significa que es miembro verdadero. Entonces cómo va a funcionar este programa
ahora, solo
va a ver, bien, miembro es igual a verdad. Cuando se trata de aquí,
va a decir, lo que es miembro, miembro es cierto, entonces no es cierto, que es igual a falso y
esta condición no va a ocurrir. Lo mismo aquí, algo que
no es cierto es falso, así
que eso no sucede. Y entonces aquí
viene y dice:
Oh, miembro es cierto. Entonces, obviamente, esta
condición es cierta, e imprimirá esto. Bueno, eso
obviamente pasaría si esta persona es efectivamente miembro. Sí así que a la otra manera si encuentras esto un
poco confuso, por todos los medios continúa
usando y diciendo miembro es igual a falso o miembro es igual a verdadero, y
puedes comprobarlo. Pero si te sientes cómodo con
simplemente decir no y la variable booleana o
solo la variable booleana
por sí misma para indicar que es verdad, entonces también
puedes hacerlo Pero nuevamente, empieza despacio, asegúrate de entender
lo que estás haciendo. Esta ha sido una sección muy
emocionante sobre cómo
tomar decisiones en la vida, y hay algunos ejercicios
a seguir, hacerlos, involucrarse porque
como decíamos antes, aprendes en el.
104. Por qué nos encantan los bucles: A veces se siente
como que la vida está en un bucle grande porque simplemente
damos la vuelta a los
mismos pequeños círculos, los mismos ciclos, nos despertamos, hacemos las cosas i z, volvemos a casa, cenamos, nos vamos a la cama, nos despertamos, son
bucles, bucles. Los bucles son una
parte importante de la vida porque así funcionan
las cosas y también
son una parte
importante a la
hora de nuestra codificación. Ahora bien, puede que no
sean bucles de fruta. Pero la codificación tiene un aspecto
importante y ese es el uso de bucles porque antes
miramos
cómo tomar decisiones,
pero a veces necesitamos que las cosas
se repitan varias veces. Podríamos querer
decir, vamos a dar la vuelta a un bucle hasta que cierta
condición sea cierta, o vamos a dar la vuelta a un bucle
tres veces haciendo algo. En esta sección, queremos echar un vistazo
a los loops y cómo son muy potentes
y útiles en la codificación. Ponte el límite de pensamiento,
prepárate ya que echamos
un vistazo al poder
de los bucles en Python.
105. Bucles for y gran rango: Ahora vamos a mirar
bucles en la programación. Obviamente, específicamente
aquí bucles en Paren. Hay dos tipos de
loops que encontrarás en cada
lenguaje de programación disponible básicamente, esos son cuatro bucles
y bucles Wile Vamos a comenzar
mirando cuatro bucles en esta conferencia y luego
cubriremos los bucles de Wile en la siguiente Sé que al principio esto puede
parecer un poco confuso, pero ojalá a medida que demos algunos ejemplos más y a medida que
avanzamos , va a tener más
sentido. Por supuesto, si le preguntas a Doc, siempre
puedes hacernos preguntas. Cuatro bucles básicamente
se ve así. Voy a
teclearlo y luego te lo
voy a explicar. Entonces decimos, tratamos de
pensarlo como una frase. Cuatro, que es una variable
como la que teníamos antes, cuatro o
un número en un rango de digamos cinco
queremos que algo suceda. Entonces, ¿qué estoy
diciendo realmente aquí? Entonces lo que estoy diciendo es que estoy usando esta palabra clave llamada cuatro
porque este es un bucle de cuatro. Cuatro, un número en
un rango de cinco, quiero que algo suceda. Básicamente, quiero que
algo suceda una y otra y otra vez. En este caso, quiero que ese
algo suceda cinco veces. Sólo voy a imprimir para
mostrarte lo que realmente está
sucediendo en este bucle. Nuevamente, estoy diciendo cuatro
en un rango de cinco, vamos a querer imprimir
algo solo para ver qué está haciendo realmente
este bucle
y cómo están funcionando los bucles. Vamos a imprimir hola
y ver qué pasa. Bien, entonces voy
a ejecutarlo ahora. Bien, y lo que puedes
ver, básicamente lo que ha pasado aquí es Hola
ha impreso una, dos, tres, cuatro, cinco veces. Entonces, si piensas en
eso lógicamente, tiene sentido
porque
pedimos a nuestro loop imprima un valor cinco veces Pero ahora ¿qué es durante todo
este bucle? Cada vez que los bucles dando
vueltas y vueltas, si recuerdas son variables, así que eso significa que puede cambiar. En realidad está cambiando cada vez que
estamos dando vueltas y vueltas
y vueltas en este bucle. Entonces, para ver qué es lo que
realmente se convierte y qué valor comienza a aguantar mientras el bucle da la
vuelta, vamos a imprimir. Sólo estamos imprimiendo
esto por aquí. Cada vez que el bucle da la vuelta. Si recuerdas lo que
te dije en una de nuestras
otras conferencias, en programación,
siempre cuentas desde cero. Podrías haber esperado
ir uno, dos, tres, cuatro, cinco, pero no, porque esto
es programación, siempre
venimos de cero. Entonces se imprime R cinco veces, pero cada vez que los
bucles daban la vuelta, se le ha agregado
uno
a este valor de R. Así que la primera vez que el bucle fue, empecé como cero. Entonces el bucle volvió a ir y me convertí en uno. Es
como contar. Básicamente, todo este
bucle hace aquí, es que cuenta cinco veces. Si quieres hacer algo
una cierta cantidad de veces, obviamente
puedes
cambiar este número. Vamos a hacer este
número ahora ocho. Entonces, qué va a pasar, hemos vuelto a
contar ocho
veces, pero 0-7 Este es el tipo
de bucle más simple que puedes obtener, y si puedes entender esto, entonces ya estás en camino de entender los bucles. Pero sí empieza a ponerse
un poco más confuso. Ahora voy a
cambiar algo. En bucles, tienes estas cosas dentro de los corchetes de aquí
que se llaman parámetros. Cualquier cosa dentro de estos corchetes
se llama parámetros, que es otra palabra que tendrás que recordar en la programación. Entonces lo que voy a hacer ahora es que voy a agregar
otro parámetro. Entonces voy a sumar un cero. Lo que he hecho aquí ahora
en vez de simplemente decir
quiero que este bucle dé la vuelta
y alrededor de ocho veces, y ahora diciendo, ahora
le estoy dando un punto de partida. Este cero de aquí
está diciendo mi bucle, quiero que empieces a
contar desde cero, y luego dejes de contar a las ocho. Pero recuerden lo que dije
sobre cómo cuentan los programas. Vamos a ejecutar esto de nuevo. Verás que es exactamente
lo mismo que sucedió antes. Se ejecuta de cero, que fue mi
punto de partida a ocho,
pero debido a que los
lenguajes de programación cuentan 0-7, se detuvo a las siete Básicamente, se detuvo en uno menos de lo que sea
este número. De cero a siete, se ejecuta ocho
veces pero comenzó en cero. Pero ahora ¿qué pasa si
cambio el cero y ya no
quiero que mi programa empiece
a contar desde cero? Quiero que empiece a
contar desde vamos solo uno porque eso
me parece un poco más sencillo. Ahora veamos qué pasa. De nuevo, a pesar de
que ahora cuenta desde uno, sigue terminando a las siete por aquí en lugar
de terminar a las ocho. Eso es otra vez porque el programa sigue contando desde cero. Lo acabamos de decir, Oh, no, ignora ese cero y
solo imprime desde el uno. Puedes cambiar esto a cualquier
número siempre y cuando sea por ahora menor que el
segundo número de aquí. Entonces podemos decir empezar a contar desde cinco y
¿qué va a hacer? Cinco, seis, siete. Así que recuerda, este es el número
en el que empieza y va a terminar en uno menos que
este número aquí. Ahora para hacer las cosas
aún más interesantes, podemos agregar un
parámetro más a este bucle de cuatro. Voy a empezar
de nuevo a cero. Voy a agregar un
tercer parámetro por aquí. Lo que este realmente hace es que le dice a mi loop en
qué contar. Digamos que quería
contar números pares. Voy a decir el bucle, quiero que impriman
cada segundo número, que básicamente
es lo mismo contar en número par. Lo que se hace aquí es
que está impreso el cero. Entonces hay dos aquí dijo que
no imprima el siguiente número, solo imprima el
número después de eso. decir, imprimir
cada segundo número, se imprime cero, dos, cuatro, seis, impreso
cada segundo número. El primer número otra vez,
empieza en este extremo en esto, pero todos sabemos que es
uno menos que este. Y contar en dos. Habrías
pensado, Bien, ¿por qué se detiene entonces a las seis? Bueno, obviamente, porque si
esto termina a las siete, dos más de siete son ocho, que no debería imprimir, así que
solo se detuvo a las seis. Si lo piensas lógicamente, todo
realmente tiene sentido
porque está comenzando desde el cero y terminando
en ese siete Entonces para hacer las cosas aún
un poco más interesantes, lo que vamos a hacer ahora, es que vamos a contar hacia atrás. Por supuesto, puedes cambiar este número a
contar en cualquier cosa. Si quiero que
cuente en tres, simplemente cámbielo a tres y
va a comenzar de cero e imprimir cada
tercer número y puedes cambiar de
nuevo el número
inicial, puedes jugar con él. Pero ahora lo que
voy a hacer es que
voy a retroceder estos ¿Qué pasa si te
gustaría contar tal vez desde el número más grande y
bajar en orden descendente? También puedes hacer esto también
puedes hacerlo. Pero ahora tenemos que cambiar un poco
nuestro orden de nuestros
parámetros. El primer número sigue siendo
donde va a empezar, pero claro, ahora queremos
comenzar con un número mayor. Quiero empezar a las diez, queremos terminar a la una y
queríamos ir hacia atrás. Eso significa que este número de
aquí tiene que ser negativo. Comenzando, terminando
negativo. Ahora otra vez, verás que va bajando 9876 Pero lo que se hace aquí
de diez, perdón, diez, 98, 76, y así sucesivamente,
se terminó a las dos. Si
lo piensas,
claro, no va a terminar
en el de aquí. Pero va a terminar en
un número antes que el uno, que en este caso
es dos porque los dos vinieron antes que el uno. Es lo mismo, pero salvo que ahora
vamos hacia atrás. Ahora, claro, esto
no está muy bien. Todo lo que estamos haciendo es
imprimir, pero estos son útiles la mayor
parte del tiempo cuando
quieres repetir algo
muchas veces por cierta
cantidad de veces, como decíamos
antes en la vida, te encuentras con
bucles todo el tiempo. Eso brevemente es un
rango basado para bucle. Juega un poco con él y prueba diferentes
combinaciones, y, ojalá empieces
a entenderlo.
106. Para bucles, cumple con cadenas y listas: Estamos viendo los bucles y hemos estado
viendo los cuatro bucles con rango y un rango de números y son
potencialmente muy potentes. Vamos a ver
más tarde cuando lleguemos al juego que
vas a estar construyendo, que esta es una
parte muy importante de la programación. Ahora queremos echar
un vistazo a cómo
podemos usar cuatro bucles y también
podemos usarlos
con listas. No tiene que
funcionar solo con números, hecho
puedo trabajar con texto y ya hemos tocado
esto antes, pero ahora queremos unir
los cuatro bucles y listas y
mostrarte qué
cosas emocionantes puedes hacer. Bien, voy a
eliminar esto y
vamos a crear una lista. Vamos a crear una lista de
digamos nuestra comida favorita. Yo solo voy a
llamar comida a esta lista, y ojalá todos recuerden
cómo crear una lista. Comida. Bien, ahora podemos
meter un par de artículos. Entonces digamos que me gusta
comencemos con uno poco saludable. Chocolate. Y entonces
seamos insalubres en este. Podemos ir a las hamburguesas. ¿Qué comida más deliciosa
puedo pensar de las papas fritas? Bien, pondremos uno sano sólo para mantener feliz a mi papá. Zanahorias. Mm. Delicioso. Aunque me
gustan las zanahorias. Y tal vez vayamos con un trago. Un trago más.
Agua. Sólo vamos con agua. Siempre sabor sabroso. Bien. Entonces aquí hay una lista
de comida que me gusta, y lo que solo
vamos a hacer en este ejemplo es que solo
queremos recorrerla. Así que recuerda antes
teníamos una lista, y cada vez que queríamos imprimir elemento en esta
lista como el chocolate, teníamos que ir a escribir
nuestra declaración impresa, y teníamos que decir el
nombre de la lista, y luego tuvimos que
tener estos
corchetes los cuales obtienen el índice y le dan el índice del
elemento que queremos imprimir. Si quisiéramos imprimir el
primer elemento chocolate, teníamos que poner en
esta declaración impresa y luego decir el nombre
en la lista con el índice que queremos imprimir estos corchetes y ejecutarlo nos
daría chocolate. Entonces diga ahora que también quería
imprimir hamburguesas. Tendría que tener una declaración
completamente nueva con, nuevamente, lo mismo, imprimir comida y luego solo
tener el número uno, luego otra vez, imprimir
comida número dos. Si en realidad ya lo
piensas, puedes antes en
nuestra última conferencia, miramos cómo ese número,
esa variable fui uno arriba cada vez que el
bucle daba la vuelta. A lo mejor podríamos
usar eso para imprimir una lista. Lo que vamos a hacer de
nuevo es que vamos a decir cuatro y vamos
a usar una variable. Ahora bien, este número
puedo ser cualquier cosa. Déjame
llamarlo otra cosa. Digamos mi comida. Sólo para mostrarte
que esta cosa de aquí no tiene que ser,
es sólo una variable. Puede ser cualquier cosa, y
puede contener cualquier cosa. Por mi comida en Alimentos. Ahora bien, eso puede parecer
un poco extraño, porque no tenemos ese
rango ni nada por el estilo. Pero Python es en realidad
bastante claver aquí. Entonces ya sabe que la
comida de aquí tiene uno, dos, tres, cuatro, cinco elementos de largo, y empieza en cero, luego uno, dos, tres, cuatro. Python ya lo sabe,
así que no tenemos que decirle a
Python lo grande que
es esta lista. Ya lo sé. Entonces solo tenemos que decir para mi
variable en nuestra lista comida, imprimir ese
elemento impresor en la lista. Queríamos imprimirlo todo
, así que imprime comida. Nuevamente, notarás que
ninguno de estos tiene comas invertidas alrededor ellos porque son variables No son cadenas por aquí. Sostenen una cuerda, una de estas cuerdas,
pero son variables, por lo que no hay comas invertidas Para una variable en alimentos,
imprima esa variable. Lo que esta lista va
a hacer ahora, vamos a ejecutarla y ver. Bien. Todo lo que está hecho es la
primera vez que se ejecuta esta lista, mi comida se convierte en chocolate. Entonces la próxima vez
que corra el bucle, mi comida se convierte en hamburguesa Entonces la próxima vez
se convierte en papas fritas y así sucesivamente. Todo está haciendo igual que antes, y yo para bucle con números, va uno arriba
cada vez que corre. Entonces, esta es solo
una forma más fácil de iterar a través de
una lista en lugar de escribir la misma declaración una y
otra vez Sara acaba de usar como palabra,
están iterando. Nuevamente, es un pozo, no
es común
es una palabra inglesa que usamos significa dar vueltas, pero es la frase que normalmente se usa cuando nos referimos
a bucles Nos referimos a ellos como iteraciones. De nuevo, solo te hará
parecer mucho más inteligente. También tenga en cuenta que cuánto
más corto es este código. Si tuviéramos que escribir esto
y tuviéramos que usar print, tendríamos que tener
cinco comandos de impresión. Se puede ver cómo el uso de estos bucles está haciendo que nuestro
código sea mucho más eficiente. Ahora, imagino que haces
esto exponencialmente grande tienes 100 mil, 50 mil elementos en la lista Obviamente, simplemente no es posible escribir
código así, pero usando los bucles, podemos lograr todo tipo
de cosas increíbles. Bien, entonces solo te voy a
dar un ejemplo más, pero no usando una lista, ahora vamos
a usar una cadena. Digamos que tenemos una cadena y una variable,
sosteniendo una cadena, vamos solo con nombre, y esta variable
va a estar almacenando
mi nombre como cadena. Bien, Sarah. Sólo guardemos mi nombre, Sara en una variable de cadena. Ahora quiero recorrer esto. Podrías estar como, ¿por qué
querrías hacer esto? Por el momento, solo
te estoy mostrando cómo puedes
recorrer una cadena, pero obviamente lo hace, luego se vuelve muy
útil. Voy a escribir exactamente
lo que escribí aquí. Pero ahora en vez de
pasar por esta lista, quiero pasar por mi nombre. Nuevamente, esto podría ser,
o simplemente llamémoslo. Es más corto. F en nombre. Y nuevamente, imprima esa variable. Imprimir. Bien, así que
vamos bien, vamos a comentar esto por ahora porque no queremos
ver qué hace esto. Ya sabemos lo que hace y si recuerdas
cómo comentar. Sólo un pequeño
punto rápido. Hablamos antes de comentarios, pero este es un
pequeño truco genial. A veces cuando
quieres que un trozo de código no se ejecute
por cualquier razón, como Sarah mostrándote
solo pones los comentarios, algo de la etiqueta hash
delante de las cosas, y de repente Python
ignorará ese código. Es una excelente manera de también cuando intentas
depurar código, no
estás seguro de dónde está
el problema. Empiezas a reducir
lo que realmente se está ejecutando para que puedas concentrarte en dónde
crees que está el problema. Y así solo usas
pequeños comentarios y puedes fácilmente,
obviamente, eliminarlos, y luego el código
se activará de nuevo. Sí, esta definitivamente
es una buena manera de
enfocarte en lo que
quieres enfocarte. Bien, entonces lo que nuestro loop ha hecho aquí básicamente exactamente igual que lo que pasó
en la lista. Lo que se hace es la
primera vez que el bucle corrió el se convirtió en el
S. La siguiente vez
que corrió pasó a ser el A. Cada vez que se movía
uno arriba,
uno arriba, uno arriba hasta que
llegamos al final del nombre y el bucle se detiene. Se imprime Sara con cada
letra en una nueva línea porque cada letra es una nueva
letra en nuestra cadena, y cada letra
se convierte en la variable. Eso es básicamente sobre cómo
hacer un bucle a través de una cadena. El primero que mostramos
aquí fue cómo
recorrer una lista y el nuestro ejemplo anterior fue
cómo hacer un bucle con números. Por ahora, esto es todo
lo que necesitas saber. Nos meteremos en ejemplos más
complicados. Pero en nuestra próxima conferencia, vamos a estar viendo
un tipo diferente de bucle llamado bucle WOW.
107. Bucles while: una experiencia completamente nueva en bucles: Aquí puedes ver es nuestro bucle for que vimos en una
de nuestras conferencias anteriores. Pero ahora no queremos
centrarnos en esto, sino más bien en esta conferencia, vamos a estar
mostrándote loops salvajes. Nuevamente, ahora un bucle WOW
se llama bucle WOW porque hay una
declaración salvaje en él así. Pero este bucle es un
poco diferente y en realidad un poco más
avanzado que el bucle cuatro, pero es muy útil en
muchas situaciones. Lo que vamos
a hacer, lo
escribiré para ti y luego te lo
explicaré. Entonces lo que voy a hacer es que
voy a hacer exactamente lo que está haciendo
este bucle de cuatro, pero excepto hacerlo
en un bucle while. Estos dos bucles deberían
hacer exactamente lo mismo, pero se ven
completamente diferentes. Déjame en realidad solo
correr esto por ti otra vez en caso de que
ya te hayas olvidado de lo que hace. Nuevamente, imprima de cero a cinco, espero que a estas alturas ya sepa por qué. Ahora voy a hacer un loop WOW. Wow loop se ve así.
Vaya de nuevo, una variable, la
voy a llamar J es menor que un número al que
quiero subir. Imprimir. J. Bien. Ahora piensas, Bien, eso parece sencillo, pero ahora vamos a ejecutarlo
y ver qué pasa. Enseguida, puedes ver
que nos ha dado este error, el
nombre J no está definido, nombre J no está definido, lo que puede parecer un poco raro porque nunca
definimos el Yo sólo sabía lo que era. Pero aquí en el bucle Wile, no sabe qué es
esta variable J. Ahora, eso es porque un bucle while funciona de manera muy diferente
a un bucle for. En un bucle while, hay
que ayudarlo un poco. Lo primero que tenemos que hacer extra por un bucle while es
que tenemos que definir esta
variable J. J es un número. Y lo que sea que lo definas como aquí es de donde va a empezar el bucle
. Digamos que queremos que nuestro bucle comience desde cero,
igual que aquí. Este bucle comenzó desde cero, así que queremos que nuestro bucle
Wow comience desde cero, este bucle terminó en
uno menos de seis. Al igual que aquí, este
bucle seguirá en marcha hasta que J sea seis o mayor, o en otras palabras, Wow
J es menos de seis. Bien, entonces vamos a ejecutar esto
y ver qué pasa. Seguramente, ya está bien. Bien, eso no se
ve muy bien. Sólo estamos recibiendo un
montón de ceros. Lo que he hecho aquí es que
en realidad he introducido un problema muy común pero bastante molesto
y bastante serio. Lo que he hecho aquí es que he creado algo llamado
un bucle infinito. Ahora, sólo voy a parar esto antes de que siga
yendo y viniendo. Bueno, esto va a
seguir para siempre. Básicamente, por eso
es un bucle infinito. Para detenerlo, lo
más fácil de hacer es simplemente retroceder este código porque sabemos que aquí
es donde estaba todo desordenado Sólo voy a borrarlo y voy a volver a ejecutar nuestro programa. Ahora solo está imprimiendo este
bucle por aquí, es feliz. Nuestro bucle infinito se ha detenido. Pero, ¿por qué
sucedió eso? La razón por la que realmente sucedió
fue porque aquí, le
dijimos a nuestro programa que
J es igual a cero. Entonces dijimos: Bien, genial. Mientras que J es menor de seis, imprime J. I imprimió
J, que es cero. Entonces volvió a dar la vuelta
porque J aún tiene menos de seis. Mientras que J es S en
seis, pero ¿qué es J? Sigue siendo cero.
Imprimí cero otra vez. Entonces mientras J es y seis, J sigue siendo cero y J en realidad
nunca incrementó o nunca
cambió de ser cero Por eso tuvimos un
bucle infinito y si recuerdas, simplemente imprimió
cero, cero, cero, cero,
cero porque a
diferencia de este bucle de cuatro, en realidad
tenemos que decirle
al bucle while para hacer que J crezca o cambie o se haga
más grande o en otras palabras, incremento, que
usaríamos en esta circunstancia Lo que entonces tenemos que
hacer, queremos imprimir J, pero una vez que nuestro programa
esté impreso J, queremos J, y esto podría
parecer un poco raro, pero queremos que J
sea igual a J más uno. ¿Qué
dice eso? Recuerda cómo decía cuando se ejecuta un programa, primero se da cuenta de
lo que hay de este lado, luego toma lo que
esté de este lado, y lo asigna a
esta variable aquí Entonces, ¿qué está pasando aquí?
Es cuando se ejecuta el programa. Digamos que J empieza como cero, viene aquí, cero es
menos de seis, imprime ese cero. Ahora, cero más uno es uno, ahora hacer este valor
de cero más uno, que es uno igual a J. J luego se convierte en
uno. Ahora J es uno. Entonces, ¿qué pasará la próxima vez? Uno es aún menos de seis, imprime ese uno y ahora cambia
el valor de J. J era uno, así que uno más uno es dos y ahora hacen que J por aquí sea igual a dos. Básicamente solo
recuerda que este lado es primero elaborado por el programa y luego es la caza
a este valor aquí. Ahora ojalá nuestro programa
vaya a funcionar. Lo que van a ver
es que esto por aquí es la primera vez que se ejecuta
y este bucle de cuatro por aquí, de cero a cinco. Entonces aquí, finalmente,
nuestro loop WOW
funciona, va de cero porque le
dijimos que comenzara en cero y terminara a las cinco o
en otras palabras. Sigue adelante hasta J o sigue adelante mientras
J es menor a seis. Entonces otra vez, como
tuvimos en este bucle de cuatro, obviamente
puedes cambiar, en
qué querías
empezar, en qué querías terminar, otra vez, también cuánto
querías incrementar B.
Como teníamos antes, teníamos a los dos por aquí para
dejarlo subir de dos a dos Sí, todo lo que haces es decir, quiero que agregues dos cada
vez en lugar de agregar uno y luego va
a subir en dos. 02, cuatro para el primero, cero, dos, cuatro para
el segundo. Podrías cambiar esto.
Puedes cambiar esto por todas partes. Pero básicamente, eso es
lo que es un bucle while. Si
lo piensas, la lógica de un bucle de cuatro y la lógica de
un bucle while es un poco diferente porque un bucle de cuatro
realmente sabe exactamente
cuánto quieres que se incremente cuando quieres que se detenga
y es solo imprimir ¿Dónde está un bucle Wile
necesita una condición? Básicamente, va a seguir imprimiendo hasta que le hayas dicho que se detenga o hasta que
esta condición, J es menos de seis es falsa. Un bucle while solo sigue
yendo y yendo y
yendo hasta que la condición
que le das aquí sea falsa. En otras palabras, si bien esto
es cierto, seguir adelante. En cuanto sea falso, detenga
el bucle y salte de él. Entonces, lo que es realmente importante
aquí es que, como acaba de decir Sara, se predefine
un bucle de cuatro cuanto a cuántas veces
va a ir. Parece que eso es lo
mismo aquí para el bucle Wil, pero en realidad es
diferente porque el bucle Wil está esperando
que algo se haga realidad. Y te vamos a mostrar un ejemplo donde obviamente esto en realidad es muy útil
donde por ejemplo, quieres que alguien pueda entrar en algo una y
otra
y otra vez, y no sabes cuántas veces
realmente van a hacer. Entonces no puedes decir, solo quiero
que lo hagas tres veces. Quieres
darles tantas opciones y veces para ingresar
algo como
quieran hasta que cierta
condición sea cierta,
y ahí es cuando
usarías el bucle WW En nuestra siguiente lección,
te mostraremos un gran ejemplo de cuándo
usarías el
bucle while y por qué
es una forma de bucle tan poderosa.
108. While loops: lo bueno continúa: Mirando bucles. Hemos mirado cuatro bucles. Hemos mirado bucles while, pero queremos ilustrar
la diferencia entre un cuatro y un wild porque
pueden parecer iguales. Como decíamos, un bucle de cuatro
va de un número a otro número en un rango y está
predefinido y preestablecido. Mientras que un bucle salvaje puede parecer que está haciendo
lo mismo, va a continuar hasta que
cierta condición sea cierta. Puedo emular un bucle de cuatro. Pero también es muy útil
porque puedes usarlo para hacer que un bucle continúe hasta que algo suceda cuando
no sabes cuánto tiempo
va a tardar. No va a ser un número
establecido de iteraciones. Podría ser cualquier cosa
desde cero, una, dos o 1,000 iteraciones hasta que
alguna condición sea cierta Veremos que eso sucede
en este ejemplo. Lo que vamos a estar
viendo en este ejemplo
va a ser una lista de lo que
hay en tu bolsa de maquillaje. Ahora bien, esto podría variar
de persona a persona. Todo lo que este programa
va a hacer es que le
va a preguntar al usuario qué
hay en tu bolsa de maquillaje. Entonces el usuario lo
va a escribir. Tengo un poco de rimel. Después haz clic en Entrar y otra
vez, va a pedir uso de nuevo. Qué hay en tu bolsa de maquillaje y el usuario va a
seguir escribiendo. Lo que hay en su bolsa de maquillaje
hasta que no les quede nada. Obviamente, depende.
Es mi bolsa de maquillaje no
tiene nada en ella. Mientras que la bolsa de maquillaje de
otra persona puede tener muchos
más artículos en ella. Por eso este es un gran ejemplo de usar
el bucle Wile porque en realidad no
sabemos cuántos artículos hay en tu bolsa de maquillaje Depende de usted hasta que se encuentre cierta condición para ser cierta. En cuyo caso, vamos
a usar la palabra hecho para indicar que ya he terminado con
lo que hay en la bolsa de maquillaje. Veamos cómo
va a quedar eso. Vamos a escribir WOW.
Vamos a usar una variable. Mientras que R y queremos decir
no es igual a, si recuerdas, así es como escribimos no igual a la palabra hecha o una
cadena llamada done. Como dijimos antes, esto
va a seguir adelante hasta que el usuario escriba y termine y vamos a
mostrarte cómo funciona eso. Recuerda otra vez,
tenemos que definir esta variable o el programador va a no saber de qué
estamos hablando. En este caso, en
realidad es una cadena. Y específicamente, yo
es una cadena vacía. Entonces esto es lo que he escrito
aquí es solo una cadena vacía, que es básicamente una cita sin nada en el medio
y una comilla. Entonces esa es una cadena vacía. Has establecido esta variable para que
sea igual a esa cadena vacía, y queremos que este bucle continúe
hasta que esté igual a
hecho o en otras palabras, Guau no es igual a hecho. Entonces, ¿qué dijimos
que queríamos preguntarle al usuario? Bueno, queremos preguntarles
qué hay en tu bolsa de maquillaje. Entonces ojalá también
recuerdes cómo hacer input. Vamos a poner Input y hacer el uso
de esa pregunta, qué hay en tu bolsa de maquillaje. Ahora también, vamos
a tener que almacenar esta
entrada en alguna parte. Lo que realmente es esta entrada, esta entrada se convierte en R. Cada vez se ejecuta
el bucle y los usuarios hacen
esta pregunta y escriben
algo por aquí, lo que sea que
escriban va a ser almacenado en. Por ahora, solo
vamos a luego imprimir que veas exactamente
cómo funciona esto. Bien. Notarás que no tengo una de esas
condiciones que tuve última vez donde iteré
o cambié esta variable Eso es porque no estoy diciendo mientras esté más grande que hecho, lo que en realidad no tiene ningún
sentido en absoluto. Sólo digo que sigas
adelante hasta que esté igual a hecho o mientras no
sea igual a hecho. Así que vamos a ejecutar esto. Bien. Entonces comencemos. ¿Qué hay en mi bolsa de maquillaje? Digamos rímel. Entrar. Entonces ven
aquí, dice rímel. Eso es porque
por aquí, dije, imprime lo que sea que sea. Entonces en esta primera, es rímel,
pero ahora sigue preguntándome. Sé que soy una cadena, así que la está reemplazando cada vez. No va a quedarse con el rimel. Entonces Sara ahora escribe
el siguiente artículo que está en
la bolsa de maquillaje un pintalabios. Como lo imprime,
va a decir pintalabios. No va a decir
rímel y lápiz labial porque Es una variable sólo
puede contener un valor. Esta no es una lista. Es
una simple variable de cadena. Y así está siendo
reemplazada cada vez que ingresa un nuevo artículo y lo
está imprimiendo. Por lo que las sombras de ojos también
se agregaron a la lista. Y así como pueden
ver, esto va a seguir dando
vueltas y vueltas, permitiéndole
ingresar a la larga lista de artículos que están
en esa bolsa de maquillaje, y para algunos de ustedes dijeron, esto podría llegar por semanas y meses a medida que ingresan todo tipo de cosas,
ya saben cuáles son estas cosas. Ahí vamos. Hasta que por fin
estás agotado. Y entonces, ¿qué hacemos ahora? Así que ya terminé, eso es todo lo
que hay en mi bolsa de maquillaje, y voy a escribir
hecho, y está hecho. Ya verás que ya no estoy
recibiendo la pregunta. Ahora se ve por aquí tan pronto
como escribo hecho o por aquí tan pronto
como escribo hecho, esa se convirtió en la variable
R. Vine alrededor del bucle. ¿Esta variable
es igual a hecho? Sí, lo es. Dije, yo no igual a eso? Dijeron, no, yo en realidad
es igual a hecho. Salté del bucle. El segundo, escribimos hecho aquí, el bucle terminó y no
tuvimos un bucle infinito Obviamente, podría haber seguido
escribiendo cosas por aquí para siempre sin
escribir y sería un bucle casi
infinito, pero creo que eventualmente
todos se harían un poco cansados y tendrás que escribirlo
finalmente. Puedes seguir
haciendo esto y
seguir escribiendo cosas todo
el tiempo que quieras. Y mientras
no escribas hecho, va a seguir
haciéndote esa pregunta. Entonces, ya ves, este es un gran
ejemplo donde el bucle wile es muy potente y
es diferente a nuestro bucle de cuatro, y se
usa todo el tiempo Quiero decir, a menudo
se te pide que respondas las cosas, y dice escribir exit
cuando estás completo. Eso es exactamente
lo que está pasando. El código detrás de eso es
básicamente un bucle salvaje. Entonces esos son bucles salvajes
muy poderosos cuando
no estás seguro exactamente de cuántas
veces necesitas iterar. Una cosa más, si recuerdas, las cuerdas son muy quisquillas. Si realmente hubiera escrito hecho, pero digamos que puse una D, no
lo vería como
lo mismo
que se hace por aquí Hay que escribir exactamente lo que
hay para que termine. De hecho, déjame mostrarte eso. Bien, esta vez sólo voy
a tener una bolsa de maquillaje muy pequeña. Digamos que tengo rimel. Digamos que tengo un poco de bronzo. Bien, ahora ya terminé. Entonces digamos que quiero ser gramaticalmente correcto
y poner capital ahí, ya lo
verás, no, eso es lo tienes hecho en
tu bolsa de maquillaje. Básicamente. Tan pronto como vea esto
hecho aquí, va bien. Ahora ya terminamos y de nuevo nos
saca de ese bucle. Así que eso fue WOW loops con un ejemplo un poco más
interesante. Seguiremos construyendo
sobre todas estas
cosas y mostrándote cada vez más
complejos y ejemplos más interesantes y
emocionantes. Pero por ahora, eso es
lo que necesitas saber. Obviamente, cambia el hecho, cambia la pregunta,
pruébalo con cosas diferentes, pruébalo con números y
luego cambia esto de aquí a ser un tipo de datos numéricos
en lugar de una cadena, pero solo juega y te
veremos en
la siguiente lección.
109. Rompe y continúa: todo el mundo necesita esto en la vida: En esta lección,
vamos a estar viendo dos palabras clave especiales en Python y en muchos
otros lenguajes de programación, llamadas break and continue. Estos son importantes
cuando se trata de bucles. Te voy a dar
otro ejemplo de un bucle de cuatro que ya
hemos visto. Vamos a escribir uno normal. Cuatro son variables en rango. Vamos a mantenerlo realmente
simple en el rango diez, imprimir. Y por
si acaso te has olvidado, hace eso, bueno, no
deberías haberlo olvidado. Así que ni siquiera voy
a explicar eso. Seguro que sabes por qué
lo ha hecho. Si lo has olvidado,
puedes volver a nuestras clases, y lo cubrimos con mucho
detalle. Sí. Bien, así que eso es
lo que hace. Pero ahora digamos que no
queremos imprimir cinco
por alguna razón. Lo cual realmente no tiene mucho
sentido aquí, pero sí juega un papel importante en
muchas circunstancias. Digamos que no nos gustan
cinco por alguna razón, simplemente no queremos que se impriman cinco
. La forma en que lo haces es
usar la palabra clave continuum. Para poder decir el bucle, no
queremos cinco,
vamos a
tener que usar realmente una sentencia if. Si
lo recuerdas, si las declaraciones te
ayudan a tomar decisiones. Si yo es igual a, recuerda el doble igual. Cinco. Entonces todo lo que voy
a decir es continuar. Veamos qué hace eso. Entonces obviamente, esta
huella yo todavía está aquí,
pero fíjate que la impresión no
está sangrada, así que eso significa que no está
en esta declaración F. Nuevamente, también recuerda, verás esta F y
la impresión es en realidad,
bueno, también tienen
una sangría porque están dentro de este bucle de proa Debido a que la F y la impresión tienen una sangría de distancia este inicio de los cuatro bucles, están dentro de los cuatro bucles, y entonces este tiene una
sangría lejos de la F, está dentro de la F.
Se
puede Que lo que hay dentro
de lo
que recuerden que obviamente esas
iniciaciones son muy importantes De todos modos, vamos a
ejecutar ese programa. Ahora ya verás si contamos desde el principio, cero, uno,
dos, tres, cuatro, seis,
y el fb se ha ido. Porque eso es exactamente
lo que sigue haciendo. ¿Qué continuar se hace realmente? Se ha ido, cuatro rango diez, comienzan en cero, uno,
dos, tres, así sucesivamente. Cuando llegue a cinco, entonces ahora
estoy igual a cinco, si soy igual a cinco, sí, lo es, continúe. Lo que sigue hace es que ignora todo lo demás dentro
del bucle cuatro debajo de él. Trae el programa directamente de
nuevo a la cima aquí. Antes
se encuentra la continuación, simplemente
va directo
a la cima y otra vez, ahora
me convierte en seis y
continúa yendo. Porque continuar
te trae directo aquí, nunca
llegó a esa
declaración impresa para los cinco. Pero si yo hubiera
puesto, por ejemplo, mi declaración impresa
por encima de esta F, verás que
ahora sí imprime los cinco y eso es
porque obviamente ha entrado aquí y
como te dijimos, se lee de arriba a abajo. Está impreso el IO, yo es igual a cinco, continúa, pero no hay nada debajo de él que en realidad se esté
saltando, así que justo ahora va a la cima y realmente no hizo
ninguna diferencia Pero volvamos a traerlo a como
era y eso va a funcionar. Ahora la otra palabra clave que te
dije que tenemos es romper. Lo que rompe hace,
es que básicamente hace
exactamente lo que dice. Déjame ejecutarlo para que lo veas. Bien, ahora en vez
de decir: Bien, continúa hasta la cima del bucle, en realidad, si te encuentras con Vive, eso significa que
el loop ha terminado. En realidad no queremos
ir más allá de eso. Así que a pesar de que se lo
hemos dicho, queríamos correr diez veces. Cuando llegué a cinco, vino aquí y me dijo:
Bien, ¿soy igual a cinco? Sí, es break. Obviamente, nunca llegó
a esa declaración impresa, así que nunca la
imprimió por aquí. aquí, se
podría pensar, bueno, ¿por qué no acabamos de
hacer esos cinco? Bueno, sí,
en realidad podríamos haberlo hecho y entonces no
habría impreso los cinco. De hecho
, podríamos haber cambiado este rango a decir f y rango cinco y hubiéramos hecho
exactamente lo mismo. Pero nuevamente, este ejemplo, romper no es tan importante, pero en otros, lo será. Eso es solo para que ahora
sepas lo que sigue
hace, qué break hace. Ahora que ya lo sabes,
voy a tratar de ponerte a prueba con un ejemplo un poco más
complicado. Esto puede parecer un poco confuso, pero todo lo que estamos
haciendo aquí, en realidad
hemos
hablado con usted antes. Entonces, si no entiendes completamente
algo, claro, siempre
puedes
volver a esa conferencia, volver a
escucharla y
luego volver a esto. Si puedes entender esto, entonces sabes que realmente
estás en un buen lugar y
estás en el camino correcto.
Vamos a meternos en ello. Entonces lo que voy a
hacer ahora es en lugar de hacer un bucle así con números,
vamos a escribir
un mini programa donde
el usuario tenga
que vamos a escribir
un mini programa donde introducir una oración, y lo que nuestro programa
va a hacer es que
va a encontrar todas las
vocales en la oración
e imprimirlas y dejar
fuera las consonantes Así que vamos a meternos en eso. Entonces para hacer eso, primero, vamos a necesitar una
cadena con nuestras vocales adentro Así que vamos a llamar a
las vocales de cadena. Vamos a tener que
poner esto ahora igual a las vocales y ojalá
recuerdes cuáles son tus vels Qué son los AEIOU. Excelente. Bien. Ojalá
recuerdes esos. Bien, entonces tenemos nuestra cadena
con nuestras vocales en ella. Entonces vamos a
tener otra cadena. Sólo llamémoslo SN
corto para sentencia. Recuerda que dijimos que queremos que el
usuario ingrese una oración. Para que puedan ingresar
lo que quieran, solo
les vamos a decir Input una oración. Bien. Ah, y pon una frase. Ahora aquí es donde empieza a ponerse un poco interesante
y donde se
puede ver cómo estas palabras clave
son bastante útiles. Nuevamente, vamos a tener un bucle de
cuatro y vamos
a tener un bucle cuatro
basado en cadena. Si recuerdas cómo
hacerlo, tenemos cuatro, una variable I en SN. Lo que estamos haciendo aquí es otra vez, recuerda como antes
acabábamos de tener esto como frase, tal vez podría ser hola,
lo que sea, cualquier cadena. Pero en lugar de ahora
tener realmente una cadena aquí, acabamos de decirle al
usuario que la ingrese. Es lo mismo.
Esta variable simplemente se convierte en cualquier
cadena que ingrese el usuario. Para yo en esa frase, ahora necesitamos si
declaración otra vez. Yo no estoy en vs. Eso podría parecer un
poco raro. Pero básicamente lo que esto está
diciendo, se está poniendo yo, que obviamente será la
primera letra, para empezar, será la primera letra
de la frase que el usuario ha introducido Voy a ejecutar todo esto y
seguir con ustedes Pero por ahora, a ver si
puedes intentar seguir adelante. Va a comenzar siendo la primera letra de la
oración en la que los usuarios la ingresan. Digamos que escribí hola. Va a
empezar por ser Si cual es la primera letra que es la primera letra
en nuestra oración que yo sostengo no está
dentro de vocales, entonces continúe Si, si nuestra variable I, sea lo que sea que esté sosteniendo, no
está en nuestra vocal, entonces no es igual a
AEIOU, en otras palabras, entonces seguir adelante
porque recuerden, queremos que este programa
sólo Obviamente, si nuestra
carta no es vocal, porque continuar justo entonces nos
llevará de nuevo a la cima
de nuestro programa y no
va a ver esta declaración
impresa que estamos escribiendo
aquí abajo donde decimos imprimir Voy a ejecutarlo y
veamos exactamente qué pasa. Bien, entonces voy a escribir Hoi porque eso es lo que
usé antes Y lo que verás es una E
mecanografiada y una O mecanografiada, que obviamente son vocales Otra vez, lo que estaba diciendo
antes es que salió bucle comenzó y empezó
con yo igualando a esta Ja Entonces si H no está en vocales, continúe como H en
vocales, nop no lo es. Entonces me lo salté y
volví a la cima. Entonces yo sin contar E. Así que este yo por aquí se convirtió en E. Si
E no está en vocales,
continúe, pero E está en Esta declaración if es falsa. Así que nunca entró. Nunca vi el continuar. En cambio, debido a
que esto es falso, simplemente fue directo
a la impresora e imprimió la E y
siguió
adelante y obviamente no
imprimió la y no imprimió eso y no imprimió y luego finalmente imprimió
la O. Quiero decir, puedes escribir lo que quieras. Entonces es un pequeño programa divertido, pero puedes ver lo poderosos que pueden ser
ahora los cuatro pentagramas cuando empezamos a juntar
ifs y fors Y así ahora hemos creado un pequeño programa muy inteligente
que puedes
extraer rápidamente las vocales si
eso es algo que te parece mano y necesitas hacer
a diario Y si tal vez decidieras, Oh, en realidad, prefiero
tener la consonancia. Sólo quita ese nudo. Y ahora si escribo esa
misma frase, hola. Ahora no
me está dando las vocales porque lo que he dicho
aquí es que estoy diciendo, yo estoy en vocales, luego continuar Desde que me encontré con
esa vocal por allá, estaba en vs, así que continuó y se saltó
esta huella aquí abajo. Sí, de nuevo, juega
con ella con la programación, aprendes a través de
la práctica
y probando y probando cosas nuevas. Ojalá entiendas
esto y todo tenga sentido. Pero sí, espero que entiendas más sobre cuatro bucles
y bucles while. Por supuesto, este break
and continue también
se puede utilizar en los bucles
de Wile y lo
daremos como pregunta extra
en uno de los cuestionarios Asegúrate de que también las estás
haciendo.
110. Cómo ver bucles visualmente: asombroso: Hemos estado viendo la diversión
de los bucles y
podrías decir, bueno, puedes ver algunos de los
aspectos practicos de la misma y por qué
podrías usar los
diferentes cuatros y
mientras escribes bucles, etcétera Los bucles pueden ser
muy divertidos. Realmente puede ser. Vamos a estar
buscando más adelante cuando realmente conseguimos que
escribas tu propio pequeño juego. Vamos a estar usando un componente muy importante de Python, que son los gráficos de tortuga, que te
permite producir gráficos, pero todo está construido alrededor todos los fundamentos
que estás aprendiendo, uno de esos
fundamentos clave que
acabas de aprender Aquí tenemos un
pequeño ejemplo en la pantalla donde estamos cargando el sistema de
gráficos tortuga y estamos ejecutando una cosita, no
tienes que preocuparte por todos los detalles
de lo que significa. Sólo queremos
mostrarte lo que puede hacer. Al mirar este código,
sé que algo de él va a parecer realmente confuso y no tendrá ningún sentido
para ti en absoluto, pero no te preocupes por
el final o la voluntad. Pero ojalá algo de este código tenga algún
sentido para ti aunque. Tan pronto como lo
miraste, espero que lo primero que viste fue
este bucle de cuatro por aquí, y este es uno que ojalá
hayas escrito o codificado un
montón de veces ya. Cuatro I y rango
40, haz algo. En otras palabras, haz
algo 40 veces. Pero ahora en lugar de
simplemente imprimir números o palabras o cosas en una lista, realidad
vamos a imprimir
un gráfico este gráfico que vamos a estar imprimiendo
está usando gráficos totales, y va a aparecer en la pantalla, pero lo
más importante, está usando un bucle y ya
verás cómo funciona eso ahora. Bien, entonces, ¿qué está haciendo esto? Básicamente, si lo
miras detenidamente, puedes ver que todo lo que esta pequeña
forma está haciendo es imprimir un triángulo
y está imprimiendo ese triángulo una y
otra y otra vez, hecho, 40 veces. Cada vez, lo que este código está
haciendo aquí básicamente es
que está moviendo
un poco la posición
inicial por encima de algo. Todo lo que hace es imprimir un triángulo una y
otra y otra vez, pero moviendo ligeramente
su posición. Al hacer eso, es
crear esta estrella. Pero lo más importante
esta toda la estrella. La razón por la que está aquí es
por este bucle. Ahora, cuando esto
empieza a ser un poco divertido, en realidad
puedes
jugar con él. Digamos que cambiamos uno
de estos números a 200. Ahora, en lugar de mover esa
tortuga 144 veces, en lugar de mover la
tortuga sobre 144 píxeles, vamos a estar moviendo
sobre unos 200. No te preocupes. Sé que esto
no tiene mucho sentido, pero solo
te estoy enseñando cómo puedes
divertirte con él y simplemente
jugar con él. Se puede ver ahora que
sigue haciendo un bucle, está haciendo una cosa de triángulo, pero en realidad está haciendo un patrón
completamente diferente. Si miras este
código, vas a ver que en realidad es bastante simple, pero puedes hacer algunas cosas
bastante geniales. Se puede cambiar el número
de veces que se repite. Entonces Sarah dijo que lo está
haciendo 40 veces. Obviamente, si
lo mantuviste en marcha, el patrón va a hacerse
cada vez más grande. Así que mucha diversión. El punto es que esto es una demostración de bucle
y bucle es muy poderoso Y cuando lleguemos a usar
complementos como los gráficos de tortuga, realmente
necesitas
usar loops para que tu pantalla cobre vida y hacer que sucedan
algunas
cosas divertidas e interesantes.
111. Resumen: Sólo para resumir,
juntarlo todo, toda
esta sección ha sido
todo acerca de los bucles y de lo
importantes que son los bucles Empezamos a ver
por qué tienes bucles, y luego nos fijamos
específicamente en cuatro bucles y cómo funcionan cuatro bucles
en un cierto rango, normalmente un rango especificable X equivale a uno a 400 o 50
o lo que sea que sea. Luego pasamos a
mirar los bucles salvajes y cómo
son un ejemplo específico o una instanciación
específica
de cuatro bucles
porque permiten operar
hasta que una condición sea cierta Analizamos cómo eso
puede ser útil si
no estás seguro de cuándo esa condición
va a ser cierta También vimos entonces cómo podrías expandir
eso y podrías incluir descansos en tu bucle para que
realmente pudieras salir de
un bucle si algo pasaba a ser cierto y lo
usamos para incluso extraer todas las vocales que
se escribieron en
una cadena en una oración Entonces finalmente
acabamos de terminar diciendo:
Bueno, los bucles pueden ser muy divertidos. Incluso puedes usarlos visualmente
con gráficos de tortuga, como puedes ver aquí
en la pantalla, para que puedas divertirte mucho
con ellos. bucles realmente son uno de
los bloques de construcción, los
bloques de construcción clave en la programación. Es importante tener tu mente alrededor de ellos para entenderlos. Cuanto más juegues con
ellos, más llegarás a entenderlos y
tendrán mucho sentido. Entonces eso son bucles, sección muy
importante. Espero que disfrutes seguir practicando
y seguir divirtiéndote.
112. Cajas mágicas increíbles: funciones: Bienvenido a esta siguiente sección
muy importante, y es una sección sobre funciones,
funciones y bibliotecas y todo lo relacionado con ellas. Ahora bien, ¿qué es una función? Bueno, sencillamente, es
un bloque de código reutilizable. Si estamos en la nueva era donde
las cosas necesitan ser reutilizables. No queremos
tirar las cosas y tener desperdicio, etcétera. Es genial cuando
puedes tomar un artículo y
usarlo una y otra
y otra vez, especialmente cuando se trata
de cosas como pajitas Estamos en esta zona tenemos que acabar
con las pajitas de plástico. Más bien tener una pajita
que esté hecha de vidrio o bambú o
algo más que puedas reutilizar. Ese es el error y es
exactamente lo
mismo a la hora de codificar. Ahora, no te has dado cuenta, pero ya has estado usando
funciones. Hay muchas funciones
incorporadas que Python tiene como print Imprimir es una función. Ahora, en realidad, lo que está
pasando es un pequeño bloque de código que le
está diciendo a Python qué hacer, pero no tenías que entender
todas las complejidades de cómo funcionaba y cómo hace que
algo se muestre en la pantalla Todo lo que tenías que hacer era decirle
lo que querías imprimir, pasarías un valor para imprimir y luego se
imprimiría en la pantalla. Pero ahora puedes crear funciones definidas por
el usuario, no todas las funciones
tienen que ser aquellas que son crédito por el propio sistema. Puedes hacer tus propias funciones. ¿Por qué querrías hacer eso? Bueno, la razón por la que te
gustaría hacer eso es porque una vez que lo
hayas hecho una vez, puedes usarlo una y
otra y otra vez. Es como deshacerse de
esas pajitas de plástico. Es una cosa muy útil de hacer. Queremos mostrarte cómo
puedes crear funciones, cómo usas funciones
porque te permiten
construir código de manera modular. Es como tener los ladrillos, los bloques de construcción
que puedes simplemente adoquines y empezar
a producir tu código En esta sección,
vamos
a ver las funciones y cómo
son tan poderosas y muy importantes
a la hora de codificar en Python.
113. Funciones mágicas de Python: En la lección anterior, te
presentamos este
concepto de funciones. Básicamente, Python
tiene un montón de funciones que podemos usar, como dijimos, print es
en realidad una función. Pero para que puedas
usar una función, tienes que saber su nombre. Obviamente, nunca podríamos
haber usado la impresión si no
sabíamos que existía esa impresión. Entonces, ¿cómo hacemos esto y
cómo recordamos qué funciones funcionan con qué y
cuáles son sus nombres y todas las cosas que hacer con funciones, básicamente. Como también dije en una
de nuestras lecciones anteriores, documentación de
Python
es muy importante. Para que puedan ver aquí estoy en el camino y
documentación en estos momentos. Puedes simplemente Google Path y documentación o ir
directamente a este enlace, y
saldrá con esta página. Ahora bien, lo que básicamente
es esta página
es, es una lista de un
montón de cosas, pero dentro de esto,
verás que
hay estas cosas llamadas módulos. Ahora bien, ¿cuál es el módulo? Entonces como dije
antes, funciones, tenemos funciones para
todo básicamente, y son muy importantes. Ahora, para encontrar funciones y hacerlas
más fáciles de usar, las
dividimos en
varios módulos. Básicamente, aquí ves que
hay este cable de módulo. Bueno, hay módulos numéricos y
matemáticos. Entonces, si quisiera una función
que ver con, digamos, matemáticas, tendría que
ir al módulo de matemáticas Entonces verás que ahora estoy dentro un módulo de matemáticas y este módulo almacenará todas las funciones
que tengan que ver con las matemáticas. Bajemos y veamos
algunos de ellos como ejemplo. Recuerda antes cómo
intentamos encontrar algo
al poder de algo
y en realidad usamos esto. Usamos un número a la
potencia de otro número, así podríamos ir diez
a la potencia de dos. Pero en lugar de
hacer eso,
en realidad podemos usar esta
cosa de aquí. Podemos decir matemáticas, que es el nombre del módulo, usar esta cosa llamada operador
de punto y luego usamos este nombre. Esto podría parecer un poco
diferente a la forma en que usamos impresión porque no
teníamos este punto y qué es todo esto. Pero vamos a
ver ejemplos de estos en las futuras conferencias. Pero por ahora, lo que necesito recuerdes es que
tenemos un montón de funciones que pueden hacer y resolver las cosas por nosotros y hacer
nuestra vida mucho más fácil, ya ves, si
quieres trabajar log en lugar de
hacerlo por ti mismo, solo puedes usar estos,
si pasas por estos, verás, especialmente bien, este es un módulo matemático, así que verás que
todo es por hacer con matemáticas. Bien. Entonces básicamente, a
lo que me refiero, hay que recordar
que tenemos módulos y módulos almacenan
funciones de tipos similares. Ese era un módulo matemático. Es decir, tenemos
diferentes tipos de datos. Todos son módulos. Así que mira estos, mira
los diferentes módulos, y puedes ver cómo ciertas funciones están todas
dentro de ciertos módulos. Entonces sí, eso es todo por ahora
y vamos a ir a ver ejemplos en
nuestra siguiente lección.
114. Usar las funciones te facilita la vida: Qué funciones son y
sabes dónde
encontrarlas o al menos
paradero para encontrarlas, y sabes que
están todas juntas en pequeños paquetes
llamados módulos Pero ahora tenemos que
mirar ¿cómo usamos realmente estas cosas de
función? Bien, entonces
te voy a mostrar un ejemplo donde puedes ver que las funciones realmente pueden ser muy útiles y
muy importantes. Lo primero
que tenemos que hacer si quieres usar una función es que
vas
a tener que importar el módulo que
te gustaría usar o tendrás que importar el módulo de la función
que te gustaría usar. Déjame primero decirte lo
que vamos a hacer. Lo que quiero hacer
es crear una pequeña mini aplicación que
genere números aleatorios. Ahora bien, si
piensas en esto lógicamente, quiero decir, codificar, eso sería bastante difícil ¿Cómo escribo un código para
dar un número aleatorio? Quiero decir, piensa en
lo que sabes, si declaraciones, declaraciones, pero ¿cómo puedo
asegurarme de que cada vez que se ejecute
este programa? Así que he escrito esta declaración aquí que básicamente está importando el módulo al azar en este programa que
estoy a punto de escribir Tan pronto como escribí esto aquí, puedo usar cualquiera de las funciones se encuentran en el módulo aleatorio.
Entonces, vamos a ponernos en marcha. Bien, la función que te
voy a mostrar nos
va a permitir elegir un rango, digamos solo uno y diez. Y entonces cada vez que
ejecutemos ese programa, generará un número
completamente aleatorio entre e incluyendo
esos dos números. Bueno, ahora lo escribiré por
ti, pero básicamente, va a ser
un número que puede ser mayor o igual a uno y menor
o igual a diez. Incluye esos dos números. Lo cual podría parecer un
poco diferente porque antes el número final no estaba
incluido con otras cosas. Pero solo recuerda, números
aleatorios, incluye
tanto el número
inicial como el número final. Pero te voy a
mostrar ese num. Bien. Ahora lo que tenemos que
hacer es crear una variable que
en realidad va a almacenar ese número aleatorio para nosotros
cuando se ejecute el programa. Yo sólo lo voy a llamar NAM y vamos a hacer num
igual a un número aleatorio. Pero claro, si escribí
seis y luego fui a imprimir seis. Quiero decir, imprimir num. Muy obviamente, eso no es
hacer nada al azar. Cada vez que corro obviamente
va a estar imprimiendo seis porque num es igual a seis. No puedo hacer eso. Yo quería cambiar cada vez,
así que voy a hacer esto. Vamos a decir al
azar dot Rent. Y digamos uno o diez. Bien, entonces, ¿qué
acabo de hacer aquí? Esta primera parte aquí
que dice random es el nombre del módulo que vamos a utilizar para
encontrar la función. Lo que esto
nos está diciendo cuando decimos al azar, es decir a nuestro programa, ve y mira en el
módulo aleatorio que Pathon tiene almacenado Cuenta con bibliotecas y
bibliotecas de módulos. Pero en cuanto vea esto,
se va a ir, Oh, tengo que ir
al módulo aleatorio para
encontrar esta función aquí. Entonces lo siguiente después
de haber escrito este azar, haces esta cosa llamada punto Básicamente, este punto está diciendo, desde el módulo aleatorio,
obtener esta función. Siempre que estés usando funciones, es
lo mismo cada vez. Vas a poner
el nombre de los módulos que la función es de punto la
función que quieres usar. En este caso, es randint. Ahora, ¿qué va a hacer Randant? Todo lo que hace randint es. Ahora, cada vez que ejecuto
el programa va a imprimir un número diferente y el número va
a ser de e incluyendo uno y dos
e incluyendo diez. Entonces veamos qué pasa. Y entonces sólo estoy
imprimiendo ese número. Entonces voy a ejecutar el
programa una vez. ¿Qué se hace? Se toma num y se le asigna a un número aleatorio
por aquí y ¿cómo se hace? No grabamos ningún código, pero obviamente se
usa esta función y eso es lo que esta
función ejecutó y hace. Listo Espero que estés viendo que es muy útil
usar funciones. Yo solo lo volví a ejecutar y
ahora ves que tengo a Fab. Esta vez el programa se
ejecutó, hizo esta pequeña magia aleatoria por aquí y nuevamente
escogió un número aleatorio entre ahí y lo asignó a este valor num
y luego lo imprimió. Entonces si lo vuelvo a ejecutar, nuevamente
se escogió un
número aleatorio entre e incluyendo esos dos números y se
lo asignó a num y num impreso. Cada vez que ejecuto este programa, generará aleatoriamente
un número diferente. Entonces, eso es bastante genial. Ese es un ejemplo de
cómo usar funciones. Ahora, incluso verás
en el juego que vamos a estar codificando
al final, vamos a, hecho, usar esta función exacta y verás por qué
es tan importante. Puedes pensarlo
en la mayoría de los juegos que juegues. Las cosas que
suceden o las cosas que los jugadores a tu alrededor están haciendo si son generados por
computadora. Ojalá puedas ver
ahora por qué estos son tan geniales o por qué
las funciones son tan geniales. Nos están permitiendo usar código otras personas que ya ha sido escrito previamente, prueba leída, se
aseguró de que sea el código óptimo
absoluto, y solo
nos está permitiendo reutilizarlo usando conociendo el nombre. Pero obviamente, como
habrás notado, para poder usar la función, también hay que saber
qué parámetros toma. Así que recuerda, antes mencioné
parámetros. Básicamente, parámetros, cada función tiene ciertos
parámetros un texto. Aquí los parámetros
fueron este primero, que fue el
punto de partida y el segundo, que fueron el punto final. La documentación de la que te
hablé también te dirá cuáles son los
parámetros para la función. Solo hay un ejemplo rápido de una función y dónde
podrías usarla. A partir de ahora voy
a estar usando
muchas funciones en nuestra codificación
y en realidad
voy a mostrar cómo
podríamos haberlas usado en listas y cadenas
y todos los ejemplos. Algunos de ellos podrían
estar en los cuestionarios. Recuerda, asegúrate de
que las estás haciendo y hay una breve
introducción para funcionar
115. Haz tu propia función: Mirando estas cosas realmente
asombrosas y poderosas llamadas funciones. Estas son estas
cajas negras en cierto sentido que tienen todo tipo de
código dentro de ellas. Podemos llamarlos y ellos nos
pueden devolver valores. Ahora sabemos que
hay muchas funciones
integradas y
hay todo tipo de módulos, por lo que puede tener funciones desde
todo, desde la
función de tipo de dibujo hasta las funciones matemáticas, etcétera, y podemos usar esas funciones para hacer
muchas cosas increíbles Pero el verdadero poder entra cuando empiezas a crear
tu propia función. ¿Por qué querrías
hacer esto? Bueno, te
permite tener
este código reutilizable. Como te mostraremos
ahora en esta lección, cuando empieces a
crear funciones, resulta mucho más fácil codificar porque
una vez que una función se realiza una vez, es una pequeña caja
mágica increíble
que puedes usar una y
otra vez. Entonces
echemos un vistazo. Voy a comenzar con un ejemplo
relativamente simple, solo para poder
mostrarte el layout y la sintaxis y básicamente
cómo es una función. Esto es lo que haces para
crear tu propia función. Empiezas escribiendo
esta palabra clave def, que básicamente
significa define Porque cada vez que
escribes una nueva función, básicamente
estás
definiendo una nueva función. Lo siguiente que quieres es
darle un nombre a tu función. Entonces en este ejemplo, solo
voy a
mostrarte cómo crear una función que cube un número. Entonces, obviamente, al
igual que las variables, vas a querer darle a tu función un nombre
que tenga sentido. Así que déjame llamar a
mi función cube. Entonces las funciones también tienen lo mismo con
variables donde no
debes comenzar con
mayúscula y no
debes comenzar con
un número. Bien. Entonces hay definir cubo. Lo siguiente que necesitamos para
que esta función de cubo funcione, necesitamos un parámetro aquí, que va a
contener el número que el usuario quiere cubo. En otras palabras, es básicamente
una variable llamada num. Este es el valor que se
va a pasar a la función para
que pueda hacer un cubo de ese número. Entonces este parámetro
mantendrá ese valor. Al igual que cuando
elegiste llamar a print, cuando hicimos ejemplos con print, pones un valor
entre esos paréntesis y así es como la función sabía qué frase o qué
querías que imprimiera. Entonces, ¿cómo colocaríamos un número? Básicamente, lo que queremos hacer es que queremos tomar ese número. Los tiempos por sí mismo otra vez
y los tiempos de nuevo. Eso nos dará el
cubo del número. Pero ahora con funciones, quieres que esta respuesta sea
devuelta al usuario o devuelta al usuario, como diríamos. Lo que realmente quieres
hacer es escribir esta palabra aquí llamada retorno. Ahora, voy a mostrarte lo pasa en este que funciona, y luego te voy
a mostrar lo que pasa si nos lo quitamos. Lo que esto debería
hacer es que el usuario va a llamar a la función simplemente
escribiendo el nombre de la
función. Entonces porque tenemos
este parámetro aquí, tenemos un parámetro
llamado número. Eso significa que para
llamar a esta función, el usuario tiene que poner
un parámetro. Digamos sólo siete. Si el usuario no puso
aquí un parámetro, eso significa que Pathon no verá esta función de cubo como
la misma que esta Digamos, por
ejemplo, que aquí la
pongo en otra
variable, vamos a llamarla número dos. Esto ahora ya no llama a
esta función de aquí. Tienes que verificar que tu función tenga la misma cantidad de parámetros que la función a la que
quieres llamar. Entonces obviamente, queremos
imprimir este valor. Si no puse la declaración
impresa,
bueno, te voy a mostrar
lo que va a pasar. Todo esto que está haciendo es
tomar este número siete y este número siete se está convirtiendo en esta variable num al
igual que asignamos variables, num se convierte en siete y luego
solo va siete por siete por siete, y nos está devolviendo
ese valor. Curiosamente, lo que
realmente está sucediendo aquí estamos ejecutando una función
dentro de una función La función print es obviamente la función propia de
Python y estamos pasando que el resultado de nuestra propia función,
que era cube. Cube hace algo,
devuelve el resultado, lo
entrega a la función print, que hace algo, que lo
imprime en la pantalla. Se puede ver lo poderosas que
son
estas pequeñas cosas porque una declaración
podría hacer todo eso. Sí, también quería
mostrarles que este valor de retorno
en realidad no imprime nada. Todo lo que hace es devolver este valor a este núcleo de
función. Si nunca lo imprimiste,
en realidad sería una función casi inútil Pero si cambio esto para imprimir, entonces va a
imprimir el valor porque va entumecido se convierte en siete y solo estamos haciendo una declaración de impresión normal, imprimir siete veces siete por
siete Ahora bien, la razón por la que realmente no
querríamos hacer eso es que queremos que sea una función de cubo porque posible que ahora quieras hacer un
cálculo con ella. Entonces, en lugar de imprimirlo
necesariamente, momento ahí Sarah
tiene el cubo siete, así podría ir al cubo siete
más tres y podríamos imprimir ese resultado o almacenar ese resultado en una variable,
hacer lo que quisiéramos. Ahora puedes ver lo
poderosa que es porque
ahora tenemos esta función que
en realidad se puede usar como
parte de una fórmula. Bien, entonces ahí se puede ver
lo que hice es que ahora podría agregar tres al cubo de siete porque se le
devuelve un entero. Porque es devuelto
o devuelto un número, puedo sumar, puedo restar y hacer todas esas otras operaciones divertidas Esa es la
disposición básica de una función. Solo recuerda que
tienes esta muerte, tienes tu nombre, y luego tienes estos corchetes con parámetros
opcionales. Algunas funciones en realidad no
necesitan. Éste sí. Llegaremos a ejemplos donde es
posible que no necesite ningún
parámetro en absoluto. Pero por ahora, no, ese es el layout
de una función.
116. Haz tu propia función, de nuevo... porque es tan genial: La lección anterior, nos
fijamos en esto y cómo crear nuestra propia función
que cube un número para nosotros. Pero en esta lección, quiero mostrarles un poco más
de un ejemplo interesante que ojalá puedan ver cómo las funciones pueden ser
realmente bastante útiles. Para ello,
vamos a necesitar una lista de los
días de la semana. Porque quiero jugar un poco con esta lista y crear diferentes funciones que hagan cosas
diferentes con la lista. Bien, así que
recordemos que las listas son
tipos especiales de tipos de datos. Esto lo vimos en
la lección anterior. Si no estás seguro de
cómo hacer listas, regresa y visita
nuestra lección sobre listas. Aquí tenemos una lista con
todos los días de la semana. Déjame en realidad tal vez
llamar a esto algo así como días de la semana. Tiene más sentido,
no sólo una lista. Es una lista de días. Bien. Ahora vamos
a crear una función. Entonces la función de verso que
quiero definir es una función que quizás
podría
decirnos si el día actual de
la semana es un fin de semana. Entonces tal vez necesites esto
si estás
averiguando cuánto le
pagan a alguien por algo, tal vez sea diferente
el fin de semana, o tal vez quieras escribir un programa que te diga
qué días está abierta una tienda, tal vez sus horarios
cambien en función de los días de la semana. Básicamente, quiero decir, puedes pensar en diferentes formas en las
que podrías usar esto. Pero sólo queremos saber. Queremos un programa
que nos pueda decir inmediato ¿es
un fin de semana o no Entonces vamos a definir esta función y
voy a llamarla la función es fin de semana.
Es casi como una pregunta. Cuando lo llamas, estás diciendo, es el fin de semana
y nos va a decir verdad o falso. Para esta función,
necesitamos tener un parámetro de cadena
donde el usuario escriba en cualquier
día de la semana. Así que vamos a llamarlo día tal vez. Bien. Ahora bien, la forma en
que vamos a hacer esto es como lo que hicimos en
algunos de nuestros otros ejemplos, básicamente queremos decir, si el día es igual al sábado o el día
es igual al domingo, entonces queremos devolver un valor
de true y si no lo es, queremos devolver falso. Entonces intentemos hacerlo. Si día es igual a, y recuerda la ortografía
tiene que ser exactamente la misma. Si deletreé esto de manera diferente
a como lo deletreé aquí, entonces no los va a
ver como iguales A, queremos escribir una o porque el día no tiene que ser igual a sábado y domingo. Es sábado o domingo. Un Día es igual día
igual al domingo. Entonces queremos devolver
un valor de verdad. En otras palabras, sí, es un fin de semana. De lo contrario, vamos
a devolver falso. Básicamente, no es un fin de semana. Nuevamente, eso es todo lo que realmente
queremos, cierto si es,
falso si no lo es. Ahora, llamemos a esta función. Entonces, para llamarlo,
necesitamos saber su nombre es fin de semana y
quiere un parámetro. Vamos a comenzar con sólo darle a la función un valor
o un día de nuestra elección. Vamos a darle el miércoles. Yo no lo imprimí, así que de nuevo, no pasa nada si
no imprimes tu función. Bueno, no pasa nada, pero no vemos que pase
nada. Pero en cuanto lo
imprima, podrá ver exactamente lo que hizo. Yo devolví este valor de
falso porque el miércoles
no es un día de semana vamos a darle uno que es domingo y
eso va a volver cierto Pero recuerda como
dije, no
quieres realmente
escribir programas como este que sean susceptibles
al error humano porque en cuanto lo
deletreé mal, me está diciendo que incluso
pensé que escribí el domingo, no, ese no es un día de la semana, solo para hacerlo un
poco más robusto. Entonces solo para hacerlo
un poco más robusto, he creado esta lista
que podemos usar y también esto pone en una sola gran cantidad de tus otros elementos
que has aprendido de tus otros elementos
que has aprendido
en otras secciones, ojalá te recuerde
todas las cosas
que has aprendido Entonces llamemos a los días de la semana, y preguntémosle si el cuarto índice
de la lista es un día de
fin de semana'. s recordar
el cuarto índice en la lista, el lunes es cero. Cero, uno, dos, tres, cuatro, el viernes no lo es, pero si luego fuimos
cinco, nos da verdad. Entonces esto es básicamente que
pasan los días de la semana cinco. En otras palabras, está pasando el sábado a esta
función por aquí, día luego se convierte en
sábado y se ha ido. ¿El día es igual al sábado? Sí, es retorno verdadero. Eso es lo que está haciendo esta
función. Una cosa genial de
las funciones que devuelven valores
verdaderos o falsos
es que
en realidad podemos usarlas
con declaraciones if, igual que una declaración if determina si algo es verdadero, entonces algo sucede
y si no lo es, sucede
algo más, en realidad
podemos usar estos valores true y
false para eso. Voy a cambiar esta declaración impresa
en una declaración if. Lo que queremos preguntar entonces
lo que queremos hacer es que queremos decir si es fin de semana. Podríamos decir iguales,
iguales a verdad, pero recuerden,
como dijimos antes, solo decir es fin de semana
o simplemente decir esto es lo mismo
que decir si es igual a verdad. Entonces, si es cierto, entonces nos
gustaría imprimir algo. Así que digamos que sí es el fin de semana
y si no lo es, si es falso,
Imprimir, sigue funcionando Aún días de trabajo. Esta es nuestra declaración de las FNL. Ahora cuando lo ejecuto, se encuentra días de la semana Índice cinco, que era sábado. Ha entrado en esta
función con el día del sábado y se vuelve verdad. Eso significa que toda esta
expresión se vuelve verdadera. Si es verdad, imprime, yipee, es el fin de semana Eso es lo que imprimió.
Ahora cambiémoslo a uno que sabemos que no
es un fin de semana. Solo vamos con cero, que sabemos que debería ser el lunes. Y si ejecutamos eso, oh, no, siguen siendo días de trabajo. Entonces hice básicamente lo contrario, entró, así que era lunes. ¿Es sábado o domingo? No, devuelve falso.
Entonces vino aquí. ¿Es cierto el fin de semana?
No, no lo es Tenemos una falsa de eso, así que estamos llegando a la otra
aquí e imprimiendo esto. Entonces, obviamente no teníamos que tener
todo este asunto de la lista aquí. Podríamos haberlo
escrito directamente. Eso podría parecer un
poco más simple para algunos de ustedes o más
fácil de entender. De nuevo, eso
nos va a dar este valor aquí. Entonces, eso es solo una función
rápida, cómo puedes ver que puedes usar valores de retorno
true y false y que se vuelve
bastante útil. Obviamente, puedo usar esta función tantas
veces como quiera. Quizás más adelante, quiero
tener otra declaración
que imprima algo más basado en si es un fin de semana o no y puedas seguir usando esta función tantas veces como quieras a lo largo de
tu programa. Lo que es importante con las funciones
y cuando estás codificando, una de las cosas que
quieres aprender es, ¿
puedes crear
bloques reutilizables a partir de cualquier cosa? Cuanto más rápido puedas
crear bloques reutilizables, mejor será tu codificación
. Porque cuando sabes que ese bloque
reutilizable está funcionando, nunca más tienes que
preocuparte por ello. Siempre va a funcionar, así que es por eso que las funciones
son tan poderosas. Diviértete, juega con ellos. Se puede ver que
realmente son poderosos. Todo tu conocimiento, toda
tu sabiduría ahora se está
uniendo y las funciones son
el siguiente paso emocionante.
117. Resumen: Bien hecho, bien hecho. Has llegado al
final de funciones, y este es un módulo realmente
importante. Aquí es donde hemos
aprendido a crear estas cajitas
que encapsulan código,
código que se puede usar una y
otra vez Como dijimos, funciones, hay muchos
tipos diferentes de funciones, y encajan en categorías, categorías más amplias
llamadas módulos. Y así puedes tener módulos que tengan que ver con
funciones matemáticas, como hemos visto, o módulos que tienen que ver
con funciones gráficas, módulos que manejan
manipulación de listas, etcétera, todos los diferentes
tipos de funciones No solo los miramos, miramos cómo puedes
usarlos y los has estado usando
todo el tiempo, lo hayas usado o
no, funciones simples como pero cuando las estés usando o funciones más emocionantes como aleatorias que queremos usar en nuestro juego que
vamos a crear en breve, esas funciones siempre requieren
que pases parámetros. Muy importante que
pases el número correcto de parámetros
para poder llamar a la función. Y entonces la función
devolverá algo. Esa es la
razón por la que están ahí. No son sólo una
caja negra que no hace nada, normalmente devuelven un valor, y podemos trabajar con ese valor. Y así seguimos adelante
y te mostramos cómo podrías crear
tu propia función. Creamos una función
que miraba los días de la semana y si
algo era un fin de semana. Y lo emocionante de eso
es que podrías usar
esa función para probar si un determinado día de la
semana era el fin de semana o no. Entonces, las funciones son muy poderosas y son algo que
vas a usar cada vez más. Entonces no son difíciles de usar. Se trata de poner tu código en estos
pequeños paquetes, y luego una vez que se
empaquetaron y prueban, sabes que
puedes seguir usándolo
fácilmente en
todo tu programa. Entonces estos son muy buenos hábitos
que necesitas desarrollar. Y hemos mirado a
un par de ellos. Hemos mirado el diseño, cómo
debes mantener tu
sangría adecuada. Hemos mirado
incluir comentarios, y otro muy importante es mantener la cohesión de tus módulos y de tu codificación al
armar funciones Tan bien hecho, has llegado
al final de este módulo, y ya estás listo. O alguna
acción realmente emocionante en la siguiente sección.
118. Introducción a tu juego: esto se ve divertido: Bueno, esta es la parte
más emocionante de aprender a programar el viaje. Ya has pasado por todo
tipo de cosas. Has estado aprendiendo
todos los conceptos básicos de la programación en Python. Y ahora vamos a
tomar todas esas cosas, envolverlas
y divertirnos un poco. Entonces en esta sección, lo que vamos a hacer es
que vamos a mostrarte un juego de juego que ha sido
escrito usando gráficos de tortuga. Se puede ver el juego
aquí en la pantalla, y a primera vista, parece que es
relativamente complejo. En realidad no es
tan complejo en absoluto. A medida que lo resolvemos rápidamente, verás que entiendes la
mayor parte de lo que hay aquí. Sólo para darte una pequeña muestra de lo
que te vas a meter, vamos a ejecutar el juego y solo
mostrarte lo que
vas a estar creando. Así que es solo un pequeño partido de
fútbol en el espíritu de todas estas
emocionantes aventuras que están sucediendo todo el
tiempo alrededor del mundo, cosas como Copas Mundiales de fútbol
o si solo juegas al fútbol. Este es un juego emocionante
para mostrarte el fútbol. Bien, entonces no es un juego
completo de futbol. Es solo meterte en
los pequeños conceptos básicos del mismo, y básicamente es patear
para anotar penaltis Entonces está dibujado nuestro campo, y ahí tenemos a nuestra
pequeña tortuga que es portero y la tortuga tiene que
salvar las bolas que se disparan. A las metas. Y ahí verás bien
hecho es una salvada por la tortuga. Y cada vez que
se envía una bola nueva en una dirección
aleatoria, y la tortuga se perdió esa
, así que ese es un gol. Entonces, básicamente, el
objetivo del juego es salvar las bolas
que se disparan en dirección
aleatoria
hacia la portería y asegurarse de llegar
a tiempo para guardarla. Entonces, ahí es un juego muy emocionante, relativamente sencillo,
pero muy divertido de hacer. Y obviamente, una vez que te hayamos trabajado a través de
todos los detalles, puedes jugar y extenderlo
y hacer tantas cosas más Entonces vamos a ponernos en marcha a ver cómo llega a ser
nuestro juego de
la Copa Mundial de Turtle Soccer.
119. Creación de tu tortuga: En nuestra
conferencia anterior sobre loops, te
presentamos brevemente Python Graphics, que se conoce como gráficos
Turtle. Ahora nuestro juego que vamos a estar haciendo es usar gráficos de tortuga. Así que entremos en esto y
veamos cómo creamos este juego. Antes ya te
dije que
tenemos módulos y si
necesitamos un módulo de usuario, tenemos que importarlo. Se puede ver esta primera
declaración por aquí en la línea uno, estoy
importando tortuga. Para poder utilizar gráficos de tortuga, tu primera línea tiene
que ser tortuga importada. Si no hacemos eso,
entonces no podemos usar ninguno de los métodos
que puedes ver a continuación. Bien, entonces estas líneas aquí
básicamente están configurando nuestra pantalla. Cuando ejecutemos el programa, déjame ejecutarlo rápidamente. Se puede ver que se
crea la pantalla y esta pantalla es de tamaño 1,000 pixeles p 600. Y esta siguiente variable aquí
es solo una variable de pantalla. Es solo la variable que
usas siempre que quieras
hacer cualquier cosa que tenga que ver
con la pantalla, pero necesitas tener esto aquí. Entonces, cuando comiences en
cuanto comiences tu codificación, escribe estas dos líneas. Y sin esta línea,
nada va a funcionar. Bien, ahora entremos en la
creación de nuestras tortugas. Para que este juego funcione,
necesitamos dos tortugas. Necesitamos el portero
y necesitamos el ánima. Esta línea de aquí, la línea
número seis, crea un portero. Lo que estamos haciendo aquí es que hemos creado una variable llamada portero y la hemos asignado a
esta función por aquí, que básicamente es como
lo que has visto antes, es la clase tortuga,
así que tenemos que decir tortuga y luego tortuga dardo, que en realidad es un método en la clase tortuga llamado tortuga Este método de aquí
crea un nuevo objeto tortuga. Hemos creado esta
silla objeto para el portero, una tortuga para el portero
y luego debajo de ella, hemos creado otro objeto
tortuga para el jabalí usando esta función tortuga que
se encuentra en la clase tortuga Bien, así que eso crearía
dos objetos de tortuga diferentes. Ahora, para que este juego funcione, necesitamos que estos objetos
estén en una posición específica, y también queremos
hacerlos un poco más interesantes y tal vez hacer que se
vean de cierta manera. Y si, solo para hacerlos
un poco más emocionantes. Entonces comencemos
con la pelota. Esta primera línea aquí
básicamente es simplemente levantar
la pluma de tortuga. Entonces, si recuerdas en nuestro ejemplo
te mostramos en el bucle, era casi como un
dibujo que estábamos haciendo, y había este bolígrafo que estaba dibujando alrededor y
alrededor de la pantalla. Pero no queremos esa línea
cuando la tortuga se mueve alrededor. Entonces queremos levantar la pluma. Así que en realidad puedes
probarte tu propio código. Este código ha sido publicado a continuación. Así que escribe el código
o cópialo y pégalo, sino más bien intenta
teclearlo
y comentar esto y ver qué pasa si
ha sido comentado. Hemos levantado la
pluma, entonces queremos que nuestra bola tenga
forma de círculo. Queremos que el tamaño sea dos. Quiero decir, puedes cambiar
esto a lo que quieras. A lo mejor quieres un
ánima gigante o una bola diminuta. Juega con él.
Hemos hecho el color blanco y hemos hecho que la velocidad de
la bola sea de uno. Ahora bien, una es en realidad la
velocidad más lenta que puede mover una tortuga. Si vas alto hasta
el final hasta diez,
diez se convierte en el más rápido. Entonces esta función aquí
se llama ball dot set heading, esto es poner la pelota para mire al oeste y eso es porque nuestras bolas van hacia el
oeste hacia el portero Esas son solo algunas de
las cosas que queremos que haga
nuestra pelota y cómo
queremos que se vea nuestra pelota. Básicamente lo mismo
aquí abajo para el portero. Es exactamente
lo mismo que está pasando
aquí arriba excepto que hemos hecho la forma una tortuga,
cambiamos la velocidad, hemos hecho que el
portero mire hacia arriba, y tenemos etiquetar al
portero para ir a la posición negativa 300 como eje X y cero es un
eje Y en la Así que piensa en la
pantalla como plano XY, y básicamente,
tendrás que
jugar con estos números para
conseguir la posición perfecta. Pero puedes ver aquí, esto es negativo 300 y
está en cero para la Y. Básicamente, estas son nuestras
pequeñas tortugas que hemos hecho Hay LPO, hay
gli, y después de esto, has hecho tus
dos primeras tortugas y juegas un poco y
ves qué pasa
si cambias el código
alrededor si cambias el código
120. Cómo enseñar a tu tortuga a patear: Ocupado haciendo este juego de anotación de fútbol muy
emocionante, y tenemos los conceptos básicos de nuestras tortugas toot y el contorno
de nuestro campo en Ahora lo que queremos hacer es que queremos empezar a patear la pelota Ahora, lo que vamos a echar un vistazo en esta
siguiente sección es definir la función de patada
para patear la pelota, pero no va
a hacer nada Recuerdo que
hablamos de esto antes que
lo que hacen las funciones es
que realizan algo. Son una
caja negra que está haciendo algo que está
devolviendo un valor. Entonces por el momento, esta función, como nosotros creando los Salmos, digamos, la caja ahora no
va a hacer algo, va a hacer
algo más adelante cuando usemos la función kick Entonces vamos a trabajar a través lo que está haciendo la función kick. no verás que
pase nada en la pantalla,
pero verás que
algo sucede más tarde cuando tengamos que
empezar a patear la pelota Puedes ver aquí
hemos definido patada. Y antes mencioné que algunas funciones
no necesitan parámetros, y esta es una
de ellas porque
no necesito pasar
nada a la función. Yo sólo quiero que haga
algo por dentro. Así que hemos definido esta
función llamada kick. Bien, entonces lo que en última instancia
queremos que
haga esta función es que queremos que el balón
se mueva hacia la portería. Pero claro,
no queremos que la pelota se mueva cada vez al mismo
lugar. Queremos que sea al azar. No queremos que el portero
sepa a dónde
va a ir la pelota Para hacer eso, necesitamos cosas
un poco más
complejas, pero no hemos
mirado todo esto y
deberías entenderlo fácilmente. Lo primero que hacemos
aquí es fijar el rumbo. Hemos puesto el rumbo a 180, y si recuerdas
desde arriba del 180 está al oeste porque queremos que la pelota vaya hacia el oeste
hacia nuestros objetivos. Entonces tenemos esta variable
aquí llamada ángulo, que queremos almacenar un entero aleatorio entre
e incluyendo cero y 27. Después de algunas pruebas, me di cuenta de que este era
el tamaño exacto de
los goles y no
quería que la pizarra
fuera el tamaño exacto de
los goles y no
quería más allá los goles o por debajo de los goles. Pero podrías cambiar esto. Digamos que decidí que en realidad
quería hacer esto. 50, básicamente, todo lo que
va a hacer es ahora que tu pelota pueda ir aún más lejos hacia
la parte superior de la pantalla e incluso bajar hacia
la parte inferior de la pantalla. Cambiando eso
intentaremos cambiarlo y
veremos qué pasa y verás cómo la pelota
puede llegar a partes más. Pero por ahora, sólo
vamos a mantenerlo en 27, pero queremos que sea un ángulo
aleatorio entre ellos. Estos números. Nuestra siguiente variable que tenemos aquí es la dirección. Nuevamente, queremos un número aleatorio. Queremos que ese número aleatorio
sea cero o uno, verás donde
usamos esto a continuación aquí. Esta variable de dirección,
lo que realmente queríamos hacer es que la hemos
puesto dentro de una declaración if. Si la dirección es cero, si ese fue elegido como
el número aleatorio, queremos que la bola vaya a la
izquierda por ese ángulo aleatorio. Entonces, si lo piensas
bien, lo que está pasando es, digamos que el número aleatorio
aquí para dirección era cero, el ángulo aleatorio era diez. Esta
función de punto de bola izquierda va a girar la bola a la izquierda
diez grados, que era nuestro ángulo por aquí. Eso es lo que esto va a hacer, de lo contrario si la dirección está en cero, entonces en otras palabras, si es uno, entonces queremos que la pelota gire a la
derecha por ese ángulo aleatorio, que bien nosotros, que al azar fue de diez grados
para este ejemplo. Entonces verás cuando
el programa funcione, la pelota se
mueve constantemente en una posición aleatoria. Ahora bien, si no tuviéramos
la izquierda y la derecha, entonces lo que
pasaría es que cada vez se ejecute
este programa y se elija un ángulo
aleatorio, la pelota siempre va a subir
porque siempre va a girar a la derecha, a la
derecha, a la derecha. Pero eso no
queremos. Queremos que vaya también a la izquierda,
así que necesitamos que vaya en cualquier
dirección, izquierda y derecha. Bien, entonces la siguiente línea que tenemos aquí es apenas mover el balón
hacia adelante hacia la portería. También he averiguado que el número óptimo para
eso es de 320 píxeles, pero podríamos
cambiarlo para más. Sólo quiero decir que la
pelota va a terminar más abajo aquí en la pantalla. Déjame ejecutarlo para que
veas el posicionamiento. Recuerden, no va
a cambiar por última vez, pero lo que he hecho es que quiero
cuando se patee esta pelota, quiero que
termine en algún lugar aquí donde estarán nuestros objetivos. Si hicimos esto más, digamos 350, las bolas van
a terminar más aquí abajo. Bien. Entonces tenemos esta declaración
if por aquí. Lo que esto hace es que
básicamente queremos
saber si el portero ha
salvado la pelota o no Podrías simplemente
pensar, bueno, tal vez pensarías, seguramente, si la posición de la pelota está en la
misma posición que el portero, entonces la pelota se ha salvado El motivo por el que no he
dicho que si la posición del portero es igual
a la posición de la pelota, entonces la pelota se guarda es porque la posición
del portero para la posición de la pelota
esté exactamente en el mismo lugar es muy poco probable porque piénsalo,
es una pantalla enorme Fácilmente podría estar apagado por un píxel y podría
parecer que se salvó, pero de hecho,
no está exactamente ahí. En lugar de decir eso, más bien
hemos dicho que si la distancia entre el portero y el balón es inferior a 35, entonces es un salvamento, de lo
contrario es un gol También podrías cambiarlo
si yo hiciera esto más grande, digamos 100 entonces el portero puede estar aún más lejos de la
pelota para que sea un salvamento Pero he averiguado que 35
es un buen número para esto. Entonces aquí abajo, estoy escondiendo la tortuga por aquí porque
lo que quiero que pase es
que quiero que la pelota vuelva
al centro de la pantalla. Por aquí una vez que ha sido pateado. Pero no quiero que el usuario o el jugador vean la
pelota viajando de regreso aquí. He escondido esta tortuga
y acaba volver al centro y una vez
que está de vuelta en el centro, es reson básicamente esta afirmación de aquí la
trae de vuelta a la mitad
de la pantalla Entonces sí, eso es básicamente
lo que está haciendo esta función. Vamos a ejecutarlo para
ti más tarde para que veas exactamente cómo
entran en juego todos estos diferentes componentes.
121. Cómo enseñar a tu tortuga a salvar una pelota: Nuestro juego se está desarrollando lentamente, y en la lección anterior, vimos cómo se
podían dar patadas con la tortuga portero y la tortuga bola y cómo podíamos ajustar el
ángulo para que fuera aleatorio, así que lo haría un
poco más emocionante y así el portero podría
subir y bajar en ese tipo de posición e
intentar salvar Pero ahora lo que tenemos que
hacer es que
obviamente tenemos que tener una función que nos permita mover
al portero hacia arriba y hacia abajo. Y así esencialmente
vamos a necesitar dos funciones porque
necesitamos una función que vaya a mover al
portero hacia arriba y luego vamos a necesitar otra función que a mover al portero hacia abajo, y que va
a estar respondiendo
a las
flechas arriba y abajo de nuestro teclado Entonces también, en última instancia, también
vamos a querer llamar a nuestra
función de patada también. Tenemos que ver
eso en esta lección cómo crear esas
pequeñas funciones. Nuestra primera función que necesitamos definir
para enseñarle a nuestro portero cómo ahorrar es
esta función de portero arriba. Nuevamente, es solo un simple sordo y hemos llamado a nuestra
función portero Entonces, para que
nuestro portero suba,
queremos que mire hacia el norte, que era este ángulo de 90 grados Así que he puesto
al portero para que vaya al norte y
quiero que el portero simplemente
avance cinco píxeles, lo cual es bastante pequeño,
pero entenderán por qué cuando llegue a
esta parte de aquí abajo Entonces por ahora, portero arriba, todo lo que hace es que señala tortuga para ir hacia arriba y la
mueve hacia adelante por cinco Entonces esta función por aquí es más o menos lo contrario
del portero arriba. Está haciendo que el portero baje. Lo que estamos haciendo es que estamos
fijando el rumbo o fijando la dirección del
portero hacia abajo o hacia el sur, que es de 270 grados y
nuevamente estamos moviendo al portero
hacia adelante por cinco Pero este avance ahora
va a ir a la baja. Vas a ser un
muy buen boy scout o chica guardia o lo que
sea después de esto, deberías saber cuáles son
tus direcciones. Bien. Pero ahora, nada de esto realmente hace nada sin que nunca se llame a
la función, como dijimos antes,
esta función de patada en realidad
no hizo nada
porque nunca la llamamos. La forma en que queremos llamar a estas
funciones en nuestro juego es realidad una forma especial o una
manera que no hemos hecho antes. Lo que queremos hacer es que queremos que la pantalla espere a que se presione
una tecla. La variable de pantalla
tiene este método llamado al presionar tecla y ¿qué sucede
básicamente aquí? La variable de pantalla por aquí, que definimos en la parte superior, que es una pantalla total. Tiene una función que podemos usar
en ella llamada al presionar la tecla. Ahora bien, lo que esta función hace por nosotros es que toma dos parámetros, y esa es una función como primer parámetro y una tecla en nuestro teclado
como segundo parámetro. Lo que hace es
que toma la función que quieras y une a una tecla
del teclado. Por ejemplo, aquí hemos tomado el upkey y lo hemos dicho cada vez que se presiona el
upkey, llamar a esta función
llamada portero Cada vez que hago clic en la tecla arriba
cuando nuestro juego se está ejecutando, va a llamar a esta
función y hacer lo que hay dentro. Entonces básicamente cambiarlo al norte y moverlo
hacia adelante cinco espacios. Por eso solo tengo que
moverlo hacia adelante por cinco porque en vez de moverme
a una distancia enorme, más bien
quiero hacerla si se está presionando
la tecla, luego seguir moviéndola hacia
arriba esos cinco espacios. Entonces tenemos otra vez
lo mismo, pero obviamente esto es simplemente hacer portero abajo
con la tecla abajo La tecla de abajo provocó que esta
función portero bajara. Y luego para las patadas, porque queremos que
la pelota obviamente avance y sea pateada, he elegido solo usar
la tecla K en el teclado Entonces puedes hacerlo cualquier cosa, puedes convertirlo en la J, puedes hacerlo el, lo que quieras. Pero ya lo hemos dicho
cuando se presiona K, llama a la función kick. Ahora bien, si tienes estos métodos de pulsación de teclas y teclas donde
estás usando el teclado y
quieres que el programa
espere a que se presione una tecla, entonces necesitamos esta otra función aquí
abajo llamada
screen dot Listen. Básicamente lo que esto hace es que el programa
esperará constantemente a que se presione una tecla. Y si se presiona una tecla,
entonces
se da cuenta y ejecutará
esta función Sin esto, un
programa no va
a molestarse en escuchar
ninguna llave, y lo más probable es que se estrelle. Entonces otra cosa
que siempre debes tener en tu programa es
esta línea de aquí. Esta línea está básicamente
siempre en la última línea de tu programa y
necesita para que se ejecute. Estoy presionando el teclado K
ahora en la pantalla, y como pueden ver, nuestra
pelota ha avanzado. Esa vez me lo perdí. Entonces nuestra otra cosa
que definimos en nuestro programa era obviamente
mover a la tortuga arriba y abajo. Entonces, si hago clic en la
tecla de abajo, lo hace. Si hago clic en la tecla arriba, va a hacer eso. Básicamente, todo lo que tenemos es que
podemos patear con la
K y podemos mover la tortuga arriba y abajo para tratar salvar la pelota con
las teclas arriba y abajo. Puedes seguir haciendo esto
tantas veces como quieras. M. Esto parece un buen juego. Esto va a ser un best seller. Definitivamente. Estoy seguro que ganarás mucho
dinero con este juego. Pero sí, y una vez que
termines, recoges Exit. Y si, tenemos los
inicios del juego funcionando. Todo lo que realmente
queda por hacer ahora es hacer que se vea un
poco bonito, agregar un campo, y al hacerlo
te mostraremos cómo usar bucles en él y todo tipo de cosas
emocionantes.
122. Copa del Mundo: olvídate: Se acerca nuestro increíble
juego de fútbol, y solo hay un último
elemento que queremos agregar. Y queremos que el campo sea un poco más interesante. Por el momento, solo
tenemos una especie de campo básico, queremos mostrarte que
puedes simplemente colorearlo y dibujar algunas líneas
en él, etcétera Y así eso es lo que vamos
a cubrir en esta lección, y luego vamos
a combinar eso en nuestro programa principal de fútbol, y vas a estar
listo para toda la acción. Si miras este código de
aquí para el campo, verás que hay
bastante y se ve un poco raro
y confuso. Aquí es realmente donde tienes que
empezar a jugar y esto sí tomó mucha prueba y
errores para que sea exacto. Pero entremos en ello y
veamos qué está haciendo. Nuestra primera línea nuevamente
es importar tortugas para que podamos usar todas las funciones de
tortuga Como un aparte, ya sabes, estamos usando estas funciones como dibujar y cambiar colores
y todo ese tipo de cosas. Como dijimos antes, no hay que saber
todas estas cosas. Simplemente ve y mira
la documentación. Entonces puedes decir, quiero
mirar la función tortuga, y te mostrará todas
las cosas que
puedes hacer con esa
función tortuga. No es difícil. Entonces quieres saber,
Oh, ¿puedo dibujar? ¿Cómo levanto el
bolígrafo o cómo pongo un bolígrafo o cómo
cambio lo que es la tortuga? Todo eso está en
la documentación. Entonces no es algo que
realmente tengas que recordar. Empezarás a
recordarlo, cuanto más lo uses, pero todo eso está disponible en la documentación para Python. Entonces nuestra función aquí se
llama campo de dibujo, y es bastante
autoexplicativa. Queremos que dibuje el campo. Entonces básicamente solo las líneas en el campo y hacen que se
vea más interesante. Hemos creado esta variable
aquí llamada campo, que es solo una
tortuga como la que teníamos antes con el
portero y el agujero Hemos hecho la forma de
círculo, eso puede ser cualquier cosa. Es sólo algo
que está dibujando. Y hemos escondido la
tortuga solo para que en realidad
no veas a la tortuga dando
vueltas todo el tiempo. Pero obviamente, ya sabes,
esto no es realmente necesario. Eso es algo divertido. Ahora bien, si te gusta
ver a las tortugas dibujar, entonces está bien, pero no
queríamos que se viera la
tortuga Queríamos que el dibujo
pareciera que pasaba por arte de magia. Sí, pero aún así verás que se está
elaborando
el campo porque, bueno, así es como funciona
Turtle Graphics. Y luego hacemos un montón de un montón de otras
cosas debajo de eso. No voy a
pasar por
cada línea porque prácticamente
he explicado lo que
hacen todas
estas funciones en la conferencia anterior. Muchos de ellos son
bastante obvios. Es obvio lo que hace el tamaño de la pluma. Es obvio lo que va
a hacer, pluma abajo. Así que hemos cubierto todos estos, y con solo leerlo, eso es
algo bueno del código. Literalmente ahora puedes
leerlo con tu experiencia y por lo que
has pasado y
entender lo que está haciendo. Sí, así que esto es solo mover la tortuga a
diferentes partes de la pantalla. Se tiene que levantar en ciertos momentos porque
no queremos líneas en
todos los sentidos. Y si, esto es
juguetear y tratar de que sea
el campo perfecto Pero sí, solo se
necesita práctica. Pero lo principal solo
necesitas
saber qué hacen todas estas
diferentes funciones, que ya deberías saber. El que sí
quiero señalar
es este bucle de cuatro por aquí. Ahora bien, lo que está
haciendo este bucle de cuatro es que en realidad le está diciendo a
la tortuga que
dibuje un semicírculo Ahora bien, cómo lo está haciendo
es que está diciendo para X en rango 180 y la razón por la que es 180 es porque si lo
piensas, un semicírculo sería 180 grados porque un círculo
completo es 360 Por cada X en 180, queremos que avance una vez. Básicamente, todo lo que hace es que cada vez que se ejecuta este cuatro bucle, es mover a la
tortuga de campo hacia adelante una vez y girarla hacia la derecha por un ángulo de uno o
un grado de uno. Así que muy lentamente, verás que
va a dibujar un semicírculo porque cada vez que van
los bucles, se mueve por uno, gira la tortuga por uno, se
mueve por uno, gira la
tortuga por uno hasta que es do 180 veces e hizo un semicírculo Y si
realmente no puedes imaginarlo,
podrías darle la vuelta a la tortuga
para que puedas ver la tortuga en el dibujo
ya que la hemos
apagado y en realidad verás a
la tortuga girando mientras dibuja
lentamente ese semicírculo de 180
grados Sí, y eso va a ralentizar
todo bastante, pero definitivamente
te ayudará a ver lo que está pasando. Y tenemos dos semicírculos, entonces tenemos otro aquí Y la razón
verás que uno tiene razón, ese queda, sigue
haciendo lo mismo. Es simplemente dibujarlo
desde un lado diferente. Pero sí, y cambiar
esto solo va a hacer que tu círculo sea más grande o más
pequeño o tu semicírculo
más grande o más pequeño Entonces sí, cambia ese número, cambia ese número,
mira qué pasa. Sí, sólo juega por ahí. Creo que conoces todas
estas otras funciones, tal vez solo esta que no
has visto antes. Lo que eso hace es que
solo hace un sello de la tortuga o donde
sea que esté en nuestra pantalla. Literalmente, solo hace un sello y la tortuga continúa
haciendo lo que se suponía para. Entonces justo al
fondo de todo esto, estoy llamando a nuestro campo de dibujo de
funciones. Al llamarlo aquí,
va a estar haciendo todo
esto por aquí. Ahora queremos agregar nuestro
campo a nuestro juego. Al igual que tenemos estos otros módulos
llamados total y Random, field ahora se convierte en
su propio módulo. Cada archivo o programa
que tenemos eso y este y
los demás que hemos creado son todos
sus propios módulos. Entonces ahora quiero que el módulo
de campo se vea en el módulo de futbol, tengo que importarlo. Ahora una cosa que debes saber es cuando guardas tus archivos, si no has guardado
el módulo de fútbol y el módulo de campo en
la misma carpeta, no
va a faltar y
va a ser confuso. En realidad no voy a poder encontrar dónde está este módulo de campo. Si no los quieres
en la misma carpeta, tienes que poner todo
el camino y se
vuelve un poco confuso. Pero por ahora, solo guarda estos dos módulos
en el mismo archivo. Y eso es todo lo que
ha cambiado de este lado, así que ahora vamos a ejecutarlo. Aquí ves que está creando
uno de nuestros semicírculos. Se nota que
lentamente gira y se mueve uno o dos cada vez para crear este pequeño
semicírculo aquí Y tenemos nuestro toro
y tenemos nuestra tortuga. Entonces, si arrancamos, ahora solo se ve un
poco más emocionante. Y podemos seguir haciéndolo como
lo hacíamos antes. También verás ahora que la
razón por la que hice nuestro ángulo, nuestros ángulos máximos
27 antes e hice todos esos números aleatorios es
porque el tamaño de este solo permite que el ángulo
sea un máximo de 27 y eso significa que esta
pelota nunca
saldrá de esta caja de portero No va a terminar por
aquí ni por aquí. Sí, ese es nuestro juego. Adelante, escribe el código, cópialo, haznos preguntas
si confundes Pero en serio, todo lo
que está aquí, debes entender todas son funciones
muy autoexplicativas. Todos los nombres
parecen tener sentido. Y creo que
deberías estar bien para ahora ir y terminar tu
juego que has estado creando. También te darás cuenta en un juego, ponemos muchos
comentarios para ayudarte también a tratar de explicar
cada línea de código. Entonces nuevamente, como dijo Sarah,
todo está en la práctica. Todo está en la jugada, así que
siéntete libre de tomar el código, editar pequeñas cosas, cambiarlo ,
ver qué hace, porque así es como
vas a aprender. Así que has logrado
este increíble objetivo. De hecho, has
podido crear tu propio juego. Así que pruébalo, haz
lo que hemos hecho ahí, haz que el juego se ajuste
y muéstranos lo que puedes hacer para que puedas ser un
programador increíble en Python