Haciendo visible el camino a 'NET IV Encuentro de programadores Microsoft PowerPoint PPT Presentation

presentation player overlay
1 / 36
About This Presentation
Transcript and Presenter's Notes

Title: Haciendo visible el camino a 'NET IV Encuentro de programadores Microsoft


1
.NET 2.0Novedades en .NET Framework 2.0Octavio
Hernández Danysoft
  • Haciendo visible el camino a .NETIV Encuentro de
    programadores Microsoft Danysoft

2
Agenda
  • Introducción
  • Principales novedades
  • En el software de base (CLR y herramientas)
  • En las librerías de base
  • En los lenguajes de programación
  • Visual C
  • Visual Basic .NET
  • Visual C
  • Conclusiones

3
Introducción
4
Introducción
  • .NET Framework ha supuesto un rotundo éxito para
    Microsoft, de lo que dan fe diversos hechos y
    estadísticas
  • Más de 70 millones de sistemas instalados
  • Utilizado por el 60 de las Fortune 100
  • Estandarización ISO
  • Amplio soporte de los desarrolladores
  • La versión 2.0 se apoya en el éxito de su
    predecesora e incluye una gran cantidad de
    novedades y mejoras que la harán sin duda una
    versión revolucionaria.
  • Datos PDC 2003

5
Introducción (2)
  • Objetivos principales de .NET 2.0
  • Ofrecer continuidad y mejoras en cuanto a
    seguridad, despliegue, administración y
    rendimiento.
  • Permitir el aumento de la productividad de los
    desarrolladores.
  • Allanar el camino hacia el futuro

6
Principales novedades
7
Principales novedades - en el software de base
8
Novedades en el software de base
  • Soporte para 64 bits
  • Soporte para tipos genéricos
  • Mejoras para la depuración
  • Soporte para Editar y Continuar
  • Soporte para visualizadores de datos
  • Mejoras para el perfilado de aplicaciones
  • Mejoras relacionadas con la seguridad
  • Soporte para el despliegue ClickOnce
  • Activación a partir de un manifiesto

9
Novedades en el software de base
  • Generación mediante MSBuild

PROYECTO ltProjectgt ltProperty /gt ltItem
/gt ltTarget /gt lt/Projectgt
10
Novedades en el software de base
  • Visual Studio 2005 !!!

11
Principales novedades - en la FCL
12
Novedades en las librerías base
  • Novedades que serán tema de otras presentaciones
  • En ADO.NET
  • En Windows Forms
  • En ASP.NET
  • En System.Xml
  • Mejoras en rendimiento
  • XmlFactory
  • Soporte para XQuery
  • SQLXML

13
Novedades en las librerías base (2)
  • En System.IO
  • Clase Console
  • Clase SerialPort
  • Soporte para compresión/descompresión GZIP
  • En System.Net
  • Soporte para FTP
  • Mejoras en la programación con sockets
  • Clase HttpWebListener
  • API para caché de HTTP
  • Obtención de información de red
  • Clase PING

14
Principales novedades - en los lenguajes
15
Novedades en los lenguajes
  • Para la mayoría de las novedades que se describen
    a continuación, el entorno de Visual Studio 2005
    ofrece diversas facilidades que no se describen
    aquí (aunque algunas de ellas se presentarán en
    la sesión de demostración).
  • Además de la Beta de VS 2005, Microsoft ha puesto
    a disposición de los desarrolladores versiones de
    aprendizaje (Express) para cada uno de los
    lenguajes. Pueden descargarse de
  • http//lab.msdn.microsoft.com/vs2005/

16
Principales novedades - en los lenguajes VC
17
C Tipos genéricos
public class List private object
elements private int count public void
Add(object element) if (count
elements.Length) Resize(count 2)
elementscount element public
object thisint index get return
elementsindex set elementsindex
value public int Count get
return count
public class ListltTgt private T elements
private int count public void Add(T
element) if (count elements.Length)
Resize(count 2) elementscount
element public T thisint index
get return elementsindex set
elementsindex value public int
Count get return count
ANTES
DESPUES
Listltintgt intList new Listltintgt() intList.Add(
1) // No hay boxing intList.Add(2)
// No hay boxing intList.Add("Three")
// Error de compilación int i intList0
// Sin conversión
List intList new List() intList.Add(1)
// Boxing del argumento intList.Add(2)
// Boxing del argumento intList.Add("Three")
// Debería ser error int i
(int)intList0 // Necesaria conversión
18
C Tipos genéricos (2)
  • Ventajas
  • Control de tipos, no hace falta boxing ni
    conversión de tipos
  • Menor tamaño del código (con relación a
    plantillas C)
  • Cómo se implementan?
  • Se instancian en tiempo de ejecución, no de
    compilación
  • Se validan al ser declarados, no al ser
    instanciados
  • Funcionan tanto para tipos valor como referencia
  • Información completa sobre los tipos en tiempo
    de ejecución

