17
14-05-2014 1 Inducción a Lenguaje Estructurado C# Profesor Claudio Duque ‘’ Conceptos básicos 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 evolución de estos lenguajes, retomando aspectos de Java y Delphi… Utilizando estos cuatro lenguajes como base, lo cual se podría denominar como C++++ o C#, C Sharp o C Almohadilla. En estos momentos, Microsoft utiliza este lenguaje como complemento al nuevo aspecto tecnológico denominado Framework .Net

Clase 1 - Induccion a Lenguaje Estructurado C#

Embed Size (px)

DESCRIPTION

Introducción a Lenguaje estructurado para careras de programación comutacional

Citation preview

  • 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