SlideShare una empresa de Scribd logo
1 de 46
Introducción a la programación orientada a objetos: squeak, el entorno

    1. El entorno

                Índice

                1. Introducción

                2. Consideraciones en la selección del entrono Squeak

                3. Instalación del Squeak

                4. Creando Proyectos

                5. Ventanas de trabajo

                6. Otras Herramientas disponibles

                7. Resumen

                8. Ejercicios

                                1. Ejercicios

           Ejercicio final de la unidad
1. El entorno
1. Introducción
Introducción




El propósito de este capítulo es interactuar con el ambiente de Squeak y sus principales componentes.
Se mostrará las funcionalidades de cada una de estas y como nos facilita el trabajo en la edición de
código en la construcción de programas.
El ambiente de Smalltalk es muy amigable y la mayoría de sus implementaciones poseen un entorno
de interacción muy diferente al entorno de desarrollo típico de otras tecnologías conocidas, como las
de Borland Software Corporation o Microsoft Visual Studio .Net o Eclipse. El entorno o ambiente
Smalltalk es primordialmente gráfico y funciona como un sistema en tiempo de ejecución que integra
varias herramientas de programación, utilidades multimedia, interfaces para ejecutar código no nativo
a Smalltalk y servicios del sistema operativo.




UPNFM
Estas posibilidades, que han influido en la metodología de trabajo y concepción de la programación, se
traducen en la tendencia a considerar a Smalltalk más que un simple lenguaje de programación.
La forma de programar en Smalltalk no consiste en el ciclo típico de las tecnologías tradicionales: Arrancar
un editor de texto, compilar, ejecutar y terminar la aplicación. En Smalltalk se manipula el entorno mismo,
comúnmente mediante el Navegador del Sistema .

En el presente capítulo estudiaremos como interactuar con la interfaz de Squeak.
Este capítulo presenta los elementos requeridos para el manejo del entorno de programación, existen a su vez
documentos que ilustran como utilizar el Squeak como un entorno ideal para el desarrollo de actividades y
aplicaciones educativas. Si bien es verdad que se utiliza de una forma muy distinta a otras aplicaciones, no
resulta complicado acostumbrarse a su forma de, uso, sin embargo, este tipo de uso no será abordado, sino el
lenguaje en el cual esas otras aplicaciones son desarrolladas..


UPNFM




1. El entorno
2. Consideraciones en la selección del entrono Squeak
Consideraciones en la selección del entrono Squeak
Los formadores interesados en la enseñanza asistida por computadora estamos
siempre a la búsqueda de la herramienta definitiva que les permita abarcar todas las
disciplinas y todas las asignaturas desde un mismo entorno coherente y homogéneo.
En este sentido, Squeak ofrece un entorno casi perfecto, donde tanto un profesor de
matemáticas,física, como uno idioma español o de música, puede desarrollar
proyectos y juegos que pueden convertir temas, en principio aburridos para el
alumno, en divertidos e interactivos.
Al igual que el cambio del paradigma de profesor como dispensador de conocimientos
a profesor como guía es difícil de asumir por el profesional de la enseñanza que lleva
toda la vida encasillado en la primera, el cambio de la metodología de enseñanza
basada en herramientas pasivas (libros, vídeos, etc.) por la enseñanza basada en
herramientas interactivas, sobre todo cuando se tratan de aplicaciones con tanta
variedad como Squeak, el primer obstáculo a vencer es precisamente cambiar la
actitud del profesor.



.




UPNFM
Por supuesto que la curva de aprendizaje de Squeak puede ser un poco empinada debido a la gran variedad de
opciones y la potencia que ofrece. Pero la filosofìa de Squeak es precisamente descargar al profesor a medio y
largo plazo de la tarea de preparar proyectos, permitiendo delegar en los alumnos la creación de material, lo
que permite a su vez al profesor tomar el rol de alguien que supervisa el autoaprendizaje de los estudiantes.




UPNFM
Sueak es un entorno de programación gráfico orientado a objetos ideado como una
herramienta válida para investigar, realizar simulaciones o explorar destrezas.
Constituye un campo abierto a la imaginación y se presta de forma excepcional como
herramienta capaz de facilitar el descubrimiento desde muy tempranas edades.

En el aula, Squeak puede ser usado como un programa más, destinado a realizar
aplicaciones para que el alumno interactúe con ellas o como herramienta para
elaborar presentaciones. En ambos casos, el papel que desempeña el alumno es la de
mero consumidor, adoptando una actitud más o menos activa en función del grado de
libertad que se le ofrezca. Desde este punto de vista, no aporta mucho más que el
resto de buena parte del denominado software educativo.




UPNFM
El modelo replica el de la enseñanza tradicional en la que el alumno recibe información
y/o realiza los ejercicios previamente programados por el profesor. De este modo, los
alumnos pueden -en un caso- recibir disertaciones con apoyo audiovisual y/o -en otro
caso- resolver juegos tipo trivial, rompecabezas, de memoria, etec. que les ayuden a
recordar contenidos educativos.

Un segundo nivel de profundización en el uso de Squeak en el aula viene dado por la
posibilidad de que sean los propios alumnos quienes construyan aplicaciones guiadas
bajo las directrices y asesoramiento del profesor. Este modo de utilizar el programa
supone un mayor grado de libertad, es bien acogido por los alumnos y se presta a
estimular su creatividad.




UPNFM
El tercer grado de uso de Squeak que proponemos, y que se aproxima más a la filosofía en la que
fué creado, supone un cambio radical de los roles desempeñados por profesor y alumno. Se
trataría de que los profesores fuéramos capaces de realizar propuestas estimulantes para que
sean los propios alumnos quienes proponga soluciones y realicen proyectos que les permitan
experimentar sus ideas de una forma lúdica y amena. De este modo, el alumno pasaría de simple
consumidor, más o menos pasivo, a usuario de una herramienta que estimula el auto-
descubrimiento. La labor que el profesor desempeñaría en este marco sería adoptar el papel de
guía y estímulo de la tarea educativa.




UPNFM




En último término, Squeak es, en definitiva, una herramienta concebida y desarrollada
-al fin y al cabo- para que sean los propios alumnos, y no tanto los profesores, los que
puedan experimentar, practicar y jugar; un laboratorio virtual en el que puedan dar
riendas sueltas a su originalidad proporcionándoles una plataforma válida para
aprender creando.




UPNFM


1. El entorno
3. Instalación del Squeak
Squeak: una implementaciòn de Smalltalk

Squeak, es una implementación de Smalltalk, originalmente fue patrocinado por Apple Computer (1995), Posteriormente Wald Disney
Imagineering continuo con ese patrocinio. Es el Smalltalk que suscita mayor interés, particularmente porque algunos de sus integrantes
originales en Xerox PARC (Alan Key y Daniel Ingalls) todavía participan en este proyecto. Una de los novedades de Squeak, radica en el
nuevo framework llamado Morpfic.
Como herramienta multiplataforma, Squeak funciona hasta en veinte sistemas operativos diferentes. Squeak corre sobre una Máquina
Virtual. La Máquina Virtual (Virtual Machine) es una pieza de software que convierte nuestro ordenador, con un sistema operativo en
particular, en una máquina Squeak. Hay Máquinas Virtuales de Squeak para Windows, Apple Macintosh, Linux (todas las ediciones), iPaq
y un largo etcétera. Los archivos y el proceso de instalación, en cada caso, difieren en función del sistema operativo sobre el que se
realice.
UPNFM



1. El entorno
3. Instalación del Squeak
Squeak: su arquitectura.




Una de las mayores ventajas que posee Squeak estriba en que existen maquinas virtuales para una gran cantidad de microprocesadores y
sistemas operativos. Al realizar la instalación de Squeak se crea un directorio con, al menos, cuatro archivos, tres de los cuales son iguales
para cualquier sistema operativo:




UPNFM
• La máquina virtual (VM) de Squeak : Archivo ejecutable específico para cada sistema
operativo. Su trabajo consiste en convertir los códigos de Squeak en códigos de la
máquina en la que se está ejecutando.
• Archivo de imagen (Image): Archivo común a todos los sistemas operativos,
contiene todos los archivos binarios de Squeak.
• Archivo de fuentes (Sources): Archivo común a todos los sistemas operativos,
contiene todos los códigos fuentes de texto originales de Squeak.
• Archivo de cambios (Changes): Archivo común a todos los sistemas operativos,
contiene todos los códigos fuentes de texto que se han cambiado o se han añadido a la
versión original de Squeak . Los cambios pertenecen a la imagen del mismo nombre.
De modo que, si guardamos una imagen con otro nombre, se creará un nuevo archivo
Changes.




UPNFM
Los archivos imprescindibles presentes en cualquier versión son el archivo Squeak (Máquina Virtual) y el
archivo Image.

Existe una Máquina Virtual para cada sistema operativo. La Imagen es común a
todos ellos y corre sobre la Máquina Virtual. Esto es, el mismo archivo de Imagen
funciona en las plataformas Linux, Mac, Windows, etc. siempre que se use la
Máquina Virtual (Virtual Machine) apropiada para cada plataforma.
El código fuente del sistema se almacena en los archivos Sources y Changes. Al
terminar la instalación dispondremos de un programa totalmente operativo. Para
comenzar a trabajar con él, en Windows, bastará con localizarlo en Inicio > Todos
los programas y pulsar sobre él. En Linux, lo encontraremos en
/home/usuario/Squeak . El archivo ejecutable es SqueakAtenex.image.




UPNFM
continuación se describe la creación y uso de estos archivos de imagen y changes:

• Cuando se confirma la modificación o creación de un método, este se traduce a
bytecodes por la única instancia de la clase Compilador y estos nuevos bytecodes se
agregan a la imagen, posteriormente estos cambios son agregados al archivo de
cambios y al paquete al que corresponde el método. Esta es una de las razones por
las cuales es necesario guardar la imagen, ya sea manteniéndola con el mismo
nombre o bien guardarla con un nombre diferente
• La ejecución de código se realiza traduciendo los bytecodes a código de maquina
(código nativo) por un compilador JIT, llamado Maquina virtual (VM). Esta
traducción se realizan en un tiempo imperceptible para el programador.
• Para compartir código entre distintas imágenes y para distintos usuarios.
Cada cambio que hacemos en el ambiente Smalltalk, sea este de configuración, por
agregar un nuevo paquete o la creación de nuevas clases a partir de las ya
existentes, extiende a la imagen y al guardarla, esta crece o cambia. Estos cambios
se almacenan y pueden ser distribuidos a diferentes usuarios o a otras plataformas
(Linux, Os o Windows). Esta es una de las razones por la cual a la programación con
Smalltalk se le denomina programación por extensión.
UPNFM




1. El entorno
3. Instalación del Squeak
Squeak: como obtenerlo
Squeak es una herramienta multimedia y multiplataforma; multimedia por la gran facilidad que presenta
para incorporar textos, sonidos, imágenes y vídeo, y multiplataforma porque funciona bajo diferentes
sistemas operativos. Por otra parte, y aunque para los puristas no pueda catalogarse como software libre,
las cláusulas de la licencia de Apple permiten su uso casi como si se tratara de Software libre.
La licencia Squeak no es una licencia de Software Libre porque obliga a todos los usuarios en cualquier lugar
del mundo a obedecer las leyes de control de exportaciones de los EE.UU. Aplicada a los tipos de letra, no
permite su modificación e incluye un requisito para que los usuarios indemnicen al desarrollador. Por estas
razones no figura en el directorio de Software Libre de la FSF/UNESCO (Fundación de Software
Libre/UNESCO) que cataloga el Software Libre que funciona bajo sistemas operativos libres -especialmente
bajo el sistema operativo GNU y sus GNU/Linux variantes.
UPNFM


Squeak es una herramienta gratuita que como se menciono antes, está compuesto de
una VM (máquina virtual) específica del sistema operativo, donde se ejecuta y una
imagen. La imagen es el lugar dónde los objetos viven, objetos del ambiente como el
compilador, el depurador y los objetos del dominio de la solución. Las imágenes son
intercambiables entre máquinas virtuales, esto significa, entre sistemas operativos.

Una Imagen en Squeak es un archivo que es una copia casi exacta del contenido de la
memoria de Squeak con todos los objetos y todas las definiciones de sus clases. Es
importante conocer que en una imagen no se conservan los objetos que dependen de
recursos del sistema operativo, tales como una conexión de red o un archivo de vídeo.




