WEBVTT

00:00:02.030 --> 00:00:03.770 align:middle
En este video, lo haré
te muestro una muy linda

00:00:03.937 --> 00:00:06.700 align:middle
faceta de Pharo,
su inspector

00:00:07.170 --> 00:00:10.610 align:middle
Un inspector es una herramienta
que permite interactuar

00:00:10.777 --> 00:00:14.190 align:middle
con objetos y discutir
con ellos de una manera viva.

00:00:15.250 --> 00:00:17.690 align:middle
Intentemos en el sistema de archivos.

00:00:19.520 --> 00:00:21.450 align:middle
Por ejemplo, si hago "Sistema de archivos

00:00:24.330 --> 00:00:29.130 align:middle
directorio de trabajo ", lo haré

00:00:29.297 --> 00:00:32.190 align:middle
obtener todos los archivos que son, para
instancia, en la raíz de mi imagen,

00:00:32.357 --> 00:00:33.870 align:middle
así que obtendremos todos esos archivos.

00:00:35.030 --> 00:00:39.610 align:middle
Echemos un vistazo. Si lo hago
"Inspeccionar",

00:00:40.030 --> 00:00:41.240 align:middle
Abro un inspector

00:00:41.870 --> 00:00:43.240 align:middle
Aquí tengo un inspector.

00:00:45.430 --> 00:00:47.690 align:middle
Este es el nuevo inspector Pharo
desarrollado

00:00:47.857 --> 00:00:51.730 align:middle
por el equipo GT, tiene

00:00:51.897 --> 00:00:53.140 align:middle
características muy interesantes

00:00:53.307 --> 00:00:56.740 align:middle
Comencemos a mirar la pestaña

00:00:58.330 --> 00:00:59.640 align:middle
llamado "crudo".

00:00:59.807 --> 00:01:03.880 align:middle
La pestaña "Raw" es la anterior
inspector. Que

00:01:04.047 --> 00:01:04.850 align:middle
¿muestra?

00:01:05.017 --> 00:01:08.000 align:middle
Muestra los datos del objeto, el
variables de instancia de objeto

00:01:08.167 --> 00:01:09.710 align:middle
tal como se define en la clase.

00:01:10.420 --> 00:01:12.480 align:middle
Puedo interactuar con eso.

00:01:12.647 --> 00:01:15.930 align:middle
Puedo, por ejemplo,
pregunte por todas las entradas.

00:01:16.530 --> 00:01:20.940 align:middle
Aquí obtengo todas las entradas,
o dame todo el

00:01:21.107 --> 00:01:25.850 align:middle
directorios, por ejemplo,
aquí obtengo todos los directorios.

00:01:27.880 --> 00:01:31.380 align:middle
Si observamos la clase de objeto,
si yo hago yo

00:01:31.547 --> 00:01:36.240 align:middle
navegar ", ¿qué veo?

00:01:36.407 --> 00:01:40.430 align:middle
Esta vista me muestra los valores

00:01:41.250 --> 00:01:44.450 align:middle
para el objeto, la instancia
variables que

00:01:44.617 --> 00:01:46.100 align:middle
se han definido en la clase
de esa manera.

00:01:47.520 --> 00:01:49.820 align:middle
Me permite mirar dentro.

00:01:50.000 --> 00:01:54.650 align:middle
Por ejemplo, aquí puedo ver
que el "camino" es en realidad

00:01:55.350 --> 00:01:59.530 align:middle
compuesto por este objeto "self"
y puedo verlo

00:01:59.697 --> 00:02:03.660 align:middle
aquí. Todavía estoy en modo bruto,
y

00:02:03.827 --> 00:02:04.800 align:middle
Puedo explorar dentro.

00:02:05.000 --> 00:02:07.550 align:middle
Si hago esto, en realidad soy
voy a mirar

00:02:07.717 --> 00:02:09.780 align:middle
la secuencia de usuario y ese tipo de cosas.

00:02:09.947 --> 00:02:13.280 align:middle
Aquí básicamente viole
el encapsulado

00:02:15.210 --> 00:02:18.250 align:middle
El sistema mirará
el comportamiento introspectivo,

00:02:18.417 --> 00:02:21.290 align:middle
me mostrará los campos
valores.

00:02:23.000 --> 00:02:23.920 align:middle
Esta vista es muy útil.

00:02:24.087 --> 00:02:28.540 align:middle
Pero ahora el nuevo inspector
hace más cosas

00:02:28.707 --> 00:02:33.310 align:middle
Esto significa que cada objeto puede
mostrar al usuario

00:02:34.150 --> 00:02:38.820 align:middle
diferentes facetas de cómo
es representado.

00:02:40.700 --> 00:02:44.880 align:middle
De forma predeterminada, cada objeto
tiene la faceta en bruto.

00:02:45.300 --> 00:02:47.900 align:middle
También está la faceta Meta,
cual es

00:02:48.067 --> 00:02:49.310 align:middle
lo que permite navegar por la clase.

00:02:49.477 --> 00:02:51.380 align:middle
Podemos explorar rápidamente la clase,
por ejemplo, así.

00:02:52.150 --> 00:02:55.330 align:middle
Normalmente es solo útil
cuando estás en la navegación

00:02:55.590 --> 00:03:00.440 align:middle
flujo, cuando necesitas saber
directamente sin abrir

00:03:00.607 --> 00:03:01.350 align:middle
otro navegador

