Introduction au développement en SharePoint

27
Introduction au développement en SharePoint Nik Charlebois

description

 

Transcript of Introduction au développement en SharePoint

Page 1: Introduction au développement en SharePoint

Introduction au développement en

SharePoint

Nik Charlebois

Page 2: Introduction au développement en SharePoint

@NikCharleboisNikCharlebois.com

À propos de moi• Conseiller technique principal @ Bibliothèque et Archives

Canada

• Responsable du Groupe d’usager SharePoint de l’Outaouais

• PME Réalisation de sites corporatifs sur Office365

• Débuté avec SharePoint 2003

• MCTS Windows SharePoint Services 3.0

• MCP HTML5 and CSS3

Page 3: Introduction au développement en SharePoint

Ordre du jour• Historique du développement en SharePoint

• Introduction aux différents composants principaux de SharePoint

• Gabarits de Visual Studio

• Anatomie d’une Solution SharePoint

• Survol des différents types de solutions SharePoint:

• Solution de ferme

• Solution en bac-à-sable

• Modèle d’objet client

• Modèle d’Apps

@NikCharleboisNikCharlebois.com

Page 4: Introduction au développement en SharePoint

Historique

2003 et 2007:

• Seule option possible: Solution de Ferme;

• Difficile de gérer les fonctionnalités et paquets de solution;

• Nécessite une installation serveur;

2010:

• Introduction des Solutions en Bac à Sable et du Modèle d’objet client;

• Grande amélioration de Visual Studio pour gérer les solutions;

• Prend en charge Windows 7;

@NikCharleboisNikCharlebois.com

Page 5: Introduction au développement en SharePoint

Historique[…]

2013:

• Introduction au modèle d’Apps;

• Possibilité de déployer des solutions en bac-à-sable à distance (Visual Studio 2012);

• Windows 7 non-supporté;

• Ne nécessite aucune installation de SharePoint locale*

• 30 days of Surface Challenge;

vNext:

• Solutions en bac-à-sable non-supportées

@NikCharleboisNikCharlebois.com

* Si le modèle d’app est utilisé exclusivement;

Page 6: Introduction au développement en SharePoint

Composants principaux

Site Collection (SPSite)

Web (SPWeb)

Liste (SPList)

Item (SPListItem)

@NikCharleboisNikCharlebois.com

Page 7: Introduction au développement en SharePoint

Composants principaux […]

• Permissions uniques ou héritées peuvent être appliquées sur chaque composant;

• Permissions peuvent être définie sur:

• Individu;

• Groupe Active Directory;

• Groupe défini dans SharePoint;

@NikCharleboisNikCharlebois.com

Page 8: Introduction au développement en SharePoint

Composants principaux[…]

@NikCharleboisNikCharlebois.com

WebPart

- Fonctionnalité modulaire pouvant être réutilisée sur différentes Pages;

- Peux être modifiée et personnalisée pour chaque utilisateur ou pour tout le monde (shared)

App Part

Page 9: Introduction au développement en SharePoint

Gabarits de Visual Studio

• Gabarits de projets:

@NikCharleboisNikCharlebois.com

Page 10: Introduction au développement en SharePoint

Gabarits de Visual Studio […]

• Gabarits d’items:

@NikCharleboisNikCharlebois.com

Page 11: Introduction au développement en SharePoint

Anatomie d’une Solution SharePoint

• Package: Peux contenir 1 ou plusieurs « plugin » nommé des « features ». Un seul « package » par solution;

• Feature: Ce qui exécute la tâche ou contient des items à être déployés;

• Item: Web Part, pages administratives, fichiers (images,css, master Pages), listes, types de contenu, etc (voir diapositive précédente);

@NikCharleboisNikCharlebois.com

Page 12: Introduction au développement en SharePoint

Types de développement

*Pour les 5 démos qui suivent, nous démontrons toujours la même opération, mais en utilisant les différents modèles de déploiement offerts.

Scénario: créer un nouveau web qui aura une nouvelle liste qui contiendra 50 items;

@NikCharleboisNikCharlebois.com

