BlogEngine.Net架構與原始碼分析系列part1:開篇介紹

iDotNetSpace發表於2010-04-13

最近我要開始這個系列了,這是我的第一個系列。關於BlogEngine.Net我想說的是,它設計的真的很棒,程式碼簡潔但是功能很多,真是麻雀雖小,五臟俱全啊,而且具有了很多Web2.0的特徵,甚至它的每一行程式碼都值得我們去研究一下,它的開發團隊很棒。實際上很多國外的個人Blog都是採用BlogEngine.Net加上自定義皮膚實現的,如果您是一個Blog的開發者,這更是您的必備參考!

  很多兄弟都推薦BlogEngine.Net看一看,甚至www.asp.net也把它放在了很重要的位置。前一階段我仔細的把它的原始碼閱讀了一遍,看完以後興奮的很衝動,心想居然還有這麼好的玩意,這個開源專案設計的真的不錯。實際上前不久的一個Podcast專案我就是採用了類似BlogEngine.Net這種架構開發的,感覺還是很不錯的。最近利用空閒的時間做了一下總結,準備寫一個關於BlogEngine.Net系列文章,其實我早就想寫一個系列文章,但是一直沒有好的想法,對於我比較熟悉的方面發現園子裡的兄弟都給寫完了,但是關於BlogEngine.Net的文章似乎很少,所以我決定寫這個系列,還希望園子中的兄弟們多支援一下啊。

  開篇宣告

     本系列文章介紹的是BlogEngine.Net 1.4.5版本,這是官方前不久釋出的一個版本。大家可以在CodePlex下載最新的原始碼和相應的說明文件。此外,您還可以在它的官方站點上了解更多的安裝和一些擴充套件開發等問題,還可以下載一些開發者已經做好的皮膚。講解程式碼使用C#,基於.Net Framework2.0。

  BlogEngine.Net簡介

  BlogEngine.NET是一個開源的.NET部落格專案。整個專案採用C#開發,它的結構比較簡單,但是擴充套件起來很容易,它的複雜程度較低,易於定製。擴充套件特性主要體現在以下三個方面:

     1.Widget小工具
     2.Extension擴充套件功能
     3.自定義個性化Theme

  最初它是一個單人部落格,很容易將它實現成多人部落格。codeplex上有一個案例就是基於BlogEngine.Net的多人部落格。BlogEngine.Net的主要特性:

     1.很容易被安裝,只要把檔案上傳到Web伺服器就可以執行。因為它預設採用XML儲存資料。
     2.具有很多Blog的新特性並提供了開放介面。例如Ajax評論,支援TrackBack等。
     3.具有很多Web2.0特性,例如OpenSearch, XFN tags, tag cloud等。
     4.自定義主題,您可以自己開發很多主題,類似部落格園的主題。
     5.可以配置自己的資料來源,例如XML,Sql Server,SQLite等。

  這個系列文章我將從BlogEngine.Net的架構入手,對於每個相對獨立的部分進行一下程式碼分析並作出相應的總結,對於一些部分我會給出我個人的評價,對於一些比較好的細節部分我也會深入探討。如果大家有一些反饋我還會及時調整。

暫定目錄

  下面是我初步定出的一個目錄結構,也反映了系列文章的主要路線,請大家參考,這個目錄可能在寫的過程中會隨時進行調整並加入已經完成文章的連結:

    01.BlogEngine.Net架構與原始碼分析系列part1:開篇介紹

    02.BlogEngine.Net架構與原始碼分析系列part2:業務物件——共同的父類BusinessBase

    03.BlogEngine.Net架構與原始碼分析系列part3:資料儲存——基於Provider模式的實現

    04.BlogEngine.Net架構與原始碼分析系列part4:Blog全域性設定——BlogSettings

    05.BlogEngine.Net架構與原始碼分析系列part5:物件搜尋——IPublishable與Search

    06.BlogEngine.Net架構與原始碼分析系列part6:開放API——MetaWeblog與BlogImporter

    07.BlogEngine.Net架構與原始碼分析系列part7:Web2.0特性——Pingback&Trackback

    08.BlogEngine.Net架構與原始碼分析系列part8:擴充套件——DataStore分析

    09.BlogEngine.Net架構與原始碼分析系列part9:開發擴充套件(上)——Extension與管理上的實現

    10.BlogEngine.Net架構與原始碼分析系列part10:開發擴充套件(中)——Widget小工具

    11.BlogEngine.Net架構與原始碼分析系列part11:開發擴充套件(下)——自定義Theme

    12.BlogEngine.Net架構與原始碼分析系列part12:頁面共同的基類——BlogBasePage

    13.BlogEngine.Net架構與原始碼分析系列part13:實現分析(上)——HttpHandlers與HttpModules

    14.BlogEngine.Net架構與原始碼分析系列part14:實現分析(下)——網站頁面上值得參考的部分

    15.BlogEngine.Net架構與原始碼分析系列part15:總結篇

  我寫這個系列文章的目的有三個。首先將好的東西分享給大家,其次讓我更加深入的研究BlogEngine.Net提高自己,最後作為一個備忘錄儲存在部落格園上。

   分享是一種美。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-659545/,如需轉載,請註明出處,否則將追究法律責任。

相關文章