999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

ASPNETDB的理論分析與開發實踐

2014-09-25 10:20:20聞怡
電子設計工程 2014年17期
關鍵詞:數據庫結構用戶

聞怡

(長安大學 信息學院,陜西 西安710064)

ASPNETDB的理論分析與開發實踐

聞怡

(長安大學 信息學院,陜西 西安710064)

文中從理論方面論述了ASPNETDB的基本原理,基本結構,論述了以面向對象及軟件工程思想,快速高效開發應用軟件的基本思路,論述了后臺數據庫與前臺工作界面的關系與工作原理,論述了數據庫模板的擴展,數據模式的規范化與數學基礎,并從開發實踐方面實現了ASPNET的具體應用。

ASPPNETDB;關系模式;范式;關系表;注冊;數據完整性

目前軟件開發已經告別了傳統的手工勞動階段,進入了工業化、組件化、分工協作、團隊化作業的時代,在這個過程中技術人員經過了不斷嘗試和大量探索,但是在軟件開發的工業化道路上還有許多亟待解決的問題,一是程序開發人員成長不規范,沒有嚴格按軟件工程思想進行塑造;二是協作精神不強,自我為中心現象比較嚴重,致使軟件結合不嚴,兼容性較差;三是更有一些老的程序員、系統分析員還有較濃的傳統觀念習慣于個人手工作坊式開發等一些問題。為此,本文通過分析一個通用低層子系統,并結合開發實踐,再次提出軟件工程的思想,向讀者展示出軟件快速開發的組件技術、模塊化思想和分工協作理念。

1 快速開發

隨著計算機技術廣泛應用到社會生活的各個領域,使得軟件開發需求持續攀升,已然不是一個手工個體的勞動,而是一個團隊作業的、相互協作的集體的創造性勞動,因此快速開發、提高效率是一個亟待解決的問題。如何達到此目的,當然面向對象的思想,軟件工程的思想是基本的、必需的,可是這些概念有時比較務虛,在Microsoft的ASP.NET中已經按工程化思想提供了一個基礎架構,目的是讓用戶高效開發,但是很多開發人員還是撇開這樣一個好的架構,從零開始,又回到了手工作坊式開發的原始階段,那么,如何才能將軟件工程思想具體化,本文就以Microsoft公司的ASP.Net開發平臺提供的ASPNETDB為基礎,論述如何具體高效開發應用軟件的基本思路與具體方法。

2 ASPNETDB的理論基礎

Microsoft Asp.net為了使用戶能按照軟件工程的思想高效開發應用軟件,提供了一個基礎架構,其架構的低層設計了一個完整通用的數據庫系統。

2.1 嚴格的數學基礎

為適應大多數應用的通用需求,該數據庫對用戶數據的笛卡爾乘積作了具體分析,形成了十一張數據庫表,每張表都是一個元組的集合,都可以進行關系代數的并、交、差、連接、投影、選擇等基本運算。同時,每張表的列屬性都是不可再分的原子型數據,因此都符合第一范式,即1NF,并且,每張表中的非主列屬性都依賴與該表主屬性,因此都符合第二范式,即2NF,最后,每張表中的非主列屬性集都無傳遞依賴于主屬性,因此都符合第三范式,即3NF。如圖1是從十一張表中隨意取出的一張表,可以看到,各個列屬性均是符合三大范式的。其它十張表也都符合三大范式,因此,這十一張表內及表間都可以進行嚴格的關系代數的各種運算。

表間還建立了關系模型,有一對一關系,例如aspnet_Users與aspnet_Membership之間的關系,一對多關系,例如aspnet_Paths與aspnet_Applications之間的關系,多對多關系,例如aspnet_Users與aspnet_UserInRoles與aspnet_Roles之間的關系。

圖1 用戶表Fig.1 User table

2.2 ASPNETDB的基本結構

數據庫共有十一張表,七十七個字段,表間關系如圖2所示。

