Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introducción A La Programación Orientada A Objetos en C# y Visual
Introducción A La Programación Orientada A Objetos en C# y Visual
Objetivo
Mostrar cmo aplicar los conceptos fundamentales de programacin orientada a objetos utilizando los lenguajes Microsoft Visual C#.NET y Microsoft Visual Basic.NET
Prerrequisitos
Poseer los conocimientos proporcionados en los siguientes mdulos de la Estrella 0:
Temas a Tratar
Introduccin a C# y VB.NET Sintaxis
Temas Generales Definicin e inicializacin de variables Operadores Estructuras de Control Clases y Objetos
Visual C#.NET
Creado especialmente para .NET Estndar ECMA (2002) Orientado a Objetos y Componentes Sintaxis derivada de C, C++, Delphi y Java
Visual Basic.NET
Rediseado especialmente para .NET 100% Orientado a Objetos y Componentes Salvo por pequeas excepciones, la sintaxis es la misma de VB6 y sus predecesores Tiene la misma potencia, robustez y capacidades de acceso a .NET que C#
Compiladores (1/2)
Compilador de Lnea de Comandos C# Cumple con la especificacin del CLS <Win>\Microsoft.NET\Framework\<version>\csc. exe Csc /out:XX /target:YY Archivo1.cs Archivo2.cs Compilador de Lnea de Comandos VB.NET Cumple con la especificacin del CLS <Win>\Microsoft.NET\Framework\<version>\vbc. exe vbc /out:XX /target:YY Archivo1.vb Archivo2.vb
Compiladores (2/2)
Algunas opciones tiles /out:<file> /target:exe/winexe/library /reference:<file list> /doc:<file> /debug[+|-] /main:<type>
/lib:<file list>
Nombre del archivo de salida Consola/Windows/DLL Assemblies de referencia Archivo de documentacin Emitir info de DEBUG Determina la clase que posee el Entry Point (ignora los otros posibles) Directorios de libreras
Temas a Tratar
Introduccin a C# y VB.NET Sintaxis
Temas Generales Definicin e inicializacin de variables Operadores Estructuras de Control Clases y Objetos
En VB.NET cada bloque tiene su sentencia de apertura y su sentencia de cierre, que normalmente empieza con la palabra End
Class Main Public Shared Sub Main() Console.WriteLine("Hello World!") End Sub End Class
VB.NET y C# - Comentarios
C# soporta tres tipos de comentarios
string nombre = Juan; // Comentario de una sola lnea /* Comentario con mas de una lnea*/ /// <summary> /// Documentacin XML que puede ser consumida por otras /// herramientas para mostrar ayuda dinmica o generar /// documentacin en varios formatos /// </summary> public class Matematica { /// <summary> /// Calcula la suma de dos nmeros enteros /// </summary> /// <param name="x">El primer operando de la suma</param> /// <param name="y">El segundo operando de la suma</param> /// <returns> La suma entera de ambos operandos</returns> public int Sumar (int x, int y) {return x + y;} }
VB.NET y C# - Comentarios
VB.NET soporta dos tipos de comentarios
'Comentario simple Dim nombre As String = Juan
''' <summary> ''' Documentacin XML que describe un tipo y sus miembros ''' </summary> ''' <param name="x">El primer operando de la suma</param> ''' <param name="y">El segundo operando de la suma</param> ''' <returns> La suma entera de ambos operandos</returns> Public Function Sumar (x as Integer, y as Integer) as Integer return x + y End Function
Temas a Tratar
Introduccin a C# y VB.NET Sintaxis
Temas Generales Definicin e inicializacin de variables Operadores Estructuras de Control Clases y Objetos
Tipos de Datos
Categora Enteros Clase Byte SByte Int16 Int32 Int64 Punto Flotante Single Double Descripcin Un entero sin signo (8-bit) Un entero con signo (8-bit) Un entero con signo (16-bit) Un entero con signo (32-bit) Un entero con signo (64-bit) Un nmero de punto flotante de simple precisin (32-bit) Un nmero de punto flotante de doble precisin (64-bit) C# Alias byte sbyte short int long float double VB.NET Alias Byte Sbyte Short Integer Long Single Double
Decimal
Lgicos Otros Boolean Char Object
decimal
bool char object
Decimal
Boolean Char Object
String
string
String
VB.NET public Public private Private internal Friend protected Protected protected internal Protected Friend
C#
VB.NET: comienza con Dim o algn modificador de acceso (Public, Private, etc.) + identificador de la variable + As Tipo de Dato
Dim Dim Dim Dim x As Integer y As Decimal z As Rectangle cli As Cliente Dim es = a Private por defecto
VB.NET y C# - Arreglos
C# utiliza corchetes [ ] para definicin de arrays
string[] telefonos; //Definicion de un Arreglo de strings telefonos = new string[3]; //De 3 elementos telefonos[0] = 1245; //Seteo del 1er elemento del arreglo //Definicion y asignacion de una vez telefonos = new string[] {1,2,3};
Temas a Tratar
Introduccin a C# y VB.NET Sintaxis
Temas Generales Definicin e inicializacin de variables Operadores Estructuras de Control Clases y Objetos
VB.NET y C# - Operadores
Descripcin Asignacin C# = VB.NET =
Adicin
Sustraccin Multiplicacin Divisin Negacin Mdulo (Parte entera de la divisin) Mayor Menor Mayor o Igual Menor o Igual
+
* / ! % > < >= <=
+
* / not mod > < >= <=
&& ll ! == !=
Temas a Tratar
Introduccin a C# y VB.NET Sintaxis
Temas Generales Definicin e inicializacin de variables Operadores Estructuras de Control Clases y Objetos
VB.NET:
Dim condicion As Boolean = True While condicion = True 'Poner condicion=false en algn momento End While
Temas a Tratar
Introduccin a C# y VB.NET Sintaxis
Temas Generales Definicin e inicializacin de variables Operadores Estructuras de Control Clases y Objetos
VB.NET y C# - Clases
C#: las clases son declaradas mediante class
//Definicion de la clase CuentaBancaria class CuentaBancaria { //Definicion de miembros }
VB.NET
Public Class HolaMundo Public Shared Sub Main(ByVal args() As String) Punto de entrada de la aplicacin End Sub End Class
VB.NET y C# - Mtodos
Mtodos: acciones que un objeto puede llevar a cabo.
En C# todo mtodo es una funcin
public void HacerDeposito(int importe) //No devuelve valor { }
public int ObtenerInventario(int codArticulo) //Devuelve un entero { }
Public Function Inventario(ByVal codArt As Integer) As Integer Devuelve un entero End Function
VB.NET y C# - Constructores
Constructor: mtodos dentro de la clase que son llamados automticamente cuando se crea una instancia de dicha clase. En C# tienen el mismo nombre de la clase
class CtaCte { public CtaCte(){...} public CtaCte(int i){...} }
VB.NET
Public Sub HacerDeposito(ByVal imp As Integer) End Sub Public Sub HacerDeposito(ByVal imp As Integer, ByVal acreditar As Boolean) End Sub
VB.NET
Public Shared Sub HacerDeposito(ByVal imp As Integer)
End Sub
VB.NET y C# - Propiedades
Propiedad: caracterstica o atributo de un objeto
C#
class CtaCte { int balance; public int Balance { get { return balance; } set { balance = value; } } } CtaCte cc = new CtaCte(); cc.Balance = 100; //Asignacin Mostrar(cc.Balance); //Obtencin
VB.NET
Class CtaCte Dim _balance As Integer Property Balance() As Integer Get Return _balance End Get Set (ByVal value As Integer) _balance = value End Set End Property End Class Dim cc As New CtaCte() cc.Balance = 100 Asignacin Mostrar(cc.Balance) Obtencin
VB.NET y C# - Herencia
En C# la herencia se define:
class Cuenta { } class CtaCte : Cuenta { } //Clase Base
//Clase Derivada
Clase Base
Clase Derivada
VB.NET
Public NotInheritable Class Cuenta No se puede heredar de esta clase End Class
Public MustInherit Class Cuenta No se pueden crear instancias de esta clase, slo de sus derivadas End Class
VB.NET y C# - Namespaces
C#
namespace BancoARG { namespace Gestion { public class CtaCte { } public class CajaAhorro { } } } //Referencia full BancoARG.Gestion.CtaCte; BancoARG.Gestion.CajaAhorro; //Referencia corta using BancoARG.Gestion; CtaCte cc = new CtaCte(); CajaAhorro ca = new CajaAhorro();
VB.NET
Namespace BancoARG Namespace Gestion Public Class CtaCte End Class Public Class CajaAhorro End Class End Namespace End Namespace Referencia full BancoARG.Gestion.CtaCte BancoARG.Gestion.CajaAhorro Referencia a un namespace Imports BancoARG.Gestion Dim cc As New CtaCte() Dim ca As New CajaAhorro()
Try Dim resultado As Integer resultado = x/y Catch e As DivideByZeroException Error division por cero Catch Otro error Finally Siempre pasa por aca End Try
2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.