VB.NET Dr. Diego Lz. de Ipiña Gz. de Artaza

Slides:



Advertisements
Presentaciones similares
Tema 4: Programación Orientada a Objetos en C# y VB.NET
Advertisements

Programación orientada a objetos en Visual Basic .NET
Programa Microsoft Desarrollador Cinco Estrellas
Unidad 3 Lenguajes .Net y POO
Curso de java básico (scjp)
Curso de Java Capitulo 7: Conceptos sobre poo Profesor:
Visual C#.NET Creado especialmente para .NET Estándar ECMA (2002)
Herencia en C#.
Tablas. Descripción general Introducción a las tablas Creación de tablas Uso de tablas.
Funciones. Subrutinas y procedimientos
Manejo de errores y excepciones
Uso de variables de tipo referencia
Lenguaje de programación Java
Clases Extendidas La clase extendida hereda los campos y métodos de la clase de la cual extiende. La clase original se conoce como superclase y la clase.
Orientación a Objetos con Java SE
Visual C#.NET Creado especialmente para .NET Estándar ECMA (2002)
Desarrollo de Aplicaciones para Internet
Excepciones Las excepciones son señales (en forma de objeto) que se generan en ejecución en casos de errores, para que puedan ser gestionadas en el programa.
Visual Basic.NET Daniel A. Seara NDSoft Consultoría y Desarrollo
Informática II Prof. Dr. Gustavo Patiño MJ
1.2 Sintaxis del lenguaje Java.
Programación Orientada a Objetos en Java
Clase II [Delio Alanis Nieto] [].
Clase IV Delio Alanis.
HERENCIA.
Excepciones y archivos Info 033. Exception El término Exception es la palabra corta para la frase "evento excepcional." Definition: Una excepción es un.
Tema 7: Polimorfismo Antonio J. Sierra. Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos.
VBA - Procedimientos Subprogramas (Procedimientos): Procedimientos Sub
Modificadores.
TALLER DE PROGRAMACIÓN III
1 Procedimientos Es un conjunto de sentencias incluidas entre las declaraciones Sub o Function y End Sub/Function VB utiliza varios tipos de procedimientos:
POO Java Módulo 3 Elementos de programas Identificadores
Lic. Rosemary Torrico Bascopé
TRAMPAS EN EL DISEÑO DE LENGUAJES CON RELACIÓN A LOS NOMBRES - REGLAS DE ALCANCE - COMPILACIÓN POR SEPARADO CONTROL DE FLUJO - EVALUACIÓN DE EXPRESIONES.
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Tema 6: Clases Antonio J. Sierra.
Técnicas avanzadas de programación Interfaces
SCJP Sun Certified Programmer for Java 6
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Matrices Es una estructura homogénea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria A cada elemento se.
El lenguaje de programación Java
Framework Class Library (FCL) Dr. Diego Lz. de Ipiña Gz. de Artaza
Variables y Shapes. Variables ► Lugares de la memoria que reciben un nombre ► En VB no es necesario declarar las variables  A=8 ► Se declaran con Dim.
Conversión cadena a número
Sintaxis de C# (Declaraciones y Tipos)
Microsoft© Visual Basic . Net.
Computación II Unidad X Manejo de Excepciones. Presentación de la Unidad Objetivos: –Saber manejar situaciones inesperadas dentro de un programa –Comprender.
Control de errores visual basic
Módulo 8: Manejo de Errores y Excepciones
Módulo 7: Programación Orientada a Objetos en Visual Basic 2005.
Módulo 3: Usando Variables y Arreglos
Arreglos y comunicación Usuario
Visual Basic Visual Basic 6.0 es un programa que consiste en la programación en lenguaje Basic en un entorno visual de manejo.
PRINCIPIOS DE PROGRAMACIÓN
Fundamentos de Programación
Práctica Profesional PHP.
Módulo 4: Trabajando con Procedimientos. Descripción Crear procedimientos Uso de procedimientos Uso de funciones predefinidas Debug and Deploy Escribir.
Clases “ Es una Abstracción de un elemento del mundo real ”
Curso Plataforma.NET Lic. Israel García Anido. Temario POO y migración desde VB a VB.net. POO y migración desde VB a VB.net. Introduccion a la Plataforma.NET.
Programación en Visual Basic
Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos.
Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión Práctica 3.
Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 4 Versión Diseño de tipos Igualdad, representación, código,
LICETH CAJAS 3RO ASI 26/10/2010. Es un lenguaje de programación diseñado para crear una amplia gama de aplicaciones que se ejecutan en.NET Framework,
Prof. Jonathan Silva Ingeniería Civil – Informática I Ingeniería Civil Informática I Clase 5.
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Concepto de Tipo y Subtipo Diseño e Implementación Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 10 Versión.
Tipos genéricos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 3.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Transcripción de la presentación:

VB.NET Dr. Diego Lz. de Ipiña Gz. de Artaza

En Visual Basic, un programa tiene los bloques estándar en todo programa. El código de Visual Basic se guarda en módulos de proyecto Proyecto se compone de ficheros que se compilan en una aplicación Todo código en VB.NET debe seguir la siguiente secuencia: Sentencias Option Sentencias Imports Procedimiento Main Sentencias Class, Module, y Namespace Además un programa puede contener sentencias de compilación condicionales. Si el código introducido no sigue este orden se producen errores de compilación. El lenguaje VB.NET

Establecen reglas para el código subsiguiente, ayudando a prevenir errores sintácticos y de lógica La sentencia Option Explicit asegura que todas las variables están declaradas y escritas correctamente Evita que todas las variables declaradas sean de tipo Object Las variables se declaran usando Dim, Private, Public, or ReDim Option Explicit On ‘ Fuerza la declaración explícita de variables Dim MyVar As Integer ' Declara variable. MyInt = 10 ‘ Genera error al no estar la variable declarada MyVar = 10 ' Variable declarada por lo que no genera error Sentencias Option I

La sentencia Option Strict ayuda a prevenir errores lógicos y de perdida de datos que ocurren cuando se trabaja con variables de diferente tipo. Prohíbe conversiones implícitas Option Strict On ‘ Fuerza a declarar variables también Dim MyVar As Integer ' Declara variables. MyVar = 1000 ' ‘ Intento de convertir Integer a float genera error MyVar = Sentencias Option II

La sentencia Option Compare establece la manera en la que los strings son comparados, por formato binario (basado en la representación binaria interna de los datos) o textual (case insensitive). ‘ Establece el modo de comparación a binario Option Compare Binary ' Esto es, "AAA" es menor que "aaa". ' Establece el modo de comparación a textual Option Compare Text ' Esto es, "AAA" es igual a "aaa" Sentencias Option III

Permiten nombrar clases y otros tipos definidos en los espacios de nombres importados (o assemblies) sin tener que especificar el cámino absoluto a ellas. Imports [ aliasname = ] namespace o Imports [ aliasname = ] namespace.element Si no se especifica alias los elementos definidos en el namespace se referencian sin prefijo y si no prefijados con el alias Se pueden especificar varios Imports en un programa y deben de aparecer antes de las sentencias Module y Class Imports Str = Microsoft.VisualBasic.Strings ' Coloca Imports al comienzo de tu programa Class MyClass1 Sub ShowHello() MsgBox(Str.Left(“Hola", 5)) ' Visualiza "Hola" End Sub End Class Sentencias Imports

“Punto de comienzo" de una aplicación — el primer procedimiento accedido cuando ejecutas tu código. Algunas de las tareas que puedes llevar a cabo dentro del código del Main : Cargar un formulario Averiguar si alguna copia de tu programa existe Abrir una conexión a una base de datos Cuatro variedades: Sub Main()  la más común Sub Main(ByVal CmdArgs() As String) Function Main() As Integer Function Main(ByVal CmdArgs() As String) As Integer Procedimiento Main

La mayoría del código de un aplicación VB lo definen las clases y los módulos Contienen sentencias: Sub Function Event Declaraciones de variables y otras partes del código necesarias para hacer que tu aplicación se ejecute. Sentencias Class, Module y Namespace

Declara el nombre de una clase, así como la definición de variables, propiedades, eventos y métodos que la componen [ ] [ Public | Private | Protected | Friend | Protected Friend ] [ Shadows ] [ MustInherit | NotInheritable ] Class name [ Inherits classname ] [ Implements interfacenames ] [ statements ] End Class Sentencia Class I

Public  sin restricciones de acceso Private  entidad accesible sólo en contexto en que es declarada Protected  accesible dentro de una clase o en hija de ella Friend  accesible sólo dentro del programa que contiene la declaración de la entidad MustInherit  no se pueden crear instancias de esta clase NotInheritable  no se permite más herencia name  nombre de la clase Inherits  esta clase deriva de classname classname  (requerido) nombre de la clase de la que deriva Implements  esta clase implementa una interfaz interfacename  nombre de la interfaz derivada Sentencia Class II

statements  variables, propiedades, eventos y métodos dentro de la clase End Class  termina un bloque de clase Cada atributo en attrlist tiene la siguiente sintáxis y partes: attrname [({ attrargs | attrinit })], attrlist Parts attrname  (requerido) nombre del atributo attrargs  (o ptional) lista de argumentos del atributo attrinit  (o pcional) lista de campos o propiedades para inicializar el atributo, si hay varios separados por comas Sentencia Class III

Clases sin modificador de acceso son declaradas Friend por defecto Todo elemento dentro de una clase es por defecto público (métodos) excepto campos y constantes que son privados Ejemplos: Public Class ThisClass ' [declaración de variable, propiedad, método y eventos] End Class Sentencia Class IV