UPNFM
El ambiente de desarrollo completo, para cualquiera de los sistemas operativos soportados, puede ser
descargado de diversos lugares, entre ellos:
• http://www.squeak.org.
• http://swiki.agro.uba.ar/small_land/241
• http://squeak.educarex.es/Squeakpolis/11

Existe una versión en CD-live que se puede descargar del sitio oficial disponible en la
direccion: http://squeak.educarex.es/Squeakpolis/11 Los ejemplos que se muestran
en este libro se probaron con la imagen de educarex.



UPNFM




1. El entorno
3. Instalación del Squeak
. El mundo de Squeak.
Existen muchas herramientas más, pero básicamente se trabajará con las antes descritas, particularmente con
espacios de trabajo, el navegador de clases y el inspector, aunque eso va depender del tipo de aplicación que
se este desarrollando. Cuando abrimos Squeak nos encontramos con un escritorio similar al de la figura. Es
lo que llamamos el Mundo de Squeak, el lugar donde ocurre todo. No existen modos diferenciados de trabajo
en Squeak (Edición vs. Presentación) como en otros entornos, sino que toda la acción se desarrolla en modo
ejecución La figura 1 presenta la pantalla de inicio o mundo de Squeak.


En el mundo podemos identificar una barra de título, una barra de Menú y un área de trabajo. En la barra de
menú se encuentran las siguientes opciones de Menú:
Figura 1. El mundo de Squeak
Menú Squeak (figura 2a): En este menú se encuentran las opciones de guardar y salir.
Cada vez que cerremos squeak, se desplegará un mensaje solicitando información
acerca de si se desea o no guardar la imagen. Es mediante este menú que podemos
guardar una imagen con diferente nombre o salir sin guardar los cambios realizados.
Esto nos indica que al volver a ingresar a Squeak, este se visualizara y estará con la
configuración anterior a la actual.




UPNFM




Menú Proyecto (figura 2b.) En este menú, se puede escoger algún proyecto en
particular (buscar proyecto) o navegar por los mismos(proyecto anterior, ir a proyecto,
proyecto siguiente), crear nuevos proyectos, mostrar jerarquía de objetos(esta opción
permite ver la jerarquía de objetos que tenemos en pantalla), etc.




UPNFM
Cuando se trabaja en modo experto (ver figura 2c.) se despliega en Proyecto la opción
Abrir, en la que nos permite visualizar en pantalla alguna herramientas con las cuales
interactuaremos: Browser, Worksapce, Transcript, etc.).
 Menú Configuración (figura 2c.) permite cambiar la apariencia del entorno. En este
menú podemos cambiar el idioma del Squeak, incluye -de momento- inglés, alemán y
español. La opción de actualización te permite acceder a través de Internet a los
cambios y actualizaciones del sistema. Pero lo más importante es que podemos
cambiar el modo de trabajo (de modo novato a experto). Al iniciar cambiaremos a
modo experto. Desde allí tenemos acceso a las ventanas de trabajo.




El menú Trucos incluye utilidades para el manejo ágil de la herramienta (figura 2d.).
Las funciones de la operación trucos son:
• traer objetos a la pantalla: Muestra todos los objetos que se encuentran fuera de las
coordenadas visibles del Mundo.
• mostrar los objetos ocultos: Muestra los objetos ocultos.
• mostar todos los visores: Muestra todos los visores de aquellos objetos que lo posean.
• Ocultar todos los visores: Oculta los visores de la pantalla.
• borrar trazos de tortuga: Elimina los restos de lápiz trazados por los objetos con la
opción lápiz abajo activada como “verdadero”. proporciona acceso a la manipulación y
visualización de algunos objetos.
Los botones de navegación permiten realizar las acciones más frecuentes del
programa., entre ellos tenemos:



• Navegador de proyectos: Las flechas de los tres iconos centrales del panel de
Squeak se utilizan para moverse entre proyectos recientemente abiertos (proyecto
anterior-proyecto siguiente). El botón central muestra un listado de proyectos para
poder elegir el que se desee.
• Crear un proyecto nuevo: Crea un nuevo proyecto y sitúa en pantalla una miniatura
del proyecto vacío nombrado temporalmente como Sin nombre.
• Buscar un proyecto: Navegador de archivos para localizar y abrir proyectos ubicados
en nuestro equipo o en diferentes repositorios de proyectos.
• Publicar: Guarda el proyecto en el lugar especificado y en la carpeta Squeaklets del
disco del usuario.




UPNFM
Las herramientas básicas facilitan la importación de proyectos y objetos, permiten
crear objetos, ayudan a localizar imágenes y proporcionan una galería de objetos
predefinidos para incorporarlos a nuestros proyectos. Entre ellos se identifican:
• Importar archivo: Navegador de archivos que permite buscar y utilizar archivos de
diferente tipo (imágenes, música, gráficos, ...)
• Explorador de imágenes: Ayuda en la búsqueda de imágenes para incorporar a los
proyectos.
• Pintor: Sencillo programa de dibujo que permite crear objetos para incorporar a los
proyectos.
• Catálogo de objetos: Contiene la biblioteca de objetos predeterminados de Squeak,
agrupados inicialmente por categorías, permite ordenarlos alfabéticamente y realizar
búsquedas.




Los botones auxiliares son un conjunto de iconos, que no responde aparentemente a
un criterio uniforme, incluye botones útiles a la hora de trabajar con proyectos
• Reloj digital: Muestra la hora del sistema.
• Cambia a pantalla completa: Muestra el Mundo de Squeak a plena pantalla sin los
paneles de Squeak y del sistema operativo. Alternativamente restaura la pantalla a su
estado inicial.
• Mostrar jerarquía de objetos: Muestra la jerarquía de objetos del proyecto abierto,
incluido el Mundo. Cuando se selecciona un objeto del Mundo se muestra una miniatura
en su lugar, que da acceso a un menú de propiedades del mismo.




UPNFM
Ya que este texto es para la programación en Smalltalk, la opción experto del menú
configuración y la opción abrir en el menú proyecto (que se activará al cambiar a modo
experto) serán las opciones con las que se interactuará permanentemente. Las otras
herramientas que se observan en el squeak forman parte de la herramienta de autor, por
medio de la cual podemos desarrollar aplicaciones multimedia y aplicaciones para el
campo educativo. Este conocimiento que esta fuera del alcance de este libro y se deja
para estudios posteriores.




UPNFM


Squeak como todo Smalltalk tiene un entorno de desarrollo con ciertas herramientas
para desarrollar aplicaciones, entre ellas:
• El espacio de trabajo (Workspace),
• El explorador de clases (System Browser),
• El Inspector,
• El explorador de panel de paquetes (Package Browser) y
• En depurador (Debugger).
Otras herramientas que existen en casi todos los Smalltalkt. son:
• un Creador de vistas,
• un Navegador de protocolos, y
• un buscador de selectores y de referencias a selectores (generalmente integrado al
Navegador de Clases).
El mundo Squeak es un objeto gráfico que contiene a todos los demás objetos se llama
Mundo. El Mundo de Squeak es similar al escritorio de los sistemas operativos actuales,
pero respetando la regla básica de Smalltalk: todo es un objeto. Por tanto, el Mundo
es un objeto y disponemos de una variable global llamada World para acceder a él.




UPNFM




1. El entorno
3. Instalación del Squeak
Trabajando en el modo experto
Para realizar las tareas y pruebas de programación con Squeak, inicialmente se usarán tres ventanas: el
navegador de clases (System Browser), el espacio de trabajo (Workspace) y el Transcript. Estos se
activan, dando clic en proyecto y luego en abrir, aparece la siguiente ventana.




. El entorno
4. Creando Proyectos
Creando Proyectos
Los botones del panel nos servirán, inicialmente, para comenzar a trabajar con Squeak
. Para crear un proyecto nuevo pulsaremos sobre el icono Crear un proyecto nuevo del
módulo de iconos Herramientas de navegación del Panel. La unidad de trabajo en
Squeak son los proyectos. Para comenzar a trabajar con Squeak deberemos aprender
a crear, renombrar, guardar (publicar) y recuperar estos archivos sobre los que
crearemos nuestras aplicaciones.



UPNFM




1. El entorno
4. Creando Proyectos
Crear un proyecto nuevo



Inmediatamente, observaremos que en el Mundo de Squeak aparece una pequeña ventana con el título
Sin nombre. De esta forma tan simple hemos creado nuestro primer proyecto que, por el momento, está
vacío. Antes de entrar en él y comenzar a trabajar resulta interesante cambiarle el nombre. Para ello,
pulsaremos sobre el título Sin nombre que aparece en la parte inferior de la ventana. Al hacerlo, el texto
aparecerá resaltado sobre un fondo amarillo y nos permitirá teclear un nuevo nombre.

Es posible que si pulsamos incorrectamente, en lugar de resaltar el nombre, lo que ocurra es que
entremos dentro del proyecto. Esto se comprueba porque se produce un efecto visual que nos lleva a
una pantalla en blanco. En tal caso, deberemos regresar hacia atrás pulsando el botón proyecto anterior
en la zona central del panel. Escribiremos Proyecto 1 y pulsaremos sobre la tecla Intro o Enter . Observa
que el nuevo nombre se incorpora al panel superior de la ventana.



UPNFM


1. El entorno
4. Creando Proyectos
Publicar proyectos



Para concluir el ejercicio anterior guardaremos nuestro trabajo. En primer lugar deberemos
ingresar en el Proyecto 1 haciendo clic en su miniatura y pulsando sobre el botón Publicar ublicar proyectos
este proyecto, que encontrarás en el primer grupo de botones del panel de Squeak
(Herramientas de Navegación).

Por publicar se entiende en Squeak la acción destinada a guardar el trabajo realizado en un
archivo con la extensión pr. Inmediatamente se abrirá una ventana que incorpora el nombre
del proyecto y nos permite modificar y añadir datos de identificación del mismo. A
excepción del campo Nombre, el cual ya aparece completado, el resto de las entradas no
son obligatorias y podemos dejarlas en blanco.continuar



UPNFM



. El entorno
5. Ventanas de trabajo
Ventanas de trabajo
Las ventanas y los menús desplegables nos dan acceso a servicios que nos permiten manipular el sistema y
(sólo en Morphic) pestañas (flaps). La activación de ventadas de contenedores de texto estándar de Squeak,
incluyendo navegadores de sistema, espacios de trabajo, listas de archivos y transcripciones, permiten
acceder a utilidades para manipular texto y para acceder a otras funcionalidades del sistema. A muchas de
estas facilidades se puede llegar usando los menús de botón rojo, pero a muchas de ellas es más conveniente
acceder usando secuencias de teclas especiales. Por supuesto, cada aplicación en particular puede usar
algunas, todas o ninguna de estas combinaciones.




1. El entorno
5. Ventanas de trabajo
El espacio de trabajo


El Workspace o espacio de trabajo es básicamente una hoja de editor de texto en
la cual se pueden introducir expresiones que luego pueden ser enviadas al
compilador, es decir, un espacio en el que podemos editar y ejecutar código
Smalltalk. El Workspace (figura 5) es el espacio en el que probamos los diferentes
tipos de estructuras sintácticas del lenguaje.




                                                                                                              Figura 5. la ventan del Workspace
UPNFM


Al hacer clic con el botón central del mause se muestra el menú del workspace (figura 6.) En este
menú se encuentran las opciones de ejecutarlo e imprimirlo, que son instrucciones para realizar la
ejecución del código Smalltalk. Para ejecutar líneas de código, selecciónela y luego active el menú del
workspace o la combinación de teclas Alt + d para evalúa la selección o expresión en línea. Si no
existieran errores de sintaxis, se genera código que puede ser evaluado por la máquina virtual.

NOTA: Al no tener botón central el mause se debe hacer clic en los dos botones del mause al mismo
tiempo.


Frecuentemente queremos ver el resultado de la evaluación de una expresión. Para ello se utiliza la
opción imprimirlo (o la combinación de teclas Alt + P). En este caso se compila y evalúa la expresión
seleccionada al igual que ejecutarlo, con la diferencia de que el resultado se imprime inmediatamente
después de la expresión o selección.

Abra un Workspace . Una vez abierto digite lo siguiente:
3 + 4.




UPNFM
En el espacio de trabajo, puede escribir código, selecciónelo y luego ejecútelo e imprima el resultado. Si selecciona la opción ejecutarlo, se
envía el mensaje de realizar la suma pero el resultado no se visualiza, para hacerlo escoja del menú del Workspace la opción imprímirlo. Al
ejecutarse la operación Imprimalo (ALT + P) o El resultado: la expresión es evaluada y el objeto resultante se imprime, es decir, el mensaje
+ 4 es enviado al entero 3. El selector es + y el argumento es 4. El resultado es devuelto es el entero 7.

