本文转自:http://www.cnblogs.com/iamlilinfeng/p/3026332.html

一、前言

听说SharePoint也有一段时间了,可一直处在门外。最近被调到SharePoint实施项目小组,就随着工作一起学习了一下实施与开发。但苦于网上SharePoint入门的东西实在太少,导致自学入门很难,不知道SharePoint这东西到底能做什么。因此有了此篇文章。该文章只是基于本人对SharePoint的理解,希望能够帮助那些还在门外的同学。由于能力有限,有说的不明白的地方还请园子内的专家们批评指正。
这里提供两个官方学习的网址供大家参考:
    SharePoint产品:http://technet.microsoft.com/zh-cn/library/ee428287.aspx
    SharePoint开发:http://msdn.microsoft.com/zh-cn/sharepoint/default.aspx

二、目录

1.什么是SharePoint

2.SharePoint功能

1.什么是SharePoint

百度词条(http://baike.baidu.com/view/260261.htm)的定义:SharePoint Portal Server 2003 使得企业能够开发出智能的门户站点,这个站点能够无缝连接到用户、团队和知识。因此人们能够更好地利用业务流程中的相关信息,更有效地开展工作。

这个概念很抽像,下面我从英文翻译和使用的角度来下帮助自己和大家理解下什么是SharePoint。

(1) 站在英文翻译角度理解:Share:分享,Point:点

一个企业员工可分享信息、查询他人信息、审批提交的信息的共享性质的软件。举例说明下:员工A发布了信息表一,B可以通过搜索功能查询到A发布的信息,搜索条件可以是员工A也可以是表一,假设企业有上万员工的话,信息分享的功能就有很大用处了。
也许老外最初的想法是这样的,但随着软件产品的发展功能越来越强大,“共享”这个概念可能就相对就变弱了。
    SharePoint核心定位:增强企业员工间的协作关系,一个企业级协作的平台。

(2) 站在软件的角度理解:SharePoint可以理解为内容管理系统

下面我们来做个比较:
I、 使用asp.net创建博客网站步骤如下(此处使用容易理解的DB驱动,步骤可以并行):
   1,创建数据表多张,如:用户表、文章表、类别表、回复表等
   2,根据数据库表创建应用程序代码,如:asp.net form、mvc等
   3,制做应用程序页面,如:html静态页面
   4,把静态页和.net程序结合
II、 使用sharePoint创建博客网站步骤如下:
   1, 在“管理中心”点击“创建网站集”并选择类型为“博客类型”,点确定,如下图所示

博客创建成功,如下图所示:

SharePoint博客功能如下:创建和管理类别,创建和管理文章,添加和管理评论,满足了基本的博客要求。

在传统的开发模式下,我们要设计DB,书写程序代码、页面代码等,工作量是可想而知的,而在SharePoint中,我们只需要在SharePoint这个软件的操作功能上点击“创建”即可。这里就引出了微软的一个重要的企业战略目标“无代码开发”,即:“不写代码,也能完成简单的企业级应用”。

虽然微软的想法是好的,但SharePoint也有明显的不足:
(1)覆盖面广而不精
SharePoint 2013默认提供的网站类型模板有如下几种:
    协作:工作组网站、博客、开发人员网站、项目网站、社区网站
    企业:文档中心、电子数据展示中心、记录中心、商业智能搜索、企业搜索中心、我的网站宿主、社区门户、基本搜索中心、Visio流程存储库
    发布:发布门户、企业Wiki、产品目录
    自定义:自己定义的模板类型

我们还是以刚才创建的博客为例,使其与博客园进行对比。

SharePoint博客,如下图:

博客园首页,如下图:

有点”奔腾处理器与I7 “的感觉没?SharePoint只提供了简单的用户界面和功能。园子里很多功能,在SharePoint的博客类型的网站集是没有的。那么我们创建这样一个网站有什么用?需要的功能没有,因此就要在SharePoint的基础上进行二次开发才能满足我们对现代博客(SharePoint的其他类型模板也是一样的,基本都需要二次开发或修改)的需求。
(2)二次开发难度大
    很多程序员都有过这样的体验吧?别人写好的代码由你来修改!什么感觉?
    SharePoint也不例外,从页面上看,SharePoint的页面都是.net的页面,如:aspx或.master等(虽然2013下可以编辑html,但还是很别扭),切段页面代码看下:

 1 <SharePoint:ImageLink runat="server"/>
2 <SharePoint:SPNoScript runat="server"/>
3 <SharePoint:SPClientIDGenerator runat="server" ServerControlID="DeltaPlaceHolderMain;DeltaPlaceHolderPageTitleInTitleArea;DeltaPlaceHolderUtilityContent" />
4 <SharePoint:SharePointForm runat="server" onsubmit="if (typeof(_spFormOnSubmitWrapper) != 'undefined') {return _spFormOnSubmitWrapper();} else {return true;}">
5 <script type="text/javascript"> var submitHook = function () { return false; }; theForm._spOldSubmit = theForm.submit; theForm.submit = function () { if (!submitHook()) { this._spOldSubmit(); } }; </script>
6 <SharePoint:AjaxDelta id="DeltaSPWebPartManager" runat="server">
7 <WebPartPages:SPWebPartManager runat="Server" />
8 </SharePoint:AjaxDelta>
9 <asp:ScriptManager id="ScriptManager" runat="server" EnablePageMethods="false" EnablePartialRendering="true" EnableScriptGlobalization="false" EnableScriptLocalization="true" />
10 <SharePoint:AjaxDelta id="DeltaDelegateControls" runat="server">
11 <SharePoint:DelegateControl runat="server" ControlId="GlobalNavigation" />
12 <SharePoint:DelegateControl ControlId="GlobalSiteLink3" Scope="Farm" runat="server" Visible="false" />
13 </SharePoint:AjaxDelta>

大部分内容都是SharePoint团队开发的服务端控件,我们要修改的情况下,首先要知道这些乱七八糟的代码是做什么的,是否可以删除?删除或修改后影响哪些功。比从头开发难度大很多。当前重多的SharePoint开发人员正在持续着这样的工作。
    虽然某些事实是客观存在的,但大家同时也不要忽略另一个事实,那就是现在很多国内外的大型企业都在使用SharePoint做内容管理系统的底层架构,如:网站等业务简单的系统,直接修改修改搭建搭建就可以用了。

下面我们做下回顾一下概念:
       什么是SharePoint:SharePoint是一个不需要代码也能创建系统,一款可以无代码开发的软件。
百度词条(http://baike.baidu.com/view/260261.htm)的定义:SharePoint Portal Server 2003 使得企业能够开发出智能的门户站点,这个站点能够无缝连接到用户、团队和知识。因此人们能够更好地利用业务流程中的相关信息,更有效地开展工作。
这回有理解多一点有木有?

2.SharePoint功能

这此处只罗列出了SharePoint 2010 的6大功能,2013又出了新功能。有关注的可以自己去了解下。本人学浅这里就不介绍了。

(1) 网站:“无代码”创建“共享的”企业网站。

(2) 社区:“无代码”创建“共享的”博客。

(3) 内容:“无代码”创建“共享的”企业内容管理。

(4) 搜索:“无代码”创建“共享的”搜索(包括网落爬虫)

(5) 智能:“无代码”创建“共享的”商业智能visio

(6) 集成:“无代码”创建“共享的”业务数据的连接,快速创建应用infopath。

重点在于”无代码“和“共享”哦!!!

版权:http://www.cnblogs.com/iamlilinfeng

[转]无废话SharePoint入门教程一[SharePoint概述]的更多相关文章

  1. 无废话SharePoint入门教程一[SharePoint概述]

    一.前言 听说SharePoint也有一段时间了,可一直处在门外.最近被调到SharePoint实施项目小组,就随着工作一起学习了一下实施与开发.但苦于网上SharePoint入门的东西实在太少,导致 ...

  2. 无废话ExtJs 入门教程二十一[继承:Extend]

    无废话ExtJs 入门教程二十一[继承:Extend] extjs技术交流,欢迎加群(201926085) 在开发中,我们在使用视图组件时,经常要设置宽度,高度,标题等属性.而这些属性可以通过“继承” ...

  3. 无废话ExtJs 入门教程二十[数据交互:AJAX]

    无废话ExtJs 入门教程二十[数据交互:AJAX] extjs技术交流,欢迎加群(521711109) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3C ...

  4. 无废话ExtJs 入门教程十九[API的使用]

    无废话ExtJs 入门教程十九[API的使用] extjs技术交流,欢迎加群(201926085) 首先解释什么是 API 来自百度百科的官方解释:API(Application Programmin ...

  5. 无废话ExtJs 入门教程十七[列表:GridPanel]

    无废话ExtJs 入门教程十七[列表:GridPanel] extjs技术交流,欢迎加群(201926085) 在Extjs中,GridPanel用于数据显示,即我们平时说的列表页.在本节中,我们先对 ...

  6. 无废话WCF入门教程六[一个简单的Demo]

    一.前言 前面的几个章节介绍了很多理论基础,如:什么是WCF.WCF中的A.B.C.WCF的传输模式.本文从零开始和大家一起写一个小的WCF应用程序Demo. 大多框架的学习都是从增.删.改.查开始来 ...

  7. 无废话ExtJs 入门教程十六[页面布局:Layout]

    无废话ExtJs 入门教程十六[页面布局:Layout] extjs技术交流,欢迎加群(201926085) 首先解释什么是布局: 来自百度词典的官方解释:◎ 布局 bùjú: [distributi ...

  8. 无废话ExtJs 入门教程十五[员工信息表Demo:AddUser]

    无废话ExtJs 入门教程十五[员工信息表Demo:AddUser] extjs技术交流,欢迎加群(201926085) 前面我们共介绍过10种表单组件,这些组件是我们在开发过程中最经常用到的,所以一 ...

  9. 无废话ExtJs 入门教程十四[文本编辑器:Editor]

    无废话ExtJs 入门教程十四[文本编辑器:Editor] extjs技术交流,欢迎加群(201926085) ExtJs自带的编辑器没有图片上传的功能,大部分时候能够满足我们的需要. 但有时候这个功 ...

随机推荐

  1. 自己定义控件 播放GIF动画

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/ ...

  2. 视频录制软件&远程支持软件

    视频录制软件 软件名:SCREEN2SWF 录制完成后,可以剪辑: 工程文件,需要保存为svp文件:将视频文件保存为.exe self play 文件,或者.swf flash 文件. 远程支持,远程 ...

  3. How to get service execuable path

    Some time we need to get specific service path and then do something you want. there are 2 way to ge ...

  4. 安卓版本和Api Level

    Platform Version API Level VERSION_CODE Notes Android 4.4 19 KITKAT Platform Highlights Android 4.3 ...

  5. 密码过期导致Oracle process耗尽问题

    oracle忽然连不上! 大致是报这样的错: ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程序 ORA-12520: TNS: 监听程序无法为请求的服务器类型找到可用的处理 ...

  6. debian repository的成长过程

    1 基本概念 1.1 健康的安装 在端系统中的一次健康的安装指的是,在安装的包的集合中,所有的依赖都满足,并且没有冲突存在. 这的健康的安装是相对于端系统而言的,并不是相对于整个repo而言的.对整个 ...

  7. What are some advantages of using Node.js over a Flask API?

    https://www.quora.com/What-are-some-advantages-of-using-Node-js-over-a-Flask-API Flask is a Python w ...

  8. mongo14-----group,aggregate,mapReduce

    group,aggregate,mapReduce 分组统计: group() 简单聚合: aggregate() 强大统计: mapReduce() db.collection.group(docu ...

  9. Can't remove netstandard folder from output path (.net standard)

    https://developercommunity.visualstudio.com/content/problem/30940/cant-remove-netstandard-folder-fro ...

  10. YTU 2959: 代码填充--雨昕学矩阵

    2959: 代码填充--雨昕学矩阵 时间限制: 1 Sec  内存限制: 128 MB 提交: 112  解决: 50 题目描述 雨昕开始学矩阵了.矩阵数乘规则:一个数k乘一个矩阵A还是一个矩阵,行数 ...