Você está na página 1de 17

14-05-2014

Induccin a Lenguaje Estructurado


C#
Conceptos bsicos y primeros pasos

Profesor Claudio Duque

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

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

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

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

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

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

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

En general, podemos tener una gran jerarqua de


Clases tal y como vemos en el siguiente grfico:

Ventajas Orientacin a Objeto

14-05-2014

Comencemos con C#....


El Using y el Main lo bsico!

using:
La directiva using ayuda al compilador a localizar una clase que utiliza la
aplicacin.

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.

Class:
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.

14-05-2014

Main:
El mtodo Main indica que comienza la ejecucin de una aplicacin y es
obligatorio su uso en una aplicacin.

void:
Indica que el mtodo Main no devolver informacin despus de
realizar la tarea.

Console:
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.

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

10

14-05-2014

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:
Console.WriteLine("bienvenido a ");
Console.Write("la programacin en C#");
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\n a la\n programacin en\n C#");

11

14-05-2014

Formato de Texto
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#");

Tabla de Secuencia de Escape

12

14-05-2014

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:

13

14-05-2014

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

14-05-2014

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

15

14-05-2014

Tabla de Operadores de Igualdad y


Relaciones

Tabla de Precedencia de Operadores


Aritmticos

16

14-05-2014

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

17

Você também pode gostar