51
Desenvolvimento com Sharepoint 2010 Lucas Simões Maistro [email protected] http://twitter.com/lucas_simoes http://blogdopiruca.wordpress.com

Desenvolvimento com sharepoint

Embed Size (px)

DESCRIPTION

Oficina de Desenvolvimento com Sharepoint

Citation preview

Page 1: Desenvolvimento com sharepoint

Desenvolvimento com Sharepoint 2010

Lucas Simões [email protected]://twitter.com/lucas_simoes

http://blogdopiruca.wordpress.com

Page 2: Desenvolvimento com sharepoint

Lucas Simões Maistro

◦ Especialista em Sistemas para Internet

◦ Bacharel em Administração de Empresas com Habilitação em Análise de Sistemas

◦ 11 anos de experiência em desenvolvimento de software

◦ Engenheiro de Software da Critical Software do Brasil

Apresentação

Page 3: Desenvolvimento com sharepoint

Sharepoint 2001◦ Microsoft adquire nCompass◦ Sharepoint Team Services (STS)

Sharepoint 2003◦ Front-end com ASP.Net◦ STS foi renomeado para Windows

Sharepoint Services (WSS) Sharepoint 2007

◦ Microsoft Office Sharepoint Server (MOSS 2007)

Histórico

Page 4: Desenvolvimento com sharepoint

17+mil clientes 100+milhões licenças 2/3 Fortune 1000 20.000 novos usuários por dia durante os últimos

5 anos 4.000+ Parceiros Líde do Gartner Magic Quadrants, Forrester Wave 1.000+ livros no Amazon U$1+Bilhão em receita U$6+ Bilhões em receitas para parceiros

◦ U$300+ milhões só no Brasil

Posicionamento de Mercado

Page 5: Desenvolvimento com sharepoint

Microsoft SharePoint Foundation 2010: é a tecnologia de base de todos os sites do SharePoint, com ele é possível criar rapidamente diversos tipos de sites.

SharePoint Server 2010 é um produto de servidor que depende da tecnologia do SharePoint Foundation para fornecer uma estrutura consistente e conhecida para listas e bibliotecas, administração e personalização de sites.

SharePoint Online é um serviço baseado em nuvem, hospedado pela Microsoft, para empresas de todos os portes que agora tem a opção de em vez de instalar e implantar o SharePoint Server no local podem simplesmente se inscrever no SharePoint Online.

SharePoint Designer 2010 é um programa grátis para projetar, criar e personalizar sites que executem o SharePoint Foundation e o SharePoint Server.

SharePoint Workspace 2010 é um programa de desktop que você pode usar para colocar o conteúdo do site do SharePoint offline e colaborar no conteúdo com outros enquanto está desconectado da rede.

Sharepoint 2010

Page 6: Desenvolvimento com sharepoint

Microsoft SharePoint 2010A Plataforma de Colaboração nas Empresas e na Internet

Conectar e habilitar pessoas

Infraestrutura Unificada -> menor custo

Responder rapidamente as necessidades de negócios

Comunidades

Busca

Sites

Composites

ConteúdoInsights

Page 7: Desenvolvimento com sharepoint

Sites - Experiência do usuário

Page 8: Desenvolvimento com sharepoint

Sites - “Theming and Branding”

Page 9: Desenvolvimento com sharepoint

Interface multi-idiomas

Page 10: Desenvolvimento com sharepoint

SharePoint Communities

•Promove compartilhamento com fácil autoria sociial•Navegar facilmente com recursos de marcação•Encontrar repostas mais rapidamente através de feedback do usuário

ConhecimentoInformal

•Conectando usuários através de perfis•Mantendo atualizado utilizando o feed de noticias e alertas•Tornar a descoberta de expertise mais fácil

Conexões sociais

•Colaboração pela Internet, Intranet e Extranet•Melhoria na interoperabilidade com suporte a padrões•A toque de caixa em conformidade com WCAG 2.0

Participação em qualquer lugar

Page 13: Desenvolvimento com sharepoint

Search - Interface Fast Search

Resultados visuais conectam os usuários com o conteúdoThumbnails pra Word e PowerPointVisual Best Bets destacam conteúdos selecionados Preview no browser sem sair da página de resultados

Navegadores

Thumbnails

Previews

Classificar por qualquer campo

Resultados Semelhantes

Feito usando o SharePoint Search CenterAproveita todas as inovações do SharePointWeb Parts, Federação, autocomplete de buscas, buscas relacionadas, “Você quis dizer?”

Page 16: Desenvolvimento com sharepoint

SharePoint Composites

• Melhores ferramentas para soluções de usuário final

• Automação de processos e validação de dados com formulários

• Integração com Visio services para visualização

Soluções direcionadas para usuários

• Business Connectivity Services para troca de dados

• Dados de sistemas externos no Outlook, Word & Workspace sem necessidade de código

