introducción a visual c
TRANSCRIPT
![Page 1: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/1.jpg)
Ing. Eric Huiza Pereyra.Net Senior Developer
Quadrem The Global eMarket Placewww.quadrem.com
![Page 2: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/2.jpg)
Introducción. Anatomía de un programa. Tipos de datos. Boxing/Unboxing. Construcciones de Decisión. Construcciones de Iteración. Estructuras, Enumeraciones y Constantes. Arreglos. Programación Orientada a Objetos. Características de C# 2.0 Características de C# 3.0
![Page 3: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/3.jpg)
Microsoft .Net. .Net Framework. Common Language Runtime. Garbage Collector. .Net Class Libraries.
![Page 4: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/4.jpg)
Visual C#Visual C# OtrosOtros lenguajes de programación (VB.Net, J#)lenguajes de programación (VB.Net, J#)
Win FormsWin Forms ASP .NetASP .Net .Net Compact .Net Compact FrameworkFramework
Common Language RuntimeCommon Language Runtime
Sistema OperativoSistema Operativo
![Page 5: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/5.jpg)
Clase principal. Método Main. Método Main Parametrizado. Instrucciones Using. Namespace Principal. Archivos Secundarios. Clases parciales.
![Page 6: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/6.jpg)
using System;
namespace MiPrimerPrograma{ public class Programa { public static void Main(string[] args) { foreach (string arg in args) Console.WriteLine(arg); Console.ReadLine(); return; } }}
![Page 7: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/7.jpg)
ObjectObject
StringString
ArrayArray
DelegateDelegate
TiposTiposPorPor
ValorValor
Estructuras, EnumeracionesEstructuras, Enumeraciones
Int16Int16
Int32Int32
Date
Int64Int64
DoubleDouble
Decimal
Boolean
![Page 8: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/8.jpg)
Tipos por valor.◦ Las variables contienen acceso valor del tipo de dato.◦ Durante la transferencia de datos solo se pasa una
copia del valor a menos que se especifique lo contrario.
Tipos por referencia.◦ Las variables contienen la dirección en memoria.◦ Forma moderna de representar punteros.
![Page 9: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/9.jpg)
Uso del tipo genérico Object como contenedor de cualquier tipo de dato.
Perdida de rendimiento durante la ejecución del código.
Comúnmente utilizado en colecciones y listas enlazadas.
![Page 10: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/10.jpg)
Instrucción If.◦ Ejecución de una porción de código si una condición se
cumple.if (condición) { … }
Instrucción Switch.◦ Ejecución de código usando selección múltiple
switch (condición) case 1:case 2:case 3 .. break; Operador ternario.◦ Permite realizar instrucciones if else de forma resumida.
bool espar = (numero % 2 == 0)?true:false;
![Page 11: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/11.jpg)
Instrucción for.◦ Permite ejecutar una porción de código un numero
determinado de veces.for (int counter = 0;counter < total;counter++){…}
Instrucción foreach.◦ Permite recorrer colecciones, diccionarios y arreglosforeach (string arg in args) {…}
![Page 12: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/12.jpg)
Instrucción while.◦ Permite ejecutar una porción de código hasta que
una condición deje de ser cumplida.while (true) {…}
Instrucción do while.◦ Su funcionamiento es igual a la instrucción while,
pero esta ejecuta la porción de código al menos una vez.
do { …} while(true);
![Page 13: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/13.jpg)
Estructuras.◦ Agrupación de tipos de datos (valor o referencia) que
permite generar tipos por valor. Tener en consideración Boxing/Unboxing.
public struct Alumno{
public string Codigo;public double Promedio;
}
![Page 14: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/14.jpg)
Enumeraciones.◦ Conjunto de valores con nombre bien definido y
agrupados por características.public enum { New, Pending, Invoiced }
Constantes.◦ Almacén de datos invariables.private const string OC = “Orden de Compra”;
![Page 15: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/15.jpg)
Vectores.◦ Estructura de datos unidimensional que puede
ser recorrida usando índices.Int[] números = {1, 2, 3, 4, 5};
Matrices.◦ Estructura de datos multidimensional que puede
ser recorrida usando índices, sus dimensiones pueden ser variables.
string[][] dias = {{“lunes”, “martes”}, {“miércoles”, “jueves”}};
![Page 16: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/16.jpg)
Clase.◦ Plantilla abstracta que permite la generación de objetos
de cierto tipo otorgado por la clase.◦ Las clases son tipos por referencia por excelencia.
Objeto.◦ Instancia de una clase, tiene autonomía.
Constructor.◦ Permite inicializar las variables miembro de un objeto.
Destructor.◦ Permite liberar recursos utilizados el objeto.
![Page 17: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/17.jpg)
Encapsulamiento.◦ Los objetos son autónomos y tienen sus propias
características y funcionalidad.◦ Tienen barreras bien definidas a traves de los
modificadores de acceso.◦ Los miembros pueden tener alguno de los siguientes
modificadores de acceso: Public, Private, Protected, Internal, Internal Protected.
![Page 18: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/18.jpg)
Herencia.◦ Permite la creación de estructuras jerárquicas,
permitiendo de ese modo la especialización y reutilización del código.◦ C# permite la herencia simple, permitiendo que una
clase pueda heredas características de una sola clase.◦ C# permite la implementación de múltiples
interfaces.
![Page 19: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/19.jpg)
Polimorfismo.◦ Permite una diferente reacción al mismo mensaje.◦ Cuando es generado a través de la herencia, las
clases derivadas son las encargadas de modificar el contenido del mensaje.◦ Cuando es generado a través de la implementación
de interfaces, cada implementación puede dar un comportamiento diferente.
![Page 20: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/20.jpg)
Genéricos. Métodos Anónimos. Iteradores. Clases parciales.
![Page 21: IntroduccióN A Visual C](https://reader033.vdocuments.mx/reader033/viewer/2022051413/5598220f1a28ab9c648b4822/html5/thumbnails/21.jpg)
Variables implícitas. Expresiones Lambda. Tipos Anónimos. Métodos extensión. LiNQ.