19
C Tipos genéricos (3)
  • Los parámetros de tipo se pueden aplicar a
  • Clases, estructuras, interfaces y delegados
  • Métodos
  • Los parámetros de tipo pueden tener restricciones

class DictionaryltK,Vgt where K IComparable
public void Add(K key, V value)
if (key.CompareTo(x) 0)
20
C Tipos genéricos (4)
  • System.NullableltTgt
  • Ofrece soporte de valor null para cualquier tipo
  • Estructura que combina un T y un bool
  • Sintaxis especial para tipos básicos int? n

int? x 123 int? y null int i (int)
x Int j x.value If (x.HasValue())
Console.WriteLine(x.Value)
21
C Métodos anónimos
class Formulario1 Form TextBox texto
Button botón public Formulario1()
texto new TextBox() botón new
Button() botón.Click delegate
MessageBox.Show(texto.Text)

22
C Iteradores
  • foreach
  • La sentencia foreach se apoya en un patrón de
    enumeración
  • Método GetEnumerator()
  • Iteradores
  • Métodos que calculan y devuelven una secuencia
    de valores
  • yield return y yield break
  • Debe devolver IEnumerator o IEnumerable

23
C Iteradores (2)
public class ListaltTgt public IEnumeratorltTgt
GetEnumerator() for (int i 0 i lt
count i) yield return
elementsi //
List ltItemgtitems foreach(Item x in items)
//
24
C Clases parciales
public partial class Cliente private int
id private string nombre private
DateTime fechaNac
public partial class Cliente public int
Edad() // //
25
Principales novedades - en los lenguajes VB.NET
26
VB.NET My
  • Ofrece una jerarquía de navegación intuitiva, que
    expone la funcionalidad de las librerías .NET a
    través de un conjunto de objetos raíz de fácil
    comprensión
  • Application
  • Forms
  • Resources
  • Settings
  • Computer
  • User

27
VB.NET My (2)
Dim sr As New IO.StreamReader(C\Datos.TXT) Dim
contenido As String sr.ReadToEnd sr.Close()
Dim contenido As String _ My.Computer.FileSys
tem.ReadAllText(C\Datos.TXT)
If My.User.IsAuthenticated() Then
MessageBox.Show( Autenticado) End If
My.Forms.FormularioParametros.Show()
28
VB.NET Tipos genéricos
Public Class List(Of T)      Private elements()
As T      Private elementcount As Integer     
Public Sub Add(ByVal element As T)           If
elementcount elements.Length Then Resize(eleme
ntcount 2)           elements(elementcount)
element           count 1      End Sub     
Public Default Property Item(ByVal i As Integer)
As T           Get               Return
elements(i)           End Get           Set
(ByVal Value As T)              elements(i)
Value           End Set      End Property
Dim intList As New List(Of Integer)
intList.Add(1)           // No hay boxing
intList.Add(2)           // No hay boxing
intList.Add("Three")     // Error de
compilación Dim i As Integer intList(0)   //
Sin conversión
29
VB.NET Otras adiciones
  • Using protección de recursos
  • Garantiza la llamada a Dispose() al finalizar el
    bloque

Using fStr As New FileStream(ruta,
FileMode.Append) For I As Integer 0 To
fStr.Length 1 fStr.ReadByte() Next
Aquí se cierra el fichero End Using
30
VB.NET Otras adiciones (2)
  • Soporte parcial para tipos sin signo
  • Clases parciales
  • Diferente visibilidad en métodos de acceso Get y
    Set de propiedades
  • Continue para abandonar un bucle

31
Principales novedades - en los lenguajes VC
32
C Cambios en el lenguaje
  • Bajo la dirección de Herb Sutter y Stan Lippman,
    ha sido creada C/CLI, una extensión de C para
    ofrecer soporte para la programación .NET.
  • El documento base ha sido enviado a ECMA para su
    estandarización, siguiendo la del CLI y C.
  • Esta extensión de C sustituirá en VS 2005 a las
    anteriores Extensiones Manejadas, y promete
    ofrecer una base mucho más sólida para el avance
    hacia el futuro.

33
Conclusiones
34
Conclusiones
  • .NET Framework 2.0 ofrece una gran cantidad de
    novedades y mejoras a todos los niveles que sin
    duda permitirán aumentar en gran medida la
    experiencia del usuario y la productividad del
    desarrollador.

35
Más información
  • Danysoft
  • Información y artículos, www.danysoft.com
  • Servicios Profesionales, sp_at_danysoft.com
  • Software, utilidades, licencias y libros
    www.danyshop.com , info_at_danysoft.com
  • .NET
  • MSDN Developer Centers, msdn.microsoft.com
  • MSDN Magazine, msdn.microsoft.com/msdnmag
  • VS 2005 Beta Docs, msdn2.microsoft.com

36
Gracias por su asistencia!

Para cualquier consulta, no dude en contactar con
Danysoft Servicios Profesionales 902
343484 sp_at_danysoft.com Software, utilidades
y licencias 902 123146 info_at_danysoft.com
www.danysoft.com
Write a Comment
User Comments (0)
About PowerShow.com