圖2 表間關系Fig.2 Realation tables

上圖是整個數據庫的全貌,這個數據庫適應了百分之九十以上的應用需求,開發人員可以在上述基礎上根據自己應用的需求進行定制、擴充。本文不可能論述該數據庫的所有方面,只將其主要方面的應用進行剖析,以期解決讀者所需。

3 用戶表與用戶登錄及注冊

如圖1是用戶表結構,該表是應用的基礎,幾乎所有的應用軟件、網站系統都要用到用戶表,用戶登錄也是基本功能,為了規范開發者行為,提高開發效率,Asp.net以面向對象的方法,提供了登錄組件如圖3所示,配合數據庫實體完成登錄功能,具體實現過程如下:aspnet_Users中存有用戶信息,搜集用戶輸入后比對正確與否,給出是否可以登錄的功能實現,但是這個過程不需要用戶寫一句代碼就可以輕松實現,高效完成。

用戶注冊相對復雜,收集用戶輸入后,存入相應數據庫表中,如圖4所示,用戶名存入aspnet_Users表中,電子郵件存、密碼和確認密碼都存入aspnet_Membership表中,在創建用戶時,還會生成一些后臺信息存入十一張表的相應表中,參考圖2。這個過程首先要對用戶數據和生成的后臺數據進行分析,以表間關系為紐帶,把不同的數據按照一定的規則存入數據庫相應的表中,但是這個過程也不需要用戶寫一句代碼,就可輕松、高效完成。

圖3 用戶登錄Fig.3 User login

圖4 新建用戶Fig.4 New user

4 關鍵表的結構與分析

ASPNETDB數據庫有四張表是與應用問題緊密相關的,其完整的結構形式如圖5所示。Aspnet_Users是用戶信息表,aspnet_Membership是成員信息表,aspnet_Roles是角色信息表,aspnet_UsersInRoles是用戶與角色關系表,首先四張表都符合第2.1節所論述的理論理論基礎,其次Aspnet_Users表與aspnet_Membership是一對一關系,這樣我們可以把這兩張表理解為一張大表,從表結構內容來看,已經涵蓋了用戶信息的較全面的內容,諸如用記標識、用戶姓名、移動電話、用戶郵箱,用戶密碼及確認密碼、密碼問題、問題答案、創建日期、用戶說明等等,不一一嗦述。但是如圖4所示,默認創建創建用戶組件只使用了其中的四項內容,這時有許多開發者由于沒有搞清楚數據庫結構,及后臺數據庫與界面組件之間的對應關系,認為Asp.net提供的模板不全,要么撇開基礎模板從零開始做起,要么自己另寫數據提供程序,所有這些做法都沒有從軟件工程的角度去繼承事先提供的高效模板,沒有以面向對象的思想去使用或徹底使用組件來開發應用軟件,而是以傳統的面向過程的思想,以手工的方式從零或部分從零開始,逐句開發。

圖5 表結構Fig.5 Table structure

如圖 5 中 Aspnet_Users,aspnet_UsersInRoles,asnet_Roles這三張表描述了用戶與角色之間的關系,以aspnet_UsersIn-Roles為中間關系表,決定了一個用戶可以有若干種角色,一個角色也可以適用于多個用戶這樣的關系。當我們使用這個基礎結構時,便可以很方便地把某個用戶與某種資源之間的權限關系進行設置,使用的是網站管理工具,如圖6所示。不用寫一行代碼即可完成用戶的權限分配,否則,也得以手工的方式,以傳統的面向過程的思想,逐句開發。不但不夠規范,而且使軟件的健壯性很弱,開發效率很低。

圖6 網站管理Fig.6 Website management

5 應用擴展與實踐

針對部分開發人員出現的上述問題,文中提供以下思路與方法。

5.1 默認模板用戶信息不足問題的解決

