SlideShare una empresa de Scribd logo
1 de 56
Descargar para leer sin conexión
MsCodersCamp2014
Colaboran:
#MsCodersCamp2014
Cloud
SharePoint Online: Desarrolla
tus apps en la nube
MsCodersCamp2014
#MsCodersCamp2014
Miguel Tabera
SharePoint MVP
Beezy | Spenta
www.sinsharepointnohayparaiso.com
@migueltabera
Iván Gómez
.NET Developer
Beezy | Spenta
www.blogmup.net
@ivangomezrod
#MsCodersCamp2014
MsCodersCamp2014
Cloud
SharePoint Online: desarrolla
tus apps en la nube
#MsCodersCamp2014
Hoy veremos…
• Office 365: SharePoint 2013 en la nube
• Introducción al nuevo modelo de desarrollo en SharePoint 2013
• Las nuevas API cliente (C#, JavaScript y REST)
• Apps de Office y SharePoint
• Tipos de app
• Beneficios por usar apps
• Conceptos básicos al desarrollar apps
• Laboratorio: todos a desarrollar apps
• La tienda de Office
• Desarrollo fácil de apps de Windows Phone para SharePoint Online
#MsCodersCamp2014
Office 365:
SharePoint
2013 en la
nube
#MsCodersCamp2014
Office 365: Office en la nube
+ + + =
#MsCodersCamp2014
Un único lugar, todo Office
#MsCodersCamp2014
¿Qué incluye SharePoint Online?
#MsCodersCamp2014
¿Qué no incluye SharePoint Online?
• Algunos servicios de BI
• PerformancePoint
• PowerPivot
• Reporting Services
• Analysys Services
• Desarrollo de soluciones servidor
• Word automation services
• Otras pequeñas características en los distintos servicios
#MsCodersCamp2014
Un paseo rápido
Demo
#MsCodersCamp2014
Introducción al
nuevo modelo
de desarrollo
de SharePoint
2013
#MsCodersCamp2014
La visión de Microsoft: modernizar la
plataforma
#MsCodersCamp2014
El resultado: un nuevo modelo de apps
basadas en la nube
#MsCodersCamp2014
Las nuevas API
cliente de
SharePoint
#MsCodersCamp2014
Las tres API cliente
• Client-side object model (CSOM)
• Para aplicaciones que usen C#.
• Para aplicaciones Silverlight y Windows Phone.
• Javascript object model (JSOM)
• Muy sencillo para aplicaciones web y JavaScript de Windows 8.
• Útil para desarrollar apps de SharePoint para otras plataformas
(Android, iOS…)
• REST
• API independiente de la plataforma basada en estándares como
OAuth y OData.
#MsCodersCamp2014
Resto de APIs
• Combinando las tres
API cliente con el
resto de API se
pueden desarrollar
las distintas
soluciones
#MsCodersCamp2014
Ayuda y referencias de las API
• Reference for SharePoint 2013 APIs (Server, CSOM, JavaScript)
• http://msdn.microsoft.com/en-us/library/jj193038.aspx
• How to: Complete basic operations using SharePoint 2013 client library code
• http://msdn.microsoft.com/en-us/library/fp179912.aspx
• How to: Complete basic operations using JavaScript library code in SP 2013
• http://msdn.microsoft.com/en-us/library/jj163201.aspx
• How to: Complete basic operations using SharePoint 2013 REST endpoints
• http://msdn.microsoft.com/en-us/library/jj164022.aspx
#MsCodersCamp2014
Apps de Office
y SharePoint
#MsCodersCamp2014
¿Qué es una app de SharePoint?
• Aplicaciones independientes que se integran con SharePoint
mediante APIs cliente (CSOM, JavasCript, REST)
• Diseñadas para no ensuciar ni cargar la granja de SharePoint
• Las apps no residen en SharePoint
• Desaparición paulatina del modelo tradicional de desarrollo
• Código cliente
• Centradas en escenarios concretos
• Petición de vacaciones
• Registro a eventos
• …
#MsCodersCamp2014
Cambio filosófico
• Suponen un cambio filosófico
en SharePoint.
• Ahora todo son apps
• Pensar en las app de móvil
Funcionalidades concretas
bastante independientes
#MsCodersCamp2014
Beneficios
• No se despliega código personalizado en el servidor SharePoint
• Migraciones futuras más sencillas
• Funcionan tanto en SharePoint Online como en SharePoint Server
• Reduce la rampa de aprendizaje
• No es tan necesario conocer muchos conceptos de SharePoint
• Se puede usar HTML5, JavaScript y REST si no se conoce .NET
• Las apps pueden residir en servidores externos con diferentes
tecnologías
• Permite hacer muchas más cosas que con las tradicionales
webparts, controles, etc.
#MsCodersCamp2014
Las app se integran en SharePoint
#MsCodersCamp2014
Apps para Office
• Word, Excel, Project, PowerPoint y Outlook también pueden tener
apps
• Filosofía similar: HTML5 + JavaScript
• Concepto Web Extensibility Framework (WEF)
• Plataforma de desarrollo para hacer apps para Office
• Permite renderizar páginas web dentro de las aplicaciones Office
• Permite al código de las páginas interactuar con los documentos Office
• Permite al código de las páginas interactuar con elementos de Exchange
#MsCodersCamp2014
Tipos de app de Office
Mail app (Outlook, Outlook Online)
Task pane app (Word, Excel,
Excel Online, PowerPoint,
Project Professional)
Content app (Excel, Excel Online)
#MsCodersCamp2014
Conceptos
básicos para
desarrollar
apps de
SharePoint
#MsCodersCamp2014
Los tres tipos de app
Sitio de
SharePoint
SharePoint-Hosted App
No necesita hosting. El código de la app se
ejecuta en el navegador cliente mediante
JavaScript y/o REST.
Provider-Hosted App
La app reside en cualquier infraestructura y y
está hecha con cualquier lenguaje. Da igual
que el hosting sea Windows Server, Apache…
Puede estar en .NET, Java, PHP, HTML5,
JavaScript…
Sitio de
SharePoint
Llamadas a SharePoint
para obtener o escribir
información usando las
API CSOM/REST +
OAuth
Cloud-based Apps
Aplicación web
(Hosting
propio)
Autohosted App
Similar a la anterior, salvo que el hosting
es Windows Azure + SQL Azure. El
aprovisionamiento e instalación se hace
de forma invisible. Sólo en Office 365.
Aplicación web
(Windows
Azure
Web Sites)
Sitio de
SharePoint
Online
APP
APP
APP
#MsCodersCamp2014
Formas para las app
Descripción Ejemplo
App que se abre a pantalla completa
para mostrar funcionalidades
avanzadas. Permite tener la barra de
navegación del sitio para volver
Reserva de recursos, panel de
negocio…
Aunque no sean una app, Word Online,
PowerPoint Online, Excel Online y OneNote Online
funcionan de forma similar.
Se inserta en las páginas de SharePoint
como una webpart tradicional
Visor del tiempo, visor de acciones,
panel de control, mapa…
Añade nuevas acciones para trabajar
con documentos e ítems en la cinta y
menús
Abrir un visualizador del documento,
imprimir un documento…
#MsCodersCamp2014
Las app por dentro
• Una app por dentro es
un sitio de SharePoint
• La app puede tener sus
propias listas y bibliotecas
que duran el tiempo que
la app esté instalada
• También puede acceder a
las listas y bibliotecas del
sitio que las contiene
Sitio de SharePoint App (sitio de SharePoint)
Lista Lista Lista
ListaBiblioteca
BibliotecaLista
Lista Lista Lista
App App
ListaBiblioteca
BibliotecaLista
Lista
Lista
Lista
BibliotecaLista
App
Aplicación web ubicada en
hosting externo.
• Opcional
• Sólo en provider hosted
y autohosted
#MsCodersCamp2014
El archivo AppManifest.xml
• AppManifest.xml define las propiedades de la app
• Visual Studio 2012/2013 ofrece un diseñador visual
SharePoint Hosted
Autohosted
Provider Hosted
#MsCodersCamp2014
Comunicación entre las app y SharePoint
• Las apps provider hosted y autohosted se encuentran fuera de
SharePoint y necesitan interactuar con su contenido para:
• Acceder a datos
• Efectuar operaciones (crear listas, editar permisos, etc.)
• Las app se comunican con SharePoint
vía CSOM y REST
• Las apps necesitan permisos para
acceder al contenido de SharePoint
• Esto se consigue gracias al nuevo
soporte a OAuth de SharePoint 2013
#MsCodersCamp2014
Sitio del desarrollador y catálogo de apps
• El catálogo de apps es una
colección de sitios con una
biblioteca en la que
almacenaremos los paquetes
de las app
• El sitio del desarrollador es una
colección de sitios con una
biblioteca para almacenar apps
que permite hacer debug y
desplegar la app desde Visual
Studio
#MsCodersCamp2014
Llamadas
cross-domain
#MsCodersCamp2014
Llamadas cross-domain
• Una app de SharePoint se muestra en la página dentro de un IFRAME
• La app está en un dominio distinto que el sitio de SharePoint
• Los navegadores no permiten a los elementos de la página interactuar
con más de un dominio para evitar ataques
• Librería JavaScript SP.RequestExecutor.js
• Se encuentra en el directorio LAYOUTS
• Con esta librería, las app pueden llamar a SharePoint aunque esté en
dominio diferente
• El mecanismo de trabajo no es específico de SharePoint, es un patrón
que se usa en la industria
#MsCodersCamp2014
Las llamadas cross-domain son bloqueadas
SharePoint Server
http://mydomain.com
Provider-hosted app
http://anotherdomain.com
<IFRAME>
Provider hosted app
</IFRAME>
El scripting cross site es bloqueado por
defecto en el servidor de SharePoint.
#MsCodersCamp2014
SP.RequestExecutor.js
SharePoint Server
http://mydomain.com
SP.RequestExecutor.js
1. Genera el IFRAME automáticamente.
2. Habilita las peticiones CSOM/REST posteando
al IFRAME con .postMessage()
<IFRAME>
Provider hosted app
</IFRAME>
<IFRAME>
http://mydomain.com/Proxy.aspx
</IFRAME>
#MsCodersCamp2014
Habilitando las llamadas cross-domain
SharePoint Server
http://mydomain.com
Provider-hosted app
http://anotherdomain.com
<IFRAME>
Provider hosted app
</IFRAME>
<IFRAME>
http://mydomain.com/Proxy.aspx
</IFRAME>
#MsCodersCamp2014
Laboratorio
#MsCodersCamp2014
Instalando
apps y
comprando en
la tienda de
Office
#MsCodersCamp2014
Ciclo de instalación de una app
FREE/
TRIAL/
PURCHASE
OFFICE
VALIDACIÓN
DE LA APP
#MsCodersCamp2014
Comprando en la tienda
#MsCodersCamp2014
Desarrollo de
apps de
Windows
Phone para
SharePoint
#MsCodersCamp2014
Windows Phone SharePoint application templates
Windows
Phone Empty
SharePoint
Application
Windows
Phone
SharePoint List
Application
#MsCodersCamp2014
Preparando el entorno
• Si vas a trabajar con el SDK de Windows Phone 8
• Microsoft Visual Studio 2012
• Windows Phone SDK 8.0
• http://www.microsoft.com/en-us/download/details.aspx?id=35471
• Microsoft SharePoint SDK for Windows Phone 8
• http://www.microsoft.com/en-us/download/details.aspx?id=36818
• Si vas a trabajar con el SDK de Windows Phone 7
• Microsoft Visual Studio 2010 (no están soportadas en VS 2012).
• Windows Phone SDK 7.1:
• http://www.microsoft.com/en-us/download/details.aspx?id=27570
• Microsoft SharePoint SDK for Windows Phone 7.1:
• http://www.microsoft.com/en-us/download/details.aspx?id=35475
#MsCodersCamp2014
El patrón MVVM
#MsCodersCamp2014
Windows Phone Empty SharePoint application
Manifiesto de la app
DLL del Windows Phone
SharePoint SDK
Activos de la app
Recursos
Aplicación
Página inicial
#MsCodersCamp2014
Windows Phone SharePoint list application
Manifiesto de la app
ViewModels. Operación para
listar ítems de la lista y
operaciones para mostrar, editar
y crear ítem.
Vistas. Página para visualizar los
ítems y formularios de vista,
edición y creación.
Aplicación
Modelo. Clase que proporciona
los datos de SharePoint.
#MsCodersCamp2014
Mi primera app
• La Windows Phone Empty SharePoint Application es un proyecto
vacío con las DLL necesarias añadidas
• Útil como punto de partida a una app que conecte a SharePoint.
• La Windows Phone SharePoint List Application proporciona un
asistente de creación de la app
• Nos crea una app conectada a una lista, con todas sus operaciones.
• ¡Increíble! En cinco minutos tendremos una app lista que podemos lanzar
en el emulador o teléfono y publicar en la tienda.
#MsCodersCamp2014
Mi primera app
• 1) Creación del proyecto
#MsCodersCamp2014
Mi primera app
• 2) Buscamos la lista en el asistente
#MsCodersCamp2014
Mi primera app
• 3) Elegimos vistas 4) Elegimos operaciones
#MsCodersCamp2014
Mi primera app
• 5) Elegimos las columnas y su orden en los
formularios
#MsCodersCamp2014
Mi primera app
• 6) Proyecto listo para ejecutar
#MsCodersCamp2014
Mi primera app
• 7) App compilada y lista
#MsCodersCamp2014
Demo
Ejemplo
#MsCodersCamp2014
Descuento eBooks Comunidad técnica
30% de descuento
En ebooks de Krasis Press
Consigue tu código de descuento:
http://promos.campusmvp.com/mscoders http://www.linkedin.com/groups/MadPoint-
SharePoint-Users-Group-Madrid-4554702
MsCodersCamp2014
Colaboran:
#MsCodersCamp2014
Thank you!

