PDF de programación - Capítulo 3 - Programación orientada a objetos con C#

Imágen de pdf Capítulo 3 - Programación orientada a objetos con C#

Capítulo 3 - Programación orientada a objetos con C#gráfica de visualizaciones

Publicado el 9 de Enero del 2019
1.796 visualizaciones desde el 9 de Enero del 2019
316,6 KB
50 paginas
Creado hace 13a (03/01/2011)
Capítulo 3

PROGRAMACION ORIENTADA A
OBJETOS CON C#



El paradigma de programación orientada a objetos ha sido el estilo de programación
que ha permitido revolucionar el desarrollo de software en la informática moderna. A
pesar de que se afirma que cualquier programa desarrollado bajo el modelo de
programación orientada a objetos, también se hubiera podido desarrollar con el
paradigma de programación estructurada, la verdad es que las cosas que se han logrado
en materia de software son más fáciles de concebir, diseñar y programar con la noción
de objetos que con la programación netamente estructurada. La orientación a objetos es
un modelo que utiliza nociones del mundo real, en el cual vivimos los seres humanos,
donde encontramos objetos por todas partes, los cuales se relacionan, interactúan y se
asocian para permitir
la solución de un problema, se pueden manipular
individualmente o en conjunto, e incluso muchos de ellos pueden poseer o adquirir
comportamiento inteligente.

En esencia, la programación orientada a objetos nos es más que un modelo de
programación donde un programa es dividido en módulos de software independientes
unos de otros pero con capacidad de interactuar entre si para cumplir con un objetivo.
Dichos módulos están conformados básicamente por datos y funciones que se encargan
de manipularlos internamente para mostrar al exterior únicamente los resultados que
necesita el programa que los va a utilizar. En el desarrollo de este capítulo vamos a
describir las nociones básicas de la programación orientada a objetos y la forma como
C# las implementa.

La mayoría de nosotros iniciamos nuestro aprendizaje de la programación de
computadores en el modelo estructurado, por lo cual a más de uno nos cuesta la
adaptación al modelo orientado a objetos. Esta situación ha hecho que mucha de la
literatura sobre programación orientada a objetos utilice ejemplos que, aunque muy
didácticos, pueden hacer más complicado el salto a la tarea práctica de programar con
objetos reales de software. En muchas explicaciones y literatura sobre el tema hemos
escuchado o leído sobre la clase felino y todos los grupos familiares que de ella se
pueden derivar: gatos, tigres, leones, linces, la Pantera Rosa, etc. Pero en la práctica
muy pocas de nuestras aplicaciones, y más aún las que se ejecutarán sobre .NET, se las
tienen que ver con este tipo de especimenes y más bien lo que encontraremos son
objetos como: ventanas, cajas de texto, botones, menús, números, puntos, bases de
datos, puertos de comunicaciones, entre muchos otros. Y es sobre estos objetos que
vamos a centrar nuestro trabajo, evitando en lo posible las explicaciones con objetos
que poco o nada tienen que ver con programas reales de software.

El concepto fundamental de la programación orientada a objetos es la clase y existen
muchas de ellas implementadas en .NET, y están listas para permitirnos crear la gran
mayoría de objetos que podemos llegar a necesitar en un programa de consola, tipo
Windows o tipo web. Aquellos objetos para los cuales no existan clases en .NET
podemos crearlas utilizando cualquier lenguaje de programación y un compilador que
cumplan la especificación para ejecutarse sobre el framework .NET. C# es uno de esos
muchos lenguajes, pero por ahora es el único que ha sido diseñado y desarrollado
entera y exclusivamente para este entorno, y todos aquellos que cumplan con la misma
especificación .NET.


44444444

CAPITULO
CAPITULO 3 3 3 3 PROGRAMACION CON C#
CAPITULO
CAPITULO

Clases
La clase es el elemento fundamental de la programación orientada a objetos con el
lenguaje C#. Aunque, dentro de este modelo de programación, existen muchas
definiciones válidas para el concepto de clase, en la práctica una clase no es más que
una plantilla de software que sirve para construir cualquier cantidad de objetos. Por
ejemplo, en .NET existe una clase llamada Form que sirve como molde para construir
cualquier ventana que necesite una aplicación tipo Windows. Las ventanas que
nosotros observamos en la pantalla de nuestro computador, son los objetos generados
con esa plantilla. Pueden haber muchos objetos generados con esa plantilla, pero lo que
los puede hacer diferentes a unos de otros, son los valores que se asignan a sus
atributos como: alto, ancho, color, título, etc.

