1. 程式人生 > >無廢話SharePoint入門教程一[SharePoint概述]

無廢話SharePoint入門教程一[SharePoint概述]

一、前言

    聽說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

活到老,學到老,練到老...