Page 13: Introduction au développement en SharePoint

Solutions de Ferme

• Accès à tout le modèle d’objets;

• Accès à toutes les ressources du serveur;

• Nécessite un accès direct au serveur pour déployer (via cmd ou PowerShell);

• Recommendation: utiliser seulement pour des solutions administratives;

@NikCharleboisNikCharlebois.com

Page 14: Introduction au développement en SharePoint

Solutions de Ferme […]

• Peuvent-être activées au niveau de la ferme, de l’application web, de la collection de site, ou d’un site en particulier;

• Nécessite redéploiement pour une reconstruction de ferme;

• Cause une réinitialisation du serveur;

@NikCharleboisNikCharlebois.com

Page 15: Introduction au développement en SharePoint

Démo #1

@NikCharleboisNikCharlebois.com

Page 16: Introduction au développement en SharePoint

Solutions en Bac-à-Sable

• Peuvent être déployées directement par l’utilisateur à distance;

• Limitée à une collection de site en particulier (ne peut pas affecter d’autres collections de site);

• Gérées par un système de pointage associés aux ressources utilisées;

• Limitée à environ 70% du modèle d’objets entier;

@NikCharleboisNikCharlebois.com

Page 17: Introduction au développement en SharePoint

Solution en Bac-à-Sable […]

• Améliorations avec Visual Studio 2012:

• IntelliSense affiche seulement les classes disponibles;

• WebParts visuelles maintenant prises en charge;

• Possibilité de déployer à distance;

@NikCharleboisNikCharlebois.com

Page 18: Introduction au développement en SharePoint

Solutions en Bac-à-Sable […]

• Seule option pour de la personnalisation sur Office 365 (pour l’instant);

• Sauvegardées directement dans la base de données de contenu;

• Considérées dépréciées en SharePoint 2013, mais fonctionne toujours!;

@NikCharleboisNikCharlebois.com

Page 19: Introduction au développement en SharePoint

@NikCharleboisNikCharlebois.com

Démo #2

Page 20: Introduction au développement en SharePoint

Modèle d’objets client

• Utilise soit SilverLight, .NET ou ECMAScript;

• Exécuté en entièreté sur le côté client;

• Améliorations REST avec SharePoint 2013;

• Seule façon d’intéragir avec le Ribbon (JavaScript);

• Possibilité de créer des applications clients qui interagissent avec le serveur (Window 8, mobile, etc)

@NikCharleboisNikCharlebois.com

Page 21: Introduction au développement en SharePoint

@NikCharleboisNikCharlebois.com

Démo #3

Page 22: Introduction au développement en SharePoint

Modèle d’Apps

• Trois types d’App:

• SharePoint-Hosted (côté client seulement);

• JavaScript (CSOM ou REST seulement);

• Provider-hosted (hébergée hors SharePoint, mais peuvent être sur-place);

• N’importe quel language (Rail, PHP, .NET, etc)

• Auto-Hosted (Office 365 & Azure seulement);

@NikCharleboisNikCharlebois.com

Page 23: Introduction au développement en SharePoint

Démo #4

@NikCharleboisNikCharlebois.com

Page 24: Introduction au développement en SharePoint

Napa

• Visual Studio « Light » en ligne;

• Permet de créé, déployer et publier des Apps SharePoint-Hosted;

• Possibilité de partager le « package »

• Permet de pousser mon « Surface Challenge » plus loin;

@NikCharleboisNikCharlebois.com

Page 25: Introduction au développement en SharePoint

Démo #5

@NikCharleboisNikCharlebois.com

Page 26: Introduction au développement en SharePoint

Ressources

• .Net Rocks – Episode 849

• http://www.dotnetrocks.com/default.aspx?showNum=849

• Blog de Scott Hillier sur les options d’app

• http://www.shillier.com/archive/2013/02/27/app-designs-in-sharepoint-2013.aspx

@NikCharleboisNikCharlebois.com

Page 27: Introduction au développement en SharePoint

Questions

@NikCharleboisNikCharlebois.com

?