Desde la perspectiva del lenguaje de programación, una clase es un tipo, que al igual
que los tipos estándar, sirve para declarar variables cuya estructura es una fiel copia de
ella. Estas variables reciben el nombre de objetos y son los elementos que manipula el
programador para desarrollar su programa. En la evolución del desarrollo de software y
los lenguajes de programación, es posible que en el futuro tan solo se hable de tipos, en
vez de clases. Serán tantas las clases que cualquier programador podrá encontrar en las
redes de comunicaciones, como Internet, que más que preocuparse por construir un
molde deberá poner todo su potencial en manipular los objetos que de él se puedan
obtener, y todo se verá con la simpleza que hoy se mira a los tipos de datos como
entero, cadena de texto, booleano o byte, entre otros.

Pero, por ahora volvamos a nuestra realidad que nos exige a nosotros definir los tipos o
clases que el entorno de desarrollo no haya definido, o que siendo tantos, no sepamos
que ya existen, y que los necesitemos para nuestros programas. En C# una clase se
define mediante la palabra clave class y una sintaxis básica que encontramos para
definirla, es la siguiente:


class NombreClase
{

}


// Miembros

Por ejemplo, supongamos que deseamos un componente de software para procesos
matemáticos que nos permitan manipular números complejos1. La clase que nos
permitirá procesar estos números la llamaremos Complejo, y se puede definir como,


class Complejo
{

}

//Miembros de la clase Complejo


Sin embargo, las clases deben cumplir unos niveles de seguridad que exigen el manejo
del control de accesibilidad a ellas, sobre todo por parte de agentes externos al
proyecto de software donde se hayan definido. Es por esto que la definición de
cualquier clase debe ir antecedida de una palabra clave que determina la accesibilidad
que admite dicha clase. La sintaxis C# para definir una clase es la siguiente:


[public | private | protected | internal]
class NombreClase
{

}

// Miembros


1 Los números complejos son un conjunto de números que amplían las operaciones de las matemáticas al plano
cartesiano. Cada número complejo se puede interpretar como un punto o un vector en el plano XY.

www.pedrov.info



CAPITULO
CAPITULO 3333: PROGRAMACION ORIENTADA A OBJETOS CON C#
CAPITULO
CAPITULO


45454545

La sección entre corchetes, que indica las palabras clave de accesibilidad, public,
private, protected, internal, que pueden utilizarse en la definición de una clase, es
opcional e indica cual es el nivel de acceso que se va a permitir sobre la clase. Si no se
especifica ningún nivel de accesibilidad, el compilador la define por defecto como
internal, lo cual significa que solo se permite el acceso a las clases que hacen parte del
mismo ensamblado. Mediante las palabras de accesibilidad se pueden especificar los
siguientes cinco niveles de protección para una clase:


Acceso

Seguridad

public

protected



internal

protected
internal

private

No existe ninguna restricción de acceso.

Solo pueden tener acceso la clase contenedora o
los tipos derivados de esta clase.

Únicamente se permite el acceso al ensamblado
actual.

El acceso está limitado al ensamblado actual o los
tipos derivados de la clase contenedora.

Solo se permite el acceso al tipo contenedor.


Para nombrar una clase se sugiere utilizar una cadena de caracteres que inicia con una
letra mayúscula y cuyo significado es familiar para el programador. Aquí es muy
importante tener en cuanta cual es la funcionalidad básica de la clase, para darle un
nombre que resulte significativo y fácil de recordar posteriormente. Podemos tener
clases
como: Complejo, Estudiante, DocumentoImpresion, RedNeuronal,
ConexionBaseDatos.

Objetos
Cuando se diseña y programa una aplicación de software con el modelo de
programación orientada a objetos, lo que se hace en la práctica es construir un conjunto
de plantillas de objetos, o lo que se conoce como clases, las cuales permiten definir
variables en memoria que se conocen con el nombre de objetos o instancias1 de clase.
Desde esta perspectiva, el término clase gana mayor significado, ya que se puede
definir como una plantilla que permite generar una clase de objetos.
Para crear un objeto de una determinada clase, se procede básicamente en dos pasos:
primero se declara una variable con el tipo que representa la clase y luego se le asigna
memoria con el operador new. Por ejemplo, tomando la clase Complejo definida
anteriormente, la siguiente línea crea un objeto a partir de esta plantilla:


Complejo z;


Cuando el programa ejecuta esta línea, solo posee una dirección de memoria donde se
inicia la estructura de la variable z. Para asignarle la memoria total conforme al tamaño
de la estructura que describe la clase, es necesario aplicar el operador new, así:


z = new Complejo();



1 Muchos autores utiliz
  • Links de descarga
http://lwp-l.com/pdf14810

Comentarios de: Capítulo 3 - Programación orientada a objetos con C# (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad