Suplementos do SharePoint

Há dois tipos básicos de Suplementos do SharePoint: hospedados pelo SharePoint e hospedados pelo provedor. Para tomar a melhor decisão sobre o tipo a ser desenvolvido para o seu cenário, aprenda o que os dois tipos de Suplemento do SharePoint têm em comum.

Observação

Um aplicativo de dispositivo, como um aplicativo móvel, não é realmente um "Suplemento do SharePoint" mesmo quando ele acessa o SharePoint. O mesmo vale para um aplicativo Web iniciado de fora do SharePoint. Se quiser desenvolver aplicativos desses tipos, confira Acessar o SharePoint de aplicativos móveis e nativos de dispositivo.

  • Um Suplemento do SharePoint é uma funcionalidade autocontida que estende os recursos de sites do SharePoint para resolver problemas de negócios bem definidos.
  • Suplementos não têm um código personalizado que é executado em servidores do SharePoint. Em vez disso, toda a lógica personalizada é movida "para cima" na nuvem, "para baixo" nos computadores clientes ou "por cima" para um servidor local fora do farm do SharePoint ou da assinatura do SharePoint Online. Manter o código personalizado fora dos servidores do SharePoint fornece uma garantia para os administradores do SharePoint de que o suplemento não pode danificar seus servidores ou reduzir o desempenho de seus sites do SharePoint Online.
  • A lógica de negócios em um Suplemento do SharePoint pode acessar dados do SharePoint por meio de uma das várias APIs cliente incluídas no SharePoint. A API que você vai usar para o seu suplemento depende de determinadas decisões de design tomadas.
  • Quase todos os principais tipos de componentes do SharePoint podem fazer parte de um Suplemento do SharePoint, incluindo páginas, listas, fluxos de trabalho, tipos de conteúdo personalizado, modelos de lista, Web Parts e mais.
  • Os sites do SharePoint onde os Suplementos do SharePoint são instalados e dos quais os usuários os iniciarão são chamados de hosts da Web. Os componentes do SharePoint, no entanto, geralmente se encontram em uma Web filha especial do host da Web, chamada de suplemento da Web.
  • Os Suplementos do SharePoint podem se ajustar a um site do SharePoint de diversas maneiras:
    • Experiência de aplicativo do SharePoint de página inteira imersiva: como uma experiência de página inteira imersiva que pode ter a aparência de uma página do SharePoint.
    • Experiência de Parte do Aplicativo do SharePoint: como parte de uma página da Web, usando um tipo especial de controle chamado de parte de suplemento, para criar um elemento iframe que contém o suplemento.
    • Experiência de ação personalizada do aplicativo Do SharePoint: como comandos da interface do usuário que estendem faixas de opções e menus para listas, documentos e muito mais.
  • Todos os Suplementos do SharePoint instalados pelos usuários obtêm um bloco na página Conteúdo do Site do site do SharePoint. Clicar no bloco executa o suplemento.
  • Um Suplemento do SharePoint é configurado usando um manifesto de suplemento, um arquivo XML que declara as propriedades básicas do suplemento, onde ele é executado, e o que o SharePoint deve fazer quando o suplemento é iniciado. Entre outras coisas, o manifesto pode especificar os idiomas com suporte, de quais serviços e funcionalidades do SharePoint ele depende, e as permissões para o host da Web das quais o suplemento precisa. Suplementos do SharePoint têm total controle dos seu próprios suplementos da Web.
  • Suplementos do SharePoint são distribuídos em pacotes de suplementos que sempre incluem pelo menos o manifesto do suplemento. Caso não haja nenhum componente do SharePoint, o manifesto do suplemento pode ser o único elemento do pacote do suplemento. Se o suplemento tiver componentes do SharePoint em um suplemento da Web, eles serão incluídos no pacote como um conjunto de arquivos XML. Componentes remotos que são hospedados fora do SharePoint, como um aplicativo Web remoto ou um banco de dados, não são incluídos no pacote e são implantados separadamente do pacote do suplemento. No entanto, o manifesto do suplemento especifica os URLs dos componentes remotos.
  • Os pacotes de suplementos também podem incluir Suplementos do Office. Quando o Suplemento do SharePoint é instalado, o Suplemento do Office é adicionado a um catálogo de Suplementos do Office no SharePoint. Os usuários podem instalá-lo a partir do catálogo em aplicativos do Office como o Word ou o Excel.

Dica

Dê uma olhada em alguns suplementos do SharePoint naOffice Store para ter uma noção do que você pode desenvolver. Ou abra um site do SharePoint e instale alguns dos suplementos gratuitos do SharePoint. Basta navegar até Conteúdo do Site | adicionar um suplemento | SharePoint Store.

Alguns pontos para desenvolvedores experientes do SharePoint

Nós substituímos o soluçăos em área restrita que contém código personalizado do lado servidor. Ainda oferecemos suporte a soluçăos em área restrita "Sem código" e a soluçăos em área restrita que contenha somente JavaScript.

