introducción a visual c
TRANSCRIPT
Ing. Eric Huiza Pereyra.Net Senior Developer
Quadrem The Global eMarket Placewww.quadrem.com
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
Microsoft .Net. .Net Framework. Common Language Runtime. Garbage Collector. .Net Class Libraries.
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
Clase principal. Método Main. Método Main Parametrizado. Instrucciones Using. Namespace Principal. Archivos Secundarios. Clases parciales.
using System;
namespace MiPrimerPrograma{ public class Programa { public static void Main(string[] args) { foreach (string arg in args) Console.WriteLine(arg); Console.ReadLine(); return; } }}
ObjectObject
StringString
ArrayArray
DelegateDelegate
TiposTiposPorPor
ValorValor
Estructuras, EnumeracionesEstructuras, Enumeraciones
Int16Int16
Int32Int32
Date
Int64Int64
DoubleDouble
Decimal
Boolean
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.
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.
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;
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) {…}
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);
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;
}
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”;
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”}};
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.
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.
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.
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.
Genéricos. Métodos Anónimos. Iteradores. Clases parciales.
Variables implícitas. Expresiones Lambda. Tipos Anónimos. Métodos extensión. LiNQ.