00:03:01.650 --> 00:03:03.140 align:middle
Pero los más importantes son
esas otras pestañas.

00:03:03.307 --> 00:03:08.090 align:middle
Aquí, por ejemplo,

00:03:08.257 --> 00:03:11.640 align:middle
el inspector sabiendo eso
tenemos una referencia,

00:03:13.470 --> 00:03:17.730 align:middle
un directorio, muestra todo
contenido en el directorio

00:03:17.900 --> 00:03:19.690 align:middle
Es lo que te mostré allí.
cuando hice esto

00:03:20.270 --> 00:03:21.960 align:middle
Aquí, obtenemos lo mismo.

00:03:26.190 --> 00:03:31.140 align:middle
Ahora podemos mirar dentro

00:03:31.307 --> 00:03:32.180 align:middle
este sistema de archivos

00:03:32.347 --> 00:03:36.090 align:middle
Si elijo a Ston, este es un equivalente
de Json en Pharo,

00:03:36.460 --> 00:03:40.920 align:middle
una vez más recibo un

00:03:41.087 --> 00:03:45.780 align:middle
referencia dentro del archivo
sistema que es

00:03:46.280 --> 00:03:51.110 align:middle
este archivo aquí,
Obtengo un acceso en

00:03:51.277 --> 00:03:52.500 align:middle
el archivo llamado

00:03:52.667 --> 00:03:57.270 align:middle
Meta-inf.ston. Y ahora el
inspector es

00:03:57.437 --> 00:04:00.390 align:middle
inteligente y me dice "lo haré"
mostrarle su contenido si lo desea ".

00:04:01.000 --> 00:04:02.940 align:middle
Miro su contenido y
parece que tengo

00:04:03.107 --> 00:04:06.020 align:middle
un contenido, no sé exactamente
para qué sirve, pero es un contenido.

00:04:07.210 --> 00:04:11.070 align:middle
De la misma manera, puedo
navegar por las subcarpetas.

00:04:11.237 --> 00:04:14.950 align:middle
Aquí, si elijo
paquete de efectivo, este es el lugar donde

00:04:15.117 --> 00:04:16.180 align:middle
Los paquetes se almacenan de manera predeterminada.

00:04:16.347 --> 00:04:19.160 align:middle
De hecho, este sigue siendo un objeto
del sistema de archivos

00:04:19.327 --> 00:04:21.760 align:middle
pero me muestra su contenido.

00:04:22.540 --> 00:04:26.880 align:middle
Si miro datos, puedo ver

00:04:30.210 --> 00:04:33.740 align:middle
un png Si hago clic en
este png, voy a navegar.

00:04:34.040 --> 00:04:36.760 align:middle
Aquí, verá que hay otras pestañas.

00:04:38.030 --> 00:04:38.680 align:middle

00:04:39.500 --> 00:04:41.540 align:middle
Si hago clic en Contenido,

00:04:41.707 --> 00:04:44.550 align:middle
el png almacenado en un binario
formato en mi disco

00:04:47.300 --> 00:04:50.460 align:middle
Como es un png,
el inspector me muestra una vista previa

00:04:50.627 --> 00:04:53.570 align:middle
de lo que contiene el PNG.

00:04:53.737 --> 00:04:55.140 align:middle
Si miro el script.st,

00:04:55.307 --> 00:04:58.510 align:middle
por ejemplo, tendré
diferentes paneles.

00:04:58.677 --> 00:05:00.740 align:middle
Aquí hay dos, no
saber exactamente por qué

00:05:00.907 --> 00:05:03.150 align:middle
pero hay uno con
resaltado de sintaxis y el otro

00:05:03.317 --> 00:05:05.400 align:middle
uno sin, mostrando el
contenido una vez más

00:05:06.050 --> 00:05:09.470 align:middle
Si es un archivo .zip,
es aún mejor porque cuando yo

00:05:09.637 --> 00:05:14.520 align:middle
en él, el contenido zip es
codificado y

00:05:14.687 --> 00:05:19.100 align:middle
comprimido pero los elementos,
en este punto, son

00:05:19.267 --> 00:05:22.920 align:middle
interpretado. Aquí puedo
navegar directamente

00:05:24.240 --> 00:05:26.080 align:middle
mis objetos y en el mismo
manera recursiva

00:05:29.730 --> 00:05:34.300 align:middle
Eso fue para mostrarle que
Inspector Pharo

00:05:34.467 --> 00:05:37.400 align:middle
es realmente una herramienta muy poderosa
para interactuar

00:05:37.567 --> 00:05:42.160 align:middle
Precisamente con los objetos,
además como cada objeto

00:05:42.327 --> 00:05:45.430 align:middle
determina una representación
o un conjunto de

00:05:45.597 --> 00:05:48.840 align:middle
representaciones significativas
para nosotros

00:05:49.007 --> 00:05:51.270 align:middle
interactuar con él y ser
el más eficiente,

00:05:51.550 --> 00:05:53.820 align:middle
Esto permite construir muy rápido.
pequeñas herramientas

00:05:54.000 --> 00:05:56.940 align:middle
Aquí tienes un pequeño sistema de archivos
navegador, ¿por qué?

00:05:57.107 --> 00:05:59.270 align:middle
Porque cuando navegas y
inspeccionar

00:05:59.510 --> 00:06:01.890 align:middle
el sistema de archivos, a veces usted
quieren saber

00:06:02.057 --> 00:06:02.840 align:middle
exactamente lo que está inspeccionando.

