Fecha y hora actual: Jueves 17 Ene 2019 05:00
Índice del Foro

Foros de programación informática, diseño gráfico y Web

En esta comunidad intentaremos dar soporte de programación a todos los niveles, desde principiantes a profesionales de la informática, desarrollo de programas, programación web y mucho más.

Curso VB .NET - Tema 1.15 - Clases, Código

Responder al Tema

Índice del Foro > Visual Basic .NET > Curso VB .NET - Tema 1.15 - Clases, Código

Autor Mensaje
Tesis
Administrador


Registrado: 04 Mar 2007
Mensajes: 3200
Ubicación: Valencia - España

Mensaje Publicado: Lunes 16 Feb 2009 11:48

Título del mensaje: Curso VB .NET - Tema 1.15 - Clases, Código

Responder citando

Curso de programación .NET - Tema 1.15 - Clases, Código.


1. Clases, Código.

1.1 Objetivos del tema.
Hemos visto los datos en el tema anterior, veamos ahora los métodos.
Los métodos son los que nos van a permitir que una clase tenga la capacidad de realizar, resolver problemas, capacidad ejecutiva en pocas palabras.

1.2 Introducción.
En una clase tenemos que escribir código con el fin de alcanzar los objetivos para la cual se diseña la misma.



Si no existiera código en la misma, la clase puede seguir existiendo, pero lo único que podríamos hacer con ella es crear una estructura de datos, más o menos compleja.

1.3 Código en la clase.
El código en la clase se distribuye entre las propiedades, los procedimientos, las funciones, los eventos y los métodos.

En las propiedades, para realizar el control y la validación de los datos que se asignan a las variables internas de la clase.



En los procedimientos y funciones, para resolver la estructura que debemos crear para que funcione la clase y cumpla con su cometido.

En los métodos, porque desde ahí se distribuirá la ejecución de los procedimientos y funciones de la clase en función del diseño del mismo.

En los eventos también dispondremos de código, para que de esa forma se pueda reaccionar en función de lo que sucede a su alrededor.

Las variables, propiedades, los datos, almacenan la información que se utiliza en la clase para poder realizar las acciones para las cuales se escriben los métodos de la misma.

Las variables disponían de dos posibilidades, podían ser internas y externas.

Con el código sucede lo mismo, una clase se diseña para resolver un problema.

Ese problema, para resolverlo se descompone en una serie de acciones de menor entidad, y en su solución se podrán utilizar acciones de dos tipos:

    Externas.
    Internas.

Las acciones externas serán las que ofreceremos al usuario para que pueda interactuar con el objeto que se deriva de la clase.

Las acciones internas son las que creamos nosotros de forma interna en nuestra clase para crear el código que resuelva el problema para el cual se diseña la clase.

Sea cual sea el caso, el código lo escribiremos dentro de un procedimiento o de una función, y cuando sean internas las denominaremos exclusivamente funciones o procedimientos, según corresponda, pero cuando sean externas se convertirán en métodos.

Explicado en sentido inverso, los métodos son la parte de código que se ve en una clase.

Los métodos se escriben utilizando procedimientos o funciones, en función de nuestras necesidades.

En la clase existen otros procedimientos y funciones, pero no son públicos, o no son métodos, y no se pueden utilizar por el usuario de la clase, del objeto que se deriva de ella.

En cualquier caso, en los procedimientos y funciones, sean internos o externos, lo que tenemos es código con las estructuras de programación ya conocidas, lineales, alternativas o repetitivas.

Una clase al fin y al cabo es un programa más, no hay diferencias en cuanto a la solución de los problemas, pero el matiz es que un programa se inicia a instancia del usuario, y una clase se inicia a solicitud de una instrucción desde el interior de un programa.

1.4 En las Propiedades.
Porque en las propiedades en muchas ocasiones hay que filtrar los valores que recibimos, con el fin de que sean coherentes con el conjunto de datos de la clase, y evitar que se asignen a las variables internas de la clase.

1.5 En las Funciones, Procedimientos.
Para desarrollar una clase es necesario escribir un "pequeño programa", y ese pequeño programa se compone de una parte pública que son los métodos.

