Compartir a través de


¿Por qué SharePoint Framework?

SharePoint se lanzó inicialmente como un producto local en 2001. Con el tiempo, se ha formado y extendido una gran comunidad de desarrolladores de muchas formas. La comunidad de desarrolladores ha seguido los mismos patrones y procedimientos que ha usado el equipo de desarrollo de productos de SharePoint, incluidos los elementos web, la característica de XML de SharePoint y muchos más. Muchas características se escribieron como personalizaciones del lado servidor mediante C#, se compilaron en archivos DLL e implementaron en granjas de servidores locales.

Esa arquitectura ha funcionado bien en entornos con una sola empresa, pero no se ha adaptado a la nube, donde se ejecutan varios espacios empresariales en paralelo en los mismos servidores. Como resultado, hemos presentado dos modelos alternativos: inyección de JavaScript del lado cliente y Complementos de SharePoint. Ambas soluciones tienen sus pros y sus contras.

Inyección de JavaScript

Uno de los elementos web más populares de SharePoint Online es Script Editor. Puede agregar JavaScript al Scripts Editor y hacer que se ejecute ese JavaScript cuando se representa la página. Es simple & y eficaz. Se ejecuta en el mismo contexto de explorador que la página y está en el mismo DOM, por lo que puede interactuar con otros controles de la página. Además, tiene un rendimiento bastante bueno y es fácil de usar.

Aun así, este enfoque tiene algunas desventajas:

  • Aunque puede empaquetar la solución para que los usuarios finales puedan colocar el control en la página, no puede proporcionar opciones de configuración fácilmente.
  • El usuario final puede editar la página y modificar el script, lo que puede afectar al elemento web.
  • El elemento web Scripts Editor no está marcado como Seguro para el scripting. La mayoría de las colecciones de sitios sin intervención del administrador (mis sitios, sitios de grupo) tiene una característica conocida como "NoScript" habilitada. Técnicamente, es la eliminación del permiso Agregar y personalizar páginas (ACP) de SharePoint. Esto significa que el elemento web Script Editor se bloqueará y no podrá ejecutarse en estos sitios.

Modelo de complementos de SharePoint

Una opción para soluciones que se ejecutan en sitios NoScript es el modelo del complemento o elemento de aplicación introducido en SharePoint Server 2013. Esta implementación crea un iFrame en que reside y se ejecuta la experiencia real. La ventaja es que, ya que es externo al sistema y no tiene acceso a la conexión o al DOM actuales, resulta más fácil de confiar e implementar para los trabajadores de la información. Los usuarios finales pueden instalar complementos en sitios NoScript.

Este enfoque también tiene algunas desventajas

  • Se ejecutan en un iFrame. Los iFrames son más lentos que el elemento web Script Editor, ya que requieren una nueva solicitud a otra página. La página tiene que pasar por una autenticación y autorización completas, realizar sus propias llamadas para obtener datos de SharePoint, cargar varias bibliotecas de JavaScript y mucho más. Normalmente, un elemento web Script Editor tardará, por ejemplo, 100 milisegundos en cargar y representar, mientras que un elemento de aplicación puede tardar dos segundos o más.
  • El límite de iFrame hace que sea más difícil crear diseños dinámicos y heredar información de temas y CSS. Los iFrames tienen una mayor seguridad, que le puede resultar útil a usted (otros controles de la página no pueden obtener acceso a ella) y al usuario final (el control no tiene acceso a su conexión a Microsoft 365).

SharePoint Framework

Históricamente, los desarrolladores crearon elementos web como ensamblados de plena confianza de C# que estaban instalados en los servidores en la nube.

Sin embargo, los modelos de desarrollo actuales suelen implicar la ejecución de JavaScript en un explorador que realiza llamadas a la API rest a las cargas de trabajo de back-end de SharePoint y Microsoft 365. Los ensamblados de C# no funcionan en este mundo. Los desarrolladores necesitaban un nuevo modelo de desarrollo.

SharePoint Framework es la siguiente evolución en el desarrollo de SharePoint.

Vea también