En ocasiones se requiere de un mecanismo para hacer mas fácil la ejecución de comandos dentro del
Workspace, la tabla a continuación presenta los “atajos de teclado” para trabajar de forma más rápida dentro
del Workspace.




UPNFM




Las teclas de las letras mayúsculas se escriben presionando simultáneamente Shift-Alt y la tecla indicada o Ctrl y la tecla. Si se presionan otras teclas especiales se
indicará mediante corchetes.


Teclas Descripción                                                                                                                                             Notas
z         deshacer                                                                                                                                             -
x         cortar                                                                                                                                               -
c         copiar                                                                                                                                               -
v         pegar                                                                                                                                                -
a         seleccionar todo                                                                                                                                     -
D         Duplicar. Pegar la selección actual sobre la anterior, si no se superponen.                                                                          1
e         Intercambiar. Intercambia los contenidos de la selección actual con los de la selección anterior                                                     1
y          Intercambiar. Si no se ha seleccionado nada, los caracteres se sitúan en cualquiera de los lados del cursor y se                                    -
adelanta este. Si la selección tiene dos caracteres, se intercambian y el cursor avanza.
w        Borra la palabra precedente.                                                                                      -


 Notas: Estos comandos son inusuales. No sólo afectan a la selección actual, sino también a la inmediatamente anterior.




UPNFM




Entrada de datos al programa Smalltalk


Teclas    Descripción
q         Intenta completar la selección con un seleccionador Smalltalk válido y ya definido.
           Reconocedor. Invoca al reconocedor de caracteres glyph de Squeak. (finaliza el reconocimiento saliendo con el ratón
r
          de la ventana)
F         Inserta 'ifFalse:'
T         Inserta 'ifTrue:'
V         Copia las iniciales del autor, la fecha y la hora.
L         Mueva la selección o la línea un tabulador a la izquierda (lo contrario de indentar).
           Indenta (Mueva la selección o la línea un tabulador a la derecha)
R         [Ctl-return] Inserta una línea (return/intro) seguido de tantos tabuladores como hubiera en la línea anterior.
          [shift-delete] Borra hacia delante. O borra desde el punto de inserción hasta el principio de la palabra.




UPNFM
Navegando e inspeccionando

Tecla Descripción                                                                                                                Notas
b       Navega 'it' (donde 'it' es el nombre de una clase). Abre un nuevo navegador.                                             1
d       Ejecuta 'it' (donde 'it' es una expresión Squeak)                                                                        1
i       Inspecciona 'it': evalúa 'it' y abre un inspector de resultados (donde 'it' es una expresión Squeak).                    1
m       Abre un navegador de métodos implementando 'it' (donde 'it' es un mensaje seleccionador)                                 1,2
n       Abre un navegador de métodos que envía 'it' (donde 'it' es un mensaje seleccionador)                                     1,2
p       Imprime 'it'. Evalúa 'it' e insertar los resultados inmediatamente después de 'it' (donde 'it' es un expresión Smalltalk) 1
B       Hace que el navegador que se está utilizando navegue 'it' (donde 'it' en el nombre de una clase)                         1
E       Abre un navegador de métodos cuya fuente contiene cadenas con 'it' como subcadenas.                                      1
I       Abre el explorador de objetos en 'it' (donde 'it' es una expresión)                                                      1
N       Abre un navegador de métodos usando 'it' (donde 'it' es un identificador o el nombre de una clase).                      1
O       Abre un navegador de un solo mensaje (en un seleccionador de listas)                                                     1
W       Abre un navegador de métodos cuyo seleccionador incluye 'it' como subcadena.                                             1
UPNFM
1. El entorno
5. Ventanas de trabajo

El transcrip

El código del worksape no se puede imprimir de vuelta en el
espacio de trabajo, pero hay otra ventana, el transcript donde
se puede imprimir. El Transcript es como un Workspace, con la
excepción que eventualmente puede mostrar mensajes
generados dentro del ambiente.
Normalmente, el Transcript es utilizado para mostrar
advertencias o información adicional. Al hacer clic con el botón
central del mouse aparece el mismo menú del Workspace. Esto
nos indica que podemos editar y evaluar expresiones como si
fuera un Workspace. Otra particularidad que posee el
Transcript es que almacena los últimos diez mil caracteres
insertados.

 En la figura 8 se visualiza el Transcript. Como se indicó, esta
ventana es un objeto que esta referenciado por la variable
global Transcript. Las variables globales pueden ser accedidas
desde cualquier parte de la imagen. El mensaje más utilizado
por Transcript es show: argumento, cuando el objeto
referenciado por la variable global Transcript recibe el mensaje
show: y el argumento se imprime en el Transcript. Por
ejemplo seleccione y evalúe la siguiente expresión en un
Workspace:
1. El entorno
5. Ventanas de trabajo
El explorador de clases (System Browser)

Es la interfaz de usuario primaria para la edición de código. Un explorador en Squeak
(System Browser) nos permite crear, editar y eliminar clases y sus métodos. Estos
conforman una biblioteca organizada jerárquicamente. Esta biblioteca se puede visualizar y
revisar su estructura y código mediante el explorador. En este navegador, es posible realizar
las siguientes tareas:
• Crear y editar código fuente.
• Evaluar el código línea a línea.
• Dar formato a los métodos en código fuente.
• Dar o visualizar una explicación del código.
• Guardar clases o métodos y organizarlos en categorías
• Encontrar emisores, receptores y mensajes que puede enviar un método.
• Visualizar la herencia de clases.

El explorador de clases (System Browser) permite al usuario revisar la interfaz del mensaje
de cualquier objeto en la imagen y modificarla si se requiere. Para abrir, el explorador,
seleccione en la barra de menú el menú proyecto, luego haga clic en la opción abrir y en el
menú seleccione la opción explorador o presione la combinación de teclas Alt + b (figura 9).
Se pueden tener varios browser abierto a la vez, pero solamente se necesita uno.




UPNFM
El explorador está constituido por una ventana y está formado por cinco paneles y dos
botones marcados con instance y class: un panel para las categorías de clases, un panel para
las clases, otro para la categoría de métodos, otro para los métodos y por último un panel
para la edición clases y métodos. De izquierda a derecha, los paneles superiores son:
• Categorías de clase no significa nada en términos del lenguaje Squeak. Aquí se encuentran
los términos bajo los cuales se agrupan las clases.
• Clases son lo más importante para Squeak.? Son artefactos que crean instancias, sirven
como modelo para sus objetos. Piense en una clase como una fábrica de objetos. Una clase
crea objetos de un tipo particular, con las características de fábrica en particular. Según la
categoría que tengamos seleccionada, aparecerán en este panel las clases que se agrupen en
dicha categoría. En este punto podemos verificar que la existencia de variables de clase como
de instancia (conceptos que estudiaremos un poco más adelante). Los botones de
instancia/clase en el browser permite cambiar entre los conjuntos de métodos asociados con
una clase. Por lo general, se suele tener el botón de instancia seleccionado.




UPNFM
• Categorías de Métodos (también llamados protocolos) agrupa los métodos de grupo en tipos: para imprimir, de acceso a datos en el
objeto, de iteración, y así sucesivamente.
• Los métodos que son las unidades de código Smalltalk ejecutable.
• El Panel de edición de código: es lugar, donde podemos visualizar el código de cada clases que existe la biblioteca de clases de
Smalltalk así como sus métodos.

Por lo general, iniciamos la programación en Squeak creando una nueva categoría de clase. Con el ratón
sobre el panel de la categoría de clase, se pulse el botón central de este. Se obtiene un menú y se
selecciona mediante un clic, la opción crear una nueva categoría de clase (add item). Se escribe un
nombre, por ejemplo PruebasProgra1 y se da clic en aceptar.




UPNFM




Los Smalltalkers iniciales, para evitar confusiones acerca de cuál botón del Mouse presionar, crearon una
terminología en la que definieron un conjunto de términos independientemente de la posición del botón
del ratón. El botón del puntero del ratón lo llaman el botón "rojo", el botón central del ratón se llama el
"botón amarillo" y el botón del ratón el extremo derecho se llama el "botón azul". El botón rojo se utiliza
siempre para señalar, el botón amarillo para activar un menú contextual que depende de donde se está
señalando. El botón azul normalmente trae el menú para la manipulación de la ventana en la MVC y se
utiliza para la selección de objetos gráficos en Morphic .
Cuando se selecciona la categoría de clase PruebasProgra1(la creada
anteriormente), el navegador muestra una plantilla para crear una nueva
clase (Figura 10). Simplemente seleccionamos una categoría de clase, y la
plantilla se proporcionará para que usted la complete. Hay algunos puntos
que debemos recordar respecto al buscador de clases.
• Squeak usa categorías para agrupar las Clases según su temática.
• Las clases tienen métodos de instancia y de clase.
• Los métodos también están agrupados en categorías.
• Cada objeto es una instancia de una Clase. El código Smalltalk se escribe
en los métodos
• Cada panel del browser tiene un menú propio que se invoca haciendo clic
con el botón derecho.
• Para agregar una nueva categoría de Clases, haga clic con el botón central
para abrir el menú y elegir add ítem... para agregar una nueva categoría.




UPNFM




1. El entorno
5. Ventanas de trabajo
Inspeccionando objetos
Por medio de esta utilidad podemos examinar la estructura de cualquier objeto. Cada objeto
entiende el mensaje de inspección. Si usted puede escribir una expresión Smalltalk que es el
tipo de una cosa que usted desea, entonces puede inspeccionarlo, para ello, escriba en la
ventana de Transcript o del Workspace lo que busca, selecciónelo y elija inspeccionarlo en el
menú correspondiente.
Figura 11. Inspector de
                                                                                                          ventanas



1. El entorno
5. Ventanas de trabajo
El Explorador



El explorador de objetos Mórficos en lugar de inspeccionar, envía el mensaje de explorar a
cualquier objeto. El Explorador de objetos proporciona una vista de esquema en cualquier objeto
nuevo. Por ejemplo, analicemos la siguiente expresión
(3+5) explore.

Al ejecutar este código se activa la ventana del explorador (Figura 12). El resultado es un
esquema en el objeto original. Desde este objeto se permite al usuario activar el menú de
opciones por medio del botón central del mouse y así abrir un inspector o un explorador nuevo en
el elemento seleccionado.

                                                                                                   Figura 12. Ventana del
                                                                                                         Explorador
UPNFM
1. El entorno
5. Ventanas de trabajo
El Depurador

Los errores de Squeak son difíciles de calcular debido a que el mensaje de
error espera que usted entienda los conceptos básicos de Squeak.
Afortunadamente, las herramientas de depuración en Squeak son excelentes.
Digamos que usted ejecuta la siguiente línea de código
transcript show: 34.2.

Al ejecutar la misma aparece una ventana de notificación de error (figura 13)
Para revisar la sintaxis y poder establecer la naturaleza del error, seleccione
la opción Debug en la ventana de mensaje de error y activara la venta de
depuración (figura 14). El mensaje de error puede no ser claro para una           Figura 13. Mensaje de error.
programador novato debido a que otros objetos, a los que no se ha invocado
de forma explicita, interactúan en el envío de este mensaje. Pero recuerde
que su mensaje básico de envío es show:




UPNFM




1. El entorno
6. Otras Herramientas disponibles
Localizar clases




El entorno de Squeak permite la activación de otro grupo de herramientas en las
que se puede hacer un***


Localizar clases
En determinado momentos nos vemos en la necesidad de encontrar alguna clase en
particular. En la ventana del navegador de clase nos los permite, para ello hacemos
clic en el panel de categorías de clases con el botón central. Se activa el menú que
se muestra en la figura 15.




                                                                                       Figura 15. Menú del panel de categorías de
                                                                                                        clases
UPNFM
En este menú y a través de un clic en la opción find class se exhibe el cuadro de dialogo para localizar
clases (figura 16). En el espacio de indicado escribimos el nombre de la clase y seguidamente damos clic
en aceptar. Se activara en el panel de clases aparecerá seleccionada la clase que buscábamos. Si escribe
erróneamente el nombre de la clase, Smalltalk despliega aquella clase cuyo nombre es más parecido al que
se escribió.




                                                                                                           Figura16. Cuadro de dialogo para localizar
                                                                                                                            clases
