2 poo u1 2 Hola mundo

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

Transcript of 2 poo u1 2 Hola mundo

Page 1: 2 poo u1 2 Hola mundo

M.C Ivan Rivalcoba

PROGRAMACIÓN ORIENTADA A

OBJETOSC# & .NET

1. FUNDAMENTOS POO (OOP)HOLA MUNDO

Page 2: 2 poo u1 2 Hola mundo

A continuación se muestra el proceso de compilación de C#.

PROCESO DE COMPILACIÓN

Page 3: 2 poo u1 2 Hola mundo

En esta nueva práctica procederemos a crear un programa típico de iniciación llamado “Hola Mundo”.

Este programa es típicamente usado para iniciar cualquier lenguaje, puedes ver la historia del “Hello Wordl!” aquí: http://en.wikipedia.org/wiki/Hello_world_program

Básicamente un programa Hola mundo despliega el texto “¡Hola mundo!”. Esta será la práctica Pk1_Hw

HOLA MUNDO

Page 4: 2 poo u1 2 Hola mundo

Comenzamos por crear un folder llamado Pk1 en nuestro directorio de trabajo. Y guardar la Pk0 en su correspondiente directorio.

De aquí en adelante esta será la forma de organizar nuestro trabajo.

HOLA MUNDO

Page 5: 2 poo u1 2 Hola mundo

Por lo pronto crearemos la estructura de un programa con esta modificación:

HOLA MUNDO

Page 6: 2 poo u1 2 Hola mundo

Este código sigue siendo un programa vacío, la única diferencia son esas líneas adicionales, las cuales son llamadas “comentarios”.

HOLA MUNDO

Page 7: 2 poo u1 2 Hola mundo

Los comentarios son notas para el programador, que hacen al código mas legible, estas líneas son ignoradas por el compilador.

HOLA MUNDO

Page 8: 2 poo u1 2 Hola mundo

En C# hay tres tipos de comentarios. De Bloque: Inician con “/*” terminan con “*/”

De Línea: Inician con “//”

De Documentación: Se aplican con /// por cada línea.

HOLA MUNDO

Page 9: 2 poo u1 2 Hola mundo

Para comprobar que el compilador no toma en cuenta estas líneas de código, compilar el programa y ejecutarlo. El resultado deberá ser el mismo, nuestro asombroso Nada.

En este ejemplo se compilo el fuente a un “pk1.exe”

HOLA MUNDO

Page 10: 2 poo u1 2 Hola mundo

Para poder completar nuestro “hola mundo” es preciso enviar una cadena de texto que en ingles es “string” a la pantalla.

Para poder lograr esta hazaña tendríamos que saber el API de Windows.

Sin embargo para fortuna de nosotros disponemos de un grande y poderoso conjunto de funciones pre programadas que podemos usar en nuestros programas de C#, este grupo es el Framework Class Library.

HOLA MUNDO

Page 11: 2 poo u1 2 Hola mundo

La Framework Class Library (FCL) forma parte del “.Net Framework”.

La FCL esta compuesta por una librería amplia de clases, interfaces y valores, muy útiles a la hora de programar.

La FCL esta organizada en un sistema lógico llamado “NameSpaces”.

HOLA MUNDO

Page 12: 2 poo u1 2 Hola mundo

Un “Namespace” o espacio de nombres en español puede ser visto como un cajón de un gran archivero.

Cada cajón tiene un nombre, y es por ese nombre que sabemos con que tipo de herramientas cuenta ese cajón.

HOLA MUNDO

Page 13: 2 poo u1 2 Hola mundo

Una vista simplificada del FCL se muestra a continuación.

HOLA MUNDO

Page 14: 2 poo u1 2 Hola mundo

Dentro de todo el FCL nos interesa el espacio de nombres “System” mismo que contiene una clase llamada “Console”, esta clase se encarga de modelar la consola del sistema operativo.

Un punto importante es que la consola termina siendo modelada como una clase en el FCL, por lo cual podemos disponer de sus métodos públicos.