Más contenido relacionado

La actualidad más candente

Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
Andrés Iturralde
 
6 propiedades de un sitio web
6 propiedades de un sitio web6 propiedades de un sitio web
6 propiedades de un sitio web
UVM
 
Portales Enterprise 2.0 con WebCenter
Portales Enterprise 2.0 con WebCenterPortales Enterprise 2.0 con WebCenter
Portales Enterprise 2.0 con WebCenter
Jaime Cid
 

La actualidad más candente (20)

¿Merece la pena SharePoint 2016? Puntos de vista de un IT PRO, desarrollador ...
¿Merece la pena SharePoint 2016? Puntos de vista de un IT PRO, desarrollador ...¿Merece la pena SharePoint 2016? Puntos de vista de un IT PRO, desarrollador ...
¿Merece la pena SharePoint 2016? Puntos de vista de un IT PRO, desarrollador ...
 
Diseña tu propio Office 365 - Global Azure Bootcamp 2015
Diseña tu propio Office 365 - Global Azure Bootcamp 2015Diseña tu propio Office 365 - Global Azure Bootcamp 2015
Diseña tu propio Office 365 - Global Azure Bootcamp 2015
 
Novedades en SharePoint 2013
Novedades en SharePoint 2013Novedades en SharePoint 2013
Novedades en SharePoint 2013
 