UPNFM
Es posible que no se conozca el nombre de la clase, pero se sabe alguna parte del
texto del mismo, de ser este el caso Smalltalk presenta una serie de opciones
para que verifiquemos y escojamos cual de ellas es. Veamos un ejemplo:
Necesitamos buscar una clase (supongamos que es SmallInteger), pero solo
recordamos que comienza con small. Al activar el cuadro de dialogo para
encontrar clases y escribir small, Smalltalk busca alguna clase que se llame small,
de no encontrarla, busca entonces alguna clase con nombre similar y si encuentra
más de alguna despliega una ventana con todas las clases que llevan ese texto en
su nombre y aparecería una ventan similar a la que se presenta en la figura 17.
Luego, debe verificarse que en la lista se encuentre la clase que buscábamos y
hacemos clic sobre ella, y tal como se menciona antes esta se despliega en el
panel de clases del navegador de clases.
                                                                                      Figura17. Cuadro de dialogo para las clases
                                                                                      encontradas
UPNFM




1. El entorno
6. Otras Herramientas disponibles
Identificar el protocolo de la clase
En el capítulo uno, se nos explico que el protocolo de un objeto consiste en todos aquellos métodos a que
puede responder dicho objeto. Squeak nos da varias formas para poder visualizar dicho protocolo, a
continuación explicaremos una de ellas. En el caso de que no sepamos cuales son los métodos a que
responde esa clase, hacemos clic con el botón central del Mouse el nombre de la clase y se muestra el
siguiente cuadro de dialogo (en este caso, para la clase smallInteger)


En este cuadro se muestran todo el protocolo de la clase en caso de que sean demasiados métodos para
poderlos mostrar en dicho cuadro, se visualiza la palabra more, hacemos clic sobre ella y podremos el
resto. Una vez que hemos localizado el método deseado, hacemos clic sobre el y en el panel de código del
navegador de clases podremos visualizar el código Smalltalk correspondiente a dicho método.




UPNFM




1. El entorno
6. Otras Herramientas disponibles
Jerarquía de los objetos
Con Squeak podemos conocer cual es la jerarquía de los objetos, es
decir conocer cual es la clase padre (recordemos que es Squeak, todo
objeto tiene un padre) o también si una existe alguna clase hija. El
Browser Jerárquico ofrece un formato diferente a la hora de presentar
las clases. En lugar de presentar dos paneles con las Categorías de
Clases y las Clases, este Browser muestra sólo un panel con un árbol
que indica la relación superclase-subclase. Para ello hacemos clic con
el botón central del mouse sobre la clase, seguidamente se visualizará
la ventana de menú y allí escogemos la opción browse Hierarchy
(navegador en la jerarquía de los objetos).

La figura 20 presenta la ventana de navegación de la jerarquía de
objetos. Esta ventana posee tres paneles, en la izquierda se
visualizan la jerarquía de la clase, para poder ver todos los ancestros
se hace clic sobre la barra vertical, del mismo panel. En este cuadro
tenemos la oportunidad de conocer las estructuras de cada clase que
está en la jerarquía, solo hay que seleccionarla por medio de un clic.



                                                                          Figura 20.
UPNFM




1. El entorno
6. Otras Herramientas disponibles
El halo de las ventanas
Cuando hacemos clic con el botón derecho sobre cualquier
ventana, incluyendo el escritorio de squeak, notaremos que
aparece una especie de halo alrededor de la ventana. Es
decir que, en torno al objeto, aparecen una serie de iconos
que lo circundan. Es lo que se conoce con el nombre del halo
del objeto y nos permite acceder a sus propiedades.

Por tanto, el halo es el conjunto de iconos coloreados que
rodean al objeto. Cada uno de éstos, permite una
manipulación distinta y permite cambiar ese objeto. Cada
uno lleva también un globo (con una leyenda) de ayuda
sobre cuál es su función (Ver figura 22). .




                                                                              Figura22. Halo de las Ventana




UPNFM



1. El entorno
7. Resumen
Resumen


Squeak es un Smalltalk moderno, de código abierto, escrito en sí mismo, muy portable y muy rápido. En la actualidad, Squeak
puede correr en plataformas diversas lo cual le permite al usuario desarrollar aplicaciones sin tener que hacer modificaciones a
su plataforma o su entorno habitual de trabajo.

Squeak es un entorno de programación gráfico orientado a objetos ideado como una herramienta válida para investigar, realizar
simulaciones o explorar destrezas. El Mundo de Squeak constituye una metáfora del mundo real donde los objetos interaccionan
entre sí y con el propio entorno.

Squeak permite acceder a algunos servicios Smalltalk a través de sus menús de sistema. El menú principal: Al menú del mundo
de Squeak, denominado a menudo 'menú principal', se puede llegar haciendo clic en el botón rojo mientras que el ratón apunta
al fondo de un proyecto. Desde este menú, se puede grabar la imagen de Squeak, cambiarla, grabarla en archivos con nombres
diferentes y finalizar la ejecución del Squeak en la computadora.




Hay varios mecanismos para la busqueda de una clase en Squeak:
1. Si sabe el nombre de la clase, escriba la misma en cualquier lugar (por ejemplo, en una ventana de trabajo Workspace),
haga doble clic sobre esta para seleccionarla y, a continuación, seleccione Explorar- Browse (Alt-B). Un Navegador del sistema
se abrirá con la clase correcta para seleccionarla.
2. Si usted tiene el Browser System abierto, puede encontrar una clase con el menú de botón amarillo en la lista de categorías
de clase mediante find class ..(f). Escriba el nombre de la clase (o incluso una parte de un nombre), y obtendrá una lista de
nombres para elegir.
3. Pero lo que si usted no tiene idea de lo que el nombre de la clase. Hay dos estrategias. En primer lugar, caminar por todas
las categorías en la lista de categorías de clase. No hay que muchas, por lo que no le llevará demasiado tiempo, pero le dará
una idea de los tipos de clases encuentra bajo cada tipo de categoría. La segunda estrategia es encontrar una instancia de la
clase de cosa que usted desee y examinarla. Cada objeto entiende el mensaje de inspeccionar. Si usted puede escribir una
expresión Smalltalk que es el tipo de cosa que usted desea, entonces puede inspeccionarlo. Escriba en la ventana de Transcript
lo que busca, selecciónelo y elija Inspeccionar (también Alt-I). Equivalente ha hacer seleccionar la opción inspeccionar del
menú.
UPNFM
En el caso que lo que usted busca es un método. Si usted recuerda parte del nombre de un método, pero no toda la cosa,
simplemente escriba la parte que recordar en el panel superior, luego seleccione Aceptar (Alt + S). La lista de la izquierda
muestra todos los nombres de los métodos (también llamados selectores) que contienen el nombre aceptado. Selección de uno
de los espectáculos todas las clases específicas que implementen las que el selector de la derecha. Elija uno de los elementos
de la lista de la derecha para abrir un navegador en ese método.

Si se desconoce si lo buscado es un método o clase, la forma más fácil de averiguar qué cosa es, si un método, o los nombres
de clase, o constructor globales, incluso construcciones como $c es seleccionar y elegir explicar desde el menú del botón
amarillo (hay que elegir más... en la parte inferior de la primera menú.) Lo que se consigue es una descripción de lo que ha
seleccionado y una pieza de código Smalltalk ejecutable que puede Ejecutar. El texto se inserta inmediatamente después del
ítem que usted ha marcado. La opción explicar mantiene el texto resaltado, de manera que pueda simplemente eliminar el
texto, o ejecutar el comando que abre un navegador. La siguiente manera más fácil es simplemente seleccionar el método y
elegir implementadotes- Implementors
UPNFM




Ejercicio final de la unidad



El entorno

Marque la respuesta adecuada a cada pregunta

 9
T.60810004.001.0    Es un archivo imprecindible de cualquier versión squeak.

                                                 T.60810004.002.0
                             Archivo Imagen
                             Es una herramienta para realizar aplicaciones en squeak.
                                                     T.60810004.003.0
                             Todas son correctas
                             Es el que envia el mensaje de explorar a cualquier objeto.
                                                      T.60810004.004.0
                             Explorador de clases
                             El código cr nos indica.
                                              T.60810004.005.0
                             Salto de línea
                             ¿Cuál será la salidad al editar la siguiente expresión en el workspace, Transcript show:
                             '(verificando salida, otra vez!)'?
                             (verificando salida, otra vez!)

A continuación aparece una serie de enunciados donde tendrá que seleccionar una ' V ' en caso de ser verdadero y una ' F'
si el enunciado es falso.

 8

        T.60810005.001.0    Squeak es un entorno de programación gráfico orientado a                    T.60810005.002.0
                                                                                            Verdadero
                            objetos ideados como una herramienta válida para investigar,
                            realizar o explorar destrezas.
                            La máquina virtual es un archivo que contiene todos los códigos       T.60810005.003.0
                                                                                            Falso
                            fuentes de texto que se han cambiado o se han añadido a la
                            versión original de squeak.
El archivo imagen es el que contiene todos los archivos binarios                T.60810005.004.0
                                                                           Verdadero
        de squeak.
        El workspace es una hoja de editor de texto en la que pueden                    T.60810005.005.0
                                                                           Verdadero
        introducir expresiones y luego pueden ser compiladas.
        Para trabajar en el worspace es necesario trabajar en modo                 T.60810005.006.0
                                                                           Falso
        inicial.
        El explorador de objetos mórficos es el que nos permite crear,             T.60810005.007.0
                                                                           Falso
        editar y eliminar clases y sus métodos.
        En el transcript podemos editar y evaluar expresiones.                          T.60810005.008.0
                                                                           Verdadero
        La expresión Transcript show en un workspace nos permite                    T.60810005.009.0
                                                                        Verdadero
        enviar mensajes a la ventana del transcript.
        El método tab indica comenzar una nueva linea en el transcript.       T.60810005.010.0
                                                                        Falso
        El método space indica imprimir en el Transcript un espacio en Verdadero
        blanco.

              Resultado            15 respuestas correctas de 15

              Correctas                                                 100,0%
UPNFM

Más contenido relacionado

Similar a El entorno de squeak hariel salazar programacion 1

Tarea 3 de tecnologia aplicada a la edc
Tarea 3 de tecnologia aplicada a la edcTarea 3 de tecnologia aplicada a la edc
Tarea 3 de tecnologia aplicada a la edcvaleria rosario
 
Tarea 3 de tecnologia aplicada a la edc
Tarea 3 de tecnologia aplicada a la edcTarea 3 de tecnologia aplicada a la edc
Tarea 3 de tecnologia aplicada a la edcvaleria rosario
 
Herramientas para la creación y publicación de contenidos didácticos.
Herramientas para la creación y publicación de contenidos didácticos.Herramientas para la creación y publicación de contenidos didácticos.
Herramientas para la creación y publicación de contenidos didácticos.Luis Ureña
 
Herrmientas de autor
Herrmientas de autorHerrmientas de autor
Herrmientas de autorJDGR91
 
Informática educativa
Informática educativaInformática educativa
Informática educativachristianpavon
 
Informática Educativa
Informática EducativaInformática Educativa
Informática Educativachristianpavon
 
Suse studio como herramienta docente en el área de Sistemas Operativos
Suse studio como herramienta docente en el área de Sistemas OperativosSuse studio como herramienta docente en el área de Sistemas Operativos
Suse studio como herramienta docente en el área de Sistemas OperativosLuis Lastra Cid
 
Algunos sistemas operativos_libres_para_la_educacion
Algunos sistemas operativos_libres_para_la_educacionAlgunos sistemas operativos_libres_para_la_educacion
Algunos sistemas operativos_libres_para_la_educacionadolfo ruiz peña
 
Presentacion canaima
Presentacion canaimaPresentacion canaima
Presentacion canaimaaleidavargas
 
Canaima: Revolución en la Educación del Siglo XXI
Canaima: Revolución en la Educación del Siglo XXICanaima: Revolución en la Educación del Siglo XXI
Canaima: Revolución en la Educación del Siglo XXIaleidavargas
 
Tarea 3 de tecnología aplicada a la educción
Tarea 3 de tecnología aplicada a la educciónTarea 3 de tecnología aplicada a la educción
Tarea 3 de tecnología aplicada a la educciónJean Carlos Lora
 
SUSE Studio como herramienta docente
SUSE Studio como herramienta docenteSUSE Studio como herramienta docente
SUSE Studio como herramienta docenteLuis Lastra Cid
 
