Date post: | 15-Sep-2015 |
Category: |
Documents |
Upload: | adrian-abarca-orellana |
View: | 217 times |
Download: | 1 times |
14-05-2014
1
Induccin a Lenguaje Estructurado C#
Profesor Claudio Duque
Conceptos bsicos y primeros pasos
Que es el Lenguaje Estructurado C# ?
Los principales inventores de este lenguaje son: Anders Hejlsberg, Scott Wiltamuth, y Peter Golde. Creado, Utilizado e implementado por Microsoft desde Junio de 2000 de manera oficial. Es un lenguaje basado en C/C++ siendo una evolucin de estos lenguajes, retomando aspectos de Java y Delphi Utilizando estos cuatro lenguajes como base, lo cual se podra denominar como C++++ o C#, C Sharp o C Almohadilla. En estos momentos, Microsoft utiliza este lenguaje como complemento al nuevo aspecto tecnolgico denominado Framework .Net
14-05-2014
2
La Plataforma .NET: Es la infraestructura por la cual se pueden distribuir aplicaciones basadas en Web a gran variedad de dispositivos. Esta plataforma permite crear aplicaciones en distintos lenguajes de programacin, de manera que se comuniquen entre s.
La Orientacin a Objetos
La orientacin a objetos promete mejoras de amplio alcance en la forma de diseo, desarrollo y mantenimiento del software ofreciendo una solucin a largo plazo a los problemas y preocupaciones que han existido desde el comienzo en el desarrollo de software: la falta de portabilidad del cdigo y reusabilidad, cdigo que es difcil de modificar, ciclos de desarrollo largos y tcnicas de codificacin no intuitivas.
Un lenguaje orientado a objetos ataca estos problemas. Tiene
tres caractersticas bsicas: debe estar basado en objetos, basado en clases y capaz de tener herencia de clases. Muchos lenguajes cumplen uno o dos de estos puntos; muchos menos cumplen los tres. La barrera ms difcil de sortear es usualmente la herencia.
14-05-2014
3
Objetos:
Entender que es un objeto es la clave para entender cualquier lenguaje orientado a objetos.
Existen muchas definiciones que se le ha dado al Objeto. Primero empecemos entendiendo que es un objeto del mundo real. Un objeto del mundo real es cualquier cosa que vemos a nuestro alrededor.
Analicemos un poco ms a un objeto del mundo real, como la computadora. No necesitamos ser expertos en hardware para saber que una computadora est compuesta internamente por varios componentes:
14-05-2014
4
El trabajo en conjunto de todos estos componentes hace operar a una computadora.
Internamente, cada uno de estos componentes puede ser
sumamente complicado y puede ser fabricado por diversas compaas con diversos mtodos de diseo. Pero nosotros no necesitamos saber cmo trabajan cada uno de estos componentes. Cada componente es una unidad autnoma, y todo lo que necesitamos saber de adentro es cmo interactan entre s los componentes, saber por ejemplo si el procesador y las memorias son compatibles con la tarjeta madre, o conocer donde se coloca la tarjeta de video. Cuando conocemos como interaccionan los componentes entre s, podremos armar fcilmente una computadora.
Que tiene que ver esto con la programacin?
La programacin orientada a objetos (POO) trabaja de esta manera. Todo el programa est construido en base a diferentes componentes (Objetos), cada uno tiene un rol especfico en el programa y todos los componentes pueden comunicarse entre ellos de formas predefinidas.
Todo objeto del mundo real tiene 2 componentes: caractersticas y comportamiento.
Por ejemplo, los automviles tienen caractersticas (marca, modelo, color, velocidad mxima, etc.) y comportamiento (frenar, acelerar, retroceder, llenar combustible, cambiar llantas, etc.).
14-05-2014
5
Los Objetos de Software, al igual que los objetos del mundo real, tambin tienen caractersticas y comportamientos. Un objeto de software mantiene sus caractersticas en una o ms "variables", e implementa su comportamiento con "mtodos". Un mtodo es una funcin o subrutina asociada a un objeto.
Cuando a las caractersticas del objeto le ponemos valores decimos que el objeto tiene estados. Las variables almacenan los estados de un objeto en un determinado momento.
Definicin terica: Un objeto es una unidad de cdigo
compuesto de variables y mtodos relacionados.
Clases:
En el mundo real, normalmente tenemos muchos objetos del mismo tipo. Por ejemplo, nuestro telfono celular. Si hablamos en trminos de la programacin orientada a objetos, podemos decir que nuestro objeto celular es una instancia de una clase conocida como "celular". Los celulares tienen caractersticas (marca, modelo, sistema operativo, pantalla, teclado, etc.) y comportamientos (hacer y recibir llamadas, enviar mensajes multimedia, transmisin de datos, etc.).
14-05-2014
6
Cuando se fabrican los celulares, los fabricantes aprovechan el hecho de que los celulares comparten esas caractersticas comunes y construyen modelos o plantillas comunes, para que a partir de esas se puedan crear muchos equipos celulares del mismo modelo. A ese modelo o plantilla le llamamos CLASE, y a los equipos que sacamos a partir de ella la llamamos OBJETOS.
Esto mismo se aplica a los objetos de software, se puede tener muchos objetos del mismo tipo y mismas caractersticas.
Definicin terica: La clase es un modelo o prototipo que define las variables y mtodos comunes a todos los objetos de cierta clase. Tambin se puede decir que una clase es una plantilla genrica para un conjunto de objetos de similares caractersticas.
Por otro lado, una instancia de una clase es otra forma de
llamar a un objeto. En realidad no existe diferencia entre un objeto y una instancia. Slo que el objeto es un trmino ms general, pero los objetos y las instancias son ambas representacin de una clase.
Definicin Terica: Una instancia es un objeto de una clase en particular.
14-05-2014
7
Herencia:
La herencia es uno de los conceptos ms cruciales en la POO. La herencia bsicamente consiste en que una clase puede heredar sus variables y mtodos a varias subclases (la clase que hereda es llamada superclase o clase padre).
Esto significa que una subclase, aparte de los atributos y mtodos propios, tiene incorporados los atributos y mtodos heredados de la superclase. De esta manera se crea una jerarqua de herencia.
Por ejemplo, imaginemos que estamos haciendo el anlisis de un Sistema para una tienda que vende y repara equipos celulares.
En el grfico vemos 2 Clases ms que posiblemente necesitemos para crear nuestro Sistema. Esas 2 Clases nuevas se construirn a partir de la Clase Celular existente. De esa forma utilizamos el comportamiento de la Superclase.
14-05-2014
8
En general, podemos tener una gran jerarqua de Clases tal y como vemos en el siguiente grfico:
Ventajas Orientacin a Objeto
14-05-2014
9
El Using y el Main lo bsico!
Comencemos con C#....
La directiva using ayuda al compilador a localizar una clase que utiliza la aplicacin.
using:
System: El espacio de nombres System contiene clases fundamentales y clases base que definen tipos de datos de referencia y de valor de uso frecuente, eventos y controladores de eventos, interfaces, atributos y excepciones de procesamiento.
La palabra Class introduce una declaracin de una clase definida por el usuario. La llave izquierda, {, comienza el cuerpo de cualquier declaracin y la llave derecha, }, debe terminar cualquier declaracin.
Class:
14-05-2014
10
La clase Console es de entrada/salida estndar , la cual permite leer y mostrar texto en la ventana de la consola. Console.WriteLine: muestra o imprime una lnea de texto en la ventana de la consola.
Main: El mtodo Main indica que comienza la ejecucin de una aplicacin y es obligatorio su uso en una aplicacin.
Indica que el mtodo Main no devolver informacin despus de realizar la tarea.
void:
Console:
Buenas prcticas de Programacin
Cada instruccin termina con punto y coma (;)
C# es sensible a las maysculas y minsculas.
Siempre que escriba una llave izquierda ,{, escriba de inmediato una
llave derecha, }.
Utilice sangra siempre a todo el cuerpo del programa.
Todas las declaraciones using deben aparecer antes de cualquier
cdigo (excepto comentarios)
El compilador ignora todos los espacios en blancos.
Las palabras reservadas siempre se escriben en minsculas.
Todos los nombre de clase deben comenzar con letras maysculas
seguidas de minsculas, ejemplo: NombreClaseEjemplo
14-05-2014
11
Palabras claves en C#
Formato de Texto Console.Write: muestra una cadena de texto, posicionando el cursor al final de la cadena de texto. Console.WriteLine: muestra una cadena de texto, posicionado el cursor en la siguiente lnea. Ejemplo: Barra diagonal inversa (\): es el carcter de escape y sirve para indicar que hay un carcter especial en la cadena de texto. Ejemplo:
Console.WriteLine("bienvenido a "); Console.Write("la programacin en C#");
Console.WriteLine("bienvenido\n a la\n programacin en\n C#");
14-05-2014
12
WriteLine: es una cadena de formato, la cual puede consistir en texto fijo y elementos de formato. Cada elemento de formato van encerrados entre llaves , que indica al mtodo que argumento debe utilizar y cmo darle formato. Ejemplo:
Console.WriteLine("{0}\n{1}","bienvenido a la", "programacin en C#");
Formato de Texto
Tabla de Secuencia de Escape
14-05-2014
13
Ejemplo: Suma enteros
Programas simples en C#
Declaracin de variables: Ejemplo:
La variable numero1 es de tipo entera Rango de valores de un int es -2.147.483,648 a +2.147.483.647
Console.ReadLine(): este mtodo espera que el usuario ingrese una cadena de caracteres y que presione INTRO para ingresar esa cadena. Convert.ToInt32:convierte una secuencia de caracteres en datos a tipo int. Ejemplo:
14-05-2014
14
Otras Variables y Constantes a manipular
C#
bool = true;
double PI = 3.1416;
char ch = d ;
string var ;
Tipos de Datos
object bool char string sbyte byte short Int ushort, uint, ulong Float double decimal long
14-05-2014
15
Buenas prcticas de Programacin
Agregar comentarios por cada lnea de cdigo, esto ayuda a la auto documentacin.
Seleccione nombres de variables significativos, esto ayuda a que el programa se auto documente.
Por convencin el nombre de las variables debe comenzar con una letra minscula.
Tabla de Operadores Aritmticos
14-05-2014
16
Tabla de Operadores de Igualdad y Relaciones
Tabla de Precedencia de Operadores Aritmticos
14-05-2014
17
Ejercicios Escriba un programa que solicite al usuario ingresar dos
nmeros, tome los nmeros, e imprima la suma, el producto, la diferencia, la divisin y el resto.
Escriba un programa que permita calcular el Permetro de un rectngulo
Permetro = 2( base + altura)
Escriba un programa que permita calcular el permetro de un cuadrado
Permetro = 4(lado)
Escriba un programa que permita calcular el rea de cuadrado rea = ancho * ancho