本文转自: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. Centos java 安装

    第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4) 安装好的CentOS会自带OpenJdk,用命令 java -version ,会有下面的信息: java versi ...

  2. android JNI 资料大全

    AndroidJNI 通过C++调用JAVA 1. JNIEnv对象    对于本地函数    JNIEXPORT void JNICALL Java_video1_TestNative_sayHel ...

  3. android真机调试 INSTALL_FAILED_MEDIA_UNAVAILABLE 问题解决方案

    前提是手机用数据线连到电脑,安装好手机对应的驱动. 1:打开cmd 2:cd切换到sdk安装目录的platform-tools目录,比如我安装到了D盘根目录,则输入: cd d:\android-sd ...

  4. 杭电 1150 moving tables

    http://acm.hdu.edu.cn/showproblem.php? pid=1050 Moving Tables Time Limit: 2000/1000 MS (Java/Others) ...

  5. [读书笔记]流畅的Python(Fluent Python)

    <流畅的Python>这本书是图灵科技翻译出版的一本书,作者Luciano Ramalho. 作者从Python的特性角度出发,以Python的数据模型和特殊方法为主线,主要介绍了pyth ...

  6. CSS的两个class选择器紧挨在一起

    有一段HTML代码: <a class="glyphicons white no-js cogwheel" href="#" target="_ ...

  7. VS2010打开高版本VS解决方案

    http://blog.csdn.net/backspace110/article/details/62111273 Microsoft Visual Studio Solution File, Fo ...

  8. CXF+Spring+Tomcat 案例

    多系统(异构系统)进行交互时,一种良好的方式便是调用Web Service,本示例基于Apache组织的CXF 环境:EclipseJDK6Tomcat6CXF2.6.1Spring3 示例项目结构图 ...

  9. mysql14---手动备份

    PHP定时完成数据库的备份 1.手动备份数据库(表的)方法 cmd控制台(windows指令): mysqldump –u root –proot 数据库 [表名1 表名2..] > 文件路径 ...

  10. docker registry的CI规划

    目前代码全部署在docker中, 考虑用jenkins打包成docker包再推送到docker registry 打包推送过程中自动按照日期打标签,并且刷新latest