无废话SharePoint入门教程一[SharePoint概述]
朋友炒股两个月赚了10万,我帮他推广一下公众号,把钱用来投资总比放银行连通货膨胀都跑不过里强, 硬核离职,在家炒股 ,这是他每天的日志,有些经验是花钱也买不到的。
一、前言
听说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,但还是很别扭),切段页面代码看下:
<SharePoint:ImageLink runat="server"/>
<SharePoint:SPNoScript runat="server"/>
<SharePoint:SPClientIDGenerator runat="server" ServerControlID="DeltaPlaceHolderMain;DeltaPlaceHolderPageTitleInTitleArea;DeltaPlaceHolderUtilityContent" />
<SharePoint:SharePointForm runat="server" onsubmit="if (typeof(_spFormOnSubmitWrapper) != 'undefined') {return _spFormOnSubmitWrapper();} else {return true;}">
<script type="text/javascript"> var submitHook = function () { return false; }; theForm._spOldSubmit = theForm.submit; theForm.submit = function () { if (!submitHook()) { this._spOldSubmit(); } }; </script>
<SharePoint:AjaxDelta id="DeltaSPWebPartManager" runat="server">
<WebPartPages:SPWebPartManager runat="Server" />
</SharePoint:AjaxDelta>
<asp:ScriptManager id="ScriptManager" runat="server" EnablePageMethods="false" EnablePartialRendering="true" EnableScriptGlobalization="false" EnableScriptLocalization="true" />
<SharePoint:AjaxDelta id="DeltaDelegateControls" runat="server">
<SharePoint:DelegateControl runat="server" ControlId="GlobalNavigation" />
<SharePoint:DelegateControl ControlId="GlobalSiteLink3" Scope="Farm" runat="server" Visible="false" />
</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概述]
本文转自:http://www.cnblogs.com/iamlilinfeng/p/3026332.html 一.前言 听说SharePoint也有一段时间了,可一直处在门外.最近被调到ShareP ...
- WCF入门教程(四)通过Host代码方式来承载服务 一个WCF使用TCP协议进行通协的例子 jquery ajax调用WCF,采用System.ServiceModel.WebHttpBinding System.ServiceModel.WSHttpBinding协议 学习WCF笔记之二 无废话WCF入门教程一[什么是WCF]
WCF入门教程(四)通过Host代码方式来承载服务 Posted on 2014-05-15 13:03 停留的风 阅读(7681) 评论(0) 编辑 收藏 WCF入门教程(四)通过Host代码方式来 ...
- 无废话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种表单组件,这些组件是我们在开发过程中最经常用到的,所以一 ...
随机推荐
- thinkphp相关总结
1.model层验证多个字段唯一性 protected $_validate = array( array('appid,awardid', '', '不能重复添加', self::MUST_VALI ...
- Swift基础语法学习总结(转)
Swift基础语法学习总结 1.基础 1.1) swift还是使用// 和/* */ 来注释,并且/* */允许多行注释. 1.2) swift使用print和println打印,它的传参是一个泛型 ...
- js跳转
window.location.reload(); //刷新当前页,参数保留
- GOLANG 赋值
基本赋值语法 变量=表达式 var a int;a=1 变量里的元素=表达式 var arr[3] int;arr[0]=1 声明变量类型同时赋值 var 变量 类型=表达式 var arr[ ...
- LRU页面置换算法
本文以序列长度20的{ 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1};以及页面4:为例: #include <stdio.h> #define Init ...
- 今天学的是 HTML基本元素、基本语法元素特点等,就发图片吧。
现在我们新手用的软件是:Adobe Dreamweaver CS6 按照下面格式来改,以后点HTML5直接就改过来了. 可以敲敲这些代码,大家一起学习. <!doctype html>&l ...
- 【Android】实现打开关闭效果
最近抽时间学习一下Android,做个笔记: 布局xml: <LinearLayout android:id="@+id/date_label" android:layout ...
- Android中文TTS
如今在Android中开发中文语音播报有各式各样的云服务.SDK.API等云云,但是大部分服务是需要联网支持来进行语音合成的,在中文语音合成方面,科大讯飞无疑是佼佼者,而且它也提供了离线语音合成包(需 ...
- iOS runloop初步学习
参考: http://www.aichengxu.com/view/43297111. 定义:其实它内部就是do-while循环,在这个循环内部不断地处理各种任务(比如Source.Timer.Obs ...
- 【Java】异常处理_学习笔记
异常: 1.格式1: try { //业务代码 } catch(Exception e) { //异常处理代码 } 说明: a. 异常抛出:执行try里的代码,系统会自动生成一个异常对象,该对象会 ...