前 言
作为一个功能极其广泛的协作平台,SharePoint被人们用于很多协作场景中,诸如内容管理、项目管理、社交网络、信息管理等。在SharePoint 2013中,你会发现一些飞跃性的进展——尤其是基于云端技术的SharePoint应用程序的创建和部署。对于刚刚接触SharePoint的用户,尤其对于今天的Web开发者而言,这可能并不算是一个非常大的进步。但是对于那些熟悉SharePoint的爱好者而言,SharePoint 2013在构建和开发应用程序的方式上,确实有着不小的改变。
在本书中,你将了解到SharePoint 2013为开发者提供了诸多选择。你可以从一些小规模的开发项目开始——例如自定义的Web部件,逐步发展到更大规模的企业级应用程序,借助云端应用程序和服务的优势,并与微软或非微软的其他技术进行集成。这样一个在诸多方向都拥有极大潜力的平台,正是SharePoint的魅力所在。如果你刚刚成为SharePoint开发者,赶快系好安全带,让我们开始伟大的旅程!
本书读者对象
简单来说,本书主要的受众群体是刚刚接触SharePoint的开发者。本书假定你拥有一些编程经验,同时有学习开发SharePoint的热情。但本书并不需要你有SharePoint的开发经历。
对于本书的读者来说,我们假定你拥有两类开发背景:熟悉Web开发的基础知识,理解.NET程序设计。在Web开发方面,本书假定你了解HTML,可能还会了解层叠样式表(CSS)、可扩展标记语言(XML)/可扩展样式表语言(XSL),以及动态编程语言,如JavaScript。你可能也对ASP.NET略知一二,并期望能够学习如何将它们用于SharePoint开发。不论如何,你需要了解一些有关Web开发和.NET开发的基础知识,并希望掌握如何将这些知识用于SharePoint。
上面提到的这些领域,你将在阅读本书的过程中逐渐加深对它们的理解。作者建议你花些时间掌握HTML5标准,并且掌握JavaScript和一些jQuery类库的使用,它们在今天的Web开发过程中变得越来越重要。对云计算背后的设计和概念有一定了解,也会对本书的阅读有所帮助。
如果你已经熟悉SharePoint,那么在阅读本书的过程中也就已经拥有了一些优势。例如,你知道SharePoint的一些组成部分,比如列表、文档库,当然你还会在服务器端对象模型和客户端对象模型中见到熟悉的API。但是,不要期望SharePoint 2013中的所有东西都和SharePoint 2010保持一致。例如,SharePoint 2013中增加了很多服务;你需要开始考虑全新的云托管应用程序模型,将SharePoint核心的那些内容当作“应用程序”等。
不论你是SharePoint新手,还是具备SharePoint 2010开发经验的开发者,都将在本书中学到一些东西。对于新的SharePoint开发者,本书将带你开启全新的旅程,并在一路上为你布置好所需要了解的基础知识。对于有经验的SharePoint开发者,请将本书作为复习和了解新内容的向导。
本书包含的内容
就像曾经的SharePoint 2010一样,SharePoint 2013与其之前的版本相比有着相当重要的进展,你将发现平台中提供了非常多的内置特性,可以将其用在你的解决方案中。因为SharePoint是一个用途广泛的平台,包括诸多功能,所以本书也包含不少关于这些功能的介绍。不过作为Wrox的入门经典系列丛书的一员,本书旨在更多地关注SharePoint的很多基础概念,帮助读者掌握SharePoint的入门知识,并为今后掌握更加高级的程序设计议题做好准备。
本书将涵盖如下内容:
● SharePoint 2013开发入门
● 熟悉SharePoint开发工具的使用
● 熟悉常用的SharePoint开发任务
● 理解“云”
● 使用列表进行开发以及开发自定义Web部件
● 使用SharePoint和Microsoft Office集成业务系统(Line-Of-Business,LOB)
● 向Office Store创建和部署应用程序
● 为SharePoint创建面向服务的解决方案
● 在SharePoint开发过程中大量利用其内置特性
● 集成SharePoint和Microsoft Office
● 在SharePoint中实现OAuth和安全性
本书自身不包含SharePoint以往版本的内容(你可能会看到一些关于特性演变过程的参考资源),但是涵盖了SharePoint Foundation 2013、SharePoint Server 2013和Office 365(作为当前版本SharePoint中云托管应用程序的重要组成)。你同样可以在阅读本书的过程中找到一些在学习SharePoint开发过程中所需要的参考资源,比如博客、MSDN文章、C9 的培训内容以及源代码。
本书的组织结构
我们将带你快速掌握SharePoint的基础知识,搭建新的SharePoint开发环境,然后介绍SharePoint的开发方法。
本书中包含大量的代码练习,但依然会使用一些常用的.NET编程风格,以便让你了解在编写SharePoint程序时可以使用的不同方法。本书编排上由浅入深,也就是说随着你不断深入阅读本书的章节,内容也会变得越来越复杂。书中的示例都会编写得尽量简洁,包含了完成指定任务所必须完成的代码步骤。
本书的组织结构模拟了我们在开发SharePoint应用时循序渐进的过程。也就是说,你必须首先了解SharePoint这个平台本身,然后安装SharePoint及其开发环境,再开始编写程序——要做的事情一开始会比较简单,但会逐渐变得复杂。你将发现在编写SharePoint程序时,某些特定的开发任务会比其他的更为常用(例如,使用列表进行开发或创建自定义Web部件),这些常见任务将在本书第Ⅱ部分进行介绍。有时候,你会发现随着SharePoint开发过程的深入,你需要在SharePoint解决方案中使用HTML5、Windows Azure或Web服务。当你需要开始在解决方案中集成不同的系统,比如通过Web服务或通过编程的方式创建外部内容类型时,你会用到工作流和BCS,这些将作为高级主题出现在本书的第Ⅲ部分。
本书由三部分组成。这样设置是为了帮助你循序渐进地了解SharePoint开发中所涉及的不同领域。
第Ⅰ部分:SharePoint 2013入门。这一部分包含如下一些基础内容:
● 第1章:SharePoint 2013介绍。本章介绍SharePoint中的一些基本概念和相关领域。
● 第2章:SharePoint 2013 应用程序模型概述。本章对如何通过全新的SharePoint托管和云托管的应用程序模型开发SharePoint应用程序做了一些基本阐述。
● 第3章:SharePoint 2013开发工具。本章将带我们逐步熟悉在构建和部署SharePoint应用程序的过程中用到的主要开发工具。
● 第4章:理解开发选项。本章讨论在开发SharePoint时可以使用的不同选择:使用SharePoint解决方案还是SharePoint应用程序,以及在开发SharePoint应用程序时应该使用哪种API。
● 第5章:Windows Azure for SharePoint概述。本章介绍Windows Azure——一个在云托管应用程序中非常重要的角色。
第Ⅱ部分:SharePoint 2013开发基础构件。第Ⅱ部分将更进一步地探索SharePoint平台,讨论一些你会用到的常用开发内容,涵盖如下内容:
● 第6章:在SharePoint 2013中开发、集成与构建应用程序。本章着重介绍你需要了解的最常用的一些开发任务。
● 第7章:打包和部署SharePoint 2013应用程序。本章讨论如何使用开发工具打包和部署SharePoint 2013应用程序。
● 第8章:分发SharePoint 2013应用程序。本章介绍分发SharePoint 2013应用程序的不同途径,例如通过Office Store。
● 第9章:客户端对象模型与REST接口概述。本章讨论在SharePoint托管或云托管的SharePoint应用程序中,如何使用客户端对象模型。
● 第10章:SharePoint 2013中的OAuth概述。本章讨论如何通过在SharePoint应用程序中使用OAuth,使得云托管的应用程序和应用程序事件能够无缝地与SharePoint整合在一起。
第Ⅲ部分:SharePoint 2013高级开发主题。在本书的最后一部分,包含一些高级主题。其中有些部分可能直到你对SharePoint的基本内容已经非常了解时才有机会用到。这一部分涵盖如下内容:
● 第11章:开发与SharePoint集成的Office应用程序。本章讨论在SharePoint应用程序中使用全新的Office应用程序模型时,可以用到的不同的集成方法。
● 第12章:SharePoint 2013中的远程事件接收器。本章深入介绍如何开发和部署SharePoint事件接收器。
● 第13章:使用BCS创建业务解决方案。本章介绍如何将外部系统(也就是业务系统)集成到SharePoint中。
● 第14章:使用Office服务开发应用程序。本章介绍一些全新的Office服务,例如Excel Services和Access Services,以及如何利用这些服务创建出让人眼前一亮的应用程序。
● 第15章:开发SharePoint 2013工作流应用程序。本章介绍如何在应用程序中通过集成自定义工作流来实现业务流程的管理。
当你阅读完本书时,你已经对SharePoint 2013有了非常全面的掌握,可以自如地开发和部署SharePoint应用程序。对于SharePoint开发新手,可能需要按照章节顺序来阅读本书,本书将由浅入深地带你学习相应的知识。如果你已经拥有SharePoint开发经验,可以随你的兴趣自由阅读本书的章节。不管采用哪种方式,我们的目的都是让你通过阅读本书,能够在学习SharePoint开发的旅途中有所斩获。
阅读本书需要哪些准备
阅读本书时,至少需要准备如下内容:
● SharePoint环境(或者你能够远程访问的环境)——Office 365、SharePoint Foundation或SharePoint Server都可以。在本书的相应章节中,可能会用到某些特定版本的SharePoint
● Visual Studio 2012专业版或更高版本
● Microsoft Office 2013专业版
● SharePoint Designer 2013
● Windows Azure SDK和Windows Azure Tools for Visual Studio
● Windows Azure订阅
其他一些特定的需求(例如Office Store账号),将分别在各章节中进行讨论。
源代码
在读者学习本书中的示例时,可以手工输入所有的代码,也可以使用本书附带的源代码文件。本书使用的所有源代码都可以从本书合作站点http://www.wrox.com/或www.tupwk.com.cn/downpage上下载。登录到站点http://www.wrox.com/,使用Search工具或使用书名列表就可以找到本书。接着单击本书细目页面上的Download Code链接,就可以获得所有的源代码。
提示:
由于许多图书的标题都很类似,所以按ISBN搜索是最简单的,本书英文版的ISBN是978-1-118-49584-1。
在下载了代码后,只需用自己喜欢的解压缩软件对它进行解压缩即可。另外,也可以进入http://www.wrox.com/dynamic/books/download.aspx上的Wrox代码下载主页,查看本书和其他Wrox图书的所有代码。
勘误表
尽管我们已经尽了各种努力来保证文章或代码中不出现错误,但是错误总是难免的,如果您在本书中找到了错误,例如拼写错误或代码错误,请告诉我们,我们将非常感激。通过勘误表,可以让其他读者避免受挫,当然,这还有助于提供更高质量的信息。
请给wkservice@vip.163.com发电子邮件,我们就会检查您的反馈信息,如果是正确的,我们将在本书的后续版本中采用。
要在网站上找到本书英文版的勘误表,可以登录http://www.wrox.com,通过Search工具或书名列表查找本书,然后在本书的细目页面上,单击Book Errata链接。在这个页面上可以查看到Wrox编辑已提交和粘贴的所有勘误项。完整的图书列表还包括每本书的勘误表,网址是www.wrox.com/misc-pages/booklist.shtml。
p2p.wrox.com
要与作者和同行讨论,请加入p2p.wrox.com上的P2P论坛。这个论坛是一个基于Web的系统,便于您张贴与Wrox图书相关的消息和相关技术,与其他读者和技术用户交流心得。该论坛提供了订阅功能,当论坛上有新的消息时,它可以给您传送感兴趣的论题。Wrox作者、编辑和其他业界专家和读者都会到这个论坛上来探讨问题。
在http://p2p.wrox.com上,有许多不同的论坛,它们不仅有助于阅读本书,还有助于开发自己的应用程序。要加入论坛,可以遵循下面的步骤:
(1) 进入p2p.wrox.com,单击Register链接。
(2) 阅读使用协议,并单击Agree按钮。
(3) 填写加入该论坛所需要的信息和自己希望提供的其他信息,单击Submit按钮。
(4) 您会收到一封电子邮件,其中的信息描述了如何验证账户,完成加入过程。
提示:
不加入P2P也可以阅读论坛上的消息,但要张贴自己的消息,就必须加入该论坛。
加入论坛后,就可以张贴新消息,响应其他用户张贴的消息。可以随时在Web上阅读消息。如果要让该网站给自己发送特定论坛中的消息,可以单击论坛列表中该论坛名旁边的Subscribe to this Forum图标。
关于使用Wrox P2P的更多信息,可阅读P2P FAQ,了解论坛软件的工作情况以及P2P和Wrox图书的许多常见问题。要阅读FAQ,可以在任意P2P页面上单击FAQ链接。