español - ¿Qué es el desarrollo Sharepoint desde el punto de vista de los desarrolladores?
manual de sharepoint office 365 (3)
Escuché hablar mucho sobre Sharepoint en estos días, pero estoy teniendo problemas para comprender exactamente qué es a través de toda la jerga empresarial y de marketing. Probarlo también parece una molestia (varios paquetes de software pesados que no puedes descargar gratis).
¿Podría alguien dar una buena descripción de desarrollador a desarrollador de lo que es Sharepoint? Especialmente me gustaría saber qué hacen generalmente los desarrolladores de Sharepoint.
Aquí hay un breve video que describe SharePoint desde una perspectiva de usuario final / negocio http://www.youtube.com/watch?v=s12Jb5Z2xaE
Desde la perspectiva de un desarrollador, SharePoint es una plataforma que se ubica sobre ASP.NET que brinda los servicios descritos en el video (y más). El trabajo del desarrollador es ampliar la plataforma cuando las características listas para usar por sí solas no pueden resolver un problema comercial.
Mientras que SharePoint se sienta encima de ASP.NET, el desarrollo para SharePoint difiere del desarrollo de ASP.NET de muchas maneras. SharePoint usa listas como su mecanismo de almacenamiento principal, tiene su propio modelo de componentes (características), tiene su propio modelo de empaquetado y despliegue (soluciones), y así sucesivamente. Lleva cierto tiempo convertirse en un experto en ser un desarrollador de SharePoint, incluso para alguien que sea experto en el desarrollo de ASP.NET.
SharePoint viene con muchas partes extensibles sobre las que puedes construir. No tiene que escribir su propia autenticación, flujo de trabajo, equilibrio de carga, creación de sitios, versiones de documentos, etc.
Esto le permite construir soluciones de alto nivel rápidamente.
De hecho, la primera pregunta que debe hacerse como desarrollador es si un problema puede resolverse sin codificación. Los usuarios y administradores empresariales pueden componer soluciones dentro del navegador o usar SharePoint Designer. Un desarrollador debe tratar de familiarizarse con el trabajo que tienen esos roles y las herramientas que usan. A menudo serás el administrador de tu propio servidor de desarrollo que te expondrá a AD, PowerShell y tareas de instalación y configuración.
Si se necesita Visual Studio, el código que desarrolle deberá ajustarse a los marcos de trabajo de SharePoint y usar elementos como el Servidor o el Modelo de objetos del lado del cliente, varios esquemas Xml, etc. además de html, JavaScript y C #. Por ejemplo, en lugar de crear una página sencilla (como podría ser un desarrollador de ASP.NET), una solución de SharePoint puede requerir que ajuste sus html / js en un WebPart que luego puede ser reutilizado y configurado en diferentes páginas por usuarios comerciales.
Las versiones alojadas de SharePoint (especialmente 2013) agregan otra dimensión al desarrollo de SharePoint: además de html / js es posible que desee usar Azure.
== Editar 2017 ==
Esta es una publicación bastante antigua y SharePoint ha cambiado mucho en los últimos años. La mayoría de las partes de la publicación original siguen siendo válidas, pero algunas solo se aplicarían si lo hace en instalaciones locales donde el futuro de SharePoint parece inclinarse hacia SharePoint Online. Dicho esto, la mayoría de las funcionalidades aún existen con algunas mejoras.
== Publicación original ==
SharePoint es un CMS (Sistema de gestión de contenido) muy complejo con muchas características agradables de BSS (Business Support System). Hay tantas ventajas que es difícil limitar lo que se debe mencionar. Sin embargo, algunas de las cosas obvias serían que puede mezclar tantos "entornos" en el mismo servidor, estos entornos están separados como sitios.
¿Qué quiero decir con ambientes?
Digamos que dirige una empresa de logística y está cansado de tener tantos sistemas diferentes solo para mantener su negocio en funcionamiento. Muchos de los sistemas también tienen diferentes proveedores, por lo que el ecosistema que rodea a la empresa también se vuelve igualmente complejo, aquí viene SharePoint al rescate, ya que es un sistema que realmente puede albergar todos los entornos requeridos. Por ejemplo.
- Página web externa, alojada por SharePoint o por una página web integrada
- Gestión de pedidos
- Atención al cliente y venta de entradas
- Manejo de artículos de carga
- Sitios de intranet con gestión documental
Todos y cada uno de estos entornos pueden beneficiarse de las funciones integradas de SharePoints, como flujos de trabajo y tipos de contenido personalizados.
Diría que la principal razón para elegir SharePoint sería su versatilidad para almacenar diferentes tipos de datos. No es un sistema para elegir si está planeando un millón de transacciones por segundo, incluso si el rendimiento puede mejorarse considerablemente con varios servidores en una granja.
Mi punto de vista como desarrollador es que SharePoint se trata básicamente de las listas, las bibliotecas y la tienda de metadatos, ya que es donde se guardan la mayoría de los datos. Esto es algo que necesita aprender y comprender cómo estructurar sus datos y cómo implementará su modelo de información.
La tarea más común en mi mundo sería la integración de SharePoint con un CMS externo, como EPIServer o Joomla, para configurar una integración en la que los visitantes puedan enviar mensajes de la web directamente a SharePoint. Estas asignaciones luego se dirigen a la creación de un flujo de trabajo, lo que sucederá con este mensaje cuando sea recibido por el personal de soporte al cliente / ventas o lo que sea, todo el tiempo hasta que se pueda cerrar el encargo. Cuando termine con esto, podría construir algunos gráficos en un elemento web personalizado utilizando mschart mostrando algunos datos de ventas o estadísticas de diligencias de soporte. Actualmente estoy planeando la estructura de datos usando SharePoint como una tienda web. Y ahí tienes otra vez, ¡versatilidad!
También hay una API muy poderosa en SharePoint si te gustan las integraciones. Estoy involucrado en la producción de un conector ADO.NET para SharePoint que convierte a SharePoint en un servidor SQL que permite a los desarrolladores omitir el uso de CAML. Y, hay muchas otras herramientas geniales por ahí.
No olvidemos la segunda mayor ventaja de usar SharePoint. Puedes enfocarte en el desarrollo hacia adelante, el backend ya está ahí.