Ejemplo simple herencia: Public Class ThisClass Inherits AnotherClass ' Añade código para sobreescribir, sobrecargar o extender miembros ' hereda de AnotherClass....' Declaraciones de variable, propiedad, método, y eventos End Class Ejemplos declaración clases

[ ] [ Default ] [ Public | Private | Protected | Friend | Protected Friend ] _ [[ ReadOnly | WriteOnly ] [ Overloads | Overrides ] _ [ Overridable | NotOverridable ] | MustOverride | Shadows | Shared ] _ Property varname([ ByVal parameter list ]) [ As typename ] [ Implements interfacemember ] [ ] Get [ block ] End Get [ ] Set(ByVal value As typename ) [ block ] End Set End Property Declaración de Propiedad

Dim  se usa para declarar espacio de almacenamiento para variables Ejemplos de uso: Dim AnyValue, MyValue As Object ' Los números se inicializan por defecto a 0. Dim Number As Integer Dim FirstNumber, SecondNumber, ThirdNumber As Integer Dim MyDate As Date, MyValue As Single, MySwitch As Boolean ' DayArray es un array de 51 Objects indexados de 0 a 50. Dim DayArray(50) As Object ' Matrix2 es un array bidimensional de tipo entero Dim Matrix2(3, 4) As Integer Declaración de variable

Const  define constantes Ejemplos de uso: Const MyConst As Integer = 459 ' Declara una constante pública de tipo string ' disponible sólo a nivel de clase Public Const MyString As String = "HELP" ' Declara una constante privada de tipo Integer Private Const MyInt As Integer = 5 Declaración de constantes

Sintáxis: If condition [ Then ] [ statements ] [ ElseIf elseifcondition [ Then ] [ elseifstatements ] ] [ Else [ elsestatements ] ] End If ó If condition Then [ statements ] [ Else elsestatements ] Sentencias If

Dim Number, Digits As Integer Dim MyString As String Number = 53 ' Inicializa variable. If Number < 10 Then Digits = 1 ElseIf Number < 100 Then Digits = 2 Else Digits = 3 End If If Digits = 1 Then MyString = "One" Else MyString = "More than one" Ejemplo If