• Dados do SharePoint expostos por web services & APIs

Conectividade com dados

• Sandboxed Solutions para instalação rápida e self-service

• Estabilidade da plataforma com gerenciamento de cotas de recursos

• Suporte a padrões para integração e acessibilidade

Deployment de soluções

Page 20: Desenvolvimento com sharepoint

Estrutura

Page 21: Desenvolvimento com sharepoint

Arquitetura Stand Alone

Todas essas funções em apenas 1 servidor

Active Directory

SQL Server SharePoint

Page 22: Desenvolvimento com sharepoint

Arquitetura Server Farm

Uma Server Farm é constituída de no mínimo 3 servidores

Active Directory SQL Server SharePoint

Page 23: Desenvolvimento com sharepoint

Medium Server Farm

Page 24: Desenvolvimento com sharepoint

Large Server Farm

Page 25: Desenvolvimento com sharepoint

SharePoint TerminologiaFarm

SPFarm

Web ApplicationsSPWebApplication

Site CollectionsSite collection

SPSite

Site SPWeb

Root Site

Sub sites

Field 1 Field 2 Field 3

Item 1

Item 2

Item 3

Item 4

Item -SPListItem

List - SPList

Field 1 Field 2 Field 3

File 1

File 2

File 3

File 4

File – SPFileFolder - SPFolder

Document Library - SPDocumentLibrary

Lists

Page 26: Desenvolvimento com sharepoint

Criação de Sites e Páginas

Page 27: Desenvolvimento com sharepoint

Gestão de Documentos

Page 28: Desenvolvimento com sharepoint

28

Master Pages

Page 29: Desenvolvimento com sharepoint

•Team site master page•User content pages (lists\content pages\etc)•_layouts pages (site settings, etc)

v4.master

•For app experiences, like Search or Office Web Applications•If you do not need site navigation•If you do not have a ribbon•If your app needs the space•Note. Does not work with team or with publishing sites

minimal.master

•For informative and simple pages – Access denied, confirmation, error, login, request access, signout, web deleted pages•Not customizable, but pages can be replaced

simple.master

•Show site using legacy interface•No Ribbon, no fluency•Provides easy upgrade from previous versions

default.master

•Publishing master page•Used oob in publishing sites

nightandday.master

Master Page - Tipos

Page 30: Desenvolvimento com sharepoint

On Web Front End

Contains OOB site wide Ribbon Implementation

Adicionando um Ribbon Control

CMDUI.XML

<CustomAction Location = (somewhere in Ribbon) Scope = (Farm to Web) <CommandUIExtension> <CommandUIDefinitions /> <CommandUIHandlers /> </CommandUIExtension></CustomAction>

Custom Action

Page with the Ribbon

SE existir, os componentes são adicionados aos handle commands da página

SENÃO Os handle commands devem ser declarados separadamente

JavaScript

Handles control

Page Component

Mesclado com a CMDUI

Page 31: Desenvolvimento com sharepoint

Adicionando um Ribbon Button

Onde?

O quê?

Ação

Page 32: Desenvolvimento com sharepoint

• Controles do ASP.NET 2.0• Funcionam como um UserControl, sendo

então extremamente flexíveis• São personalizáveis pelos usuários,

conseguindo manter as preferências de cada um individualmente

• São dispostas em Web Zones• São vinculadas a um WebpartManeger• Permitem conexão e comunicação entre

Webparts

Webparts

Page 33: Desenvolvimento com sharepoint

• Sharepoint utiliza amplamente Webparts em suas paginas

• Existem Webparts prontas no Sharepoint para exibir listas, fazer buscas, gerar relatórios, exibir folhas de dados do Excel, visualizar imagens, visualizar Slides, formulários, Silverlight, etc...

• Praticamente em todos os sites do Sharepoint existem zonas para inserção de novas Webparts.

Webparts no Sharepoint

Page 34: Desenvolvimento com sharepoint

API’s Sharepoint

Page 35: Desenvolvimento com sharepoint

• API de programação para interação com o Sharepoint

• Código funciona no servidor aonde o Sharepoint esta rodando

• Permite interagir com todas as estruturas do Sharepoint, listas, sites, permissões, Webparts, etc.

Server API Sharepoint

Page 36: Desenvolvimento com sharepoint

• Algumas classes são principais durante o desenvolvimento pois proporcionam interagir com os sites e listas do Sharepoint

• Elas são: ◦ SPSite ◦ SPWeb ◦ SPContext◦ SPList◦ SPListItem◦ SPListItemCollection

Server API – Objetos Comuns

Page 37: Desenvolvimento com sharepoint

• Collaborative Aplication Markup Language• Linguagem de marcação baseada em XML• Tem diversas funcionalidades como:

◦ Definir features◦ Definir Views para dados e paginas◦ Realizar Querys em listas do Sharepoint

