2 poo u1 1 Introduccion

40
M.C Ivan Rivalcoba PROGRAMACIÓN ORIENTADA A OBJETOS C# & .NET 1. FUNDAMENTOS POO (OOP) INTRODUCCIÓN

Transcript of 2 poo u1 1 Introduccion

Page 1: 2 poo u1 1 Introduccion

M.C Ivan Rivalcoba

PROGRAMACIÓN ORIENTADA A

OBJETOSC# & .NET

1. FUNDAMENTOS POO (OOP)INTRODUCCIÓN

Page 2: 2 poo u1 1 Introduccion

La OOP es un paradigma (modo de hacer las cosas) de desarrollo de software (programación) en donde la estructura del software esta basada en la interacción entre clases y objetos con la finalidad de realizar una tarea o resolver alguna problemática.

DEFINICIÓN DE LA OOP

Page 3: 2 poo u1 1 Introduccion

La forma en que interactúan estos objetos y clases es por medio de mensajes (órdenes) pasados de atrás hacia adelante y viceversa.

En respuesta a un mensaje, un objeto realiza una acción.

DEFINICIÓN DE LA OOP

Page 4: 2 poo u1 1 Introduccion

Los objetos y clases en la OOP son los bloques de construcción de un programa, en su forma mas general dichas entidades quedan constituidos por dos elementos:

1. Datos: Son aquellas entidades que describen al objeto (lo caracterizan) Los datos dentro del contexto de la OOP serán llamados Atributos.

2. Acciones: Son las entidades responsables de operar sobre los datos del mismo objeto, o algún dato proporcionado por otro objeto, enviado en un mensaje. Las acciones serán llamadas Métodos.

OBJETOS Y CLASES

Page 5: 2 poo u1 1 Introduccion

Esta forma de programar los sistemas surge en la mitad de 1960 con un lenguaje de programación llamado SIMULA.

Posteriormente en 1970 surge SMALLTALK. A pesar de la evolución constante de la OPP, los desarrolladores no abrazaron esta metodología de desarrollo en sus inicios.

El interés por este paradigma surge hasta la mitad de 1980, con el surgimiento de C++.

HISTORIA DE LA OOP

Page 6: 2 poo u1 1 Introduccion

Fue hasta 1990 cuando la OOP llego ha ser popular dentro de la comunidad de desarrolladores, impulsado por la gran aceptación del lenguaje JAVA.

Fue en el año 2002 cuando Microsoft introduce el lenguaje C# (Se pronuncia Ci-Sharp). Un lenguaje moderno, concebido para trabajar con las últimas tecnologías (Web, móvil, nube, internet, paralelismo), y totalmente Orientado a Objetos.

HISTORIA DE LA OOP

Page 7: 2 poo u1 1 Introduccion

C# será el lenguaje de trabajo, ello no significa que: C# sea el mejor lenguaje del mundo. C# sirva para todo. Nos debemos de casar con C#.

C#

Page 8: 2 poo u1 1 Introduccion

Lo que aprenderemos en este curso será una metodología para construir programas orientados a objetos.

Conocimiento que puede ser extendido a todos los demás lenguajes orientados a objetos.

C#

Page 9: 2 poo u1 1 Introduccion

De forma simplificada realizar un programa en C# involucra 3 procesos:

Modelado del problema.

Codificación del Modelo.

Compilación del código en un assembly.

CREACIÓN DE UN PROGRAMA

Page 10: 2 poo u1 1 Introduccion

Q & A (QUESTIONS AND ANSWERS)

¿Que es la OOP?¿A que se refiere la palabra paradigma?Completar la siguiente oración:

En respuesta a un mensaje un objeto realiza una:____¿Como esta compuesto un Programa orientado a

objetos?¿Que elementos conforman las clases y objetos?¿En que década surge la idea de la OOP?¿En que década se populariza la OOP?¿Que es el lenguaje C#?¿C# es el mejor de los lenguajes? Detalla tu respuesta.Enumera los 3 procesos vistos en clase que involucran

la creación de un programa.

Page 11: 2 poo u1 1 Introduccion

Pk0 VoidProgram

A continuación crearemos el primer proyecto en C#, un programa con la estructura básica pero que no realiza ninguna acción en pocas palabras un programa vacío.

Para programar se requieren al menos 3 cosas. Un Editor de texto Un Traductor de lenguaje de alto nivel a código

máquina. Un Depurador.

PRACTICA

Page 12: 2 poo u1 1 Introduccion

