Está en la página 1de 33

SQUEAK

Integrantes: Caya Huanca, Johnny Huanca Choque, Mariela Mamani Cacyavilca, Pamela

Introduccin
Entorno de desarrollo integrado para elaborar aplicaciones grficas interactivas a travs de la intuicin. Es un lenguaje de programacin orientado a objetos. Es una herramienta que integra los avances tecnolgicos de los ltimos 30 aos.

Qu es Squeak?
Editor + compilador + sistema de ventanas + navegador + administrador de cdigo fuente. Potencial multimedia y capacidad de simulacin.

Historia
Evoluciona del lenguaje Smalltalk Smalltalk es el 1er. lenguaje orientado a objetos. Dcada 70 por Alan Kay. Smalltalk es un entorno completo, un S.O. ejecutado encima de una mquina virtual mxima portabilidad.

Historia
El programador se concentra en el sistema que est modelando. El programador no desperdicia el tiempo escribiendo y comprendiendo cdigo

Squeak I
Es un sistema gratuito y de cdigo abierto. En los 90 Disney contrata a Alan Kay y Dan Ingalls ( padres de Smalltalk) para desarrollar un entorno de programacin que pudieran utilizar los chicos. Imponen la condicin de Open Source (septiembre 1996) Es un smalltalk enfocado a multimedia y 3D.

SQUEAK II
No exige un equipamiento de ltima generacin. Permite trabajar en equipo en una red interna o sobre Internet Permite publicar los proyectos sin necesidad de realizar modificaciones.

Estructura
rea de trabajo: Mundo Unidad de trabajo: Proyecto

Elemento del mundo: Objeto Caractersticas del objeto: Halos

Estructura Squeak III


Morfs Es el nombre dado a la interfaz grfica de Squeak. est escrito en Smalltalk, por lo que es totalmente portable entre sistemas operativos. Lo que distingue a morf de la mayora de otros kits de herramientas de interfaz de usuario es que no tiene modos distintos para "componer" y "ejecucin" de la interfaz: todos los elementos grficos pueden ser montados y desmontados por el usuario, en cualquier momento

Estructura Squeak III


Todo lo que es visible en squeak es un morf. Cada morf tiene sus halos. Los halos nos permiten cambiar el color, el tamao, rotar el morf, etc. Tienen nocin del tiempo, podemos hacer que cambien de color cada vez que transcurre un intervalo de tiempo.

