Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Exprimiendo SharePoint 2010

3,220 views

Published on

Conferencia para desarrolladores de software sobre Sharepoint 2010.

esta conferencia la hicimos junto con Andres Iturralde.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Exprimiendo SharePoint 2010

  1. 1. Exprimiendo SharePoint 2010 Andrés Iturralde Premier Field Engineer [email_address] Juan Pablo García González Solution Architect [email_address] http://jpgarcia69.wordpress.com /
  2. 2. Agenda <ul><li>Tour sobre SharePoint 2010 </li></ul><ul><li>Herramientas </li></ul><ul><ul><li>Visual Studio 2010 </li></ul></ul><ul><ul><li>SharePoint Designer 2010 </li></ul></ul><ul><ul><li>Panel del Desarrollador </li></ul></ul><ul><li>Tecnologías de Datos </li></ul><ul><ul><li>Server Object Model </li></ul></ul><ul><ul><li>LinQ </li></ul></ul><ul><ul><li>Client Object Model </li></ul></ul><ul><ul><li>Servicios REST </li></ul></ul>
  3. 3. Microsoft SharePoint 2010 La plataforma colaborativa para la empresa y la Web
  4. 4. <ul><li>Acciones personalizadas del lado del cliente </li></ul><ul><li>Ribbon sensible al contexto </li></ul>Personalizaciones Gráficas Framework de Diálogos, Ribbon, Barra de Estado y Área de Notificación
  5. 5. <ul><li>Formularios SharePoint reemplazables </li></ul><ul><li>Abrir como página Web o como diálogo </li></ul>Personalizaciones Gráficas Framework de Diálogos, Ribbon, Barra de Estado y Área de Notificación
  6. 6. SharePoint 2010 ¿Qué ha cambiado?
  7. 7. Desarrollando con Windows 7 <ul><li>SharePoint Foundation o SharePoint Server </li></ul><ul><li>Requiere SO de 64 bits </li></ul><ul><li>No está soportado para producción </li></ul>Windows 7
  8. 8. Visual Studio 2010 Herramienta de desarrollo para SharePoint 2010 <ul><li>Soporte para Soluciones SandBox </li></ul><ul><li>Empaqueta e instala proyectos SharePoint </li></ul><ul><li>Diseñadores de WebParts, BDC y Workflows </li></ul><ul><li>Genera WSP para deploy en producción </li></ul><ul><li>Soporte para Business Connectivity Services (BCS) </li></ul><ul><li>Integración con Team Foundation Server </li></ul><ul><li>Soporte para Intellitrace </li></ul><ul><li>Soporte para Unit Testing </li></ul>
  9. 9. SharePoint Designer 2010 Herramienta sin código para SharePoint 2010 <ul><li>Gratis para crear y editar artefactos SharePoint </li></ul><ul><li>Nuevas herramientas: </li></ul><ul><ul><li>Entidades BDC </li></ul></ul><ul><ul><li>Esquema de Listas </li></ul></ul><ul><ul><li>Acciones personalizadas </li></ul></ul><ul><ul><li>Diseñador de Tareas/Aprobación </li></ul></ul><ul><li>Herramientas mejoradas: </li></ul><ul><ul><li>Diseñador de Workflow </li></ul></ul><ul><ul><li>Editor de páginas </li></ul></ul><ul><li>Trabaja en conjunto con Visual Studio 2010 </li></ul>
  10. 10. Panel del Desarrollador stsadm -o setproperty -pn developer-dashboard -pv ondemand
  11. 11. Herramientas Visual Studio 2010 Panel del Desarrollador
  12. 12. Tecnologías de Datos Cliente Servidor Listas fuertemente tipadas Listas debilmente tipadas Listas fuertemente tipadas Listas debilmente tipadas Nuevo en 2010 Mejorado Métodos, MOSS LINQ Farm Site List Data External Lists Client OM REST APIs Web Services
  13. 13. Server Object Model Arquitectura de Servidor
  14. 14. SPSite SPWeb SPList SPField SPListItem Server Object Model Arquitectura de Sitio
  15. 15. Tecnología de Datos Server Object Model
  16. 16. <ul><li>Programación basada en entidades </li></ul><ul><ul><li>Intellisense y Tipos Fuertes </li></ul></ul><ul><li>Soporte de Joins de Listas y Proyecciones </li></ul><ul><ul><li>Join de listas por campo de búsqueda entre ellos </li></ul></ul><ul><ul><li>Join múltiples listas (A -> B -> C) </li></ul></ul><ul><ul><li>Proyecta cualquier campo desde listas enlazadas en un query sin cambiar el esquema de la lista </li></ul></ul>LinQ to SharePoint Language Integrated Query
  17. 17. LinQ to SharePoint Pasos para utilizar LinQToSharePoint
  18. 18. Tecnología de Datos LinQ
  19. 19. Client Object Model <ul><li>Librería de lado cliente para llamar remotamente a SharePoint </li></ul><ul><ul><li>Subconjunto de objetos del lado del servidor </li></ul></ul><ul><ul><li>Usable en JavaScript, .NET CLR, Silverlight </li></ul></ul><ul><li>Requests encolados para mejor rendimiento </li></ul><ul><li>Usado por UI de SharePoint </li></ul>
  20. 20. Client Object Model <ul><li>.NET CLR: 14ISAPI </li></ul><ul><li>Silverligh: 14TEMPLATELAYOUTSClientBin </li></ul><ul><ul><li>Empaquetado en .XAP </li></ul></ul><ul><li>JavaScript: </li></ul><ul><ul><li>Usa <ScriptLink>/SP.SOD.execute para agregar archivos JS </li></ul></ul>Microsoft.SharePoint.Client 281kb Microsoft.SharePoint.Client.Runtime 145kb SP.js 380kb SP.Core.js 13kb SP.Runtime.js 68kb
  21. 21. Client Object Model Tres cosas a saber <ul><li>ClientContext es el objeto central </li></ul><ul><li>Antes de leer una propiedad, debes preguntar por ella </li></ul><ul><li>Todos los requests son enviados en un batch </li></ul>clientContext = new ClientContext( “ http://MiSitio ” ); clientContext.Load(list); clientContext.ExecuteQuery();
  22. 22. Client Object Model C#
  23. 23. Client Object Model JavaScript
  24. 24. Client Object Model Accesando a Datos Servidor Aplicación Cliente Proceso resultados Ejecuta los comandos en el batch: Resultado de regreso comando 1; comando 2; comando 3; Client.svc Secuencia de comandos: context.ExecuteQuery(); comando 1; comando 2; comando 3;
  25. 25. Tecnología de Datos Client Object Model
  26. 26. Servicios REST Data Services <ul><li>Acceso a listas SharePoint y data de ellas: </li></ul><ul><ul><li>http://<sharepoint-server>/_vti_bin/ListData.svc </li></ul></ul><ul><li>Listas y List Items son mapeados a recursos </li></ul><ul><ul><li>http://sp2010/_vti_bin/ListData.svc/Tasks </li></ul></ul><ul><ul><li>http://sp2010/_vti_bin/ListData.svc/Tasks(3) </li></ul></ul><ul><ul><li>http://sp2010/_vti_bin/ListData.svc/Tasks(3)/Status </li></ul></ul><ul><ul><li>http://sp2010/_vti_bin/ListData.svc/Tasks?$filter=StatusValue eq 'Completed‘ </li></ul></ul><ul><li>Operaciones son mapeadas a verbos HTTP </li></ul><ul><ul><li>GET, POST, PUT, DELETE </li></ul></ul>
  27. 27. Servicios REST Basado en ADO .NET Data Services <ul><li>Múltiples representaciones </li></ul><ul><ul><li>JSON y Atom (completo soporte para AtomPub) </li></ul></ul><ul><ul><ul><li>Lectores de Feed, Excel Power Pivor (Gemini) </li></ul></ul></ul>
  28. 29. Tecnología de Datos Servicios REST
  29. 30. Tipos de Workflow <ul><li>List workflows </li></ul><ul><ul><li>Asociados a una la instancia de una lista </li></ul></ul><ul><li>Site workflows </li></ul><ul><ul><li>Asosiados al site (SPWeb) object </li></ul></ul>
  30. 31. Desarrollando Workflows <ul><li>El motor de workflow de SharePoint 2010 viene del .NET 3.5 Framework </li></ul><ul><li>SharePoint 2010 Project Item Templates </li></ul><ul><ul><li>Sequential workflow </li></ul></ul><ul><ul><li>State machine workflow </li></ul></ul><ul><li>Workflow Events </li></ul><ul><ul><li>Workflow_Initialized </li></ul></ul><ul><ul><li>Workflow_Completed </li></ul></ul><ul><ul><li>Improved nested logic </li></ul></ul>
  31. 32. Workflow Initiation Forms <ul><li>Diseñado con Visual Studio </li></ul><ul><li>El método GetInitiationData retorna datos desde el formulario al Workflow </li></ul><ul><li>Es típico retornar un XML o un valor discreto </li></ul><ul><li>La data se obtiene a través del objeto SPWorkflowActivationProperties </li></ul><ul><li>Hay ejemplos de códigos </li></ul>
  32. 33. Sequential Workflows <ul><li>Puntos de inicio y fin bien definidos </li></ul><ul><li>Rutas bien definidas y secuencia de pasos </li></ul><ul><li>Pueden incluir: </li></ul><ul><ul><li>Decision-making </li></ul></ul><ul><ul><li>Branching </li></ul></ul><ul><ul><li>Parallel steps </li></ul></ul><ul><ul><li>Loops </li></ul></ul>
  33. 34. State Machine Workflows <ul><li>Se refiere a maquinas de estados </li></ul><ul><li>Las acciones ponen al workflow en un estado definido </li></ul><ul><li>No hay una ruta o path definido para los cambios de estado </li></ul>
  34. 35. Mejoras en Workflows Popular y base exitosa en SharePoint 2007 <ul><li>Crea con Visual Studio 2010 formularios de Iniciación y Asociación </li></ul><ul><li>Nueva superficie de diseño de Workflows en SPD </li></ul><ul><li>Importa Workflows hechos en SPD hacia VS </li></ul><ul><li>Diseña workflows en Visio 2010 </li></ul><ul><li>Crea workflows a nivel de sitios </li></ul><ul><li>Mejor performance y escalabilidad </li></ul><ul><li>Workflows totalmente customizables </li></ul><ul><li>Visualización basada en browser </li></ul>
  35. 36. Workflow Importando datos
  36. 37. Business Connectivity Services Trae información de la línea de negocios hacia SharePoint App. Office Web 2.0 DB WCF Web Service .NET LOB SharePoint Plataforma Desarrollo Business Intelligence Enterprise content mgmt Collaboration social Enterprise Search Herramientas
  37. 38. Business Connectivity Services Trae información de la línea de negocios hacia SharePoint <ul><li>SharePoint List con datos externos </li></ul><ul><li>Capacidades de lectura/escritura </li></ul><ul><li>SharePoint Foundation </li></ul><ul><li>Construído sobre Business Data Catalog de SharePoint 2007 </li></ul>
  38. 39. Business Connectivity Services Importando datos
  39. 40. Soluciones Sandboxed Agilidad esencial <ul><li>Facil deployment </li></ul><ul><li>Desarrollo iterativo </li></ul><ul><li>Acceso a Servidores Compartidos </li></ul><ul><li>SharePoint Online </li></ul>Estabilidad esencial <ul><li>Seguro para otros usuarios </li></ul><ul><li>Acceso limitado a la API </li></ul><ul><li>Recursos monitoreados </li></ul><ul><li>Proceso separado </li></ul><ul><li>Limites de la colección de sitios </li></ul>
  40. 41. Soluciones Sandboxed Protegiendo nuestros ambientes
  41. 42. <ul><li>Desarrolladores tienen herramientas pobres para reproducir problemas y ambientes </li></ul><ul><li>Desarrolladores gastan mucho tiempo enviando bugs de regreso a los testers para obtener mayor información </li></ul><ul><li>Una vez que el problema ha ocurrido, es demasiado tarde </li></ul><ul><ul><li>¿Porqué simplemente no puedo rebobinar mi aplicación? </li></ul></ul><ul><ul><li>¿Porqué no puedo volver al punto en donde ocurrió el problema? </li></ul></ul>Intellitrace para SharePoint 2010 El mundo del desarrollo…
  42. 43. <ul><li>Experiencia de debugging de primera clase en Visual Studio 2010 SP1 </li></ul><ul><li>Graba el funcionamiento de la aplicación y debuggeador </li></ul><ul><ul><li>Experiencia similar a SysInternals FileMon/RegMon </li></ul></ul><ul><li>Graba el flujo de ejecución del programa </li></ul><ul><li>Graba datos del programa (parámetros y valor de retorno) </li></ul><ul><li>Permite al usuario analizar y depurar código en el depurador familiar de Visual Studio 2010 </li></ul>Intellitrace para SharePoint 2010 ¿Qué es Intellitrace?
  43. 44. Unit Testing para SharePoint 2010 Soporte para Unit Testing ctxttxtxtxtxxtxttxxttxtxtxtx
  44. 45. Visual Studio 2010 SP1 Intellitrace en SharePoint 2010
  45. 46. Links a más información
  46. 47. Referencias <ul><li>Instalar SharePoint Foundation en Windows 7 64Bits http:// blogsp.idea80.com/2010/02/instalacion-de-sharepoint-2010-sobre.html </li></ul><ul><li>Crear paquetes de soluciones de SharePoint WSD http:// msdn.microsoft.com/es-es/library/ee231560.aspx </li></ul><ul><li>LinQTosharepoint </li></ul><ul><li>http :// msdn.microsoft.com/en-us/SP2010DevTrainingCourse_AccessingSharePointListData.aspx </li></ul><ul><li>REST </li></ul><ul><li>http :// msdn.microsoft.com/en-us/library/ff798339.aspx </li></ul>
  47. 48. Referencias <ul><li>Sharepoint 2010 Developer Tranning Kit </li></ul>

×