Suplementos do SharePoint não usam o modelo de objeto de servidor do SharePoint. Os modelos de objeto de cliente estão muito expandidos no SharePoint. Embora algumas APIs no modelo de objeto de servidor do SharePoint não estejam disponíveis nos modelos de objetos de cliente, elas são classes quase totalmente administrativas e relacionadas à segurança. Uma lógica personalizada do SharePoint que aborda essas áreas é mais apropriada para obter um script do Windows PowerShell script ou uma solução de farm clássica do SharePoint. Para saber como escolher entre os Suplementos do SharePoint, soluções clássicas de farm do SharePoint e soluções de área restrita, consulte Suplementos do SharePoint em comparação a soluções do SharePoint.

Duas maneiras de distribuir ou de vender um pacote de suplementos

Você pode distribuir um pacote de suplemento de duas maneiras:

  • Para um catálogo de suplementos da organização, dedicado a um conjunto de sites do SharePoint na assinatura do SharePoint Online ou em um farm local. Esse método é usado quando o suplemento é criado de forma personalizada para uma organização em particular.
  • Para a Office Store. A Store gerencia o processo de marketing, incluindo a descoberta, a compra e a atualização. A Microsoft tem um Painel do Vendedor para vender suplementos na Office Store.

Depois de implantar o suplemento de uma dessas maneiras, ele estará disponível para instalação na página Adicionar um suplemento de sites do SharePoint. Se o suplemento precisar de permissões para o host da Web ou para sua assinatura principal, o SharePoint solicitará ao usuário que instale o suplemento que conceda essas permissões.

Quando você precisar atualizar um suplemento para corrigir um bug ou para adicionar funcionalidades, faça as alterações e eleve o número de versão do suplemento no respectivo manifesto. Em seguida, reimplante o pacote do suplemento na loja ou no catálogo de suplementos. Em até 24 horas, os usuários recebem um aviso na interface do usuário do SharePoint informando que há uma atualização disponível. Eles podem instalar a atualização com um único clique.

Dois tipos de Suplementos do SharePoint: hospedados pelo SharePoint e hospedados pelo provedor

Comparação entre os aplicativos hospedados pelo SharePoint e pelo provedor

Suplementos do SharePoint hospedados pelo SharePoint

Os suplementos hospedados pelo SharePoint consistem quase que inteiramente de componentes do SharePoint em um suplemento da Web. Algumas vezes, diz-se que eles têm seu centro no SharePoint.

Como todos os Suplementos do SharePoint, um usuário pode executar um Suplemento do SharePoint hospedado na página Conteúdo do Site do site do SharePoint no qual ele está instalado. Opcionalmente, ele também pode ter dois outros tipos de componentes de interface do usuário no host da Web: partes de suplemento e ações personalizadas (ou seja, os botões da faixa de opções ou itens de menu personalizados). Todos os demais elementos de um suplemento hospedado no SharePoint são implantados no suplemento da Web. Esses componentes são definidos de forma declarativa usando os arquivos XML e podem incluir, dentre outros:

  • Páginas personalizadas
  • Fluxos de trabalho
  • Módulos (conjuntos de arquivos)
  • Modelos de lista
  • Instâncias de lista e de biblioteca
  • Formulários e exibições de lista personalizados
  • Tipos de conteúdo personalizados
  • Modelos da Web
  • Colunas internas (não colunas personalizadas)
  • Web Parts internas (Web Parts não personalizadas)
  • Arquivos JavaScript
  • Botões e itens de menu personalizados para o site de suplemento

Toda a lógica de negócios em um suplemento hospedado no SharePoint usa JavaScript, seja diretamente em uma página personalizada ou em um arquivo JavaScript que é referenciado a partir de uma página personalizada. Uma versão JavaScript do modelo de objeto do SharePoint (JSOM) está disponível para simplificar a realização de operações CRUD (criar, ler, atualizar e excluir) em dados do SharePoint por parte do suplemento.

As páginas personalizadas em um suplemento hospedado pelo SharePoint geralmente são páginas ASP.NET (ASPX) e podem referenciar declarativamente controles ASP.NET e controles prontos do SharePoint, mas não pode haver code-behind. No entanto, é possível personalizar os controles do SharePoint usando uma opção de renderização do lado cliente e o JavaScript personalizado.

O JavaScript em suplementos hospedados pelo SharePoint pode acessar dados e recursos que estejam fora do site de suplemento usando uma de duas técnicas para trabalhar com segurança com a mesma política de origem do navegador: uma biblioteca entre domínios especial do JavaScript ou uma classe WebProxy específica do JavaScript. Usando essas técnicas, um suplemento hospedado pelo SharePoint pode trabalhar com dados no site de host, em sua assinatura principal ou em qualquer local da Internet.

Suplementos do SharePoint hospedados pelo provedor