Dim Number As Integer = 8 Select Number ' Evalúa número. Case 1 To 5 ' Número entre 1 y 5 Debug.WriteLine(“Entre 1 y 5") Case 6, 7, 8 ' Número entre 6 y 8 Debug.WriteLine(“Entre 6 y 8") Case 9 To 10 ' Número entre 9 y 10 Debug.WriteLine(“Mayor que 8") Case Else ' Otros valores Debug.WriteLine(“No entre 1 y 10") End Select Sentencia Select … Case

Dim Counter As Integer = 0 While Counter < 20 ‘ Evaluar el valor de Counter. Counter += 1 ' Incrementar Counter. End While ' Finalizar cuando counter=20 Debug.WriteLine (Counter) ' Imprime 20 Sentencias iterativas ( While )

Dim Words, Digit As Integer Dim MyString As String For Words = 10 To 1 Step -1 ' Realizar 10 repeticiones For Digit = 0 To 9 ' Otras 10 MyString = MyString & CStr(Digit) 'Añadir num a string Next Digit ' Incrementar counter MyString = MyString & " " ' Añadir un space. Next Words Sentencias iterativas ( For )

Module Test Sub F() Try G() Catch e As Exception Console.WriteLine("Exception in F: " & e.Message) e = New Exception("F") ' Relanzar excepción. Throw e End Try End Sub Excepciones I

Sub G() Throw New Exception("G") End Sub Sub Main() Try F() Catch e As Exception Console.WriteLine("Exception in Main: " & e.Message) End Try End Sub End Module Excepciones II

Delegate Function DoubleFunc(x As Double) As Double Class A Private f As New DoubleFunc(AddressOf Square) Overloads Shared Function Square(x As Single) As Single Return x * x End Function Overloads Shared Function Square(x As Double) As Double Return x * x End Function End Class Delegate s

Public Class EventSource ' Declara un evento Public Event LogonCompleted(ByVal UserName As String) Sub CauseEvent() ' Lanza un evento después de login correcto. RaiseEvent LogonCompleted(“Deusto") End Sub End Class Eventos

Interface ICustomerInfo ' Declaración de una interfaz Property CustomerName() As String Sub UpdateCustomerStatus() Event UpdateComplete() End Interface Ejemplo complejo clases I

Public Class CustomerInfo ' CustomerInfo implementa interfaz IcustomerInfo Implements ICustomerInfo Private CustomerNameValue As String ' Para guardar el valor de la propiedad Public Event UpdateComplete() Implements ICustomerInfo.UpdateComplete Public Property CustomerName() As String Implements _ ICustomerInfo.CustomerName Get Return CustomerNameValue End Get Set(ByVal Value As String) CustomerNameValue = Value ' Guarda el valor del atributo. End Set End Property Public Sub UpdateCustomerStatus() Implements _ ICustomerInfo.UpdateCustomerStatus ' Añadir código para modificar estado cuenta ' Lanzar evento para indicar que este método se ha ejecutado. RaiseEvent UpdateComplete() End Sub End Class Ejemplo complejo clases II

‘ Métodos para probar clase Public Sub TestImplements() Dim Cust As New CustomerInfo() ' Asociar manejador para eventos lanzados por objeto Cust AddHandler Cust.UpdateComplete, AddressOf HandleUpdateComplete ' Asignar valor a la propiedad CustomerName Cust.CustomerName = “Diego" ' Recuperar y visualizar valor propiedad MsgBox(“Nombre cliente: " & Cust.CustomerName) ' Invoca UpdateCustomerStatus para lanzar evento UpdateComplete event. Cust.UpdateCustomerStatus() End Sub Ejemplo complejo clases III

Sub HandleUpdateComplete() ' Manejador de evento para UpdateComplete. MsgBox(“Actualización completada.") End Sub Ejemplo complejo clases IV

Declara el nombre de un espacio de nombres Namespace { name | name.name } [componenttypes ] End Namespace componenttypes contiene enumeraciones, estructuras, interfaces, clases, módulos, delegates y otros espacios de nombres similares a paquetes en Java Sentencia Namespace

Declaración namespaces anidados: Namespace N1 ' Declara espacio de nombres N1. Namespace N2 ' Declara espacio de nombres N2 dentro de N1. Class A ' Declara una clase dentro de N1.N2. ' Añade una clase. End Class End Namespace Lo mismo en una sola línea: Namespace N1.N2 ' Declara dos espacios de nombres: N1 y N2. Class A ' Declara una clase dentro de N1.N2. ' Añade una clase aquí. End Class End Namespace Ejemplo Namespaces

[ ] [{ Overloads | Overrides | Overridable | NotOverridable | MustOverride | Shadows | Shared }] [{ Public | Protected | Friend | Protected Friend | Private }] Sub name [(arglist)] [ Implements interface.definedname ] [ statements ] [ Exit Sub ] [ statements ] End Sub Procedimientos con Sub I

Lista de atributos de este procedimiento Overloads  Este procedimiento (método) sobrecarga otro declarado en una clase base Overrides  sobreescribe método de clase base Overridable/NotOverridable  método puede [NO] ser sobrecargado MustOverride  método es abstracto, debe ser sobreescrito por clase que deriva Cada argumento en arglist tiene el siguiente formato: [ ] [ Optional ] [{ ByVal | ByRef }] [ ParamArray ] argname[( )] [ As argtype ] [ = defaultvalue ] Procedimientos con Sub II

' Procedure Sub procedure con dos argumentos. Sub SubComputeArea(ByVal Length As Double, ByVal Width As Double) Dim Area As Double ' Declara variable local. If Length = 0 Or Width = 0 Then ' Si algún argumento es 0, salir del procedure Exit Sub ' Exit Sub immediately. ‘ equivalente a Return End If Area = Length * Width ' Calcula área del rectángulo. Debug.WriteLine(Area) ' Imprime valor de área. End Sub Ejemplo Sub

Sintáxis similar a Sub pero devuelve un valor ' Procedure Sub con dos argumentos. Public Function CalcSum(ByVal ParamArray Args() As Double) As Double Dim I As Integer CalcSum = 0 If Args.Length <= 0 Then Exit Function ' No se han pasado args. For I = 0 To UBound(Args, 1) CalcSum += Args(I) Next I End Function ' Devuelve último valor de CalcSum. La función puede ser llamada como: Dim ReturnedValue As Double ReturnedValue = CalcSum(4, 3, 2, 1) ' Args(0) = 4, Args(1) = 3, and so on. Sentencia Function

Pueden aparecer en cualquier lugar en un módulo. Se ejecutan si ciertas condiciones se cumplen Se pueden también usar para hacer debugging de tu aplicación, es la única situación en la que se ejecutan. Sentencias de compilación condicional

Hola Mundo en VB.NET ' fichero: hola.vb ' compilar: vbc hola.vb Imports System module Hello sub main() Console.WriteLine(“Hola desde VB.NET”) end sub end module

Para compilar y ejecutar desde línea de comando: Crear código fuente usando un editor de texto y llamarlo hola.vb. Invocar el compilador, escribiendo el comando: vbc hola.vb Si no hay errores de compilación, el compilador genera el fichero hola.exe Para ejecutar el comando escribir: hola Compilando y ejecutando Hola Mundo