現在我們已經用數學的高度把數據庫的基本原理搞清楚,從低層結構的角度把數據之間的關系分析透徹,那么就可以針對我們自己應用問題的需要,開發一個完善用戶信息的收集界面,把收集到的用戶信息,按表間關系的基本原則存入各相關數據庫表中,這里需要注意的是,一要理解各數據庫表的作用,邏輯上完整的數據,到數據庫中要分散存入到不同數據庫表中,不能破壞數據的邏輯整體性;二是要分析透應用數據的內在聯系,存入表中的數據不能違反主、外鍵的數據完整性約束,做到這兩點是軟件開發人員的責任。

如果應用問題復雜,基礎結構所提供的數據項不能滿足需要,這時我們可以擴展ASPNETDB的基礎結構,從aspnet_Users表以主鍵UserId向外擴展一張表,我們暫且稱為用戶信息附加表,該表與aspnet_Users是一一對應關系,即把用戶表橫向擴展,以滿足應用需求。

5.2 建立應用問題實體表與基礎結構表的關聯

ASPNETDB數據庫基礎結構只是一個通用結構,它涉及到用戶管理,諸如用戶的新增與刪除,用戶信息的修改;角色管理,諸如角色的新增與刪除,角色的修改;安全管理,諸如用戶的授權,資源訪問規則等一般性問題,而解決最終用戶的專業應用問題才是軟件開發的目的,那么怎么實現應用數據數據庫和ASPNETDB的關聯就成為主要問題了。

首先,用戶應用問題可能很復雜,數據結構龐大,那么就要對用戶數據進行分析、取舍,進行規范化處理,最低應符合三大范式要求,根據實際情況建立實體聯系模型,將復雜的數據關系,歸一化到一對一、一對多、多對多關系上來,在歸一化過程中,確定頂層表、中層表、低層表,至此,用戶數據便設計完成。類似于ASPNETDB數據庫各表中頂層表是aspnet_Users,低層表是 aspnet_PersonalitionAllUsers,aspnet_Profile,aspnet_Application,其它表都是中層表。

其次,應用數據的關系表集的頂層表與ASPNETDB的頂層表以鍵的形式進行關系,至于是一對一關聯,還是二對多關系,抑或是多對多關系,還要根據實際應用進行確定。這樣,用戶應用數據就和ASPNETDB數據關聯為一個數據庫整體,可以進行任意的數據處理了。

最后,整體數據庫的應用問題便是全體數據的增、刪、改、查操作,要符合關系數據庫的基本原則,保持數據完整性、一致性、正確性、事務性。

6 結論

在先進的軟件工具輔助下,程序員已經被極大的解放了,因此,充分利用現有工具,提高開發質量和效率應視為程序員的職責,在面向對象和軟件工程思想指導下,以構建而不僅是編寫代碼的方式來開發應用軟件,應該成為基礎而不只是概念。程序開發者應該拿出更多精力分析應用系統結構的合理性、完整性、通用性、可擴展性、安全性,而不是僅局限于從零開始于編寫程序代碼。本文從ASPNETDB這個基礎結構出發,論述了應用軟件快速開發理論和實踐,以食讀者。

[1]王旭輝.Excel數據導入數據庫的設計實現 [J].現代電子技術,2013(12):71-73.

WANG Xu-hui,Import data from excel to database based on.Net Platform[J]Modern Electronic Technique 2013(12):71-73.

[2]趙娟.C++語言的軟件復用機制 [J].現代電子技術,2012(15):73-74.

ZHAO Juan.Software using c++language mechanism[J].Modern Electronic Technique,2012(15):73-74.

[3][美]CharlesPetzold.Microsoft C#Windows Program[M],北京:北京大學出版社,2002.

[4][意]Dino Esposito ASP.NET 3.5核心編程[M].北京:清華大學出版社,2009.

[5]章立民.SQL Server2005數據庫開發實戰[M].北京:機械工業出版社,2009.

[6][美]Simon Robinson Professional C#,3rd Edition[M].北京:清華大學出版社,2005.