Qualquer componente do SharePoint que pode estar em um suplemento hospedado no SharePoint também pode estar em um suplemento hospedado pelo provedor. No entanto, suplementos hospedados pelo provedor são diferenciados dos suplementos hospedados pelo SharePoint por incluírem pelo menos um componente remoto, como um aplicativo Web, um serviço ou um banco de dados, hospedado externamente do farm do SharePoint ou da assinatura do SharePoint Online. Esse componente pode ser um servidor na mesma rede corporativa, como um farm do SharePoint ou um serviço de nuvem. Componentes externos podem ser hospedados em qualquer pilha de hospedagem na Web, incluindo a pilha do Linux, Apache, MySQL e PHP (LAMP).

Observação

O "provedor" é o responsável pela conta do servidor ou da nuvem. Ele pode ser a mesma empresa ou organização que possua o farm do SharePoint ou um locatário do SharePoint Online onde o suplemento será instalado. No entanto, o desenvolvedor do suplemento também pode ser o provedor. Normalmente, quando um suplemento é criado para uma organização, a organização fornece a hospedagem. Porém, quando um suplemento é criado para várias organizações, é mais provável que o desenvolvedor hospede os componentes remotos. A hospedagem no desenvolvedor é obrigatória se o Suplemento do SharePoint for comercializado pela Office Store, pois o desenvolvedor não terá as informações de contato dos compradores do suplemento. Nesse cenário, as várias instâncias do suplemento conhecem o URI do componente remoto porque ele está especificado no manifesto de suplemento.

Você tem total flexibilidade para a estrutura de hospedagem usada para os componentes remotos. Não é necessário usar uma pilha da Microsoft. Qualquer estrutura de hospedagem na Web pode ser usada, inclusive AMP (Linux, Apache server, MySQL, PHP), MEAN (MongoDB, ExpressJS, AngularJS, Nodejs), Java, Python e outras, e você também pode usar ferramentas de desenvolvimento não produzidas pela Microsoft. Além disso, os componentes remotos poderão ser hospedados em serviços de nuvem não são da Microsoft.

Você pode dar a mesma aparência das páginas do SharePoint às páginas remotas do suplemento usando um controle de cromo especial.

Os dados remotos podem ser blobs, caches, filas de mensagens, redes de entrega de conteúdo (CDN) e bancos de dados, entre outros. E os bancos de dados podem ser de qualquer tipo, incluindo relacionais e orientados a objetos. Os dados remotos podem ser acessados em uma variedade de formas. Por exemplo, você pode usar o Business Connectivity Services (BCS) para expor os dados em uma lista do SharePoint. Outra opção é expor dados em uma grade de uma página em um aplicativo Web remoto.

Os Suplementos do SharePoint usam as APIs do SharePoint para se conectarem e se integrarem aos recursos do SharePoint — pesquisa, fluxo de trabalho, redes sociais, taxonomia, perfis de usuário, BCS e mais. Isso permite que eles leiam documentos, façam pesquisas, conectem pessoas e executem operações CRUD. Há mais de um conjunto de APIs:

  • Quando os componentes remotos forem implementados com o .NET, a biblioteca Modelo de Objeto do Lado Cliente do SharePoint (CSOM) de código gerenciado estará disponível.
  • Para os componentes remotos que não baseados em .NET, um conjunto de APIs REST/OData pode ser usado para acessar os dados do SharePoint. Eles também podem ser usados de um cliente .NET, se você preferir trabalhar com uma interface OData.
  • A biblioteca JSOM, mencionada anteriormente, não pode ser usada em uma página remota, mas os suplementos hospedados pelo provedor podem ter páginas personalizadas do SharePoint em um site de suplemento e o JavaScript nessas páginas pode usar a biblioteca JSOM.

Suplementos hospedados pelo provedor que acessam o SharePoint são entidades de segurança, assim como usuários e grupos. A entidade do suplemento deve ser autenticada e autorizada, assim como o usuário. O suplemento deve ter permissões para executar operações nos dados do SharePoint, no host da Web. Na maioria dos cenários, as permissões efetivas de um usuário trabalhando com o SharePoint por meio de um Suplemento do SharePoint são a interseção das permissões do usuário e do suplemento, embora haja alguns cenários em que um usuário pode realizar ações com um suplemento, que não seriam possíveis, caso não tivesse permissão para fazê-las.

Os suplementos hospedados pelo provedor podem se conectar a qualquer serviço da Web interno ou público e, ao contrário de aplicativos hospedados pelo SharePoint, eles podem manipular listas do SharePoint e eventos de itens de lista, como a adição de um item a uma biblioteca de documentos.

Escolher seu caminho de desenvolvimento do SharePoint

Pronto para começar?

Observação

Se você for iniciante no desenvolvimento no SharePoint e na Web, você se beneficiará mais ao começar com o curso gratuito na Microsoft Virtual Academy ou ao trabalhar com um livro sobre desenvolvimento no SharePoint.

Confira também