• No Sharepoint 2010 foi incluída a função para Joins entre listas nas Querys

CAML Query e sua utilização

Page 38: Desenvolvimento com sharepoint

CAML – Exemplo Query

Page 39: Desenvolvimento com sharepoint

• O Objeto SPQuery é utilizado para usar as querys CAML nas listas

CAML – Querys em Listas

Page 40: Desenvolvimento com sharepoint

• Language Integrated Query• Simplificado, forma orientada a objetos para

consulta• Cria uma ponte entre POO e dados

relacionais• Querys validadas em tempo de compilação• Suporte ao IntelliSense do Visual Studio• Unificação de sintaxe para consultar

qualquer fonte de dados

LINQ

Page 41: Desenvolvimento com sharepoint

Versões do LINQ:• LINQ to Objects• LINQ to XML• LINQ to SQL• LINQ to Entity• LINQ to SharePoint

LINQ

Page 42: Desenvolvimento com sharepoint

• Permite fazer operações sem CAML, porem não o substitui

• Tipos e queries fortemente tipadas• Intellisense ajuda na construção das Queries• Microsoft.SharePoint.Linq.dll

◦ Encapsula as consultas realizadas pelo SharePoint object model com as classes geradas

• Lado Servidor apenas (Server-side), para o lado cliente a utilização do LINQ fica para facilitar a interação com o REST (listdata.svc)

LINQ to SharePoint

Page 43: Desenvolvimento com sharepoint

As aplicações Silverlight podem ser integradas ao Sharepoint de diferentes maneiras:◦ SharePoint 2010 Service integrado ao Silverlight;◦ Silverlight Client Objetc Model;◦ Consumindo dados com Silverlight;◦ REST services com Silverlight.

Silverlight no SharePoint

Page 44: Desenvolvimento com sharepoint

É um host para aplicações Silverlight; Simples de Implantar; Criar uma Web Part Silverlight para fazer o

upload do arquivo “.XAP” para qualquer biblioteca de documentos;

 

Web Part Silverlight

Page 45: Desenvolvimento com sharepoint

• Nova API de desenvolvimento para o Sharepoint 2010

• Permite interagir com dados e estrutura do Sharepoint remotamente

• Sintaxe similar a API Server Object• Possui versões para aplicações ECMS

Javascript, Silverlight e o .NET geral (WinForms,WPF,ASP.NET,etc)

Introdução Client Object Model

Page 46: Desenvolvimento com sharepoint

BCS Client

Business Data Connectivity

External Content Type Repository

External Lists

Dev Platform

Enterprise Search

Business Intelligence

Collaboration Social

Enterprise Content

Management

Web 2.0DBWCFWeb ServiceLOB

SharePoint Designer

Visual Studio

Business Connectivity Services Office Applications

Design Tools

SharePoint

Page 47: Desenvolvimento com sharepoint

Tipos de Conteúdo Externo

Office Clients (Rich)

SharePoint

External Content Type (ECT)

External Data Source(Web Service, DB, .Net

object, LOB system, Web 2.0 service, etc.)

BCS

BCSSoluções habilitadas para o BCS utilizam os ECTs para integrar dados externos com o SharePoint e outras aplicações Office

Descreve o esquema e as formas de acesso a dados e uma fonte de dados externa e os seus comportamentos em relação ao Office e ao SharePoint

*antigo BDC Entity do SharePoint 2007

Page 48: Desenvolvimento com sharepoint

Introdução aos Workflows

Workflow (Fluxo de Trabalho) é conjunto de passos/etapas a serem realizadas para atingir determinado objetivo.

A plataforma SharePoint utiliza os serviços do Windows Workflow Foundation (WF).

Trabalha atualmente com a plataforma .NET 3.5 (4.0 ainda em desenvolvimento na data de lançamento do SharePoint 2010).

Page 49: Desenvolvimento com sharepoint

Há dois tipos de Workflows

controlados pelo WF:•Sequential Workflows: São workflows que iniciam todos os seus passos sem praticamente nenhuma intervenção humana.•State Machine Workflows: Nestes workflows há uma grande interação humana entre os diversos passos executados pelo workflow.

Introdução aos Workflows

Page 50: Desenvolvimento com sharepoint

Pode-se criar um Workflow mais completo, que integra-se a outros elementos, bem como State-Machine Workflows

Permite a adição de códigos necessários ao seu workflow, bem como controlar eventos relacionados ao “lifetime” do Workflow

Através do External Data Exchange Services torna-se possível que eventos externos interfiram no estado de um Workflow

É possível converter Workflows criados com Visual Studio 2008 (para o SharePoint 2007) para o SharePoint 2010

Desenvolvendo Workflows com Visual Studio 2010

Page 51: Desenvolvimento com sharepoint

Muito Obrigado!!!

Lucas Simões [email protected]://twitter.com/lucas_simoes

http://blogdopiruca.wordpress.com