Leer Ensayo Completo Circuitos Eléctricos Y Electrónicos

Circuitos Eléctricos Y Electrónicos

Imprimir Documento!
Suscríbase a ClubEnsayos - busque más de 2.113.000+ documentos

Categoría: Temas Variados

Enviado por: flakamarcial 08 junio 2011

Palabras: 1344 | Páginas: 6

Manual Didáctico de

Tópicos Selectos de Programación

CLAVE SCM-0435

LIC. MARIA NOEMI GUTIÉRREZ HERNÁNDEZ

MISANTLA. VER. JULIO 2008

INDICE

INTRODUCCIÓN

Para comenzar diremos que el objetivo primordial de este manual es para que cualquier usuario sea alumno o docente integre conocimientos de los tópicos avanzados de la programación y pueda tener un enfoque de desarrollo de aplicaciones que requieran enfoque de multihilo, multimedia, internaza gráfica de usuario y comunicación con puertos.

También es posible considerar que muchas personas no tienen la noción de que es un tópico de ahí su significado.

Unidad 1 Tipos de datos definidos por el usuario.

Objetivo:

Crear tipos de datos complejos utilizando estructuras de datos definidas por el usuario.

Antes de entrar a la agregación de datos y su especificación de estos en el lenguaje de Java debemos saber que es un Dato, y su concepto es el siguiente; es la representación formal de hechos, conceptos ó instrucciones adecuada para su comunicación, interpretación y procesamiento por seres humanos o medios automáticos, algunos otros conceptos computacionales lo toman como la unidad mínima para comunicarse con la computadora.

Un tipo de dato pues también debe contemplarse puesto que es la especificación de un dominio (rango de valores) y de un conjunto válido de operaciones a los que normalmente los traductores asocian un esquema de representación interna propia para ello tomamos en cuenta la clasificación de los tipos de datos los cuales son divididos de manera general de la siguiente forma:

En función de quien los define:

• Tipos de datos estándar

• Tipos de datos definidos por el usuario

En función de su representación interna:

• Tipos de datos escalares o simples

• Tipos de datos estructurados.

Es importante mencionar de acuerdo a lo anterior que todos los tipos de datos son manipulados de manera interna bajo el esquema de la expresión binaria, codificados para su interpretación, y que su representación es adecuada para se manejado en su representación numérica como son los tipos enteros reales, estándar IEEE 754, en representación de textos como es el código ASCII, o el UNICODE, sin embargo de acuerdo a nuestro lenguaje que en este caso es JAVA veremos como se demuestran los tipos de datos y como son manejados.

Variables y Tipos de Datos

Las variables son las partes importantes de un lenguaje de programación: ellas son las entidades (valores, datos) que actúan y sobre las que se actúa.

Una declaración de variable siempre contiene dos componentes, el tipo de la variable y su nombre.

tipoVariable nombre;

Tipos de Variables

Todas las variables en el lenguaje Java deben tener un tipo de dato. El tipo de la variable determina los valores que la variable puede contener y las operaciones que se pueden realizar con ella.

Existen dos categorías de datos principales en el lenguaje Java: los tipos primitivos y los tipos referenciados.

Los tipos primitivos contienen un sólo valor e incluyen los tipos como los enteros, coma flotante, los caracteres, etc... La tabla siguiente muestra todos los tipos primitivos soportados por el lenguaje Java, su formato, su tamaño y una breve descripción de cada uno.

Tipo Tamaño/Formato Descripción

(Números enteros)

byte 8-bit complemento a 2 Entero de un Byte

short 16-bit complemento a 2 Entero corto

int 32-bit complemento a 2 Entero

long 64-bit complemento a 2 Entero largo

(Números reales)

float 32-bit IEEE 754 Coma flotante de precisión simple

double 64-bit IEEE 754 Coma flotante de precisión doble

(otros tipos)

char 16-bit Caracter Un sólo carácter

boolean true o false Un valor booleano (verdadero o falso)

Los tipos referenciados se llaman así porque el valor de una variable de referencia es una referencia (un puntero) hacia el valor real. En Java tenemos los arrays, las clases y los interfaces como tipos de datos referenciados.

Nombres de Variables