Sintaxis
Squeak tiene solo 6 palabras reservadas, tambin llamadas pseudo-variables: true, false, nil, self, super, thisContext. Hay 5 clases de objetos literales numbers (5, 2.5, 1.9e15, 2r111), characters ($a), strings ('hello'), symbols (#hello), arrays (#('hello #hello))

Sintaxis
Strings son delimitadas por comillas sencillas, comentarios por comillas dobles. A diferencia de los strings, simbolos estn garantizados de ser globalmente nicos. Use #( ... ) para definir un arreglo literal. Use { ... } para definir un arreglo dinmico. Note que #( 1 + 2 ) size 3, pero { 1 + 2 } size 1

ELEMENTOS SINTCTICOS
SINTAXIS QUE REPRESENTA

Sintaxis
SINTAXIS QUE REPRESENTA

Mensajes y Expresiones
Existen tres clases de mensajes: unary (e.g., 1 asString, Array new), binary (e.g., 3 + 4, 'hi' , ' there'), and keyword (e.g., 'hi' at: 2 put: $o) Mensajes en cascada son una secuenciade mensajes enviados al mismo objeto, separados por punto y coma: OrderedCollection new add: #calvin; add:#hobbes; size 2

Mensajes y Expresiones
Variables locales se declaran con barras verticales. Use := para asignacin; _ se usaban en versiones anteriores de Squeak Las expresiones consisten en envo de mensajes, cascadas y asignaciones, posiblemente agrupadas con parntesis. Enunciados (Statements) son expresiones separadas por puntos. En Smaltalk todo es un objeto al que se le envan mensajes, ejemplos Ejemplo 1: 2+3 Objeto: 2 Mensaje que le enviamos (+), es decir, sumar, con el parmetro 3. Ejemplo 2: Mostrar el texto Hola mundo Objeto: transcript Mensaje: show con el parmetro Hola mundo

Bloques
Bloques closures son expresiones encerradas en parntesis rectos. Los bloques pueden tener argumentos y pueden contener variables temporales. Las expresiones en el bloque no son evaluadas hasta que Ud. Enve al bloque un valor mensahje con el nmero correcto de argumentos
[:x | x + 2] value: 4 6.

En Squeak no hay una sintaxis especial para construcciones de control, solo mensajes que condicionalmente evalan bloques
(Smalltalk includes: Class) ifTrue: [ Transcript show: Class superclass ]

Iteradores y Bloques
Los iteradores son usados con bloques de cdigo. Select en una coleccin de nmeros: devuelve un arreglo con los elementos que cumplen con la condicin.
#(1 2 3 4 5) select: [:i | i odd] -> #(1 3 5)

Collect ejecuta el cdigo en el bloque para cada elemento del arreglo, y devuelve otro arreglo:
#(1 2 3 4 5) collect: [:i | i * i ] -> #(1 4 9 16 25)

Caractersticas de Squeak
Browser de Squeak

Herencia

Encapsulacin Se llama encapsulacin al hecho de que ningn objeto puede acceder a la estructura interna de otro objeto. As pues, slo el objeto conoce, y puede manipular, su propia estructura interna. Clases Una clase describe la implementacin de un conjunto de objetos.

Polimorfismo Dos objetos son polimrficos entre s cuando un determinado emisor no puede distinguir uno del otro.

Variables de instancia La estructura interna de los objetos est compuesta por variables de instancia.

Mtodos
Los mtodos son la manera de especificar cmo responden a los mensajes los objetos de una determinada clase. Cada mtodo especifica cmo se lleva a cabo la operacin para responder a un determinado mensaje.

Aplicaciones
Desarrollo
Monticello es un sistema de manejo de paquetes. SqueakMap es un catalogo global de paquetes desarrollados en Squeak.

Aplicaciones
SUnit Tests es un framework para realizar Unit Testing. Refactoring Browser es un browse poderoso. Magma es una implementacin de una base de datos orientada a objetos.

Aplicaciones
Desarrollo de aplicaciones Web Seaside es un framework basado en componentes y flujo de datos para desarrollar aplicaciones web Magritte es un meta-model framework Croquet es un ambiente de auditoria 3D peer to peer.

Ventajas
Squeak es un software en el que se puede realizar una produccin colectiva.
Con el Squeak se pueden crear realidades virtuales propias, segn el criterio que elija el usuario. Desde un punto de vista constructivista, se busca que los usuarios acten y no estn pasivos. Es el mejor ejemplo de multiplataforma y software libre.

Ventajas
Software educativo Squeak, tiene la virtud de que se puede ir adaptando y hacindose ms complejo. Squeak permite que se integren distintos tipos de expresin y comunicacin. Se puede modificar la realidad virtual, con el paso del tiempo se puede mejorar y ser ms efectivas las animaciones.

Conclusiones
Squeak es un ambiente abierto en el cual uno puede realizar cualquier tipo de tarea. Desde desarrollo profesional a investigacin y educacin. Squeak Smalltalk ejecuta el cdigo que describe su propia mquina virtual lo suficientemente rpido como para propsitos de depuracin.

Conclusiones
Por otro lado se para lograr los niveles tiles de desempeo, el cdigo Smalltalk de la mquina virtual se traduce en C, dando un aumento de velocidad. La mquina virtual de Squeak, al tener su cdigo fuente disponible pblicamente, sirve como una referencia actualizada. Squeak es multiplataforma, se puede utilizar desde los Sistemas Operativos ms populares: Mac OS, Linux, Windows. Squeak tiene diversidad de aplicaciones tanto en desarrollo, educacin, y lo que se refiere a entorno web permitindole llegar a mas usuarios.

Bibliografia
Squeak Quick Reference. http://docs.squeakspace.com/quickreference Teora y aplicaciones de la informtica II Squeak. Un Smalltalk del siglo XXI, Universidad Catlica Nuestra Seora de la Asuncin, Humberto Aquino. www.programacion.com/squeak_el_smalltalk_del_siglo_xxi_248 The Story of Squeak, A Practical Smalltalk Written in Itself , Dan Ingalls Ted Kaehler, John Maloney Scott Wallace, Alan Kay at Apple Computer while doing this work, now at. http://www.vpri.org/pdf/tr1997001_backto.pdf Introduccin a Squeak (Editor multimedia Multiplataforma), portaleducativo.edu.ve/Recursos_didacticos/Squeak241105.pdf Squeak by Example, Andrew P. Black, Stphane Ducasse, Oscar Nierstrasz Damien Pollet - squeakbyexample.org/

También podría gustarte