Novedades en SharePoint 2013
Novedades en SharePoint 2013Novedades en SharePoint 2013
Novedades en SharePoint 2013
 
Resumen de Novedades en SharePoint 2013
Resumen de Novedades en SharePoint 2013Resumen de Novedades en SharePoint 2013
Resumen de Novedades en SharePoint 2013
 
Cómo instalar Sharepoint Server 2013 en su empresa por Neiy Briceño
Cómo instalar Sharepoint Server 2013 en su empresa por Neiy BriceñoCómo instalar Sharepoint Server 2013 en su empresa por Neiy Briceño
Cómo instalar Sharepoint Server 2013 en su empresa por Neiy Briceño
 
Iniciándose en el desarrollo de aplicaciones para share point 2013
Iniciándose en el desarrollo de aplicaciones para share point 2013Iniciándose en el desarrollo de aplicaciones para share point 2013
Iniciándose en el desarrollo de aplicaciones para share point 2013
 
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos HibridosNovedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
 
SQL Server 2016 Reporting Services
SQL Server 2016 Reporting ServicesSQL Server 2016 Reporting Services
SQL Server 2016 Reporting Services
 
SharePoint para Usuarios
SharePoint para UsuariosSharePoint para Usuarios
SharePoint para Usuarios
 
Share point
Share pointShare point
Share point
 
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
 
