一步步實現自己的框架系列(一) 初步架構功能設計

2022-03-11 08:53:03 字數 1330 閱讀 7311

人生需要規劃,架構也一樣,沒有計畫的最終會偏離原先的設想。

就像阿甘正傳中給船起名字一樣,沒有名字的船是不吉祥的,所以他給船起了珍妮號,他最喜歡女孩的名字。我也給自己框架起個名字吧,本人光棍乙個,就起我外號廣林的縮寫吧gl。

首先,指定我們的初步目標,我希望我的框架涉及以下功能點

1.首先語言使用c#語言

2.我們要做的是cs架構

3.另外我希望我的框架的是靈活可擴充套件的,所以這是乙個外掛程式平台

4.通訊方面使用的wcf

5.client端使用wpf介面展示,這樣就可以做出很吸引人的程式。我記得有一句話是這麼說的,乙個擁有好的展現手法,爛的框架的專案,可能不會通過,但是乙個好的框架,沒有乙個很好的表現手法這個專案肯定不會通過。這就像我們都喜歡美女一樣。

6.異常機制不可缺失,沒有異常機制的平台,我想它應該不好

好了,有了我們的初步目標了,下一步就是基本框架設計了

沒有清晰的思路做起事情來就顯得笨手笨腳的,下面就來設計我的頁面介面吧

我覺得頁面的生命週期的初始化與關閉不可少,另外客戶端與服務端通訊是必須的,這樣頁面介面清晰明了,我們後面的設計也會得心應手了。

既然有頁面,那麼客戶端服務端的頁面就會有很多,如果沒有合理的設計就會混亂,那麼頁面管理需求就有了

好吧,我承認我不怎麼會用visio,設計個屬性都不會,返回值引數都沒有,圖示大家能看懂就行了,有潔癖的同學輕拍就好,上圖示例就是簡單的頁面管理器的設計介面,我們的目標又明確一步了。

乙個服務端是有很多客戶端連線的,那就離不開session了

session的作用就是針對每乙個客戶端建立的服務作用域,方便服務端生命週期管理,

有細粒度物件就需要管理,session管理器就有了

基本設計都有了,設計目標清晰明了,下面就是動手的時刻,這一篇就到這裡吧,我們就具體動手實戰了,有興趣的同學歡迎收聽。

一步步實現自己的ORM(一)

最近在研究orm,嘗試著自己開發了乙個簡單的orm。我個人不喜歡ef因為跟不上ef公升級太快了,再說公司裡還停留在c 3.5時代,對於nhibernate配置太複雜看到就頭暈,就心生自己做乙個orm的念頭,現在把開發過程中的點點滴滴記錄下來,供自己和新手參考,大神請直接忽略這篇文章。create t...

一步步實現自己的ORM(五)

讓我們先來看下expression 表示式如何將datareader轉換成object idatareader reader null expression expr r new user var func expr.compile func reader 在new user的時候採用物件初始化方式...

自己怎麼一步步喜歡程式設計

在夜深人靜的時候我整理一下思緒 自己當年是如何從愛玩遊戲的小孩子一步步成長為一名熱愛程式設計的程式設計師。1 玩電腦 要程式設計就要觸到電腦,我喜歡電腦原因很簡單,我喜歡玩遊戲。一開始家裡沒電腦就跑去親戚家玩。人們都說玩遊戲是學電腦最慢 最傻的辦法。但是我必須要再新增一句 也是最有效的辦法。乙個事物...