Pk0 VoidProgram

Toda distribución de Windows (A excepción de la RT) cuenta con un compilador de C# (Un traductor de alto nivel a código máquina).

Este esta localizado en la siguiente Ruta: C:\Windows\Microsoft.NET\Framework

PRACTICA

Page 13: 2 poo u1 1 Introduccion

Pk0 VoidProgramEn este directorio son accesibles las

versiones del compilador disponibles en nuestro OS. C:\Windows\Microsoft.NET\Framework

PRACTICA

Page 14: 2 poo u1 1 Introduccion

Pk0 VoidProgramPor ejemplo para acceder a la versión 4 se

hace doble clic en el folder v4.x, dentro esta localizado el compilador de C# llamado CSC.exe, el nombre viene de las palabras C Sharp Compiler.

PRACTICA

Page 15: 2 poo u1 1 Introduccion

Pk0 VoidProgram

Lo mas importante de este paso fue el de ubicar la ruta donde esta localizada la versión del compilador con la cual deseamos trabajar.

Ahora agregaremos esta ruta a la variable de entorno PATH, para que Windows reconozca el programa CSC.exe desde cualquier ubicación.

PRACTICA

Page 16: 2 poo u1 1 Introduccion

Pk0 VoidProgramAntes de agregar la ruta a la variable de

entorno, comprobaremos como el programa CSC.exe no es reconocido desde cualquier ruta por el CMD de nuestro sistema operativo.

Para ello abrir la consola de Windows presionando (Windows)+R Teclear lo siguiente:

PRACTICA

Page 17: 2 poo u1 1 Introduccion

Pk0 VoidProgramCon ello se consigue abrir la consola del

sistema

Teclear el siguiente comando y dar enter.

PRACTICA

Page 18: 2 poo u1 1 Introduccion

Pk0 VoidProgramComo el OS no sabe donde esta localizado el

programa CSC.exe, manda este mensaje de error:

PRACTICA

Page 19: 2 poo u1 1 Introduccion

Pk0 VoidProgramPara que el OS sepa donde buscar el

ejecutable para poderlo lanzar, agregaremos a una variable de entorno llamada PATH la ruta donde esta localizado el compilador.

Copiamos en el portapapales (clipboard) de windows la ruta del compilador, en el caso de mi máquina es la siguiente:

PRACTICA

Page 20: 2 poo u1 1 Introduccion

Pk0 VoidProgramLuego accedemos a las variables de entorno

ejecutando los siguientes pasos (W7):En la ventana de Inicio hacer clic secundario

en quipo y seleccionar propiedades:

PRACTICA

Page 21: 2 poo u1 1 Introduccion

Pk0 VoidProgramSeguido de eso seleccionar configuración

avanzada del sistema, en la ventana seleccionar la pestaña “Opciones avanzadas” y luego el botón Variables de entorno.

PRACTICA

Page 22: 2 poo u1 1 Introduccion

Pk0 VoidProgramEn la sección de variables del sistema

seleccionar PATH y luego editar, al fina ingresar un “;” y después pegar la ruta del compilador de C sharp.

PRACTICA

Page 23: 2 poo u1 1 Introduccion

Pk0 VoidProgramCon ello se consigue que el sistema

reconozca el ejecutable desde cualquier ruta.Realizar la prueba desde la consola, teclear

desde cualquier ruta CSC, se deberá obtener la siguiente salida:

PRACTICA

Page 24: 2 poo u1 1 Introduccion

Pk0 VoidProgramCon esto ha quedado configurado el sistema,

este proceso solo se realizará una vez.Ahora resta adecuar nuestro entorno de

trabajo para poder codificar los archivos fuente de nuestro programa.

Para ese propósito crearemos un folder de trabajo dentro de “C:\” de modo que quede de la siguiente manera:

PRACTICA

Page 25: 2 poo u1 1 Introduccion

Pk0 VoidProgramAhora se requerirá de usar un editor de texto

plano para escribir el código fuente de nuestro programa vacío.

Si bien el notepad de windows funciona, en la red hay otros editores mucho mas cómodos a la hora de programar; algunas recomendaciones son: Notepad++: http://notepad-plus-plus.org/ Sublime text: http://www.sublimetext.com/

PRACTICA

Page 26: 2 poo u1 1 Introduccion

Pk0 VoidProgramEn el caso de sublime text seguir los

siguientes pasos: Abrir sublime Text, guardar el archivo dentro del