HOLA MUNDO

Page 15: 2 poo u1 2 Hola mundo

Los métodos de una entidad (clase o método) son accesibles desde otro método siempre y cuando desde su definición se hayan declarado como públicos.

Para conocer todos los métodos de la clase Console, así como para conocer las demás clases de FCL es necesario acceder a la documentación, un buen sitio es el siguiente:http://msdn.microsoft.com/en-us/library/gg145045(v=vs.110).aspx

HOLA MUNDO

Page 17: 2 poo u1 2 Hola mundo

A lo largo de este curso veremos varios elementos del FCL.

Por lo pronto nos interesan 2 métodos de Console que nos permiten escribir en Pantalla: Write WriteLine

Realmente la función de estos métodos es escribir información en la salida estándar. Que por default es el monitor.

HOLA MUNDO

Page 18: 2 poo u1 2 Hola mundo

La sintaxis que se sigue es la siguiente:

HOLA MUNDO

EspacioDe

Nombres

Clase Método Parámetros

Salida

Page 19: 2 poo u1 2 Hola mundo

Todo el programa completo queda la siguiente forma:

HOLA MUNDO

Salida

Page 20: 2 poo u1 2 Hola mundo

Este pequeño programa nos enseña mucho de C#.

La clase Console contiene un método llamado Write. Observando el método Main y el método Write, podemos inferir que todo método debe de llevar un paréntesis al final:

HOLA MUNDO

Page 21: 2 poo u1 2 Hola mundo

Dentro de dichos paréntesis van cero, uno o varios elementos llamados Parámetros.

Los parámetros de un método pueden ser definidos como los datos que necesita el método para llevar acabo su función.

HOLA MUNDO

String

Page 22: 2 poo u1 2 Hola mundo

Para poder especificar el valor de un string (cadena de caracteres) en C# se debe de encerrar el string entre comillas dobles.

Cuando se expresan los valores directos de los datos, se dice que se están expresando literales.

Otra observación del programa es que cada acción o declaración en el mismo debe ser finalizada con un “;”, cada línea que termina con “;” (semicolon) es llamado una sentencia.

HOLA MUNDO

Page 23: 2 poo u1 2 Hola mundo

Las observaciones hechas anteriormente nos permite tener cuidado de evitar errores en la sintaxis.

Cuando no seguimos las sintaxis de un lenguaje correctamente, el compilador no estará en posibilidades de hacer la traducción a código máquina. Aun cuando el error sea tan pequeño como omitir un “;”.

HOLA MUNDO

Page 24: 2 poo u1 2 Hola mundo

Como ejemplo de esto, realizaremos un par de pruebas y veremos lo códigos de error que el compilador emite en su trabajo de traducción.

Falta de “;” al final de la sentencia.

HOLA MUNDO

Page 25: 2 poo u1 2 Hola mundo

No se escribe correctamente la literal string..

HOLA MUNDO

Page 26: 2 poo u1 2 Hola mundo

No se capitalizan las entidades correctamente.

HOLA MUNDO

Page 27: 2 poo u1 2 Hola mundo

No esta presente un método Main().

HOLA MUNDO

Page 28: 2 poo u1 2 Hola mundo

¿Que son los comentarios en la programación?

¿Cuantos tipos de comentarios hay en C#?¿Que es el FCL?¿Que son los namespaces?¿Para que sirven los namespaces?¿De que tipo son aquellos métodos que

pueden ser accedidos desde cualquier otro método?

¿Console es una clase, un método, un dato, o un namespace, o todos los anteriores?

Q & A

Page 29: 2 poo u1 2 Hola mundo

¿Como se puede redirigir la salida estándar de un programa hacia un archivo?

¿Como se le llaman a las expresiones que expresan los valores directos de los datos?

¿Que es una sentencia en la programación?¿Como se llaman aquellos errores que

provocan que el compilador no pueda realizar una correcta traducción de un código fuente?

Q & A