zoukankan      html  css  js  c++  java
  • Inside Microsoft SharePoint 2010 简译(1): SharePoint 2010开发者路线图

    早在2011年时候,就想过要翻译这书SharePoint的经典之作,但是最终还没坚持下来。时隔两年,再次提笔,这次一定要坚持翻完。由于是第一次翻译,加上本人水平有限,不免有错误及翻译不当的地方,还请各位多提宝贵意见及勘误。您的支持,是对我最大的支持及鼓励。

    第一章 SharePoint 2010开发者路线图

    除非你不问世事,或者是去搞云计算了,否则你一定已经注意到了SharePoint变得越来越火了。在过去短短的几年时间里,SharePoint的销售额就已经超过了数10亿美金。可以毫不夸张的讲,SharePoint已经迈进了主流软件产品的行列。每天都有全球数百万的用户在使用SharePoint, 这些用户不仅包括普通的业务员,一线经理,企业高管,还包括网站管理员,系统管理员以及开发人员。

    截止这一本书出版时(2011年),微软共发布了4个版本的SharePoint,详见表1-1。每次发布都会包含两个产品,一个是仅提供核心功能的免费版本,另一个则是在其基础之上增加很多功能的商业版本。收费版本,以服务器端及客户端访问许可的方式出售。

    年份

    内核版本

    商业版本

    2001

    SharePoint Team Services

    SharePoint Portal Server 2001

    2003

    Windows SharePoint Services 2.0

    Microsoft SharePoint Portal Server 2003

    2007

    Windows SharePoint Services 3.0

    Microsoft Office SharePoint Server 2007

    2010

    Microsoft SharePoint Foundation

    Microsoft SharePoint Server 2010

    SharePoint 2001提供了一个,允许普通用户根据需求,自助创建站点、列表以及文档库的环境。这个环境是以数据驱动为导向,并基于Sql Server实现的。通过在数据库中,增加记录来跟踪站点及列表的创建。但是这个版本有一些先天性的不足。首先,对站点进行自定义的过程非常的繁琐。其次,上传到文档库中的文件,被存放在前端服务的硬盘上。这导致无法通过增加服务器场的前端服务器来对其进行扩展。

    SharePoint 2003, 是第一个基于 .Net Framework 及Asp.net 来构建的版本。 由此,开发人员可通过Web Part及Event Handlers(事件处理器)来扩展SharePoint。此外,这个版本还修改了文档库的实现机制,将文件存放到后端的数据库,而不在是前端服务的硬盘上。这一改动,使得通过增加服务器场的前端服务器,来扩展SharePoint变成了可能。

    SharePoint 2007在其基础架构上,引入许多新的概念。这些概念包括站点列,内容类型,features 以及solution packages。微软同进还增强了SharePoint与Asp.net之间的集成,使得Asp.net开发人员可以使用他们所熟悉的Asp.net组件,如模板页,用户控件,navigation providers,authentication providers, 自定义HttpModule等来扩展SharePoint。

    SharePoint 2010是SharePoint的第四个版本,也是本书出版时的最新版本。它包括Microsoft SharePoint Foundation(内核、免费版本)和Microsoft SharePoint Server 2010(商业版本)。这个章节的主要目标是让您对SharePoint有一个较高层次的认识。除此之外,你还将学习到SharePoint Server是如果通过扩展SharePoint Foundation,来为增加额外的功能及商业价值。

    SharePoint Foundation

    SharePoint Foundation在内核层次上对SharePoint2007做了很大的改动。对于使用过2007的用户而言,它在浏览器上的用户体验有了一个质的的飞跃。2007的UI已经过时了,它的UI设计完全没有遵循当前的HTML标签,甚至没有包含任何web 2.0的概念。这些限制,严重的影响了它的可访问性及跨浏览器特性。2007在用户体验上的最大的败笔可以总结为两点:没有必要的服务端回发,莫名奇妙的页面跳转。

    SharePoint 2010通过引入新的以Ajax驱动的UI,极大的增强了用户体验。SharePoint 2010的页面通过借助JavaScript的异步访问,消除了不必要的服务端回发。SharePoint 2010还通过inline editing和模式对话框消除了莫名奇妙的页面跳转。最后,SharePoint 2010还通过引用服务端Ribbon来增强用户体验。借助服务端Ribbon, 用户不必离开当前页面,便可查找和执行大量的上下文命令。

    SharePoint 2010除了提升用户体验外,还带来了其它大量的增强点。表1-2列出了一些对于SharePoint 2007的开发人员来讲,比较感兴趣的点。这些主题将贯穿整本书。

    表1-2:SharePoint 2010针对开发人员的增强点

    增强点

    优势

    服务运用程序架构

    重新设计架构,可方便的跨运用程序或服务器场共享资源

    Windows PowerShell 的支持

    可以直接使用PowerShell(windows上的管理脚本)来管理SharePoint

    Feature 的版本化及升级

    Feature也直接版本化及升级了

    基于Visual Studio 2010的SharePoint 2010开发工具

    一流的SharePoint开发体验

    纱箱解决方案

    可以在站点集级别部署解决方案

    New features for throttling lists

    and controlling

    query execution

    通过控制列表数量及低效的查询,提高服务器场的稳定性

    New events for sites, lists, and

    workflows

    允许开发人员监听更多的事件

    LINQ to SharePoint provider

    可以直接使用Linq访问List的数据

    REST-based access to SharePoint

    list items

    可使用基于REST风格的Web 服务跨网络访问SharePoint

    Client-side object model

    在跨网络时使用.net, Silverlight,JavaScript 访问SharePoint,仍然可利用SharePoint对象模型

    Enhanced support for integrating

    Silverlight applications

    可以方便的开发和部署Silverlight

    Claims-based security

    新的认证模式,可方便的扩展外面用户的可访问性

    Business Connectivity Services

    (BCS) and external lists

    增强的可读写BCS

    .NET Assembly Connectors for

    BCS

    可以方便与任何数据源集成

    SharePoint Foundation Architecture

    从本质上讲,SharePoint Foundation 只是一个供给引擎而已。它的设计理念,其实就是利用基于Web的模板来创建站点,列表,文档库并在里边存储和管理内容。模板被用于创建站点以及站点内的各种元素,例如列表,页面及web part.

    SharePoint 对于面临创建及管理大量网站的企业及组织而言,尤其有用。因为它显著的减少了所需做的工作。一个IT管理员,甚至是一个普通的业务人员,都可以轻松在一分钟内,通过在浏览器里点点鼠标来创建一个基于SharePoint的网站。创建网站的内容如列表或页面,也如创建站点一样简单。

    SharePoint会通过添加或修改数据库记录,来处理好所有创建站点及内容的细节。数据库管理员也不需求去创建新的数据库或数据表。Asp.net开发人员也不需要创建新的网站来提供用户接口。系统管理员,也不需要在前端服务器上复制任何文件,或对IIS进行配置。这就是SharePoint的魅力所在。

    SharePoint的架构被特意的设计成在服务器场内运行。图1-1,展示一个具有两个Web前端加一个数据库服务器的简单服务器场架构。在具有多个前端服务器的应该场景中,一般都需要有一个网络负载均衡来处理HTTP的请求,将请求分发到适当的web前端服务器。

    clip_image002

    图1-1:SharePoint通过设计具有多前端的Web服务器场来实现其可扩展性

    SharePoint Foundation 和 SharePoint Server 2010都只有64位的版本,可以被安装到64位的Windows Server 2008 或 Windows Server 2008 R2。如果是搭建开发环境的话,也可以把它们安装到64位的客户端操作系统,比如Windows 7 或 Windows Vista。

    SharePoint 2010借助前端Web服务器上的IIS 7来监听Http请求,同时使用IIS和应用程序池架构来管理服务端的工作进程。SharePoint 2010的运行时环境是作为一个服务端的进程来运行的,这个进程的名称为w3wp.exe,它是由IIS的运行程序池启动和执行的。详情请见图1-2,从这个图片,可以发现SharePoint是构建在.NET Framework 3.5 和 ASP.NET 3.5 Service Pack 1之上的。

    clip_image004

    图1-2: SharePoint运行时被加载到运行ASP.NET 3.5的IIS 应用程序池中

    SharePoint 2007是构建在.net 3.0之上的,并且也可以通过修改Web前端服务器的配置,来使其支持.net 3.5。但是由于各方面的原因,实现这个配置其实是非常困难的。因此,大部的SharePoint开发,都没有使用到.net 3.5所引入的新开发优势。相比SharePoint 2007,SharePoint 2010天生就支持.net 3.5,以及3.5所引入的新特性,比如Ajax, Linq还有Silverlight。本收假设大部分从07迁移到10的SharePoint开发,都是第一次使用.net 3.5的新特性。

    同时,你还应该注意到,SharePoint 2010的最初版本,并不支持.net 4.0。直到撰写本书为止,微软还尚未发布任何消息,称SharePoint将支持.net 4.0。

    SharePoint Farms (SharePoint服务器场)

    所有的SharePoint部署,都是基于服务器场的概念来部署的。简单来说,服务器场就是一台或多台服务器协同工作,一同为客户提供SharePoint相关功能。在一些比较简单的应用场景下,你可将所有SharePoint相关的服务及组件安装并配置到单台服务器上。在真实的生产环境中,一个典型服务器场,都会包含一台独立的专用的Sql Server数据库服务器,同时还包含多台前端服务器,如图1-3所示。在稍后的章节,你还将看到,一个服务器场,除了包含一个数据库服务器,多台前端服务器外,也还可以包含一个或多个应用程序服务器。

    clip_image006

    图1-3: 你可以使用单服务器场的模式来搭建开发环境

    每个SharePoint服务场,都运行着一个唯一的称之为配置数据库的数据库。每当创建新的服务器场时,SharePoint都会创建一个配置数据库,并来用保存服务场级别的配置信息。例如,配置数据库保存着服务场包含的Web前端服务器信息,同时还保存对服务器常具有管理权限的用户信息。

    在搭建开发环境时,最好是在单一服务器场上安装和配置。记住,你可以选择在客户端操作系统 (如Windows 7)上安装和配置SharePoint。如果你一定要在客户端操作系统上搭建开发环境的话,最佳实践是在64位Windows 7构建。

    如果工作环境允许的话,还是应当考虑在64位的Windows Server 2008 或 Windows Server 2008 R2.安装SharePoint 2010。一种做法是直接在物理机的安装SharePoint 2010。另一个比较受欢迎的做法是在虚拟机上安装SharePoint 2010。你可以通过安装Windows Server 2008 R2并配置Hyper-V,来安装虚拟机。Hyper-V允许你创建虚拟机,并在虚拟机里安装64位的Windows Server 2008 R2 和SharePoint Server 2010。

    在服务器端操作系统(比如Windows Server 2008 R2)上搭建SharePoint开发环境,具有一个关键的优势,那就是可以安装和配置活动目录,以便于更一步的模拟真实的生产环境。图1=3展示了安装在SharePoint开发环境上的软件层次结构。

    作为一个SharePoint开发人员,请一定要记住,你面临的服务器场,将可能是各种各样配置及结构的。虽然你多半是都是在单一服务器上开发及测试代码的,但它几乎不会是你的代码即将被部署到的服务器场类型。如果你认为生产环境服务器场和开发环境差不多,那你就大错特错了。

    许多已经投入到SharePoint开发的公司,都会把它们的服务器场划分为三类。

    1. 开发服务器场:开发人员在这个环境开发并调试

    2. Staging服务器场 : 模拟真实的生产环境,并用来测试SharePoint解决方案。一般情况下,不会在Stage环境中的服务器上安装开发工具。一旦SharePoint解决方案在Stage上通过测试,它便可以部署到生产环境上了。

    3. 生产服务器场: 最终用户真正使用的环境。

  • 相关阅读:
    Windows 命令行
    建议博客园提供 BT 资源发布功能——由分享 VS2005 Beta2 的历程想到的
    成功 自信 快乐(转载)
    轻松一下,加菲猫语录
    COmega 概述
    对 RBAC 几种模型的理解及初步实现构想
    DHTML 中滚动条的设置
    求婚
    终于有了自己的blog!
    VS2005 已发布!
  • 原文地址:https://www.cnblogs.com/ITHelper/p/3068223.html
Copyright © 2011-2022 走看看