Integración entre Reporting Services (SSRS) y SharePoint 2010
Integración entre Reporting Services (SSRS) y SharePoint 2010Integración entre Reporting Services (SSRS) y SharePoint 2010
Integración entre Reporting Services (SSRS) y SharePoint 2010
 
Introducción a SharePoint 2010
Introducción a SharePoint 2010Introducción a SharePoint 2010
Introducción a SharePoint 2010
 
6 propiedades de un sitio web
6 propiedades de un sitio web6 propiedades de un sitio web
6 propiedades de un sitio web
 
Los 8 errores que nunca se deben cometer instalando sharepoint2013 por Neiy B...
Los 8 errores que nunca se deben cometer instalando sharepoint2013 por Neiy B...Los 8 errores que nunca se deben cometer instalando sharepoint2013 por Neiy B...
Los 8 errores que nunca se deben cometer instalando sharepoint2013 por Neiy B...
 
SharePoint 2013 general
SharePoint 2013 generalSharePoint 2013 general
SharePoint 2013 general
 
Vistazo a SQL Server 2016
Vistazo a SQL Server 2016Vistazo a SQL Server 2016
Vistazo a SQL Server 2016
 
SharePoint 2010 - Introdución Backup y Restore
SharePoint 2010 - Introdución Backup y RestoreSharePoint 2010 - Introdución Backup y Restore
SharePoint 2010 - Introdución Backup y Restore
 
Portales Enterprise 2.0 con WebCenter
Portales Enterprise 2.0 con WebCenterPortales Enterprise 2.0 con WebCenter
Portales Enterprise 2.0 con WebCenter
 

Similar a MsCodersCamp 2014 - SharePoint Online: desarrolla tus apps en la nube

Extendiendo share point, project y office con el nuevo modelo de apps sps
Extendiendo share point, project y office con el nuevo modelo de apps spsExtendiendo share point, project y office con el nuevo modelo de apps sps
Extendiendo share point, project y office con el nuevo modelo de apps sps
Fabian Imaz
 
Soluciones de movilidad para nuevos entornos empresariales
Soluciones de movilidad para nuevos entornos empresarialesSoluciones de movilidad para nuevos entornos empresariales
Soluciones de movilidad para nuevos entornos empresariales
Adrian Diaz Cervera
 
Extendiendo SharePoint Online con el nuevo modelo de apps
Extendiendo SharePoint Online con el nuevo modelo de appsExtendiendo SharePoint Online con el nuevo modelo de apps
Extendiendo SharePoint Online con el nuevo modelo de apps
Fabian Imaz
 