Herramientas para la creación de contenidos y materiales didácticos
Herramientas para la creación de contenidos y materiales didácticosHerramientas para la creación de contenidos y materiales didácticos
Herramientas para la creación de contenidos y materiales didácticosMaria Perez
 
Herramientas para la creacion y publicacion de contenidos tarea 5
Herramientas para la creacion y publicacion de contenidos tarea 5Herramientas para la creacion y publicacion de contenidos tarea 5
Herramientas para la creacion y publicacion de contenidos tarea 5Cristhian Bonifacio
 
Curso escalada (laura m arzo)
Curso escalada (laura m arzo)Curso escalada (laura m arzo)
Curso escalada (laura m arzo)LauraMarzo
 

Similar a El entorno de squeak hariel salazar programacion 1 (20)

Taller netbooks parte 2
Taller netbooks parte 2Taller netbooks parte 2
Taller netbooks parte 2
 
Tarea 3 de tecnologia aplicada a la edc
Tarea 3 de tecnologia aplicada a la edcTarea 3 de tecnologia aplicada a la edc
Tarea 3 de tecnologia aplicada a la edc
 
Tarea 3 de tecnologia aplicada a la edc
Tarea 3 de tecnologia aplicada a la edcTarea 3 de tecnologia aplicada a la edc
Tarea 3 de tecnologia aplicada a la edc
 
Herramientas para la creación y publicación de contenidos didácticos.
Herramientas para la creación y publicación de contenidos didácticos.Herramientas para la creación y publicación de contenidos didácticos.
Herramientas para la creación y publicación de contenidos didácticos.
 
Herrmientas de autor
Herrmientas de autorHerrmientas de autor
Herrmientas de autor
 
Informática educativa
Informática educativaInformática educativa
Informática educativa
 
Informática Educativa
Informática EducativaInformática Educativa
Informática Educativa
 
Suse studio como herramienta docente en el área de Sistemas Operativos
Suse studio como herramienta docente en el área de Sistemas OperativosSuse studio como herramienta docente en el área de Sistemas Operativos
Suse studio como herramienta docente en el área de Sistemas Operativos
 
Tarea 5
Tarea 5Tarea 5
Tarea 5
 
Tarea 5
Tarea 5Tarea 5
Tarea 5
 
Algunos sistemas operativos_libres_para_la_educacion
Algunos sistemas operativos_libres_para_la_educacionAlgunos sistemas operativos_libres_para_la_educacion
Algunos sistemas operativos_libres_para_la_educacion
 
Trabajo grupal y la Web 2.0
Trabajo grupal y la Web 2.0 Trabajo grupal y la Web 2.0
Trabajo grupal y la Web 2.0
 
Presentacion canaima
Presentacion canaimaPresentacion canaima
Presentacion canaima
 
Canaima: Revolución en la Educación del Siglo XXI
Canaima: Revolución en la Educación del Siglo XXICanaima: Revolución en la Educación del Siglo XXI
Canaima: Revolución en la Educación del Siglo XXI
 
Taller netbooks parte 2
Taller netbooks parte 2 Taller netbooks parte 2
Taller netbooks parte 2
 
Tarea 3 de tecnología aplicada a la educción
Tarea 3 de tecnología aplicada a la educciónTarea 3 de tecnología aplicada a la educción
Tarea 3 de tecnología aplicada a la educción
 
SUSE Studio como herramienta docente
SUSE Studio como herramienta docenteSUSE Studio como herramienta docente
SUSE Studio como herramienta docente
 
Herramientas para la creación de contenidos y materiales didácticos
Herramientas para la creación de contenidos y materiales didácticosHerramientas para la creación de contenidos y materiales didácticos
Herramientas para la creación de contenidos y materiales didácticos
 
Herramientas para la creacion y publicacion de contenidos tarea 5
Herramientas para la creacion y publicacion de contenidos tarea 5Herramientas para la creacion y publicacion de contenidos tarea 5
Herramientas para la creacion y publicacion de contenidos tarea 5
 
Curso escalada (laura m arzo)
Curso escalada (laura m arzo)Curso escalada (laura m arzo)
Curso escalada (laura m arzo)
 

Último

30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicaFlor Idalia Espinoza Ortega
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscaeliseo91
 
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024AndreRiva2
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 

Último (20)

30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamica
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fisca
 
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 

