Mostrando entradas con la etiqueta tipos. Mostrar todas las entradas
Mostrando entradas con la etiqueta tipos. Mostrar todas las entradas

domingo, 29 de julio de 2012

1.2. Cada objeto tiene una interfaz.

1.2. Cada objeto tiene una interfaz

Los objetos son únicos, no tiene sentido tenerlos por duplicado. Sin embargo, sí es importante considerar las características y comportamientos comunes de estos: lo que les hace pertenecientes a una misma clase. Esta idea se uso incluso en el primer lenguaje orientado a objetos, Simula-67, con la palabra reservada class.

Simula, como su nombre lo indica, fue creado para desarrollar simulaciones, como el clásico "problema del cajero". Aquí se tiene un grupo de cajeros, clientes, cuentas, transacciones y unidades de moneda (es decir, un montón de objetos). Éstos objetos pueden agruparse en "clases de objetos", y de allí proviene la palabra reservada class.

Crear tipos de datos abstractos (clases) es un concepto fundamental de la POO. Éstos trabajan como tipos de datos predefinidos: así es posible crear variables de un tipo (los llamados objetos o instancias), y manipular estas variables (mediante el envío de mensajes o peticiones).

Cada objeto pertenece a una clase en particular, lo que define sus características y comportamientos.

Prácticamente todos los lenguajes de programación orientados a objetos usan la palabra reservada class, y por lo general, los que no, usan la palabra reservada type; por lo que podemos relacionar dichos términos entre sí.

** Hay quienes suelen hacer distinción, alegando que type determina la interfaz; mientras que class es una implementación particular de dicha interfaz.

1.1. El progreso de abstracción.

1.1. El progreso de abstracción

Es bueno saber que los lenguajes de programación nos simplifican mucho el trabajo. De no ser por ellos, deberíamos tratar con el ordenador usando comandos sumamente extraños y un tanto extensos incluso para pequeñas instrucciones.

En un primer momento, surgió el mencionado lenguaje ensamblador, el cual viene a ser una abstracción de la máquina subyacente.

Como sabemos, el “lenguaje máquina” se corresponde con el “lenguaje binario”. Lo que quiere decir que, las instrucciones directas al ordenador deberían expresarse en 1s y 0s.

Lo que el lenguaje ensamblador hizo es implementar una representación simbólica de dichos códigos de máquina binarios.

Muchos lenguajes llamados “imperativos” le siguieron (tales como Fortran, BASIC y C). Éstos representaban abstracciones del lenguaje ensamblador, lo que suponía grandes mejores. Sin embargo, aún se requería idear la solución en términos más del ordenador que en términos del problema. Esto es lo que se conoce como un lenguaje de “bajo nivel”.