Similar a MsCodersCamp 2014 - SharePoint Online: desarrolla tus apps en la nube (20)

¿Es posible extender a SharePoint 2013? Probablemente en m+as de una forma
¿Es posible extender a SharePoint 2013? Probablemente en m+as de una forma¿Es posible extender a SharePoint 2013? Probablemente en m+as de una forma
¿Es posible extender a SharePoint 2013? Probablemente en m+as de una forma
 
Extender office365
Extender office365 Extender office365
Extender office365
 
Prepara tus apps de SharePoint y Office 365 para el futuro
Prepara tus apps de SharePoint y Office 365 para el futuroPrepara tus apps de SharePoint y Office 365 para el futuro
Prepara tus apps de SharePoint y Office 365 para el futuro
 
Estrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepointEstrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepoint
 
Extendiendo SharePoint, Project y Office 2013 con el nuevo modelo de Apps by ...
Extendiendo SharePoint, Project y Office 2013 con el nuevo modelo de Apps by ...Extendiendo SharePoint, Project y Office 2013 con el nuevo modelo de Apps by ...
Extendiendo SharePoint, Project y Office 2013 con el nuevo modelo de Apps by ...
 
Futuro de Desarrollo en SharePoint
Futuro de Desarrollo en SharePointFuturo de Desarrollo en SharePoint
Futuro de Desarrollo en SharePoint
 
Extendiendo share point, project y office con el nuevo modelo de apps sps
Extendiendo share point, project y office con el nuevo modelo de apps spsExtendiendo share point, project y office con el nuevo modelo de apps sps
Extendiendo share point, project y office con el nuevo modelo de apps sps
 
CatDotNet - Farmville para SharePoint
CatDotNet - Farmville para SharePointCatDotNet - Farmville para SharePoint
CatDotNet - Farmville para SharePoint
 
Soluciones de movilidad para nuevos entornos empresariales
Soluciones de movilidad para nuevos entornos empresarialesSoluciones de movilidad para nuevos entornos empresariales
Soluciones de movilidad para nuevos entornos empresariales
 
Diseña tu propio Office 365 con Azure IaaS y PaaS
Diseña tu propio Office 365 con Azure IaaS y PaaSDiseña tu propio Office 365 con Azure IaaS y PaaS
Diseña tu propio Office 365 con Azure IaaS y PaaS
 
Extendiendo SharePoint Online con el nuevo modelo de apps
Extendiendo SharePoint Online con el nuevo modelo de appsExtendiendo SharePoint Online con el nuevo modelo de apps
Extendiendo SharePoint Online con el nuevo modelo de apps
 
CEUS By Iberian SharePoitn Conference Workshops
CEUS By Iberian SharePoitn Conference WorkshopsCEUS By Iberian SharePoitn Conference Workshops
CEUS By Iberian SharePoitn Conference Workshops
 
Ionic y angular.js
Ionic y angular.jsIonic y angular.js
Ionic y angular.js
 
Como crear add ins hibridas para share point y office
Como crear add ins hibridas para share point y officeComo crear add ins hibridas para share point y office
Como crear add ins hibridas para share point y office
 
Programando Addins desde la web
Programando Addins desde la webProgramando Addins desde la web
Programando Addins desde la web
 
Java script para desarrolladores SharePoint
Java script para desarrolladores SharePointJava script para desarrolladores SharePoint
Java script para desarrolladores SharePoint
 
JS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World ExampleJS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World Example
 
Spsmad2016:Un SharePoint enla mochila
Spsmad2016:Un SharePoint enla mochilaSpsmad2016:Un SharePoint enla mochila
Spsmad2016:Un SharePoint enla mochila
 
Charla LogicApps en el CEUS
Charla LogicApps en el CEUSCharla LogicApps en el CEUS
Charla LogicApps en el CEUS
 
Net conf ar v2018 start up
Net conf ar v2018 start upNet conf ar v2018 start up
Net conf ar v2018 start up
 

Más de Miguel Tabera

