[SharePoint入门教程]一SharePoint发展、工具及术语

【[SharePoint入门教程]一SharePoint发展、工具及术语】分享给互联网技能从业者学习和参考。

SharePoint发展过程

由SharePoint的发展历程可以看出,在SharePoint2010版本以前SharePoint一直是包含在Office产品系列中,2010年后微软正式把SharePoint形成独立的产品并且趋于稳定。由于产品名称变化的原因,导致SharePoint在各个阶段的称呼各不相同。下面我们介绍下当前仍在使用中的产品简称及全称。

WSS:

07版及以前对Windows SharePoint Services的简称。

MOSS:

07版本对Microsoft Office Sharepoint Server的简称。

SharePoint Foundation:

免费的SharePoint的服务器一个版本。

SharePoint Server:

收费的SharePoint的服务器一个版本,又细分为“标准版”和“企业版”。

SharePoint Foundation与SharePoint Server的区别: 

  Foundation 免费(主要用于开发环境)、 Server版本收费。

  包含功能:SharePoint Foundation < SharePoint Server标准版 < SharePoint Server 企业版

 

SP:SharePoint的一个简称,经常出现在讨论区,常在后面加上版本号来确定具体的产品。如:SP2010,SP2013。

3.SharePoint使用工具

SharePoint工程师一般会使用到3个工具,分别为:SharePoint Designer、Visual Studio、 Windows PowerShell

SharePoint Designer:

简称SPD(通常状况会加版本号,如:SPD2010、SPD2013),SharePoint实施工程师的利器,一款SharePoint资源编辑的软件,可以直接编辑SharePoint内容资源。 如下图所示:

Visual Studio:

简称VS(通常状况会加版本号,如:VS2010、VS2012),SharePoint开发工程师的利器,不解释,功能强大、大部份微软语言都使用VS作为开发工具进行开发,SharePoint也不例外,通常用于开发Web部件(下面会解释什么是Web部件)和调用SharePoint的API进行数据交互。 如下图所示:

Windows PowerShell:

Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework 的强大功能。它引入了许多非常有用的新概念,从而进一步扩展了您在 Windows 命令提示符和 Windows Script Host 环境中获得的知识和创建的脚本。

百科地址:http://baike.baidu.com/view/2838635.htm?fromId=1717574 通过理解和在SharePoint的应用范围做出的定义:基于Dos风格的,可以通过命令来执行、管理、维护SharePoint的日常工作的可执行应用程序。 如下图所示:

4.SharePoint使用术语

    我们无论是与外国人交流还是与使用计算机编程都需要有一种能够让彼此都可以理解的语言。如常用英文:“Hello”、“Hello World”、“How are you”,编程时最常说的“类”、“属性”、“方法”等,人与人进行交流时可以无障碍使用这些术语进行沟通。如:程序员交流时一说到“类”,都会对类有个统一的概念。
在SharePoint的世界中,也有一些术语。理解这些术语及概念对于SharePoint的相互交流是必不可少的,如果你第一次看本文有些地方不太理解甚至完全不理解(看了和没看一样),那么就等到在QQ群里或论坛里看到这些术语时再回头查看吧,那时候才能够真正的消化这个内容。
官方地址:http://msdn.microsoft.com/zh-cn/library/ee556558.aspx
官方的api总是那么的全面,但在实际工作中你会发现不会使用会全部术语,为了尽快的达到使SharePoint的术语进行无障碍沟通的目地,本文列出了“入门并且常用的”术语并一一讲解。

NO.1   服务器场


广义的概念:

服务器场,即主机的集群.简单点说就是两台机器互相备份,两个或几台机器之间有心跳线,定时检测对端设备的情况,如果对端设备出现故障,一台机器就会接管出问题机器的受保护的资源如数据库等.
地址:http://baike.baidu.com/view/4095692.htm
如下图所示:

广义上的概念更像是在描述“网络负载均衡或集群”,下面我们介绍下SharePoint服务器场。

SharePoint服务器场:

一系列的服务器的集合。集合里的每台服务器包含的职能可以是不一样的。如下图所示:

 


