Stella 知識庫 模型類的設計

2021-09-05 13:58:31 字數 1267 閱讀 6205

-- 系列文章與stella forum v2.0搭配使用效果更好 --

這裡的模型類,在有些地方也叫「業務實體」等名字,一句話,是一些代表了軟體世界需求的剝離了行為的類。

沒有了行為,這些類自然就是一些資料的集合,而他們的作用,自然也是傳遞資料。在分層的架構中,使用模型類來傳遞資料更加的有意義。

說了這麼多,下面來看為什麼要使用這個

1.方便在層間傳遞資料

2.物件導向設計的需要

先來看乙個例子。

private void dologin()

else

}第一眼看這個程式,基本上就和現實世界中的情況差不多,乙個遊客過來,出示他的身份憑證(使用者名稱和密碼),然後系統檢查,如果合法,那就讓遊客進入,這時 該遊客就成了乙個登入使用者,如果他提供的憑證不合法,那就禁止入內。所有這一切都很自然,這也是物件導向設計的魅力吧。

guest和user是用到的兩個模型,篇幅限制,我們只看前者的定義吧。

///

/// 遊客

///

public class guest

set

}///

///使用者輸入的明文密碼

///public string pwd

set }}

這個模型很簡單,就包括兩個屬性,使用者名稱和密碼。

想象一下,如果不這樣,那我們就需要這樣來做驗證

business.forum f=new stella2.business.forum();

//返回是否合法

bool islogin=f.login(this.uname.text,this.pwd.text);

if(isloginl)

else

想象一下那裡的設定都需要做什麼,把使用者資料乙個乙個的儲存到session,然後設定許可權...

更恐怖的是:

business.forum f=new stella2.business.forum();

string msg=f.createuser(newuser);

這個是使用者註冊時的**,如果不使用模型類,那就需要這樣

business.forum f=new stella2.business.forum();

string msg=f.createuser(name,pwd,email,answer,question,qq,homepage,signature,honour,skins);

好長啊……

別忘了,分層結構意味著,這種方法簽名至少要出現三次!!!

所以……

Stella 知識庫 認識論壇的結構

系列文章與stella forum v2.0搭配使用效果更好 將解決方案在vs開啟後,您會看到一長串的專案,這些專案的具體解釋可以看論壇的架構圖。肯定有人第一眼就暈了,呵呵,不要緊,慢慢來。您的第一反應應該是開啟web這個專案,然後檢視具體的頁面,比如default.aspx,該頁面的重要 如下 整...

Stella 知識庫 保護你的web程式

覺得這篇寫得還不錯,於是就掛到主頁來,希望諸高手指教 系列文章與stella forum v2.0搭配使用效果更好 就我現在掌握的知識並結合sf2來分析一下如何保護web應用程式 1.限制使用者的活動 2.伺服器端的驗證 3.安全 1.限制使用者的活動 這是最基本的做法,永遠不要相信使用者的輸入 是...

知識的表示與知識庫

知識表示是人工智慧課程三大基礎 知識表示 知識推理以及知識應用 之一。在解決實際問題中,通常需要用到多種不同的表示方法,因為每種資料結構都有其優缺點,沒有哪種資料結構擁有多種功能,因此需要對知識根據具體應用而採用不同的知識表示方法。狀態空間法 為描述某類不同事物之間的差別,以符號表示其狀態,通過算符...