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.
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
• 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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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.

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 elproceso 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 decomputadora (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 deprogramació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 deprogramació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 yorientada 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 yorientada 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 yorientada 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 yorientada 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 loslenguajes 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 loslenguajes 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 loslenguajes 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 deprogramació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 programade 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 programade 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 programade 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 programade 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 • Lossiguientes 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 programasagregando 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 delprograma • 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 delprograma © 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 espaciode 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 espaciode 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 espaciode 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 ejecutarun 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 desdeel 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 desdeel 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 desdeel 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 desdeel 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 desdeel 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 desdeel 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 usandoel 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 usandoel 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 usandoel 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 usandoel 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 usandoel 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 diferenciasentre 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 diferenciasentre 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é entornousar • 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 programade 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 definiruna 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.