Estos métodos, podemos decir que son el punto de inicio de una acción, una acción que inicia el programa cuando reclama su presencia, es decir podríamos decir que una clase tiene un sin fin de puntos de inicio, cada uno de los métodos, - si descartamos el código de las propiedades -, por lo tanto, como deseamos crear un código sencillo, estructurado y ordenado, es necesario que el código en el método sea breve.

Para ello el código de un método se compone de llamadas a procedimientos y funciones que se llaman desde el mismo.

Además de esa forma un procedimiento puede compartirse por varios métodos, lo que reduce el volumen de código de la clase.

Así que, en el interior de la clase escribiremos todos los procedimientos y funciones que se necesiten para poder desarrollar todas las acciones que sean necesarias en los métodos.

1.6 En los Métodos.
En los métodos, porque los procedimientos no se activan solos, y de alguna manera han de activarse, y eso se consigue mediante la ejecución ordenada del código que hay en cada uno de los métodos.

Hemos dicho que cada método es como un punto de inicio de un programa, pues en ese punto es donde empieza la acción, y ahí es donde a medida que se van ejecutando las líneas de código, se van escribiendo las llamadas a cada procedimiento.

En el ejemplo de clase que sigue, se ha creado un método que visualiza los números pares entre dos valores determinados.

En ella vemos como el método llama a una función que devolverá cierto o falso en función de que el número sea par o no.

Código:
Clase Ejemplo
 Funcion EsPar(Numero como Entera) Como Booleana
  EsPar = Numero Modulo 2 = 0
 Fin de Funcion
 Metodo NumerosPares(Inicio como entera, Final Como entera)
  Crear X Entera = 0
  Si Inicio < Final Entonces
   X = Inicio
   Mientras X <> Final
    Si EsPar(X) Entonces
     Escribir("El número ",X," es par ")
    Fin de Condicion
    X = X + 1
   Fin Mientras
  Fin Condicion
 Fin Metodo
Fin Clase

Código:

Inicio Programa
  Crear Objeto como Ejemplo
  Objeto.NumerosPares(10,50)
Fin programa


1.7 Creamos un método.
Los métodos pueden ser de dos tipos, los que ejecutan una acción y no devuelven ningún dato, o los que como consecuencia de su ejecución obtenemos una información.

Si tenemos un método que nos escribe los números primos entre uno y cien, este método no devuelve información, si no que lo que hace es visualizar unos datos.

Sin embargo si tenemos un método que nos devuelve si un número es primo, si que tendrá que devolvernos cierto o falso como consecuencia de la ejecución.

En el primer caso podemos escribir un procedimiento que visualice en pantalla todos los números primos entre uno y cien, pero en el segundo caso escribiremos una función que recibirá como argumento un valor numérico entero y que nos devolverá el valor booleano cierto o falso.

Como ya hemos dicho, los métodos los resolveremos empleando funciones o procedimientos, por lo tanto en su interior escribiremos código, y el código que se emplea debe ser un código estructurado.

Esto no significa que todos los procedimientos o funciones que se escriben en la clase sean métodos, si no que todos los métodos son procedimientos o funciones, y cuando los procedimientos o funciones son públicos se convierten
en métodos, y si no, se quedan en lo que son, procedimientos o funciones.

1.8 Métodos, procedimientos.
En el ejemplo vemos como el método Cuenta es utilizado dentro del programa tras declarar una instancia de la clase Ejemplo.

Código:
Clase Ejemplo
 Crear X Entera = 0
 Crear Y Entera = 0
 Crear Z Entera = 0
 Metodo Cuenta(Inicio como entera, Final Como entera)
  Si Inicio < Final Entonces
    X = Inicio
    Mientras X <> Final
      ...
      ...
      X = X + 1
    Fin Mientras
   Fin Condicion
 Fin Metodo
Fin Clase


Código:
Inicio Programa
 Crear Objeto como Ejemplo
 Objeto.Inicio = 10
 Objeto.Final = 20
 Objeto.Cuenta
Fin programa


Si miramos el ejemplo del método, podremos observar que ese método no devuelve ningún dato, y que lo que realiza es una acción, nos suena de algo, ¿procedimiento?.

Código:
Metodo Cuenta
  X=Y
  Mientras X <> Z
    ...
    ...
    X = X + 1
  Fin Mientras
Fin Metodo


