martes, 17 de agosto de 2010

tarea 2 investigación sobre smalltalk

¿Qué es smalltalk?
 Es un lenguaje de programación que permite realizar tareas de computación mediante la interacción con un entorno de objetos virtuales. Metafóricamente, se puede considerar que un Smalltalk es un mundo virtual donde viven objetos que se comunican mediante el envío de mensajes.

De que esta compuesto el smalltalk
·         Maquina virtual
·         Imagen virtual que contiene todos los objetos del sistemaLenguaje de programación (también conocido como Smalltalk)
·         Biblioteca de Objetos reusables
·         Opcionalmente un entorno de desarrollo que funciona en tiempo de ejecución


Historia
 Los orígenes de Smalltalk se encuentran en las investigaciones realizadas por Alan Kay, Dan Ingalls, Ted Kaehler, Adele Goldberg y otros durante los años setenta en el Palo Alto Research Institute de Xerox (conocido como Xerox PARC), para la creación de un sistema informático orientado a la educación. El objetivo era crear un sistema que permitiese expandir la creatividad de sus usuarios, proporcionando un entorno para la experimentación, creación e investigación.
Smalltalk es considerado el primero de los lenguajes orientados a objetos (OOP), aunque en realidad el primero en implementar programación orientada a objetos fue Simula. En Smalltalk todo es un objeto, incluidos los números reales o el propio entornoSmalltalk.
Smalltalk ha tenido gran influencia sobre otros lenguajes como Java o Ruby, y de su entorno han surgido muchas de las prácticas y herramientas de desarrollo promulgadas actualmente por las metodologías ágiles (refactorización, desarrollo incremental, desarrollo dirigido por tests, etc.).
Los objetos se comunican entre sí mediante el envío de mensajes.. Asimismo, un objeto puede proveer muchas operaciones (actualmente esto está determinado por cada implementación)
Las definiciones de estas operaciones en los objetos son llamadas métodos. Un método especifica la reacción de un objeto cuando recibe un mensaje que es dirigido a ese método. La resolución (en el sentido de ligado) de un mensaje a un método es dinámica. La colección entera de métodos de un objeto es llamada protocolo de mensajes o interfaz de mensajes del objeto.

Como lenguaje tiene las siguientes características:

§  Orientación a Objetos Pura
§  Tipado dinámico
§  Interacción entre objetos mediante envío de mensajes
§  Herencia simple y con raíz común
§  Reflexión computacional completa
§  Recolección de basura
§  Compilación en tiempo de ejecución o Interpretado (dependiendo de la distribución o del proveedor)
§  Múltiples Implementaciones
Los mensajes pueden ser parametrizados, estos parámetros serán objetos, y el resultado o respuesta del mismo también será un objeto.
Las características comunes de objetos están capturado bajo la noción de clase, de tal forma que los objetos agrupados bajo una clase son llamados instancias de ella. Las instancias son creadas durante la ejecución de un programa con algún propósito y son barridos automáticamente en el momento que no son necesitados más por el recolector de basura. Exceptuando algunos objetos especiales como los muy simples, llamados literales (números, cadenas, etc), cada objeto tiene su propio estado local y representa una instancia diferente de su clase.
Ejemplo de una pequeña codificación 


 Artículo principal: Hola mundo
En el siguiente código, el mensaje del "show:" se envía al objeto de "Transcripción", con el literal de cadena "Hola, mundo! ' como argumento. Invocación del espectáculo ":" método hace que los personajes de su argumento (el literal de cadena "Hola, mundo!") Que se mostrará en la transcripción ("terminales") de la ventana.
 Transcripción show: 'Hola, mundo! ".
Tenga en cuenta que una ventana de transcripción tendría que estar abierta para poder ver los resultados de este ejemplo.



Enlace para el manual o guía de uso del smalltalk
www.cincom.com/downloads/pdf/OS_Smtlk.pdf

tarea 1 mapa conceptual de programación


hola como hoy fue mi primer día en esta clase acabo de terminar la tarea 1
que trata sobre lo que es y entendemos  acerca del lenguaje de programación 

1.- ¿Que es un lenguaje de programación?  
 mi definición  es un lenguaje artificial diseñado para ser usado por medio de las computadoras para la realización de diversos programas que ayudan a resolver determinado problema.

2.- cada lenguaje tiene su paradigma que es ala función que están orientados 
hay de tres tipos los paradigmas : 
  1. los declarativos : especifican las propiedades que la salida debe conocer y no especifica cualquier detalle de implementación.
  2. imperativos : especifican un algoritmo  usan declaraciones, expresiones y sentencias.
  3. orientado a objetos : usa objetos y sus interacciones, para diseñar aplicaciones y programas informáticos
3.- las diferencias entre cada lenguaje : n mayor parte a su sintaxis y semántica ya que entre cada uno varia estos dos elementos. si se trata de utilizar una misma escritura en diferentes lenguajes el resultado seria que al momento de querer compilar marque algún tipo de error o que simplemente no funcione el programa.

4.- por ultimo esta unos ejemplos de su  aplicación 
  • programación de diversos aparatos electrónicos
  • minería de datos 
  • creación de programas