[7]王珊.數據庫系統原理教程[M].北京:清華大學出版社,2005.

The theoretical analysis and the development of the ASPNETDB practice

WEN Yi
(College of Information Engineering,Chang′an University,Xi'an 710064,China)

This paper discusses the basic principle of ASPNETDB from theory aspect,the basic structure,discusses the objectoriented and software engineering idea,the basic idea of fast and efficient development of application software,this paper discusses the background database and the front desk interface of work and working principle of the database template is discussed,and the extension,the standardization of the data model and the mathematical foundation,and from the aspects of development practices to achieve the ASPNET concrete application.

ASPPNETDB;relational schema;paradigm;a relational table;registered;data integrity

TP392

A

1674-6236(2014)17-103-03

2013-10-23 稿件編號:201310154

聞 怡(1971—),女,江蘇江陰人,工程師。研究方向:計算機網絡信息技術。

猜你喜歡
數據庫結構用戶
《形而上學》△卷的結構和位置
哲學評論(2021年2期)2021-08-22 01:53:34
論結構
中華詩詞(2019年7期)2019-11-25 01:43:04
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
論《日出》的結構
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
主站蜘蛛池模板: 欧美综合一区二区三区| 国产精品99在线观看| 亚洲一区二区黄色| 啪啪国产视频| 99视频有精品视频免费观看| 男女性色大片免费网站| 四虎免费视频网站| 麻豆精品久久久久久久99蜜桃| 超碰精品无码一区二区| 99热这里只有精品国产99| 免费va国产在线观看| 亚洲成人精品| 伊人查蕉在线观看国产精品| 欧美怡红院视频一区二区三区| 亚洲伊人久久精品影院| 国产精品冒白浆免费视频| 久久99国产综合精品1| 极品av一区二区| 色综合天天操| 国产人前露出系列视频| 五月天天天色| 久久天天躁狠狠躁夜夜2020一| 欧美亚洲国产一区| 久久综合九色综合97网| 亚洲福利视频一区二区| 免费在线国产一区二区三区精品| 中文字幕中文字字幕码一二区| 真实国产精品vr专区| 97青草最新免费精品视频| 国产一区在线视频观看| 国产最爽的乱婬视频国语对白| 欧美在线精品一区二区三区| 午夜免费小视频| 少妇人妻无码首页| 国产精品人莉莉成在线播放| 亚洲国产系列| 亚洲天堂视频在线播放| 久久久久人妻精品一区三寸蜜桃| 国产女人18水真多毛片18精品| 亚洲一区二区三区中文字幕5566| 老熟妇喷水一区二区三区| 伊人蕉久影院| 亚洲天堂2014| 亚洲成aⅴ人在线观看| 爱爱影院18禁免费| 四虎成人精品在永久免费| 日韩无码视频播放| 另类专区亚洲| 内射人妻无码色AV天堂| 香蕉在线视频网站| 久久综合激情网| 青青草国产精品久久久久| 自拍中文字幕| 日韩在线欧美在线| 欧美国产在线一区| 91久久夜色精品国产网站| 成人一区在线| 国产午夜人做人免费视频中文 | 亚欧美国产综合| 综合五月天网| 丁香五月亚洲综合在线| 欧美日韩亚洲国产主播第一区| 日韩小视频在线观看| 最新加勒比隔壁人妻| 欧洲高清无码在线| 狠狠综合久久久久综| 大陆精大陆国产国语精品1024 | 麻豆国产原创视频在线播放| 精品视频福利| 国产免费a级片| 亚洲午夜天堂| 天堂久久久久久中文字幕| 91精品国产麻豆国产自产在线| 亚洲综合欧美在线一区在线播放| 国产精品三级av及在线观看| 国产成人免费高清AⅤ| 91麻豆久久久| 婷婷亚洲视频| 欧美翘臀一区二区三区| 国产欧美视频在线观看| 91精品aⅴ无码中文字字幕蜜桃| 操国产美女|