[转]无废话SharePoint入门教程一[SharePoint概述]
本文转自: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概述]的更多相关文章
- 无废话SharePoint入门教程一[SharePoint概述]
一.前言 听说SharePoint也有一段时间了,可一直处在门外.最近被调到SharePoint实施项目小组,就随着工作一起学习了一下实施与开发.但苦于网上SharePoint入门的东西实在太少,导致 ...
- 无废话ExtJs 入门教程二十一[继承:Extend]
无废话ExtJs 入门教程二十一[继承:Extend] extjs技术交流,欢迎加群(201926085) 在开发中,我们在使用视图组件时,经常要设置宽度,高度,标题等属性.而这些属性可以通过“继承” ...
- 无废话ExtJs 入门教程二十[数据交互:AJAX]
无废话ExtJs 入门教程二十[数据交互:AJAX] extjs技术交流,欢迎加群(521711109) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3C ...
- 无废话ExtJs 入门教程十九[API的使用]
无废话ExtJs 入门教程十九[API的使用] extjs技术交流,欢迎加群(201926085) 首先解释什么是 API 来自百度百科的官方解释:API(Application Programmin ...
- 无废话ExtJs 入门教程十七[列表:GridPanel]
无废话ExtJs 入门教程十七[列表:GridPanel] extjs技术交流,欢迎加群(201926085) 在Extjs中,GridPanel用于数据显示,即我们平时说的列表页.在本节中,我们先对 ...
- 无废话WCF入门教程六[一个简单的Demo]
一.前言 前面的几个章节介绍了很多理论基础,如:什么是WCF.WCF中的A.B.C.WCF的传输模式.本文从零开始和大家一起写一个小的WCF应用程序Demo. 大多框架的学习都是从增.删.改.查开始来 ...
- 无废话ExtJs 入门教程十六[页面布局:Layout]
无废话ExtJs 入门教程十六[页面布局:Layout] extjs技术交流,欢迎加群(201926085) 首先解释什么是布局: 来自百度词典的官方解释:◎ 布局 bùjú: [distributi ...
- 无废话ExtJs 入门教程十五[员工信息表Demo:AddUser]
无废话ExtJs 入门教程十五[员工信息表Demo:AddUser] extjs技术交流,欢迎加群(201926085) 前面我们共介绍过10种表单组件,这些组件是我们在开发过程中最经常用到的,所以一 ...
- 无废话ExtJs 入门教程十四[文本编辑器:Editor]
无废话ExtJs 入门教程十四[文本编辑器:Editor] extjs技术交流,欢迎加群(201926085) ExtJs自带的编辑器没有图片上传的功能,大部分时候能够满足我们的需要. 但有时候这个功 ...
随机推荐
- Centos java 安装
第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4) 安装好的CentOS会自带OpenJdk,用命令 java -version ,会有下面的信息: java versi ...
- android JNI 资料大全
AndroidJNI 通过C++调用JAVA 1. JNIEnv对象 对于本地函数 JNIEXPORT void JNICALL Java_video1_TestNative_sayHel ...
- android真机调试 INSTALL_FAILED_MEDIA_UNAVAILABLE 问题解决方案
前提是手机用数据线连到电脑,安装好手机对应的驱动. 1:打开cmd 2:cd切换到sdk安装目录的platform-tools目录,比如我安装到了D盘根目录,则输入: cd d:\android-sd ...
- 杭电 1150 moving tables
http://acm.hdu.edu.cn/showproblem.php? pid=1050 Moving Tables Time Limit: 2000/1000 MS (Java/Others) ...
- [读书笔记]流畅的Python(Fluent Python)
<流畅的Python>这本书是图灵科技翻译出版的一本书,作者Luciano Ramalho. 作者从Python的特性角度出发,以Python的数据模型和特殊方法为主线,主要介绍了pyth ...
- CSS的两个class选择器紧挨在一起
有一段HTML代码: <a class="glyphicons white no-js cogwheel" href="#" target="_ ...
- VS2010打开高版本VS解决方案
http://blog.csdn.net/backspace110/article/details/62111273 Microsoft Visual Studio Solution File, Fo ...
- CXF+Spring+Tomcat 案例
多系统(异构系统)进行交互时,一种良好的方式便是调用Web Service,本示例基于Apache组织的CXF 环境:EclipseJDK6Tomcat6CXF2.6.1Spring3 示例项目结构图 ...
- mysql14---手动备份
PHP定时完成数据库的备份 1.手动备份数据库(表的)方法 cmd控制台(windows指令): mysqldump –u root –proot 数据库 [表名1 表名2..] > 文件路径 ...
- docker registry的CI规划
目前代码全部署在docker中, 考虑用jenkins打包成docker包再推送到docker registry 打包推送过程中自动按照日期打标签,并且刷新latest