Más contenido relacionado Similar a Microsoft visual c# (20) Microsoft visual c#1. 1
Microsoft Visual C#: una introducción a la
programación orientada a objetos
Un primer programa usando C#
Dra. Nitza I. Cortés
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or
service or otherwise on a password-protected website for classroom use.
2. Objetivos
• Describir el proceso de programación.
• Describir el lenguaje de programación C#.
• Mejorar los programas agregando comentarios
y utilizando el espacio de nombres del sistema.
© 2018 Cengage. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or otherwise on a password-
protected website for classroom use.
3. 3
• Programa de computadora (también llamado software)
• Un conjunto de instrucciones que le dice a una computadora
qué hacer.
• El software viene en dos amplias categorías
• Software del sistema – programas que operan la computadora
• Software de aplicación – permite a los usuarios completar
tareas
• Hardware – los dispositivos físicos que componen un sistema
informático.
• Lenguaje de máquina
• Expresado como una serie de 1s y 0s.
-Los 1s representan interruptores que están encendidos y los 0
representan interruptores que están apagados.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
El proceso de programación
4. 4
El proceso de programación
• Lenguaje de programación de alto nivel
• Utiliza palabras razonables como “leer”, “escribir” o “agregar”
en lugar de la secuencia de interruptores de encendido/apagado
que realizan estas tareas.
• Permite asignar nombres razonables a áreas de memoria de la
computadora.
• Tiene su propia sintaxis (reglas del lenguaje).
• Compilador
• Traduce declaraciones de lenguaje de alto nivel en lenguaje
máquina.
• El compilador emite un mensaje de error cada vez que un
programador comete un error de sintaxis.
• El error de sintaxis es cuando el programador usa el lenguaje
incorrectamente.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
5. 5
El proceso de programación
• Lógica de Programación
• Implica ejecutar las diversas declaraciones y procedimientos en
el orden correcto para producir los resultados deseados.
• Debugging (Depuración)
• El proceso de eliminar todas las sintaxis y errores lógicos del
programa.
• Los errores de sintaxis se descubren a través de la compilación.
• Los errores lógicos se descubren a través de las pruebas.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
6. 6
Programación procesal y orientada a objetos
• Programa de procedimiento
• Crea y nombra ubicaciones de memoria de la computadora que
pueden contener valores (variables) a los que se hace referencia
mediante el uso de un nombre de una palabra (identificador).
• Escribe una serie de pasos u operaciones para manipular esos
valores.
• Procedimientos o métodos
• Unidades lógicas que agrupan operaciones individuales
utilizadas en un programa de computadora.
• Llamado o invocado por otros procedimientos o métodos.
• Un único programa de procedimiento a menudo contiene
cientos de variables y miles de llamadas a métodos.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
7. 7
Programación procesal y orientada a objetos
• Object-oriented programming (OOP) Programación orientada
a objetos
• Una extensión de la programación procesal.
• Objetos
• Similar a los objetos concretos en el mundo real.
• Contiene sus propios atributos y comportamientos.
• Los atributos de un objeto representa sus características.
• El estado de un objeto es el valor colectivo de todos sus
atributos.
• Los comportamientos de un objeto, o métodos, son las cosas
que “hace”.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
8. 8
Programación procesal y orientada a objetos
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
9. 9
Programación procesal y orientada a objetos
Un enfoque orientado a objetos para la programación significa
definir los objetos necesarios para realizar una tarea y desarrollar
clases que describan esos objetos.
• La programación orientada a objetos se utilizó originalmente para
dos tipos de aplicaciones:
• Simulaciones por computadora
• Interfaces gráficas de usuario (GUIs) Graphical user interfaces
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
10. 10
Características de los lenguajes de programación
orientados a objetos
• Para que un lenguaje se considere orientado a objetos, debe admitir:
• Clases
• Objetos
• Encapsulación e interfases
• Herencia
• Poliformismo
• Clase
• Una categoría de objetos o un tipo de objeto
• Describe los atributos y comportamientos de cada objeto que es una
instancia u objeto de esa clase.
• Objeto
• Una instancia de una clase
• Contiene su propio conjunto de valores de atributos (también llamados
propiedades del objeto)
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
11. 11
Características de los lenguajes de programación
orientados a objetos
• Encapsulación
• Una técnica de empaquetar los atributos y comportamientos de
un objeto en una unidad cohesiva; una entidad indivisa.
• Usar un cuadro negro para controlar qué comportamientos
están expuestos a los métodos de llamada.
• Interfase
• La interacción entre un método y los comportamientos
expuestos de un objeto.
• Utiliza el paso de mensajes para solicitar y recibir información.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
12. 12
Características de los lenguajes de programación
orientados a objetos
• Herencia
• Proporciona la capacidad de extender una clase para crear una
clase más específica.
• La clase más específica contiene todos los atributos y métodos
de la clase más general y generalmente también contiene
nuevos atributos o métodos.
• Polimorfismo
• Describe la capacidad de crear métodos que actúen
adecuadamente según el contexto.
• Los programas escritos en lenguajes orientados a objetos
pueden distinguir entre métodos con el mismo nombre en
función del tipo de objeto que los usa.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
13. 13
El lenguaje de programación C#
• Desarrollado como un lenguaje orientado a objetos y componentes.
• Parte de Microsoft Visual Studio
• Un paquete diseñado para desarrollar aplicaciones que se ejecutan en
computadoras con Windows.
• Permite que cada pieza de datos sea tratada como un objeto y emplee
consistemente los principios de la programación orientada a objetos.
• Caracteristicas de C#:
• Contiene una interfaz GUI que lo hace similar a Visual Basic, pero se
considera más concisa que Visual Basic.
• Modelado a partir del lenguaje de programación C++
• Similar a Java
-C# está más orientada a objetos.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
14. 14
Escribir un programa de C# que produzca
resultados
• Cadena literal de caracteres
• Una serie de caracteres que se usarán exactamente como se
ingresaron.
• En C#, aparece entre comillas dobles.
• Argumentos
• Representa la información que un método necesita para realizar
su tarea.
• Los argumentos a los métodos siempre aparecen entre
paréntesis.
• The WriteLine()method
• Un método integrado que forma parte del lenguaje C# que
muestra el resultado en la pantalla y coloca el cursor en la línea
siguiente.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
15. 15
Escribir un programa de C# que produzca
resultados
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
16. 16
Escribir un programa de C# que produzca
resultados
• Namespace Espacio de nombres
• Proporciona una forma de agrupar clases similares.
• Se puede usar para evitar conflictos de nombres en grandes
proyectos.
• Partes del método C#
• Method header Cabecera del método
-Incluye el nombre del método e información sobre lo que
pasará y se devolverá de un método.
• Cuerpo del método
-Contiene dentro de un par de llaves e incluye todas las
instrucciones ejecutadas por el método.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
17. 17
Escribir un programa de C# que produzca
resultados
• Espacio en blanco
• Cualquier combinación de espacios, tabulaciones y retornos de
carro (líneas en blanco)
• Organiza su código y facilita su lectura.
• Palabras claves
• Identificadores predefinidos y reservados que tienen un
significado especial para el compilador.
• El nombre del método es Main()
• Cada aplicación debe tener un método Main().
• Las clases con un método Main() se denominan clases de
aplicación; otros son clases que no son de aplicación.
• El método no devuelve nada como lo indica la palabra clave
void.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
18. 18
Seleccionar identificadores
• Requerimientos
• Debe comenzar con un guión bajo (underscore), el signo (@), o
una letra.
-Las letras incluyen letras del alfabeto extranjero.
• Puede contener solo letras, dígitos, guiones bajos (underscores),
y el signo de (@).
-No caracteres especiales como #, $, or &
• No puede ser una palabra clave reservada de C#, como class o
void.
• Un identificador con un prefijo @ es un identificador literal
• Esta función le permite usar código escrito en otros idiomas que
no tienen el mismo conjunto de palabras clave reservadas.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
19. 19
Seleccionar identificadores
• Los siguientes identificadores tienen un significado especial en C#,
pero no son palabras claves:
• add, alias, get, global, partial, remove, set,
value, where, and yield
• Debe evitar usar estas palabras como sus propios identificadores
• La Figura 1-3 muestra un programa que puede usarse como shell.
• Donde reemplaza el identificador AnyLegalClassName con
cualquier nombre de clase legal y la línea /********/ con
cualquier declaración que desee ejecutar.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
20. 20
Mejora de programas agregando comentarios y
usando el espacio de nombres del sistema
• Incluso los programas simples de C# toman varias líneas de código.
• Los programas grandes que realizan muchas tareas incluyen
muchos más códigos.
• Dos cosas que puede hacer de inmediato son:
• Agregar comentarios del programa
• Use el espacio de nombres del sistema (System namespace).
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
21. 21
Agregar comentarios del programa
• Comentarios del programa
• Declaraciones no ejecutivas que documentan un programa.
• Los programadores los usan para dejar notas para ellos y para
otros que puedan leer sus programas.
• Comentar
• Convierta una declaración en un comentario para que el
compilador la ignore.
• Tipos de comentarios en C#
• Comentarios de línea – comience con //
• Bloquear comentarios – comience con /* y termine con */
• Comentarios del formato de documentación XML– utilice un
conjunto especial de etiquetas entre corchetes angulares
“brackets” <>
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
22. 22
Agregar comentarios del programa
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
23. 23
Usando el espacio de nombres del sistema
• El programa en la Figura 1-5 produce las tres líneas de salida que
se muestran en la Figura 1-6
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
24. 24
Usando el espacio de nombres del sistema
• Cuando necesita usar repetidamente una clase del mismo espacio
de nombres
• Puede acortar las declaraciones agregando una cláusula que
indique un espacio de nombres que contenga la clase.
• Indique un espacio de nombres con using clause o using
directive.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
25. 25
Usando el espacio de nombres del sistema
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
26. 26
Compilar y ejecutar un programa de C#
• Pasos para ver la salida de un programa
• Compilar código de fuente en lenguaje intermedio (IL).
• El compilador C# just in time (JIT) traduce el código intermedio
en sentencias ejecutables.
• Puede usar cualquiera de las dos formas de compilar
• La línea de comando – la línea en la que escribe un comando en
un sistema que utiliza una interfaz de texto.
• El entorno de desarrollo integrado (IDE) – un entorno de
programación que le permite emitir comandos seleccionando
opciones de los menús y haciendo clic en los botones.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
27. 27
Compilar código desde el símbolo del sistema
• En el símbolo del sistema:
• Cambia la ruta a la ubicación de tu archivo.
• Escriba csc, seguido del nombre del archivo que contiene el código fuente.
-El comando csc significa compilador C Sharp.
• Ejemplo: para compilar un archivo llamado ThreeLinesOutput.cs escriba:
• csc ThreeLinesOutput.cs y presione enter
• Uno de los tres resultados es posible:
• Recibir un mensaje de error del sistema operativo, como un comando
incorrecto o un nombre de archivo.
• Reciba uno o más mensajes de error del idioma del programa.
• No recibe mensajes de error, lo que indica que el programa se compiló
correctamente.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
28. 28
Compilar código desde el símbolo del sistema
• Si recibe un mensaje de error del sistema operativo, como no se
reconoce csc …, o no se puede encontrar el archivo de origen…
puede significar:
• Escribió mal el comando csc
• Escribió mal el nombre del archivo.
• Olvidó incluir la extensión .cs con el nombre del archivo.
• No está dentro del subdirectorio o carpeta correctos en su línea
de comando.
• El compilador C# no se instaló correctamente.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
29. 29
Compilar código desde el símbolo del sistema
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
30. 30
Compilar código desde el símbolo del sistema
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
• Si recibe un mensaje de error del lenguaje de programación
• Significa que el compilador se instaló correctamente, pero que el
código fuente contiene uno o más errores de sintaxis.
• Se produce un error de sintaxis cuando introduce errores de
escritura en su programa.
• Los mensajes de error del programa comienzan con el nombre del
programa, seguido de paréntesis que contienen el número de
línea y la posición en la línea donde el compilador notó el error.
31. 31
Compilar código desde el símbolo del sistema
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
32. 32
Compilar código desde el símbolo del sistema
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
• Si no recibe mensajes de error después de compilar el código
• El programa se compiló correctamente y se creó un archivo con
el mismo nombre que el código fuente y se guardó en la misma
carpeta que el archivo de texto del programa.
• El nuevo nombre de archivo tendrá una extensión .exe
• Para ejecutar el programa desde la línea de comando
• Simplemente escribe el nombre del programa.
• Ejemplo: ThreeLinesOutput o ThreeLinesOutput.exe
33. 33
Compilar código usando el IDE de Visual Studio
• Ventajas de usar el IDE de Visual Studio
• Parte del código que necesita ya está creado para usted.
• El código se muestra en color.
• Algunos errores de sintaxis se detectan a medida que escribe.
• Puede hacer doble clic en un mensaje de error y el cursor se
moverá a la línea de código que contiene el error.
• Otras herramientas de depuración están disponibles.
• Abra Visual Studio escribiendo Visual Studio en el cuadro de
búsqueda “Pregúnteme cualquier cosa”.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
34. 34
Compilar código usando el IDE de Visual Studio
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
35. 35
Compilar código usando el IDE de Visual Studio
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
• Una forma de compilar un programa desde Visual Studio es
seleccionar Build desde la barra de menú.
• Luego seleccione Build Solution en el menú desplegable.
• Una alternativa es presionar Ctrl+Shift+B
• También puede seleccionar Depurar (Debug) en la barra de menú.
• Luego haga clic en Start Without Debugging
36. 36
Compilar código usando el IDE de Visual Studio
• Si introduce un error de sintaxis en un programa en el IDE
• Recibe un mensaje de error del lenguaje de programación
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
37. 37
Compilar código usando el IDE de Visual Studio
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
• Si no recibe mensajes de error después de compilar el código
• El programa se compiló correctamente y puede ejecutar el
programa.
• Seleccionar Debug en la barra de menú.
• Luego seleccione Start Without Debugging
38. 38
Notando las diferencias entre los programas en
el editor de texto y el IDE
• Hay algunas diferencias entre los programas ThreeLinesOutput
programs en las Figuras 1-8 and 1-12
• La versión de Visual Studio en la Figura 1-12 contiene
componentes adicionales resaltados en la Figura 1-14
• Cinco usando declaraciones en la parte superior del archivo.
• Una declaración de espacio de nombres y sus llaves de apertura y
cierre.
• Una clase llamada Program.
• Las palabras string[] args entre paréntesis del encabezado
del método Main().
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
39. 39
Notando las diferencias entre los programas en
el editor de texto y el IDE
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
40. 40
Decidir qué entorno usar
• Ventaja de usar la línea de comando
• Ahorra espacio en disco.
• Ventajas de usar el IDE de Visual Studio
• Operación automática completada.
• Las palabras se muestran usando diferentes colores según su
categoría.
• Más fácil corregir muchos errores.
• El código generado automáticamente por el IDE es muy útil al
escribir una GUI.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
41. 41
Resumen
• Un programa de computadora es un conjunto de instrucciones
que le indica a una computadora qué hacer.
• La programación procesal implica la creación de variables y
métodos.
• En la programación orientada a objetos, el foco está en los objetos
que encapsula variables y métodos.
• Los objetos son instancias de clases y están formados por
atributos y métodos.
• El lenguaje de programación C# es un lenguaje orientado a objetos
y a componentes.
• Para producir una línea de salida de consola, debe pasar una
cadena literal como argumento al método
System.Console.WriteLine().
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.
42. 42
Resumen
• Puede definir una clase o variable C# utilizando cualquier nombre
o identificador.
• Los comentarios son declaraciones no ejecutivas que agrega para
documentar un programa.
• O para deshabilitar las declaraciones cuando prueba un
programa.
• Use espacios de nombres para mejorar programas.
• Para crear un programa C#, se puede usar el IDE de Microsoft
Visual Studio o cualquier editor de texto.
© 2018 Cengage. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part, except for use as permitted in a license distributed with a certain product or service or
otherwise on a password-protected website for classroom use.