Un programa se refiere al valor de una variable por su nombre. Por convención, en Java, los nombres de las variables empiezan con una letra minúscula (los nombres de las clases empiezan con una letra mayúscula).

Un nombre de variable Java.

debe ser un identificador legal de Java comprendido en una serie de caracteres Unicode. Unicode es un sistema de codificación que soporta texto escrito en distintos lenguajes humanos. Unicode permite la codificación de 34.168 caracteres. Esto le permite utilizar en sus programas Java varios alfabetos como el Japonés, el Griego, el Ruso o el Hebreo. Esto es importante para que los programadores pueden escribir código en su lenguaje nativo.

no puede ser el mismo que una palabra clave o el nombre de un valor booleano (true OR false)

no deben tener el mismo nombre que otras variables cuyas declaraciones aparezcan en el mismo ámbito.

La regla número 3 implica que podría existir el mismo nombre en otra variable que aparezca en un ámbito diferente.

Por convención, los nombres de variables empiezan por una letra minúscula. Si una variable está compuesta de más de una palabra, como 'nombreDato' las palabras se ponen juntas y cada palabra después de la primera empieza con una letra mayúscula.

1.1 AGREGACIÓN DE DATOS (STRUCT).

Así con todo lo anterior como un repaso al conocimiento en java, podemos ver lo que es un tipo de dato definido por el usuario en cuanto al comparativo entre java y otros lenguajes, pues bien un tipos definido tiende al enfoque implícito de lo que es una estructura o registros así conocida en Visual Basic C entre otros, sin embargo para Java no hay soporte de los tipos Struct, unión ni punteros, por ello utiliza TDA, Enums, de ahí la diferencia entre los lenguajes estructurados anteriores a Java y la POO, pues para java a los registros se les manipula como clases.

Tipos Complejos/Definidos por el Usuario

Muchas veces los tipos básicos descritos más arriba no son adecuados para determinada tarea aunque los combinemos por medio de colecciones. En ocasiones deseamos agrupar varios datos juntos y tratarlos como si fueran un solo elemento. Un ejemplo de esta situación podría ser la descripción de una dirección postal: la calle, el número, la ciudad y el código postal. La mayor parte de los lenguajes nos permiten agrupar estos datos en un registro o estructura.

En BASIC un registro de este tipo se realiza así:

Type Direccion

Numero_Casa AS INTEGER

Calle AS STRING Ciudad AS STRING

Cod_Postal AS STRINGEnd Type En Python es algo diferente:

class Direccion: def __init__(self, Casa, Calle, Ciudad, Codigo):

self.Numero_Casa = Casa

self.Calle = Calle

self.Ciudad = Ciudad

self.Cod_Postal = Codigo

1.2 UNIONES DE DATOS (UNIÓN)

http://javolution.org/api/javolution/io/Struct.html

Antes de empezar con la descripción hay que recordar que Java como tal no usa uniones pero si puede manipular datos a través de arrays, matrices, etc. Y a su vez es funcional y complementado con c/ c++.

Ejem:

Clase Struct

Java.lang.Object Javolution.io.Struct

Direct conocido subclases:

Unión

________________________________________

Public class Struct

Extiende java.lang.Object

Esto representa una clase de C / C + + struct; confiere la interoperabilidad entre Java y las clases de C / C + + struct.

C/C++ A diferencia de C / C + +, el formato de almacenamiento de objetos Java no está determinado por el compilador. La presentación de los objetos en memoria es trasladado a tiempo de ejecución y decidida por el intérprete (o justo a tiempo compilador). C/C++ Este enfoque permite la carga dinámica y vinculantes, pero también hace que la comunicación con C / C + + código difícil. StructmembersC/C++ structs Por lo tanto, esta clase para que la memoria de diseño se define por el orden de inicialización de la Struct 's miembros y sigue las mismas reglas que la alineación de C / C + + structs.

Esta clase (así como la Unión sub-clase) facilita:

• Memoria de intercambio entre aplicaciones Java y nativo de las bibliotecas.

• Directo de codificación / decodificación de los arroyos para que la estructura está definida por el legado de C / C + + code.

• Serialización / deserialization de objetos Java (completo control, por ejemplo, ninguna clase de cabecera)

• Mapeo de objetos Java a direcciones físicas (con JNI).