El futuro de office 365 en 2019 y 2020: la innovación (SharePoint & Office 36...
El futuro de office 365 en 2019 y 2020: la innovación (SharePoint & Office 36...El futuro de office 365 en 2019 y 2020: la innovación (SharePoint & Office 36...
El futuro de office 365 en 2019 y 2020: la innovación (SharePoint & Office 36...
Miguel Tabera
 

Más de Miguel Tabera (11)

Project Cortex (Ignite 2019 announcements)
Project Cortex (Ignite 2019 announcements)Project Cortex (Ignite 2019 announcements)
Project Cortex (Ignite 2019 announcements)
 
El futuro de office 365 en 2019 y 2020: la innovación (SharePoint & Office 36...
El futuro de office 365 en 2019 y 2020: la innovación (SharePoint & Office 36...El futuro de office 365 en 2019 y 2020: la innovación (SharePoint & Office 36...
El futuro de office 365 en 2019 y 2020: la innovación (SharePoint & Office 36...
 
Novedades presentadas en Microsoft Ignite 2018
Novedades presentadas en Microsoft Ignite 2018Novedades presentadas en Microsoft Ignite 2018
Novedades presentadas en Microsoft Ignite 2018
 
Power apps to the next level
Power apps to the next levelPower apps to the next level
Power apps to the next level
 
Microsoft Teams: colaboración y productividad al máximo
Microsoft Teams: colaboración y productividad al máximoMicrosoft Teams: colaboración y productividad al máximo
Microsoft Teams: colaboración y productividad al máximo
 
Seguridad en office 365 (SharePoint Saturday Barcelona 2017)
Seguridad en office 365 (SharePoint Saturday Barcelona 2017)Seguridad en office 365 (SharePoint Saturday Barcelona 2017)
Seguridad en office 365 (SharePoint Saturday Barcelona 2017)
 
SharePoint no está muerto. Nuevas opciones de colaboración en Office 365.
SharePoint no está muerto. Nuevas opciones de colaboración en Office 365.SharePoint no está muerto. Nuevas opciones de colaboración en Office 365.
SharePoint no está muerto. Nuevas opciones de colaboración en Office 365.
 
Movilidad en Office 365
Movilidad en Office 365Movilidad en Office 365
Movilidad en Office 365
 
RBS in SharePoint
RBS in SharePointRBS in SharePoint
RBS in SharePoint
 
Windows Phone SharePoint Application Templates
Windows Phone SharePoint Application TemplatesWindows Phone SharePoint Application Templates
Windows Phone SharePoint Application Templates
 
InfoPath ha muerto, ¿qué nos depara el futuro?
InfoPath ha muerto, ¿qué nos depara el futuro?InfoPath ha muerto, ¿qué nos depara el futuro?
InfoPath ha muerto, ¿qué nos depara el futuro?
 

MsCodersCamp 2014 - SharePoint Online: desarrolla tus apps en la nube

  • 2. MsCodersCamp2014 #MsCodersCamp2014 Miguel Tabera SharePoint MVP Beezy | Spenta www.sinsharepointnohayparaiso.com @migueltabera Iván Gómez .NET Developer Beezy | Spenta www.blogmup.net @ivangomezrod
  • 4. #MsCodersCamp2014 Hoy veremos… • Office 365: SharePoint 2013 en la nube • Introducción al nuevo modelo de desarrollo en SharePoint 2013 • Las nuevas API cliente (C#, JavaScript y REST) • Apps de Office y SharePoint • Tipos de app • Beneficios por usar apps • Conceptos básicos al desarrollar apps • Laboratorio: todos a desarrollar apps • La tienda de Office • Desarrollo fácil de apps de Windows Phone para SharePoint Online
  • 9. #MsCodersCamp2014 ¿Qué no incluye SharePoint Online? • Algunos servicios de BI • PerformancePoint • PowerPivot • Reporting Services • Analysys Services • Desarrollo de soluciones servidor • Word automation services • Otras pequeñas características en los distintos servicios
  • 11. #MsCodersCamp2014 Introducción al nuevo modelo de desarrollo de SharePoint 2013
  • 12. #MsCodersCamp2014 La visión de Microsoft: modernizar la plataforma
  • 13. #MsCodersCamp2014 El resultado: un nuevo modelo de apps basadas en la nube
  • 15. #MsCodersCamp2014 Las tres API cliente • Client-side object model (CSOM) • Para aplicaciones que usen C#. • Para aplicaciones Silverlight y Windows Phone. • Javascript object model (JSOM) • Muy sencillo para aplicaciones web y JavaScript de Windows 8. • Útil para desarrollar apps de SharePoint para otras plataformas (Android, iOS…) • REST • API independiente de la plataforma basada en estándares como OAuth y OData.
  • 16. #MsCodersCamp2014 Resto de APIs • Combinando las tres API cliente con el resto de API se pueden desarrollar las distintas soluciones
  • 17. #MsCodersCamp2014 Ayuda y referencias de las API • Reference for SharePoint 2013 APIs (Server, CSOM, JavaScript) • http://msdn.microsoft.com/en-us/library/jj193038.aspx • How to: Complete basic operations using SharePoint 2013 client library code • http://msdn.microsoft.com/en-us/library/fp179912.aspx • How to: Complete basic operations using JavaScript library code in SP 2013 • http://msdn.microsoft.com/en-us/library/jj163201.aspx • How to: Complete basic operations using SharePoint 2013 REST endpoints • http://msdn.microsoft.com/en-us/library/jj164022.aspx
  • 19. #MsCodersCamp2014 ¿Qué es una app de SharePoint? • Aplicaciones independientes que se integran con SharePoint mediante APIs cliente (CSOM, JavasCript, REST) • Diseñadas para no ensuciar ni cargar la granja de SharePoint • Las apps no residen en SharePoint • Desaparición paulatina del modelo tradicional de desarrollo • Código cliente • Centradas en escenarios concretos • Petición de vacaciones • Registro a eventos • …
  • 20. #MsCodersCamp2014 Cambio filosófico • Suponen un cambio filosófico en SharePoint. • Ahora todo son apps • Pensar en las app de móvil Funcionalidades concretas bastante independientes
  • 21. #MsCodersCamp2014 Beneficios • No se despliega código personalizado en el servidor SharePoint • Migraciones futuras más sencillas • Funcionan tanto en SharePoint Online como en SharePoint Server • Reduce la rampa de aprendizaje • No es tan necesario conocer muchos conceptos de SharePoint • Se puede usar HTML5, JavaScript y REST si no se conoce .NET • Las apps pueden residir en servidores externos con diferentes tecnologías • Permite hacer muchas más cosas que con las tradicionales webparts, controles, etc.
  • 22. #MsCodersCamp2014 Las app se integran en SharePoint
  • 23. #MsCodersCamp2014 Apps para Office • Word, Excel, Project, PowerPoint y Outlook también pueden tener apps • Filosofía similar: HTML5 + JavaScript • Concepto Web Extensibility Framework (WEF) • Plataforma de desarrollo para hacer apps para Office • Permite renderizar páginas web dentro de las aplicaciones Office • Permite al código de las páginas interactuar con los documentos Office • Permite al código de las páginas interactuar con elementos de Exchange
  • 24. #MsCodersCamp2014 Tipos de app de Office Mail app (Outlook, Outlook Online) Task pane app (Word, Excel, Excel Online, PowerPoint, Project Professional) Content app (Excel, Excel Online)
  • 26. #MsCodersCamp2014 Los tres tipos de app Sitio de SharePoint SharePoint-Hosted App No necesita hosting. El código de la app se ejecuta en el navegador cliente mediante JavaScript y/o REST. Provider-Hosted App La app reside en cualquier infraestructura y y está hecha con cualquier lenguaje. Da igual que el hosting sea Windows Server, Apache… Puede estar en .NET, Java, PHP, HTML5, JavaScript… Sitio de SharePoint Llamadas a SharePoint para obtener o escribir información usando las API CSOM/REST + OAuth Cloud-based Apps Aplicación web (Hosting propio) Autohosted App Similar a la anterior, salvo que el hosting es Windows Azure + SQL Azure. El aprovisionamiento e instalación se hace de forma invisible. Sólo en Office 365. Aplicación web (Windows Azure Web Sites) Sitio de SharePoint Online APP APP APP
  • 27. #MsCodersCamp2014 Formas para las app Descripción Ejemplo App que se abre a pantalla completa para mostrar funcionalidades avanzadas. Permite tener la barra de navegación del sitio para volver Reserva de recursos, panel de negocio… Aunque no sean una app, Word Online, PowerPoint Online, Excel Online y OneNote Online funcionan de forma similar. Se inserta en las páginas de SharePoint como una webpart tradicional Visor del tiempo, visor de acciones, panel de control, mapa… Añade nuevas acciones para trabajar con documentos e ítems en la cinta y menús Abrir un visualizador del documento, imprimir un documento…
  • 28. #MsCodersCamp2014 Las app por dentro • Una app por dentro es un sitio de SharePoint • La app puede tener sus propias listas y bibliotecas que duran el tiempo que la app esté instalada • También puede acceder a las listas y bibliotecas del sitio que las contiene Sitio de SharePoint App (sitio de SharePoint) Lista Lista Lista ListaBiblioteca BibliotecaLista Lista Lista Lista App App ListaBiblioteca BibliotecaLista Lista Lista Lista BibliotecaLista App Aplicación web ubicada en hosting externo. • Opcional • Sólo en provider hosted y autohosted
  • 29. #MsCodersCamp2014 El archivo AppManifest.xml • AppManifest.xml define las propiedades de la app • Visual Studio 2012/2013 ofrece un diseñador visual SharePoint Hosted Autohosted Provider Hosted
  • 30. #MsCodersCamp2014 Comunicación entre las app y SharePoint • Las apps provider hosted y autohosted se encuentran fuera de SharePoint y necesitan interactuar con su contenido para: • Acceder a datos • Efectuar operaciones (crear listas, editar permisos, etc.) • Las app se comunican con SharePoint vía CSOM y REST • Las apps necesitan permisos para acceder al contenido de SharePoint • Esto se consigue gracias al nuevo soporte a OAuth de SharePoint 2013
  • 31. #MsCodersCamp2014 Sitio del desarrollador y catálogo de apps • El catálogo de apps es una colección de sitios con una biblioteca en la que almacenaremos los paquetes de las app • El sitio del desarrollador es una colección de sitios con una biblioteca para almacenar apps que permite hacer debug y desplegar la app desde Visual Studio
  • 33. #MsCodersCamp2014 Llamadas cross-domain • Una app de SharePoint se muestra en la página dentro de un IFRAME • La app está en un dominio distinto que el sitio de SharePoint • Los navegadores no permiten a los elementos de la página interactuar con más de un dominio para evitar ataques • Librería JavaScript SP.RequestExecutor.js • Se encuentra en el directorio LAYOUTS • Con esta librería, las app pueden llamar a SharePoint aunque esté en dominio diferente • El mecanismo de trabajo no es específico de SharePoint, es un patrón que se usa en la industria
  • 34. #MsCodersCamp2014 Las llamadas cross-domain son bloqueadas SharePoint Server http://mydomain.com Provider-hosted app http://anotherdomain.com <IFRAME> Provider hosted app </IFRAME> El scripting cross site es bloqueado por defecto en el servidor de SharePoint.
  • 35. #MsCodersCamp2014 SP.RequestExecutor.js SharePoint Server http://mydomain.com SP.RequestExecutor.js 1. Genera el IFRAME automáticamente. 2. Habilita las peticiones CSOM/REST posteando al IFRAME con .postMessage() <IFRAME> Provider hosted app </IFRAME> <IFRAME> http://mydomain.com/Proxy.aspx </IFRAME>
  • 36. #MsCodersCamp2014 Habilitando las llamadas cross-domain SharePoint Server http://mydomain.com Provider-hosted app http://anotherdomain.com <IFRAME> Provider hosted app </IFRAME> <IFRAME> http://mydomain.com/Proxy.aspx </IFRAME>
  • 39. #MsCodersCamp2014 Ciclo de instalación de una app FREE/ TRIAL/ PURCHASE OFFICE VALIDACIÓN DE LA APP
  • 42. #MsCodersCamp2014 Windows Phone SharePoint application templates Windows Phone Empty SharePoint Application Windows Phone SharePoint List Application
  • 43. #MsCodersCamp2014 Preparando el entorno • Si vas a trabajar con el SDK de Windows Phone 8 • Microsoft Visual Studio 2012 • Windows Phone SDK 8.0 • http://www.microsoft.com/en-us/download/details.aspx?id=35471 • Microsoft SharePoint SDK for Windows Phone 8 • http://www.microsoft.com/en-us/download/details.aspx?id=36818 • Si vas a trabajar con el SDK de Windows Phone 7 • Microsoft Visual Studio 2010 (no están soportadas en VS 2012). • Windows Phone SDK 7.1: • http://www.microsoft.com/en-us/download/details.aspx?id=27570 • Microsoft SharePoint SDK for Windows Phone 7.1: • http://www.microsoft.com/en-us/download/details.aspx?id=35475
  • 45. #MsCodersCamp2014 Windows Phone Empty SharePoint application Manifiesto de la app DLL del Windows Phone SharePoint SDK Activos de la app Recursos Aplicación Página inicial
  • 46. #MsCodersCamp2014 Windows Phone SharePoint list application Manifiesto de la app ViewModels. Operación para listar ítems de la lista y operaciones para mostrar, editar y crear ítem. Vistas. Página para visualizar los ítems y formularios de vista, edición y creación. Aplicación Modelo. Clase que proporciona los datos de SharePoint.
  • 47. #MsCodersCamp2014 Mi primera app • La Windows Phone Empty SharePoint Application es un proyecto vacío con las DLL necesarias añadidas • Útil como punto de partida a una app que conecte a SharePoint. • La Windows Phone SharePoint List Application proporciona un asistente de creación de la app • Nos crea una app conectada a una lista, con todas sus operaciones. • ¡Increíble! En cinco minutos tendremos una app lista que podemos lanzar en el emulador o teléfono y publicar en la tienda.
  • 48. #MsCodersCamp2014 Mi primera app • 1) Creación del proyecto
  • 49. #MsCodersCamp2014 Mi primera app • 2) Buscamos la lista en el asistente
  • 50. #MsCodersCamp2014 Mi primera app • 3) Elegimos vistas 4) Elegimos operaciones
  • 51. #MsCodersCamp2014 Mi primera app • 5) Elegimos las columnas y su orden en los formularios
  • 52. #MsCodersCamp2014 Mi primera app • 6) Proyecto listo para ejecutar
  • 53. #MsCodersCamp2014 Mi primera app • 7) App compilada y lista
  • 55. #MsCodersCamp2014 Descuento eBooks Comunidad técnica 30% de descuento En ebooks de Krasis Press Consigue tu código de descuento: http://promos.campusmvp.com/mscoders http://www.linkedin.com/groups/MadPoint- SharePoint-Users-Group-Madrid-4554702