directorio de trabajo como “pk0.cs”, tener sumo cuidado de seleccionar el tipo de archivo como C#.

PRACTICA

Page 27: 2 poo u1 1 Introduccion

Pk0 VoidProgramCodificar las siguientes líneas.

PRACTICA

Page 28: 2 poo u1 1 Introduccion

Pk0 VoidProgramUna vez que se ha codificado el programa, el

siguiente paso consistirá en compilarlo.Para ello ir a la consola cambiar al directorio

donde esta localizado el archivo fuente (en nuestro caso es “C:\cswork\” y ejecutar el siguiente comando:

PRACTICA

Page 29: 2 poo u1 1 Introduccion

Pk0 VoidProgramEl compilador mostrará la siguiente salida:

PRACTICA

Page 30: 2 poo u1 1 Introduccion

Pk0 VoidProgramSi abrimos el directorio de trabajo

observaremos que se ha creado un nuevo archivo “.exe” este es un ejecutable originado por el compilador tomando como fuente nuestro archivo “pk0.cs”

Este archivo ejecutable es llamado también “assembly” (ensamblado).

PRACTICA

Page 31: 2 poo u1 1 Introduccion

Pk0 VoidProgramPor último nada mas resta ejecutar el archivo

y esto puede se hecho desde la consola. Para ello en la consola tecleamos el nombre del ejecutable (Que en este caso es el mismo que el archivo fuente).

Al dar enter el resultado es… ¡NADA!. Pero eso es algo bueno.

Por que nuestro programa noTiene nada, es un programa sininstrucciones.

PRACTICA

Page 32: 2 poo u1 1 Introduccion

Pk0 VoidProgramComo mencionamos anteriormente, un

programa orientado a objetos esta compuesto por objetos y clases.

Cuando las entidades en nuestro programa son únicas, se codificaran en forma de clases con miembros estáticos.

Cuando se deseen entidades del mismo tipo pero con datos diferentes, se crearan como objetos a partir de una clase.

PRACTICA

Page 33: 2 poo u1 1 Introduccion

Pk0 VoidProgramUn programa principal es una sola entidad,

por lo que según la teoría expuesta anteriormente será representado con una clase.

¿Cómo esta compuesta una clase?

PRACTICA

Page 34: 2 poo u1 1 Introduccion

Pk0 VoidProgramExiste un lenguaje de modelado estándar

para representar nuestro programa, dicho lenguaje se llama UML (viene de Unified Modeling Language).

PRACTICA

Page 35: 2 poo u1 1 Introduccion

Pk0 VoidProgramPara representar una clase en UML se utilizan

las siguientes reglas:

Ref: http://goo.gl/iE9O6g

PRACTICA

Nombre de la Clase

Atributos / Datos

Métodos / Acciones

Page 36: 2 poo u1 1 Introduccion

Pk0 VoidProgramEn nuestro caso utilizaremos el programa

yED para crear el modelo de nuestro programa vació.

Para descargar yED ingresar en la siguiente página: http://www.yworks.com/en/products_yed_about.html

PRACTICA

Page 37: 2 poo u1 1 Introduccion

Pk0 VoidProgramEl modelo de nuestro programa vacío queda

de la siguiente manera:

PRACTICA

Page 38: 2 poo u1 1 Introduccion

Pk0 VoidProgramComparación.

PRACTICA

Page 39: 2 poo u1 1 Introduccion

Q & A

Enliste al menos 3 herramientas que se requieren para programar.

¿Que hay que hacer para instalar el compilador de C# en windows?

¿En que ruta esta localizado el compilador de C Sharp?

¿Para que sirve la variable de entorno PATH?¿Como se abre la línea de comandos en ambiente

windows?Enumere los pasos necesarios para que Windows

reconozca el compilador de C# desde cualquier ruta en la línea de comandos.

¿Que extensión debe tener un archivo fuente de C#?Escriba el comando para compilar desde la línea de

comandos un archivo fuente con el nombre "fuente.cs".

¿Como se llama el lenguaje estándar para describir un modelo de software orientado a objetos?

Page 40: 2 poo u1 1 Introduccion

En la práctica anterior compilamos un código fuente en la línea de comandos usando la instrucción:

csc nombreDelPrograma.csEl resultado es un ejecutable con el mismo

nombre que código fuente.

Sin embargo es posible compilar de tal forma que se especifique el nombre que debe de llevar el ejecutable, Investigar como lograrlo.

INVESTIGAR