该SharePoint服务器场有两台Web前端服务器,用户访问静态的内容时可以直接从这两台服务器上进行读取,两台服务器通过“Network Load Balancing”连接在一起。两台应用服务器做基本数据的支撑。当用户使用搜索时,内容由前端服务器转交级搜索服务器处理并返回结果。低层是数据支撑,由两台数据数据库服务器通过“Cluster”进行负载。
大家可以看出“SharePoint服务器场”的概念与“百度百科服务器场”的概念是一种包含与被包含的关系。“SharePoint服务器场”的概念范围更大些。个人觉得百度百科对服务器场的概念太泛化,本人更偏向于服务器于SharePoint的服务器场的概念才真正为“服务器场”的概念。

NO.2   Web应用程序、网站集、网站


Web应用程序:

Web 应用程序是一种可以通过Web访问的应用程序。Web应用程序的一个最大好处是用户很容易访问应用程序。用户只需要有浏览器即可,不需要再安装其他软件。SharePoint的Web应用程序也不例外,他通过监听相关端口来响应来自用户的请求。从根本上讲SharePoint本身就是一个由asp.net搭建的网站,只不过他的规模很大(微软产品的特点)。
但他与我们创建的Web应用程序的表面上的区别有明显的两点:
我们自己开发的Web应用程序一般是通过人工部署到IIS上的,而SharePoint的Web应用程序是由SharePoint安装时自动部署的(包括数据库的创建、asp.net页面与数据库的连接等)。如下图所示:

SharePoint会自动创建一些必要的Web应用程序。我们自己开发的Web应用程序dll一般放在目录结构的bin下,asp.net页面也会由我们根据业务需求定制目录结构,而SharePoint文件的目录结构就比较复杂了(当然是遵从微软的SharePoint规则,一般页面在layout里,dll在GAC和网站bin目录下)。如下图所示:

Web应用程序下建立了很多的虚拟目录,我们任意打开两个看一下该虚拟目录对应的物理路径。

_controltemplates: C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14templatecontroltemplates

_login: C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions15templateidentitymodellogin

基本都会放在:C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions目录结构下,不同的版本会稍有子目录的区别

网站集:

网站集是建立在Web应用程序下的一个虚拟概念,我们可以理解为一堆网站的集合。这个集合可对子网站进行一些统一的设置和管理。他独立的数据管理和权限分配并且必须建立在Web应用程序之下。

网站:

网站是建议在网站集下的虚拟概念,这点打破了大多数asp.net程序员对网站的传统概念。主要在于我们使用asp.net创建的网站相当于一个web应用程序,而到了SharePoint,网站是建立在网站集下面的一个虚拟的产物并且网站下面可以包含子网站….

Web应用程序、网站集、网站的逻辑关系

 一个Web应用程序下,可以有多个网站集,一个网站集下可以有多个网站和页面。

NO.3 列表、文档库


列表:

以表格为容器,装载着文字或图像的一种形式。下表为一个简单“员工信息”列表。

如上表所示,表头为“员工信息”,表的每一列头为“编号、姓名……”,在SharePoint中的列表也不例外。下面是SharePoint中的一个“内容和结构报告”列表。

学过编程的同学应该更容易理解,列表类似数据库中的“表”,也类似C#中的泛型List<T>。他在SharePoint中的类为:Microsoft.SharePoint.SPList,是不是很熟悉?List与SPList。不仅仅是长得相似,用途也很相似。

文档库:

我们先来了解一下库的概念。库:用来放置同类事物的抽象容器;如库房,储存货物或财物的房屋。

库的概念也不例外,现在我们了解一下什么是SharePoint文档库,SharePoint文档库:一个文件夹,库中文件的集合属于同一模板。简单的理解就是一个文件夹里放了一堆文件,而这个文件夹就叫做文档库。如下图所示:

文档库的名称为:页面库,库里包含了7个文件。

列表和文档库的区别:

在初学SharePoint时,可能有很多分不清列表和库的区别,本人刚最初对这两上概念也很模糊,此处再次强调一下他们之间的不同:
列表:类似于表格,存储的的数据。
文档库:类似于文件夹,存放的是文件。
那么是什么导致了我们对这两个概念的混淆呢?如下图所示:

在我们查看SharePoint所有内容进,SharePoint把所有类型的文件堆在一块,让我们很难区分哪些是列表,哪些是库(虽然图标有区分,但有哪些入门者会在意这些呢?),如果SharePoint的“所有内容”做成如下图示是不是会更有助于广大的用户理解和区分这两个概念呢? 

NO.4   栏、栏类型、内容类型

这三个概念我们还使用“员工信息”表为例,表格如下:

栏:

列表中的一列,如上表中的“姓名栏”、“性别栏”等, 同样的概念SharePoint只是换了个名词。

栏类型:

固名思意,栏类型就是这个列是什么类型的数据,如:编号是数字型、姓名是字符型等,这些“数字类型”、“字符类型”即为栏类型。

了解数据库的同学更容易理解这两个概念,不泥马是列和列的类型吗?很负责任的告诉你,确实是这样的。

内容类型:这个概念稍微抽象,他是多个栏的集合。如:(编号、姓名)可以组成内容类型A,(姓名、性别)可以组成内容类型B。这就是内容类型。那么为什么要有内容类型呢?

下面我们看两张表。

如果没有内容类型的情况下,我们的两个列表里都要创建“姓名、性别”这两个栏,很明显,两个列表的栏是重复的。

但我们使用内容类型后,即可以创建“员工基础信息”内容类型,里面包含两栏“姓名、性别”。然后在建立列表时分别这个“员工基础信息”内容类型加入到两个列表中。

为什么有内容类型?

如果有一天,老板说,不允许公司存有女员工(大男子主义)。

(1)没有使用内容类型,我们要把两个列表都修改一次(如果有100个列表就苦B了吧),限制性别不能为“女”。

(2)使用“员工基础信息”内容类型后,我们只需要把“员工基础信息”内容类型的性别限制成“男”,所有使用该内容类型的列表栏都做了修改。

C#程序员中有经典的一句话:永远不要让你的代码重复。即是这个道理。

NO.5   功能(Feature)、母版页(Master)、页面布局(Layout)、Web部件(WebPart)

功能(Feature):

事物或方法所发挥的有利作用;意思是说这个事物能干什么。在SharePoint里默认有很多功能,入口如下图所示:

我们以“网站集功能”为例,点击后如下图所示:

这些功能都是网站集层面所具有的,功能只有激活后才能使用。

功能分为网站集功能和网站功能。网站集功能开启后,网站集下的所有网站都可以使用该功能。网站功能只能针对当前网站使用。

母版页(Master):

为页面创建一致的内容。如下图所示: 

这样母板页就保证了所有页面一致的内容,一般在做系统时,页面的“头”和“脚”都放在母版页中。

在SharePoint的定制中,基本都要更换母版页。我们通过SharePoint Designer进行母版页的设计(后继的教程中会讲解),然后在网站设置中进行选择,如下图所示:

页面布局(Layout)

对页面的结构进行格式设置,就好比在一张纸上把格子画出来。

在SharePoint中的操作如下图所示:

 

选择相应的页面布局后,页面的基础结构会根据页面布局的结构而改变。

Web部件(WebPart):

页面的一部分(成块状),由若干装配在一起的属性所组成。大家可以理解为网页是由一块一块的内容组合在一起的,我们以园子为例。 

这些“块”可以理解为一个一个的部件,整个网页由各个部件组成,这些部件具有“数据、外观(宽高等)”等属性,可以单独进行设置。
Web部件在页面布局中,如下图所示:

上图中的一个个红色的小块即为Web部件的示例。

了解完web部件的概念后我们回到SharePoint中,对Web部件的设置,如下图所示:

添加完成页面布局后,布局块中点击“添加Web部件”

选择相应的Web部件点击“添加”,即可。

[SharePoint入门教程]一SharePoint发展、工具及术语