ASP.NET應用程序規劃與設計(1)
2024-07-10 12:55:58
供稿:網友
 
  摘要:了解如何規劃和設計 asp.net 應用程序。本文以一個知識庫 web 應用程序為例,討論實際應用程序創建實踐中最常見的幾個因素。 
   
    簡介 
   
    這是一個系列文章,在這個系列文章中我們將逐步詳細介紹如何使用 microsoft asp.net 和 microsoft visual studio.net 來設計、實現和部署典型的 web 應用程序,以探討實際應用程序創建實踐中最常見的幾個因素。我們不僅僅布置一些 web 窗體,也不局限于只對后端數據庫進行一些數據綁定。數據綁定和 web 窗體布局很重要,但是有許多其他問題也非常重要。 
   
    例如,無論采用何種目標平臺或語言,所有經過良好編碼的項目都包括一些基本的規劃步驟,例如目標聲明、用戶方案文檔,甚至用于標識解決方案的物理邊界和邏輯邊界的體系結構文檔。此外,在解決方案生命周期的早期就將安全規劃包含在內是一種非常好的習慣。這些內容與良好的數據庫模型、精心設計的中間件組件以及簡潔的用戶界面設計一起,可以確保您最終在生產中部署的應用程序是安全的、可靠的,并且是用戶友好的。 
   
    此時,一些讀者可能會認為本文屬于那些基調很高的文章,目標定位在某些超大型企業級方案,而這種方案根本不適用于一般的小工廠、愛好者或個人開發團體。其實并不是這樣!即使只是創建您自己個人使用的基于 web 的小型解決方案,從一開始就進行完善的規劃將有助于確保流程最終的輕松實現和部署。而且,并不是高級的程序員或 web 開發人員才可以使用這些技術。無論您的技術水平如何,也無論您屬于哪類目標讀者,我相信您都會發現這一系列文章對您很有幫助,它為您提供了豐富的信息,而且(請允許我這樣說)十分有趣。 
   
    我們將生成一個稱為 dotnetkb 的示例知識庫 web 應用程序,這個過程將貫穿整個系列文章。在作為第一篇文章的本文中,我們將介紹典型項目的設計階段,包括基本規劃、應用程序體系結構和實現方案設計。學習完本文后,您將已經準備好所有的文檔,并會迫不及待地希望開始創建解決方案。 
   
    預備工作非常簡單,我們跳過這部分內容,直接開始第一步“應用程序規劃”。 
   
    規劃基本 asp.net 應用程序 
   
    使用 visual studio .net 創建基于 web 的 asp.net 應用程序的第一步是制定基本的應用程序規劃 (ap)。制定規劃不僅對于由多個開發人員建立的大型解決方案而言是必不可少的,而且即使對于最小的應用程序,一個完善的 ap 也是非常重要的。創建 ap 有助于您在開始編碼“之前”就能仔細考慮一些常見問題。這樣,您可以在應用程序生命周期的早期便完全了解挑戰和解決方案,而不是在完全陷入窘境之后才發現問題。在《software project survival guide》一書中,作者 steve mcconnell 指出:在軟件項目后期糾正錯誤所花的成本與在早期階段發現并糾正這些錯誤所花的成本相比,前者可能是后者的 50 - 200 倍。 
   
    一個完善的項目規劃包含哪些內容?可以包含許多內容,但最基本的是要包含目標聲明和一系列用戶方案。還有其他很多有用的資料,包括需求文檔、編碼標準、交付進度、測試過程等。對于我們要建立的簡單示例解決方案,將主要介紹簡單的應用程序聲明和一些用戶方案。同時還將解決一些其他問題。 
   
    應用程序聲明 
   
    此系列文章要建立的項目(稱為 dotnetkb)是一個簡單的知識庫 web 站點,在這個站點中,用戶可以提各種問題,并可以得到授權“專家”的回答。這樣,以后訪問者在查找常見 asp.net 問題的解決方案時,可以對得到的結果數據進行搜索和過濾。 
   
    這是對我們的 dotnetkb 項目的一個基本目標聲明。dotnetkb 是一個基于 web 的應用程序,它可以列出訪問者提出的一系列問題,并顯示授權專家對這些問題作出的回復。訪問者可以向系統添加新問題,并可以按照問題的主題、問題和/或回答中的關鍵字來搜索和過濾這些問題。訪問者還可以按主題或按添加到系統中的日期來對問題列表進行排序。 
   
    授權專家可以登錄到應用程序中已設置安全機制的部分,審閱問題,添加、編輯和刪除對一個問題的一個或多個回答。應用程序管理員還可以建立專家登錄權限和登錄配置文件,以及添加、編輯和刪除問題主題。 
   
    此外,還提供了一些基本統計信息,包括系統中問題和回答的數量,以及每個專家的回復數量和至今已被訪問的頁面數量。 
   
    正如您從上面的聲明中看到的那樣,該解決方案非常簡單。在閱讀目標聲明時,您可能會開始考慮可以添加到這個應用程序的許多其他功能,以使應用程序更加強大。這說明了項目目標聲明的一個主要依據,即避免“功能蔓延”。我們都清楚,如果更改最終結果本來基于的概念,簡單的想法將導致非常龐大且歪曲的結果。有句老格言:“如果不知道要去往何方,你可能會在某個地方停下來”,它原本揭示的是夏季公路旅行,其道理同樣可用于軟件項目。 
   
    一些項目的目標聲明中可能需要包含更多的信息。而對于我們的使用,上面的目標聲明就符合要求。現在我們對于要完成的應用程序有了一個清晰的認識,接下來需要一些詳細的信息來描述用戶如何與系統交互以及用戶需要執行哪些任務來完成目標。我們需要一系列用戶方案。