La siguiente imagen muestra cómo SharePoint agrega valor a los desarrolladores:

Utilizar SharePoint como Framework le permite al desarrollador centrarse más en la creación de la lógica de negocio que agrega valor a la aplicación y menos en la construcción de infraestructuras.
Los servicios que SharePoint Foundation 2010 proporciona a los desarrolladores pueden agruparse en cuatro categorÃas: datos, lógica de negocio, interfaz de usuario y control de acceso.
Si bien SharePoint está basado en SQL Server, no maneja tablas relacionales. Los datos se representan con un mayor nivel de abstracción: la lista. Para los usuarios finales, las listas son fáciles de entender y fácil de usar. Hay tres formas en que las que SharePoint trabaja con datos:
• Listas
• Listas externas: permiten leer y escribir distintos tipos de datos almacenados fuera de SharePoint como si fueran una lista nativa de SharePoint.
• ADO.NET: para el acceso a bases de datos relacionales fuera de una granja de SharePoint.

Para acceder a las listas, se puede utilizar el modelo de objetos de SharePoint, que proporciona formas especÃficas para consultar y modificar datos de un lista, o LINQ to SharePoint (novedad de la versión 2010), una versión de LINQ diseñada para ser utilizada con las listas de SharePoint.
Sin embargo, el acceso a las listas externas requieren el uso de CAML. CAML no es especialmente difÃcil, pero es otro lenguaje para los desarrolladores a aprender. Los datos de las listas no se exponen como estándar de tablas relacionales, lo que no facilita la integración entre SharePoint y tecnologÃas como SQL Reporting Services.
Una lista externa se basa en una tecnologÃa de SharePoint Foundation 2010 llamada Business Connectivity Services (BCS). BCS puede utilizar los servicios Web, ADO.NET, o código personalizado para acceder a fuentes de datos externas, presentándola como una lista externa. Los usuarios de SharePoint y las aplicaciones son libres de leer y escribir estos datos al igual que con las listas ordinarias. Business Connectivity Services es la evolución de Business Data Catalog (BDC), tecnologÃa disponible en Microsoft Office SharePoint Server 2007 (no en WSS 3.0). Buena noticia para el mundo WSS. Aún más, ahora se trata de una tecnologÃa de lectura-escritura (antes sólo lectura).
Las listas de SharePoint se puede acceder desde el exterior a través de SOAP. Para facilitar esto, Microsoft también proporciona bibliotecas de cliente de JavaScript, Silverlight y el. NET Framework. El punto clave es que los datos almacenados en una granja de SharePoint pueden ser accedidos por otro software y no únicamente para las aplicaciones de SharePoint.
El siguiente gráfico muestra las distintas formas de implementar lógica de negocio en SharePoint:

Entre las distintas opciones que ofrece SharePoint para implementar lógica de negocios encontramos:
1. Páginas ASPX.
2. Webparts.
3. Web services
4. Windows Communication Foundation
5. Workflows (comentado más abajo)
6. Eventos (algo parecido a triggers de una base de datos)
7. Times Jobs
Cada uno de estos temas merece un post. Bajaré un poco más a detalle en el tema Workflow, porque (a mi criterio) es donde SharePoint marca la diferencia:
Un desarrollador puede aplicar lógica de negocio de una aplicación de SharePoint a través de un flujo de trabajo con Windows Workflow Foundation (WF) 3.5. Por sà mismo, WF sólo proporciona los fundamentos necesarios para crear flujos de trabajo. SharePoint Foundation 2010 llena los vacÃos, ofreciendo herramientas para crear flujos de trabajo (SharePoint Designer y Visual Studio), una forma para que las personas interactúen con un flujo de trabajo en funcionamiento a través de las lista de tareas, persistencia, y más. La construcción de una aplicación de flujo de trabajo con SharePoint Foundation 2010 es mucho más sencilla que si utilizáramos sólo WF.
SharePoint presenta distintos elementos para trabajar la interfaz de usuario. Quizá el más potente está dado por las Web Parts. Una Web Part encapsula lógica detrás de un elemento de la interfaz de usuario. Cada Web Part puede exponer una serie de acciones. Asimismo disponemos de la capacidad de mostrar o mover el elemento Web a una nueva ubicación en la pantalla. Esto permite al usuario personalizar la página que ve, la reorganización y la configuración de elementos Web que desee. Esta flexibilidad hace que sea más fácil para los desarrolladores crear una aplicación que los usuarios puedan personalizar.
SharePoint Foundation 2010 incluye algunas mejoras en la interfaz de usuario respecto a su predecesor. Por un lado, ahora hay soporte para una amplia gama de navegadores Web. Igual de importante, ahora es posible desplegar una aplicación Silverlight en un elemento Web de SharePoint.
En lugar de recrear la rueda, SharePoint Foundation 2010 se basa en IIS para autenticación.
En aplicaciones que utilicen listas, SharePoint puede hacer mucho más simple autorización. Una vez más, el objetivo es permitir a los desarrolladores centrar sus esfuerzos en las necesidades de negocio en lugar de en la escritura de código de infraestructura.
Las organizaciones que utilizan Sharepoint ya poseen administradores capacitados: saben cómo agregar servidores, realizar copias de seguridad, instalar aplicaciones y mucho más. Gracias a esto la vida de un desarrollador puede ser más simple.
Sin embargo, una solución instalada directamente en los servidores de la granja puede afectar a toda la granja, perjudicar el rendimiento o desestabilizar el conjunto de servidores de SharePoint. Esto hace que los administradores establezcan ciertas restricciones.
Esta fue una preocupación con la versión anterior de SharePoint. La respuesta a este problema tiene nombre: sandboxing. Una solución puede ser instalada por un administrador de colección de sitios y ser accesible sólo a los sitios en esa colección. El código de la solución se instala en la base de datos de contenido, junto con las personalizaciones de usuario y otra información, tal como se muestra en el gráfico:

Con la versión 2010 de SharePoint Online los clientes también pueden cargar y ejecutar una aplicación con standboxing.
Son las mismas que antes, pero mejoradas: Visual Studio 2010 y SharePoint Designer 2010:

Algunas novedades:
• Server Explorer para listas de SharePoint en Visual Studio
• Asistentes para crear eventos entre otros.
• Posibilidad de importar desde Visual Studio un flujo de trabajo creado con SharePoint Designer.
Microsoft se propuso que el desarrollo en SharePoint sea de primera clase en Visual Studio 2010. Esta nueva perspectiva es lo que subyace a los cambios significativos en Visual Studio 2010. Motivó otros cambios, tales como la capacidad de los desarrolladores de la instalación del entorno de SharePoint en versiones de 64 bits de Windows 7 y Windows Vista.
Marzo 8th, 2010 at 17:01
Buen comienzo