Sí, es un procedimiento.

1.9 Métodos, funciones.
Pero si deseamos saber si un número es par, el método nos debe devolver un dato, que puede ser cierto o falso, que nos indicaría que el número es par o no.

Código:
Metodo NumeroPar(Numero como entero, EsPar como booleano)
  EsPar = Numero modulo 2 = 0
Fin Metodo


La variable Par tendrá que ser pasada por referencia para poder devolver el valor que toma en el procedimiento.

Si se cumple la expresión, EsPar = Resto de la división de numero entre dos igual a cero, es que el número es par y la variable devolverá cierto.

El uso en el programa podría ser:

Código:
Inicio Programa
  Crear Objeto como Ejemplo
  Crear Par como Booleano
  Objeto.NumeroPar(10,Par)
  Si Par = Cierto Entonces
    Escribir ("El número es par")
  Si no
    Escribir ("El número es par")
  Fin de condicion
Fin programa


Pero cuando vimos las funciones vimos que su uso es más estético, y nuestro programa es más legible, pues escribamos una función en lugar de un procedimiento, pero como método.

Código:
Metodo EsPar(Numero como entero) como Booleano
  EsPar = Numero modulo 2 = 0
Fin Metodo


Y así en nuestro programa podremos escribir:

Código:
Inicio Programa
  Crear Objeto como Ejemplo
  Si Objeto.EsPar(10) = Cierto Entonces
    Escribir ("El número es par")
  Si no
    Escribir ("El número es par")
  Fin de Condicion
Fin programa


Que queda mucho más bonito que la versión anterior, y permite una legibilidad más clara del programa.

Por lo que podemos comprobar que un método puede ser escrito como función o como procedimiento.

Solo hay que utilizar la sintaxis adecuada en cada momento.

1.10 Conclusiones.
Se ha visto en el tema donde se escribe el código dentro de una clase.
Que la clase se compone de procedimientos y funciones, y que cuando estos son públicos, se convierten en métodos.

Que el punto de partida son los métodos que componen la clase.

Y como una clase tiene muchos métodos, en realidad hay muchos puntos de partida.

Pero en realidad, tendríamos que decir que el punto de partida es el método que hemos llamado Nuevo en los ejemplos y que se ejecuta cada vez que se crea una instancia de la clase, ya que después podríamos decir que la clase, el objeto, queda a la espera de los métodos que sean ejecutados.

Añadamos también que en el interior de los métodos, procedimientos, funciones, lo que tenemos escrito son las estructuras de programación que vimos al inicio de curso.

    Estructuras lineales.
    Estructuras alternativas, condicionales
    Estructuras repetitivas.

Los métodos, son programas pequeños.

1.11 Ejercicios propuestos.
Los ejercicios los proponemos en el tema personalizado del lenguaje, Java o Visual Basic.


Autor del curso: Casiopea


Normas del foro
Aprende a postear correctamente usando las etiquetas
Volver arriba
Ver perfil del usuario Enviar mensaje privado
Responder al Tema
Mostrar mensajes anteriores:   
Ir a:  
Todas las horas están en GMT + 2 Horas

Temas relacionados

Tema Autor Foros Respuestas Publicado
El foro no contiene ningún mensaje nuevo

Necesito ayuda en este codigo en lenguaje c

EmmanuelTR9 C, C#, Visual C++ 0 Lunes 08 Oct 2018 18:38 Ver último mensaje
El foro no contiene ningún mensaje nuevo

ayuda ayuda para este codigo que me sale error ...

DiegoBV C, C#, Visual C++ 0 Jueves 02 Ago 2018 23:52 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Dudas al instanciar clases heredadas

MMCA Java 0 Viernes 26 Ene 2018 21:34 Ver último mensaje
El foro no contiene ningún mensaje nuevo

SIMPLIFICANDO CODIGO

JESYMCA JavaScript 0 Domingo 21 Ene 2018 00:00 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Duda codigo en Python - Red Neuronal con numpy ...

Daniel_wUNTG Python 1 Sábado 21 Oct 2017 22:27 Ver último mensaje
Panel de Control
No puede crear mensajes, No puede responder temas, No puede editar sus mensajes, No puede borrar sus mensajes, No puede votar en encuestas,