El entorno de squeak hariel salazar programacion 1

  • 1. Introducción a la programación orientada a objetos: squeak, el entorno 1. El entorno Índice 1. Introducción 2. Consideraciones en la selección del entrono Squeak 3. Instalación del Squeak 4. Creando Proyectos 5. Ventanas de trabajo 6. Otras Herramientas disponibles 7. Resumen 8. Ejercicios 1. Ejercicios Ejercicio final de la unidad
  • 2. 1. El entorno 1. Introducción Introducción El propósito de este capítulo es interactuar con el ambiente de Squeak y sus principales componentes. Se mostrará las funcionalidades de cada una de estas y como nos facilita el trabajo en la edición de código en la construcción de programas. El ambiente de Smalltalk es muy amigable y la mayoría de sus implementaciones poseen un entorno de interacción muy diferente al entorno de desarrollo típico de otras tecnologías conocidas, como las de Borland Software Corporation o Microsoft Visual Studio .Net o Eclipse. El entorno o ambiente Smalltalk es primordialmente gráfico y funciona como un sistema en tiempo de ejecución que integra varias herramientas de programación, utilidades multimedia, interfaces para ejecutar código no nativo a Smalltalk y servicios del sistema operativo. UPNFM
  • 3. Estas posibilidades, que han influido en la metodología de trabajo y concepción de la programación, se traducen en la tendencia a considerar a Smalltalk más que un simple lenguaje de programación. La forma de programar en Smalltalk no consiste en el ciclo típico de las tecnologías tradicionales: Arrancar un editor de texto, compilar, ejecutar y terminar la aplicación. En Smalltalk se manipula el entorno mismo, comúnmente mediante el Navegador del Sistema . En el presente capítulo estudiaremos como interactuar con la interfaz de Squeak. Este capítulo presenta los elementos requeridos para el manejo del entorno de programación, existen a su vez documentos que ilustran como utilizar el Squeak como un entorno ideal para el desarrollo de actividades y aplicaciones educativas. Si bien es verdad que se utiliza de una forma muy distinta a otras aplicaciones, no resulta complicado acostumbrarse a su forma de, uso, sin embargo, este tipo de uso no será abordado, sino el lenguaje en el cual esas otras aplicaciones son desarrolladas.. UPNFM 1. El entorno 2. Consideraciones en la selección del entrono Squeak Consideraciones en la selección del entrono Squeak
  • 4. Los formadores interesados en la enseñanza asistida por computadora estamos siempre a la búsqueda de la herramienta definitiva que les permita abarcar todas las disciplinas y todas las asignaturas desde un mismo entorno coherente y homogéneo. En este sentido, Squeak ofrece un entorno casi perfecto, donde tanto un profesor de matemáticas,física, como uno idioma español o de música, puede desarrollar proyectos y juegos que pueden convertir temas, en principio aburridos para el alumno, en divertidos e interactivos. Al igual que el cambio del paradigma de profesor como dispensador de conocimientos a profesor como guía es difícil de asumir por el profesional de la enseñanza que lleva toda la vida encasillado en la primera, el cambio de la metodología de enseñanza basada en herramientas pasivas (libros, vídeos, etc.) por la enseñanza basada en herramientas interactivas, sobre todo cuando se tratan de aplicaciones con tanta variedad como Squeak, el primer obstáculo a vencer es precisamente cambiar la actitud del profesor. . UPNFM
  • 5. Por supuesto que la curva de aprendizaje de Squeak puede ser un poco empinada debido a la gran variedad de opciones y la potencia que ofrece. Pero la filosofìa de Squeak es precisamente descargar al profesor a medio y largo plazo de la tarea de preparar proyectos, permitiendo delegar en los alumnos la creación de material, lo que permite a su vez al profesor tomar el rol de alguien que supervisa el autoaprendizaje de los estudiantes. UPNFM
  • 6. Sueak es un entorno de programación gráfico orientado a objetos ideado como una herramienta válida para investigar, realizar simulaciones o explorar destrezas. Constituye un campo abierto a la imaginación y se presta de forma excepcional como herramienta capaz de facilitar el descubrimiento desde muy tempranas edades. En el aula, Squeak puede ser usado como un programa más, destinado a realizar aplicaciones para que el alumno interactúe con ellas o como herramienta para elaborar presentaciones. En ambos casos, el papel que desempeña el alumno es la de mero consumidor, adoptando una actitud más o menos activa en función del grado de libertad que se le ofrezca. Desde este punto de vista, no aporta mucho más que el resto de buena parte del denominado software educativo. UPNFM
  • 7. El modelo replica el de la enseñanza tradicional en la que el alumno recibe información y/o realiza los ejercicios previamente programados por el profesor. De este modo, los alumnos pueden -en un caso- recibir disertaciones con apoyo audiovisual y/o -en otro caso- resolver juegos tipo trivial, rompecabezas, de memoria, etec. que les ayuden a recordar contenidos educativos. Un segundo nivel de profundización en el uso de Squeak en el aula viene dado por la posibilidad de que sean los propios alumnos quienes construyan aplicaciones guiadas bajo las directrices y asesoramiento del profesor. Este modo de utilizar el programa supone un mayor grado de libertad, es bien acogido por los alumnos y se presta a estimular su creatividad. UPNFM
  • 8. El tercer grado de uso de Squeak que proponemos, y que se aproxima más a la filosofía en la que fué creado, supone un cambio radical de los roles desempeñados por profesor y alumno. Se trataría de que los profesores fuéramos capaces de realizar propuestas estimulantes para que sean los propios alumnos quienes proponga soluciones y realicen proyectos que les permitan experimentar sus ideas de una forma lúdica y amena. De este modo, el alumno pasaría de simple consumidor, más o menos pasivo, a usuario de una herramienta que estimula el auto- descubrimiento. La labor que el profesor desempeñaría en este marco sería adoptar el papel de guía y estímulo de la tarea educativa. UPNFM En último término, Squeak es, en definitiva, una herramienta concebida y desarrollada -al fin y al cabo- para que sean los propios alumnos, y no tanto los profesores, los que puedan experimentar, practicar y jugar; un laboratorio virtual en el que puedan dar riendas sueltas a su originalidad proporcionándoles una plataforma válida para aprender creando. UPNFM 1. El entorno 3. Instalación del Squeak
  • 9. Squeak: una implementaciòn de Smalltalk Squeak, es una implementación de Smalltalk, originalmente fue patrocinado por Apple Computer (1995), Posteriormente Wald Disney Imagineering continuo con ese patrocinio. Es el Smalltalk que suscita mayor interés, particularmente porque algunos de sus integrantes originales en Xerox PARC (Alan Key y Daniel Ingalls) todavía participan en este proyecto. Una de los novedades de Squeak, radica en el nuevo framework llamado Morpfic. Como herramienta multiplataforma, Squeak funciona hasta en veinte sistemas operativos diferentes. Squeak corre sobre una Máquina Virtual. La Máquina Virtual (Virtual Machine) es una pieza de software que convierte nuestro ordenador, con un sistema operativo en particular, en una máquina Squeak. Hay Máquinas Virtuales de Squeak para Windows, Apple Macintosh, Linux (todas las ediciones), iPaq y un largo etcétera. Los archivos y el proceso de instalación, en cada caso, difieren en función del sistema operativo sobre el que se realice. UPNFM 1. El entorno 3. Instalación del Squeak Squeak: su arquitectura. Una de las mayores ventajas que posee Squeak estriba en que existen maquinas virtuales para una gran cantidad de microprocesadores y sistemas operativos. Al realizar la instalación de Squeak se crea un directorio con, al menos, cuatro archivos, tres de los cuales son iguales para cualquier sistema operativo: UPNFM
  • 10. • La máquina virtual (VM) de Squeak : Archivo ejecutable específico para cada sistema operativo. Su trabajo consiste en convertir los códigos de Squeak en códigos de la máquina en la que se está ejecutando. • Archivo de imagen (Image): Archivo común a todos los sistemas operativos, contiene todos los archivos binarios de Squeak. • Archivo de fuentes (Sources): Archivo común a todos los sistemas operativos, contiene todos los códigos fuentes de texto originales de Squeak. • Archivo de cambios (Changes): Archivo común a todos los sistemas operativos, contiene todos los códigos fuentes de texto que se han cambiado o se han añadido a la versión original de Squeak . Los cambios pertenecen a la imagen del mismo nombre. De modo que, si guardamos una imagen con otro nombre, se creará un nuevo archivo Changes. UPNFM
  • 11. Los archivos imprescindibles presentes en cualquier versión son el archivo Squeak (Máquina Virtual) y el archivo Image. Existe una Máquina Virtual para cada sistema operativo. La Imagen es común a todos ellos y corre sobre la Máquina Virtual. Esto es, el mismo archivo de Imagen funciona en las plataformas Linux, Mac, Windows, etc. siempre que se use la Máquina Virtual (Virtual Machine) apropiada para cada plataforma. El código fuente del sistema se almacena en los archivos Sources y Changes. Al terminar la instalación dispondremos de un programa totalmente operativo. Para comenzar a trabajar con él, en Windows, bastará con localizarlo en Inicio > Todos los programas y pulsar sobre él. En Linux, lo encontraremos en /home/usuario/Squeak . El archivo ejecutable es SqueakAtenex.image. UPNFM
  • 12. continuación se describe la creación y uso de estos archivos de imagen y changes: • Cuando se confirma la modificación o creación de un método, este se traduce a bytecodes por la única instancia de la clase Compilador y estos nuevos bytecodes se agregan a la imagen, posteriormente estos cambios son agregados al archivo de cambios y al paquete al que corresponde el método. Esta es una de las razones por las cuales es necesario guardar la imagen, ya sea manteniéndola con el mismo nombre o bien guardarla con un nombre diferente • La ejecución de código se realiza traduciendo los bytecodes a código de maquina (código nativo) por un compilador JIT, llamado Maquina virtual (VM). Esta traducción se realizan en un tiempo imperceptible para el programador. • Para compartir código entre distintas imágenes y para distintos usuarios. Cada cambio que hacemos en el ambiente Smalltalk, sea este de configuración, por agregar un nuevo paquete o la creación de nuevas clases a partir de las ya existentes, extiende a la imagen y al guardarla, esta crece o cambia. Estos cambios se almacenan y pueden ser distribuidos a diferentes usuarios o a otras plataformas (Linux, Os o Windows). Esta es una de las razones por la cual a la programación con Smalltalk se le denomina programación por extensión. UPNFM 1. El entorno 3. Instalación del Squeak Squeak: como obtenerlo Squeak es una herramienta multimedia y multiplataforma; multimedia por la gran facilidad que presenta para incorporar textos, sonidos, imágenes y vídeo, y multiplataforma porque funciona bajo diferentes sistemas operativos. Por otra parte, y aunque para los puristas no pueda catalogarse como software libre, las cláusulas de la licencia de Apple permiten su uso casi como si se tratara de Software libre. La licencia Squeak no es una licencia de Software Libre porque obliga a todos los usuarios en cualquier lugar del mundo a obedecer las leyes de control de exportaciones de los EE.UU. Aplicada a los tipos de letra, no permite su modificación e incluye un requisito para que los usuarios indemnicen al desarrollador. Por estas razones no figura en el directorio de Software Libre de la FSF/UNESCO (Fundación de Software Libre/UNESCO) que cataloga el Software Libre que funciona bajo sistemas operativos libres -especialmente bajo el sistema operativo GNU y sus GNU/Linux variantes.
  • 13. UPNFM Squeak es una herramienta gratuita que como se menciono antes, está compuesto de una VM (máquina virtual) específica del sistema operativo, donde se ejecuta y una imagen. La imagen es el lugar dónde los objetos viven, objetos del ambiente como el compilador, el depurador y los objetos del dominio de la solución. Las imágenes son intercambiables entre máquinas virtuales, esto significa, entre sistemas operativos. Una Imagen en Squeak es un archivo que es una copia casi exacta del contenido de la memoria de Squeak con todos los objetos y todas las definiciones de sus clases. Es importante conocer que en una imagen no se conservan los objetos que dependen de recursos del sistema operativo, tales como una conexión de red o un archivo de vídeo. UPNFM
  • 14. El ambiente de desarrollo completo, para cualquiera de los sistemas operativos soportados, puede ser descargado de diversos lugares, entre ellos: • http://www.squeak.org. • http://swiki.agro.uba.ar/small_land/241 • http://squeak.educarex.es/Squeakpolis/11 Existe una versión en CD-live que se puede descargar del sitio oficial disponible en la direccion: http://squeak.educarex.es/Squeakpolis/11 Los ejemplos que se muestran en este libro se probaron con la imagen de educarex. UPNFM 1. El entorno 3. Instalación del Squeak . El mundo de Squeak. Existen muchas herramientas más, pero básicamente se trabajará con las antes descritas, particularmente con espacios de trabajo, el navegador de clases y el inspector, aunque eso va depender del tipo de aplicación que se este desarrollando. Cuando abrimos Squeak nos encontramos con un escritorio similar al de la figura. Es lo que llamamos el Mundo de Squeak, el lugar donde ocurre todo. No existen modos diferenciados de trabajo en Squeak (Edición vs. Presentación) como en otros entornos, sino que toda la acción se desarrolla en modo ejecución La figura 1 presenta la pantalla de inicio o mundo de Squeak. En el mundo podemos identificar una barra de título, una barra de Menú y un área de trabajo. En la barra de menú se encuentran las siguientes opciones de Menú:
  • 15. Figura 1. El mundo de Squeak
  • 16. Menú Squeak (figura 2a): En este menú se encuentran las opciones de guardar y salir. Cada vez que cerremos squeak, se desplegará un mensaje solicitando información acerca de si se desea o no guardar la imagen. Es mediante este menú que podemos guardar una imagen con diferente nombre o salir sin guardar los cambios realizados. Esto nos indica que al volver a ingresar a Squeak, este se visualizara y estará con la configuración anterior a la actual. UPNFM Menú Proyecto (figura 2b.) En este menú, se puede escoger algún proyecto en particular (buscar proyecto) o navegar por los mismos(proyecto anterior, ir a proyecto, proyecto siguiente), crear nuevos proyectos, mostrar jerarquía de objetos(esta opción permite ver la jerarquía de objetos que tenemos en pantalla), etc. UPNFM
  • 17. Cuando se trabaja en modo experto (ver figura 2c.) se despliega en Proyecto la opción Abrir, en la que nos permite visualizar en pantalla alguna herramientas con las cuales interactuaremos: Browser, Worksapce, Transcript, etc.). Menú Configuración (figura 2c.) permite cambiar la apariencia del entorno. En este menú podemos cambiar el idioma del Squeak, incluye -de momento- inglés, alemán y español. La opción de actualización te permite acceder a través de Internet a los cambios y actualizaciones del sistema. Pero lo más importante es que podemos cambiar el modo de trabajo (de modo novato a experto). Al iniciar cambiaremos a modo experto. Desde allí tenemos acceso a las ventanas de trabajo. El menú Trucos incluye utilidades para el manejo ágil de la herramienta (figura 2d.). Las funciones de la operación trucos son: • traer objetos a la pantalla: Muestra todos los objetos que se encuentran fuera de las coordenadas visibles del Mundo. • mostrar los objetos ocultos: Muestra los objetos ocultos. • mostar todos los visores: Muestra todos los visores de aquellos objetos que lo posean. • Ocultar todos los visores: Oculta los visores de la pantalla. • borrar trazos de tortuga: Elimina los restos de lápiz trazados por los objetos con la opción lápiz abajo activada como “verdadero”. proporciona acceso a la manipulación y visualización de algunos objetos.
  • 18. Los botones de navegación permiten realizar las acciones más frecuentes del programa., entre ellos tenemos: • Navegador de proyectos: Las flechas de los tres iconos centrales del panel de Squeak se utilizan para moverse entre proyectos recientemente abiertos (proyecto anterior-proyecto siguiente). El botón central muestra un listado de proyectos para poder elegir el que se desee. • Crear un proyecto nuevo: Crea un nuevo proyecto y sitúa en pantalla una miniatura del proyecto vacío nombrado temporalmente como Sin nombre. • Buscar un proyecto: Navegador de archivos para localizar y abrir proyectos ubicados en nuestro equipo o en diferentes repositorios de proyectos. • Publicar: Guarda el proyecto en el lugar especificado y en la carpeta Squeaklets del disco del usuario. UPNFM
  • 19. Las herramientas básicas facilitan la importación de proyectos y objetos, permiten crear objetos, ayudan a localizar imágenes y proporcionan una galería de objetos predefinidos para incorporarlos a nuestros proyectos. Entre ellos se identifican: • Importar archivo: Navegador de archivos que permite buscar y utilizar archivos de diferente tipo (imágenes, música, gráficos, ...) • Explorador de imágenes: Ayuda en la búsqueda de imágenes para incorporar a los proyectos. • Pintor: Sencillo programa de dibujo que permite crear objetos para incorporar a los proyectos. • Catálogo de objetos: Contiene la biblioteca de objetos predeterminados de Squeak, agrupados inicialmente por categorías, permite ordenarlos alfabéticamente y realizar búsquedas. Los botones auxiliares son un conjunto de iconos, que no responde aparentemente a un criterio uniforme, incluye botones útiles a la hora de trabajar con proyectos • Reloj digital: Muestra la hora del sistema. • Cambia a pantalla completa: Muestra el Mundo de Squeak a plena pantalla sin los paneles de Squeak y del sistema operativo. Alternativamente restaura la pantalla a su estado inicial. • Mostrar jerarquía de objetos: Muestra la jerarquía de objetos del proyecto abierto, incluido el Mundo. Cuando se selecciona un objeto del Mundo se muestra una miniatura en su lugar, que da acceso a un menú de propiedades del mismo. UPNFM
  • 20. Ya que este texto es para la programación en Smalltalk, la opción experto del menú configuración y la opción abrir en el menú proyecto (que se activará al cambiar a modo experto) serán las opciones con las que se interactuará permanentemente. Las otras herramientas que se observan en el squeak forman parte de la herramienta de autor, por medio de la cual podemos desarrollar aplicaciones multimedia y aplicaciones para el campo educativo. Este conocimiento que esta fuera del alcance de este libro y se deja para estudios posteriores. UPNFM Squeak como todo Smalltalk tiene un entorno de desarrollo con ciertas herramientas para desarrollar aplicaciones, entre ellas: • El espacio de trabajo (Workspace), • El explorador de clases (System Browser), • El Inspector, • El explorador de panel de paquetes (Package Browser) y • En depurador (Debugger). Otras herramientas que existen en casi todos los Smalltalkt. son: • un Creador de vistas, • un Navegador de protocolos, y • un buscador de selectores y de referencias a selectores (generalmente integrado al Navegador de Clases).
  • 21. El mundo Squeak es un objeto gráfico que contiene a todos los demás objetos se llama Mundo. El Mundo de Squeak es similar al escritorio de los sistemas operativos actuales, pero respetando la regla básica de Smalltalk: todo es un objeto. Por tanto, el Mundo es un objeto y disponemos de una variable global llamada World para acceder a él. UPNFM 1. El entorno 3. Instalación del Squeak Trabajando en el modo experto
  • 22. Para realizar las tareas y pruebas de programación con Squeak, inicialmente se usarán tres ventanas: el navegador de clases (System Browser), el espacio de trabajo (Workspace) y el Transcript. Estos se activan, dando clic en proyecto y luego en abrir, aparece la siguiente ventana. . El entorno 4. Creando Proyectos Creando Proyectos
  • 23. Los botones del panel nos servirán, inicialmente, para comenzar a trabajar con Squeak . Para crear un proyecto nuevo pulsaremos sobre el icono Crear un proyecto nuevo del módulo de iconos Herramientas de navegación del Panel. La unidad de trabajo en Squeak son los proyectos. Para comenzar a trabajar con Squeak deberemos aprender a crear, renombrar, guardar (publicar) y recuperar estos archivos sobre los que crearemos nuestras aplicaciones. UPNFM 1. El entorno 4. Creando Proyectos Crear un proyecto nuevo Inmediatamente, observaremos que en el Mundo de Squeak aparece una pequeña ventana con el título Sin nombre. De esta forma tan simple hemos creado nuestro primer proyecto que, por el momento, está vacío. Antes de entrar en él y comenzar a trabajar resulta interesante cambiarle el nombre. Para ello, pulsaremos sobre el título Sin nombre que aparece en la parte inferior de la ventana. Al hacerlo, el texto aparecerá resaltado sobre un fondo amarillo y nos permitirá teclear un nuevo nombre. Es posible que si pulsamos incorrectamente, en lugar de resaltar el nombre, lo que ocurra es que entremos dentro del proyecto. Esto se comprueba porque se produce un efecto visual que nos lleva a una pantalla en blanco. En tal caso, deberemos regresar hacia atrás pulsando el botón proyecto anterior en la zona central del panel. Escribiremos Proyecto 1 y pulsaremos sobre la tecla Intro o Enter . Observa
  • 24. que el nuevo nombre se incorpora al panel superior de la ventana. UPNFM 1. El entorno 4. Creando Proyectos Publicar proyectos Para concluir el ejercicio anterior guardaremos nuestro trabajo. En primer lugar deberemos ingresar en el Proyecto 1 haciendo clic en su miniatura y pulsando sobre el botón Publicar ublicar proyectos este proyecto, que encontrarás en el primer grupo de botones del panel de Squeak (Herramientas de Navegación). Por publicar se entiende en Squeak la acción destinada a guardar el trabajo realizado en un archivo con la extensión pr. Inmediatamente se abrirá una ventana que incorpora el nombre del proyecto y nos permite modificar y añadir datos de identificación del mismo. A excepción del campo Nombre, el cual ya aparece completado, el resto de las entradas no son obligatorias y podemos dejarlas en blanco.continuar UPNFM . El entorno 5. Ventanas de trabajo Ventanas de trabajo
  • 25. Las ventanas y los menús desplegables nos dan acceso a servicios que nos permiten manipular el sistema y (sólo en Morphic) pestañas (flaps). La activación de ventadas de contenedores de texto estándar de Squeak, incluyendo navegadores de sistema, espacios de trabajo, listas de archivos y transcripciones, permiten acceder a utilidades para manipular texto y para acceder a otras funcionalidades del sistema. A muchas de estas facilidades se puede llegar usando los menús de botón rojo, pero a muchas de ellas es más conveniente acceder usando secuencias de teclas especiales. Por supuesto, cada aplicación en particular puede usar algunas, todas o ninguna de estas combinaciones. 1. El entorno 5. Ventanas de trabajo El espacio de trabajo El Workspace o espacio de trabajo es básicamente una hoja de editor de texto en la cual se pueden introducir expresiones que luego pueden ser enviadas al compilador, es decir, un espacio en el que podemos editar y ejecutar código Smalltalk. El Workspace (figura 5) es el espacio en el que probamos los diferentes tipos de estructuras sintácticas del lenguaje. Figura 5. la ventan del Workspace
  • 26. UPNFM Al hacer clic con el botón central del mause se muestra el menú del workspace (figura 6.) En este menú se encuentran las opciones de ejecutarlo e imprimirlo, que son instrucciones para realizar la ejecución del código Smalltalk. Para ejecutar líneas de código, selecciónela y luego active el menú del workspace o la combinación de teclas Alt + d para evalúa la selección o expresión en línea. Si no existieran errores de sintaxis, se genera código que puede ser evaluado por la máquina virtual. NOTA: Al no tener botón central el mause se debe hacer clic en los dos botones del mause al mismo tiempo. Frecuentemente queremos ver el resultado de la evaluación de una expresión. Para ello se utiliza la opción imprimirlo (o la combinación de teclas Alt + P). En este caso se compila y evalúa la expresión seleccionada al igual que ejecutarlo, con la diferencia de que el resultado se imprime inmediatamente después de la expresión o selección. Abra un Workspace . Una vez abierto digite lo siguiente: 3 + 4. UPNFM
  • 27. En el espacio de trabajo, puede escribir código, selecciónelo y luego ejecútelo e imprima el resultado. Si selecciona la opción ejecutarlo, se envía el mensaje de realizar la suma pero el resultado no se visualiza, para hacerlo escoja del menú del Workspace la opción imprímirlo. Al ejecutarse la operación Imprimalo (ALT + P) o El resultado: la expresión es evaluada y el objeto resultante se imprime, es decir, el mensaje + 4 es enviado al entero 3. El selector es + y el argumento es 4. El resultado es devuelto es el entero 7. En ocasiones se requiere de un mecanismo para hacer mas fácil la ejecución de comandos dentro del Workspace, la tabla a continuación presenta los “atajos de teclado” para trabajar de forma más rápida dentro del Workspace. UPNFM Las teclas de las letras mayúsculas se escriben presionando simultáneamente Shift-Alt y la tecla indicada o Ctrl y la tecla. Si se presionan otras teclas especiales se indicará mediante corchetes. Teclas Descripción Notas z deshacer - x cortar - c copiar - v pegar - a seleccionar todo - D Duplicar. Pegar la selección actual sobre la anterior, si no se superponen. 1 e Intercambiar. Intercambia los contenidos de la selección actual con los de la selección anterior 1 y Intercambiar. Si no se ha seleccionado nada, los caracteres se sitúan en cualquiera de los lados del cursor y se -
  • 28. adelanta este. Si la selección tiene dos caracteres, se intercambian y el cursor avanza. w Borra la palabra precedente. - Notas: Estos comandos son inusuales. No sólo afectan a la selección actual, sino también a la inmediatamente anterior. UPNFM Entrada de datos al programa Smalltalk Teclas Descripción q Intenta completar la selección con un seleccionador Smalltalk válido y ya definido. Reconocedor. Invoca al reconocedor de caracteres glyph de Squeak. (finaliza el reconocimiento saliendo con el ratón r de la ventana) F Inserta 'ifFalse:' T Inserta 'ifTrue:' V Copia las iniciales del autor, la fecha y la hora. L Mueva la selección o la línea un tabulador a la izquierda (lo contrario de indentar). Indenta (Mueva la selección o la línea un tabulador a la derecha) R [Ctl-return] Inserta una línea (return/intro) seguido de tantos tabuladores como hubiera en la línea anterior. [shift-delete] Borra hacia delante. O borra desde el punto de inserción hasta el principio de la palabra. UPNFM
  • 29. Navegando e inspeccionando Tecla Descripción Notas b Navega 'it' (donde 'it' es el nombre de una clase). Abre un nuevo navegador. 1 d Ejecuta 'it' (donde 'it' es una expresión Squeak) 1 i Inspecciona 'it': evalúa 'it' y abre un inspector de resultados (donde 'it' es una expresión Squeak). 1 m Abre un navegador de métodos implementando 'it' (donde 'it' es un mensaje seleccionador) 1,2 n Abre un navegador de métodos que envía 'it' (donde 'it' es un mensaje seleccionador) 1,2 p Imprime 'it'. Evalúa 'it' e insertar los resultados inmediatamente después de 'it' (donde 'it' es un expresión Smalltalk) 1 B Hace que el navegador que se está utilizando navegue 'it' (donde 'it' en el nombre de una clase) 1 E Abre un navegador de métodos cuya fuente contiene cadenas con 'it' como subcadenas. 1 I Abre el explorador de objetos en 'it' (donde 'it' es una expresión) 1 N Abre un navegador de métodos usando 'it' (donde 'it' es un identificador o el nombre de una clase). 1 O Abre un navegador de un solo mensaje (en un seleccionador de listas) 1 W Abre un navegador de métodos cuyo seleccionador incluye 'it' como subcadena. 1 UPNFM
  • 30. 1. El entorno 5. Ventanas de trabajo El transcrip El código del worksape no se puede imprimir de vuelta en el espacio de trabajo, pero hay otra ventana, el transcript donde se puede imprimir. El Transcript es como un Workspace, con la excepción que eventualmente puede mostrar mensajes generados dentro del ambiente. Normalmente, el Transcript es utilizado para mostrar advertencias o información adicional. Al hacer clic con el botón central del mouse aparece el mismo menú del Workspace. Esto nos indica que podemos editar y evaluar expresiones como si fuera un Workspace. Otra particularidad que posee el Transcript es que almacena los últimos diez mil caracteres insertados. En la figura 8 se visualiza el Transcript. Como se indicó, esta ventana es un objeto que esta referenciado por la variable global Transcript. Las variables globales pueden ser accedidas desde cualquier parte de la imagen. El mensaje más utilizado por Transcript es show: argumento, cuando el objeto referenciado por la variable global Transcript recibe el mensaje show: y el argumento se imprime en el Transcript. Por ejemplo seleccione y evalúe la siguiente expresión en un Workspace:
  • 31. 1. El entorno 5. Ventanas de trabajo El explorador de clases (System Browser) Es la interfaz de usuario primaria para la edición de código. Un explorador en Squeak (System Browser) nos permite crear, editar y eliminar clases y sus métodos. Estos conforman una biblioteca organizada jerárquicamente. Esta biblioteca se puede visualizar y revisar su estructura y código mediante el explorador. En este navegador, es posible realizar las siguientes tareas: • Crear y editar código fuente. • Evaluar el código línea a línea. • Dar formato a los métodos en código fuente. • Dar o visualizar una explicación del código. • Guardar clases o métodos y organizarlos en categorías • Encontrar emisores, receptores y mensajes que puede enviar un método. • Visualizar la herencia de clases. El explorador de clases (System Browser) permite al usuario revisar la interfaz del mensaje de cualquier objeto en la imagen y modificarla si se requiere. Para abrir, el explorador, seleccione en la barra de menú el menú proyecto, luego haga clic en la opción abrir y en el menú seleccione la opción explorador o presione la combinación de teclas Alt + b (figura 9). Se pueden tener varios browser abierto a la vez, pero solamente se necesita uno. UPNFM
  • 32. El explorador está constituido por una ventana y está formado por cinco paneles y dos botones marcados con instance y class: un panel para las categorías de clases, un panel para las clases, otro para la categoría de métodos, otro para los métodos y por último un panel para la edición clases y métodos. De izquierda a derecha, los paneles superiores son: • Categorías de clase no significa nada en términos del lenguaje Squeak. Aquí se encuentran los términos bajo los cuales se agrupan las clases. • Clases son lo más importante para Squeak.? Son artefactos que crean instancias, sirven como modelo para sus objetos. Piense en una clase como una fábrica de objetos. Una clase crea objetos de un tipo particular, con las características de fábrica en particular. Según la categoría que tengamos seleccionada, aparecerán en este panel las clases que se agrupen en dicha categoría. En este punto podemos verificar que la existencia de variables de clase como de instancia (conceptos que estudiaremos un poco más adelante). Los botones de instancia/clase en el browser permite cambiar entre los conjuntos de métodos asociados con una clase. Por lo general, se suele tener el botón de instancia seleccionado. UPNFM
  • 33. • Categorías de Métodos (también llamados protocolos) agrupa los métodos de grupo en tipos: para imprimir, de acceso a datos en el objeto, de iteración, y así sucesivamente. • Los métodos que son las unidades de código Smalltalk ejecutable. • El Panel de edición de código: es lugar, donde podemos visualizar el código de cada clases que existe la biblioteca de clases de Smalltalk así como sus métodos. Por lo general, iniciamos la programación en Squeak creando una nueva categoría de clase. Con el ratón sobre el panel de la categoría de clase, se pulse el botón central de este. Se obtiene un menú y se selecciona mediante un clic, la opción crear una nueva categoría de clase (add item). Se escribe un nombre, por ejemplo PruebasProgra1 y se da clic en aceptar. UPNFM Los Smalltalkers iniciales, para evitar confusiones acerca de cuál botón del Mouse presionar, crearon una terminología en la que definieron un conjunto de términos independientemente de la posición del botón del ratón. El botón del puntero del ratón lo llaman el botón "rojo", el botón central del ratón se llama el "botón amarillo" y el botón del ratón el extremo derecho se llama el "botón azul". El botón rojo se utiliza siempre para señalar, el botón amarillo para activar un menú contextual que depende de donde se está señalando. El botón azul normalmente trae el menú para la manipulación de la ventana en la MVC y se utiliza para la selección de objetos gráficos en Morphic .
  • 34. Cuando se selecciona la categoría de clase PruebasProgra1(la creada anteriormente), el navegador muestra una plantilla para crear una nueva clase (Figura 10). Simplemente seleccionamos una categoría de clase, y la plantilla se proporcionará para que usted la complete. Hay algunos puntos que debemos recordar respecto al buscador de clases. • Squeak usa categorías para agrupar las Clases según su temática. • Las clases tienen métodos de instancia y de clase. • Los métodos también están agrupados en categorías. • Cada objeto es una instancia de una Clase. El código Smalltalk se escribe en los métodos • Cada panel del browser tiene un menú propio que se invoca haciendo clic con el botón derecho. • Para agregar una nueva categoría de Clases, haga clic con el botón central para abrir el menú y elegir add ítem... para agregar una nueva categoría. UPNFM 1. El entorno 5. Ventanas de trabajo Inspeccionando objetos Por medio de esta utilidad podemos examinar la estructura de cualquier objeto. Cada objeto entiende el mensaje de inspección. Si usted puede escribir una expresión Smalltalk que es el tipo de una cosa que usted desea, entonces puede inspeccionarlo, para ello, escriba en la ventana de Transcript o del Workspace lo que busca, selecciónelo y elija inspeccionarlo en el menú correspondiente.
  • 35. Figura 11. Inspector de ventanas 1. El entorno 5. Ventanas de trabajo El Explorador El explorador de objetos Mórficos en lugar de inspeccionar, envía el mensaje de explorar a cualquier objeto. El Explorador de objetos proporciona una vista de esquema en cualquier objeto nuevo. Por ejemplo, analicemos la siguiente expresión (3+5) explore. Al ejecutar este código se activa la ventana del explorador (Figura 12). El resultado es un esquema en el objeto original. Desde este objeto se permite al usuario activar el menú de opciones por medio del botón central del mouse y así abrir un inspector o un explorador nuevo en el elemento seleccionado. Figura 12. Ventana del Explorador UPNFM
  • 36. 1. El entorno 5. Ventanas de trabajo El Depurador Los errores de Squeak son difíciles de calcular debido a que el mensaje de error espera que usted entienda los conceptos básicos de Squeak. Afortunadamente, las herramientas de depuración en Squeak son excelentes. Digamos que usted ejecuta la siguiente línea de código transcript show: 34.2. Al ejecutar la misma aparece una ventana de notificación de error (figura 13) Para revisar la sintaxis y poder establecer la naturaleza del error, seleccione la opción Debug en la ventana de mensaje de error y activara la venta de depuración (figura 14). El mensaje de error puede no ser claro para una Figura 13. Mensaje de error. programador novato debido a que otros objetos, a los que no se ha invocado de forma explicita, interactúan en el envío de este mensaje. Pero recuerde que su mensaje básico de envío es show: UPNFM 1. El entorno
  • 37. 6. Otras Herramientas disponibles Localizar clases El entorno de Squeak permite la activación de otro grupo de herramientas en las que se puede hacer un*** Localizar clases En determinado momentos nos vemos en la necesidad de encontrar alguna clase en particular. En la ventana del navegador de clase nos los permite, para ello hacemos clic en el panel de categorías de clases con el botón central. Se activa el menú que se muestra en la figura 15. Figura 15. Menú del panel de categorías de clases UPNFM
  • 38. En este menú y a través de un clic en la opción find class se exhibe el cuadro de dialogo para localizar clases (figura 16). En el espacio de indicado escribimos el nombre de la clase y seguidamente damos clic en aceptar. Se activara en el panel de clases aparecerá seleccionada la clase que buscábamos. Si escribe erróneamente el nombre de la clase, Smalltalk despliega aquella clase cuyo nombre es más parecido al que se escribió. Figura16. Cuadro de dialogo para localizar clases UPNFM
  • 39. Es posible que no se conozca el nombre de la clase, pero se sabe alguna parte del texto del mismo, de ser este el caso Smalltalk presenta una serie de opciones para que verifiquemos y escojamos cual de ellas es. Veamos un ejemplo: Necesitamos buscar una clase (supongamos que es SmallInteger), pero solo recordamos que comienza con small. Al activar el cuadro de dialogo para encontrar clases y escribir small, Smalltalk busca alguna clase que se llame small, de no encontrarla, busca entonces alguna clase con nombre similar y si encuentra más de alguna despliega una ventana con todas las clases que llevan ese texto en su nombre y aparecería una ventan similar a la que se presenta en la figura 17. Luego, debe verificarse que en la lista se encuentre la clase que buscábamos y hacemos clic sobre ella, y tal como se menciona antes esta se despliega en el panel de clases del navegador de clases. Figura17. Cuadro de dialogo para las clases encontradas UPNFM 1. El entorno 6. Otras Herramientas disponibles Identificar el protocolo de la clase
  • 40. En el capítulo uno, se nos explico que el protocolo de un objeto consiste en todos aquellos métodos a que puede responder dicho objeto. Squeak nos da varias formas para poder visualizar dicho protocolo, a continuación explicaremos una de ellas. En el caso de que no sepamos cuales son los métodos a que responde esa clase, hacemos clic con el botón central del Mouse el nombre de la clase y se muestra el siguiente cuadro de dialogo (en este caso, para la clase smallInteger) En este cuadro se muestran todo el protocolo de la clase en caso de que sean demasiados métodos para poderlos mostrar en dicho cuadro, se visualiza la palabra more, hacemos clic sobre ella y podremos el resto. Una vez que hemos localizado el método deseado, hacemos clic sobre el y en el panel de código del navegador de clases podremos visualizar el código Smalltalk correspondiente a dicho método. UPNFM 1. El entorno 6. Otras Herramientas disponibles Jerarquía de los objetos
  • 41. Con Squeak podemos conocer cual es la jerarquía de los objetos, es decir conocer cual es la clase padre (recordemos que es Squeak, todo objeto tiene un padre) o también si una existe alguna clase hija. El Browser Jerárquico ofrece un formato diferente a la hora de presentar las clases. En lugar de presentar dos paneles con las Categorías de Clases y las Clases, este Browser muestra sólo un panel con un árbol que indica la relación superclase-subclase. Para ello hacemos clic con el botón central del mouse sobre la clase, seguidamente se visualizará la ventana de menú y allí escogemos la opción browse Hierarchy (navegador en la jerarquía de los objetos). La figura 20 presenta la ventana de navegación de la jerarquía de objetos. Esta ventana posee tres paneles, en la izquierda se visualizan la jerarquía de la clase, para poder ver todos los ancestros se hace clic sobre la barra vertical, del mismo panel. En este cuadro tenemos la oportunidad de conocer las estructuras de cada clase que está en la jerarquía, solo hay que seleccionarla por medio de un clic. Figura 20. UPNFM 1. El entorno 6. Otras Herramientas disponibles El halo de las ventanas Cuando hacemos clic con el botón derecho sobre cualquier ventana, incluyendo el escritorio de squeak, notaremos que aparece una especie de halo alrededor de la ventana. Es decir que, en torno al objeto, aparecen una serie de iconos
  • 42. que lo circundan. Es lo que se conoce con el nombre del halo del objeto y nos permite acceder a sus propiedades. Por tanto, el halo es el conjunto de iconos coloreados que rodean al objeto. Cada uno de éstos, permite una manipulación distinta y permite cambiar ese objeto. Cada uno lleva también un globo (con una leyenda) de ayuda sobre cuál es su función (Ver figura 22). . Figura22. Halo de las Ventana UPNFM 1. El entorno 7. Resumen Resumen Squeak es un Smalltalk moderno, de código abierto, escrito en sí mismo, muy portable y muy rápido. En la actualidad, Squeak
  • 43. puede correr en plataformas diversas lo cual le permite al usuario desarrollar aplicaciones sin tener que hacer modificaciones a su plataforma o su entorno habitual de trabajo. Squeak es un entorno de programación gráfico orientado a objetos ideado como una herramienta válida para investigar, realizar simulaciones o explorar destrezas. El Mundo de Squeak constituye una metáfora del mundo real donde los objetos interaccionan entre sí y con el propio entorno. Squeak permite acceder a algunos servicios Smalltalk a través de sus menús de sistema. El menú principal: Al menú del mundo de Squeak, denominado a menudo 'menú principal', se puede llegar haciendo clic en el botón rojo mientras que el ratón apunta al fondo de un proyecto. Desde este menú, se puede grabar la imagen de Squeak, cambiarla, grabarla en archivos con nombres diferentes y finalizar la ejecución del Squeak en la computadora. Hay varios mecanismos para la busqueda de una clase en Squeak: 1. Si sabe el nombre de la clase, escriba la misma en cualquier lugar (por ejemplo, en una ventana de trabajo Workspace), haga doble clic sobre esta para seleccionarla y, a continuación, seleccione Explorar- Browse (Alt-B). Un Navegador del sistema se abrirá con la clase correcta para seleccionarla. 2. Si usted tiene el Browser System abierto, puede encontrar una clase con el menú de botón amarillo en la lista de categorías de clase mediante find class ..(f). Escriba el nombre de la clase (o incluso una parte de un nombre), y obtendrá una lista de nombres para elegir. 3. Pero lo que si usted no tiene idea de lo que el nombre de la clase. Hay dos estrategias. En primer lugar, caminar por todas las categorías en la lista de categorías de clase. No hay que muchas, por lo que no le llevará demasiado tiempo, pero le dará una idea de los tipos de clases encuentra bajo cada tipo de categoría. La segunda estrategia es encontrar una instancia de la clase de cosa que usted desee y examinarla. Cada objeto entiende el mensaje de inspeccionar. Si usted puede escribir una expresión Smalltalk que es el tipo de cosa que usted desea, entonces puede inspeccionarlo. Escriba en la ventana de Transcript lo que busca, selecciónelo y elija Inspeccionar (también Alt-I). Equivalente ha hacer seleccionar la opción inspeccionar del menú.
  • 44. UPNFM En el caso que lo que usted busca es un método. Si usted recuerda parte del nombre de un método, pero no toda la cosa, simplemente escriba la parte que recordar en el panel superior, luego seleccione Aceptar (Alt + S). La lista de la izquierda muestra todos los nombres de los métodos (también llamados selectores) que contienen el nombre aceptado. Selección de uno de los espectáculos todas las clases específicas que implementen las que el selector de la derecha. Elija uno de los elementos de la lista de la derecha para abrir un navegador en ese método. Si se desconoce si lo buscado es un método o clase, la forma más fácil de averiguar qué cosa es, si un método, o los nombres de clase, o constructor globales, incluso construcciones como $c es seleccionar y elegir explicar desde el menú del botón amarillo (hay que elegir más... en la parte inferior de la primera menú.) Lo que se consigue es una descripción de lo que ha seleccionado y una pieza de código Smalltalk ejecutable que puede Ejecutar. El texto se inserta inmediatamente después del ítem que usted ha marcado. La opción explicar mantiene el texto resaltado, de manera que pueda simplemente eliminar el texto, o ejecutar el comando que abre un navegador. La siguiente manera más fácil es simplemente seleccionar el método y elegir implementadotes- Implementors UPNFM Ejercicio final de la unidad El entorno Marque la respuesta adecuada a cada pregunta 9
  • 45. T.60810004.001.0 Es un archivo imprecindible de cualquier versión squeak. T.60810004.002.0 Archivo Imagen Es una herramienta para realizar aplicaciones en squeak. T.60810004.003.0 Todas son correctas Es el que envia el mensaje de explorar a cualquier objeto. T.60810004.004.0 Explorador de clases El código cr nos indica. T.60810004.005.0 Salto de línea ¿Cuál será la salidad al editar la siguiente expresión en el workspace, Transcript show: '(verificando salida, otra vez!)'? (verificando salida, otra vez!) A continuación aparece una serie de enunciados donde tendrá que seleccionar una ' V ' en caso de ser verdadero y una ' F' si el enunciado es falso. 8 T.60810005.001.0 Squeak es un entorno de programación gráfico orientado a T.60810005.002.0 Verdadero objetos ideados como una herramienta válida para investigar, realizar o explorar destrezas. La máquina virtual es un archivo que contiene todos los códigos T.60810005.003.0 Falso fuentes de texto que se han cambiado o se han añadido a la versión original de squeak.
  • 46. El archivo imagen es el que contiene todos los archivos binarios T.60810005.004.0 Verdadero de squeak. El workspace es una hoja de editor de texto en la que pueden T.60810005.005.0 Verdadero introducir expresiones y luego pueden ser compiladas. Para trabajar en el worspace es necesario trabajar en modo T.60810005.006.0 Falso inicial. El explorador de objetos mórficos es el que nos permite crear, T.60810005.007.0 Falso editar y eliminar clases y sus métodos. En el transcript podemos editar y evaluar expresiones. T.60810005.008.0 Verdadero La expresión Transcript show en un workspace nos permite T.60810005.009.0 Verdadero enviar mensajes a la ventana del transcript. El método tab indica comenzar una nueva linea en el transcript. T.60810005.010.0 Falso El método space indica imprimir en el Transcript un espacio en Verdadero blanco. Resultado 15 respuestas correctas de 15 Correctas 100,0% UPNFM