Codecamp 2009 Qué Hay De Nuevo Viejo

657 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
657
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Codecamp 2009 Qué Hay De Nuevo Viejo

  1. 1. ¿Qué hay de nuevo viejo?<br />Desde VB 1.0 hasta VB 2010,<br />evolución y novedades.<br />
  2. 2. ¿Quiénes hablarán?<br />MVP de Visual Basic y habituales de comunidades técnicas de tecnologías Microsoft:<br />Lluis Franco<br />PepLluisBano<br />Jorge Serrano<br />¿Qué hay de nuevo viejo?<br />
  3. 3. Agenda<br />Introducción y evolución de VB<br />VB hacia .NET<br />A destacar de VB 2008<br />Novedades de VB 2010<br />
  4. 4. Introducción y evolución de VB (I)<br />Tenemos VB desde 1991<br />Alan Cooper fue el líder de VB 1.0 y ha intervenido también en “cosas” como Ruby<br />Versiones previas: <br />(1991) - VB 1.0 (versión Windows y DOS)<br />(1992) - VB 2.0<br />(1993) - VB 3.0 (BBDD)<br />(1995) - VB 4.0 (16 [VBX] y 32 bits [OCX])<br />(1997) - VB 5.0 y VB 5.0 CCE (ActiveX y compilación en código nativo)<br />(1998) - VB 6.0<br />Runtimes para ejecutar aplicaciones: <br />VBRUNxxx.DLL<br />MSVBVBxx.DLL<br />
  5. 5. Introducción y evolución de VB (III)<br />Existen subconjuntos de VB (propietarios):<br />VBS<br />VBA<br />Uso de APIs (código no manejado)<br />Infierno de las DLL<br />ASP como lenguaje de programación web (lenguaje interpretado), utiliza VBS<br />VB como lenguaje evoluciona hacia la POO, que en VB 5 y VB 6 incorpora tímidamente algunas de sus características,… pero NO es suficiente<br />
  6. 6. VB hacia .NET (I)<br />Los programadores necesitamos MÁS<br />¿Qué necesitamos?<br />POO y uso de estándares como objetivos principales<br />Gestión de errores más “profesionales”… adios al On Error Resume Next<br />Posibilidad de programar para diferentes plataformas… Linux, Windows, etc.<br />Código manejado vs código no manejado<br />Capaz de utilizar y adaptarse a las tecnologías emergentes<br />etc<br />
  7. 7. VB hacia .NET (II)<br />Microsoft apuesta por un cambio radical<br />AndersHeljsberg, (ficha por Microsoft en 1996)<br />Padre de Turbo Pascal, <br />Arquitecto de Delphi 1.0, <br />Y Amigo de Pep <br />(es el gran culpable de .NET, J# y C#)<br />Todo bajo el paraguas de la POO<br />Con énfasis en el uso de estándares<br />Ofreciendo características demandadas por los programadores<br />Posibilitando una plataforma que compita en la red y contra Java (Sun Microsystems)<br />Capaz de usar un repositorio común donde el lenguaje sea el invitado de esa plataforma denominada Microsoft .NET Framework<br />VB formará parte de Microsoft .NET Framework (.NET como nombre por su orientación a la red, aunque el calificativo de marketing de .NET se ha perdido actualmente)<br />
  8. 8. VB hacia .NET (III)<br />Partes de .NET e incluso el lenguaje C# que forma parte de él, han sido estandarizadas y “abiertas”<br />VB como lenguaje es “reprogramado” por entero respetando muchas de las normas y reglas del lenguaje, pero adaptándolo a .NET<br />VB es el “patito feo” por su pasado, fama ganada a pulso pero injusta en la actualidad<br />
  9. 9. VB hacia .NET (IV)<br />Evolución de .NET lleva incluida una evolución del lenguaje VB (I)<br />VB .NET 2002 – VB 7.0 - Microsoft .NET 1.0<br />Compatibilidad con VB 6.0 (¿migración real?)<br />VB .NET 2003 – VB 7.1 - Microsoft .NET 1.1<br />Mejoras en el asistente de actualización (VB 6.0 to VB .NET)<br />VB 2005 – VB 8.0 - Microsoft .NET 2.0<br />Mejoras en el asistente de actualización (VB 6.0 to VB para .NET)<br />Editar y continuar (usadas en VB 6.0 y anteriores pero no en .NET)<br />Uso de My para acceder a clases comúnmente usadas (productividad)<br />Uso de la palabra Using<br />Data Sourcebinding<br />Genéricos<br />Clases parciales<br />Tipos Nullable<br />Comentarios XML<br />Modelo de factorías para aplicaciones multi-DB (DatabaseFactories)<br />VB 2005 – VB 8.0 - Microsoft .NET 3.0 (CLR 2.0)<br />Operador IsNot<br />Continue Do y ContinueWhile<br />Documentación XML<br />Soporte de paginación en ADO.NET<br />WCF, WF, WPF y CardSpace<br />
  10. 10. VB hacia .NET (V)<br />Evolución de .NET lleva incluida una evolución del lenguaje VB (II)<br />VB 2008 – VB 9.0 - Microsoft .NET 3.5 (CLR 2.0)<br />Métodos de extensión<br />Inferencia de tipos<br />Tipos anónimos<br />Árboles de expresiones y expresiones Lambda<br />LINQ<br />LINQ toObjects<br />LINQ to XML<br />LINQ toDataSet<br />LINQ toSql<br />Microsoft Entity Framework 1.0 (basado en LINQ)<br />VB 2010 – VB 10.0 - Microsoft .NET 4.0<br />Tecnología:<br />ParallelExtensions<br />Soporte para IronPython, IronRuby y F#<br />CodeContracts<br />Lenguaje:<br />Propiedades autoimplementadas<br />Inicialización de colecciones<br />Opción para indicar la versión específica del lenguaje a compilar<br />Continuación implícita de línea<br />Parámetros nombrados<br />Parámetros opcionales<br />DLR o DynamicLanguageRuntime (IronPython, IronRuby)<br />Covarianza y contravarianza<br />Entity Framework 2.0 (aka 4.0)<br />
  11. 11. En Resumen, no hay patito feo<br />
  12. 12. A destacar de VB 2008 (I)<br />LINQ – LanguageINtegratedQuery<br />El embrión de LINQ lo encontramos en Microsoft Research<br />Añade capacidades de búsqueda de datos de forma nativa<br />Permite localizar datos provenientes de diferentes orígenes (documentos XML, DataSet, objetos, bases de datos relacionales, matrices, clases enumerables, etc)<br />Se pueden crear proveedores de LINQ o podemos utilizar los que ofrece Microsoft<br />Usar LINQ aporta mayor productividad<br />
  13. 13. A destacar de VB 2008 (II)<br />Proveedores de Microsoft:<br />LINQ toObjects<br />Se utiliza con colecciones de datos en memoria<br />LINQ to XML<br />Convierte documentos XML a colecciones de objetos XElement<br />Con VB manipular XML con LINQ to XML es simple<br />LINQ toDataSet<br />Permite acceder a los objetos de los DataSet<br />LINQ toSql<br />Está pensado para usarlo solo con SQL Server y SQL Server Compact<br />Entity Framework<br />Es un ORM (ObjectRelationalMapping) que convierte datos entre las fuentes de datos y los tipos de datos incompatibles<br />Otros proveedores…<br />
  14. 14. A destacar de VB 2008 (III)<br />DEMOS<br />
  15. 15. Novedades de VB 2010 (I)<br />Continuación implícita de línea<br />¡Por fin!<br />Pero… ¡cuidado!<br />DEMO<br />
  16. 16. Novedades de VB 2010 (II)<br />Parámetros nombrados y parámetros opcionales nullables<br />DEMO<br />
  17. 17. Novedades de VB 2010 (III)<br />Inicialización de matrices y colecciones<br />DEMO<br />
  18. 18. Novedades de VB 2010 (IV)<br />Propiedades autoimplementadas<br />DEMO<br />
  19. 19. Novedades de VB 2010 (V)<br />Mejoras en el soporte de funciones lambda<br />DEMO<br />
  20. 20. Novedades de VB 2010 (VI)<br />Lenguajes dinámicos en VB 2010<br />DEMO<br />
  21. 21. Novedades de VB 2010 (VII)<br />Covarianza y contravarianza genérica<br />DEMO<br />
  22. 22. Q&A<br />Preguntas y respuestas<br />
  23. 23. Blogs<br />Visiten nuestro bar<br />Lluis Franco<br /> http://msmvps.com/blogs/lfranco/<br />PepLluisBano<br /> http://msmvps.com/blogs/peplluis/<br />Jorge Serrano<br /> http://geeks.ms/blogs/jorge/<br />
  24. 24. ¡ Muchas Gracias!<br />Recuerda que en www.codecamp.es podrás encontrar todo el material de las sesiones del CodeCamp<br />

×