以圖一為例, ASP.NET 書裡在示範時多半只會做出這類的簡單表單,並不會做出整個網頁, 因為 ASP.NET 的書重點在說明如何使用 Server Control(例如 TextBox, LinkButton,...) , 如何新增記錄, 因此這類 HTML 的相關知識並不會介紹(也沒必要), 您如果事先沒有 HTML , CSS 的基礎, 就算您學了 ASP.NET 的 Server Control 如何使用, 想親自做出網站時, 其實是沒有能力做出完整的頁面的(點這裡檢視完整頁面), 如果您有美編人員可以配合, HTML 或許可以少學一點, 但其實大多數美編人員並不懂 ASP.NET , 因此他交付給您的會只是一張 psd/jpg file, 或者 html file, 您需要修改 html file, 將 TextBox 刪掉, 放入 ASP.NET 的 server control , 如果您對 HTML 不熟, 很容易就將 HTML 版面破壞掉, 又花好多時間修正它。
因此, 學習 ASP.NET 之前, 對 HTML , CSS, JavaScript 需要有一定程度的了解, 才不會做起事來綁手綁腳。
圖一
針對圖一的簡單功能, 您如果對 DataBase 完全不懂, 此時可能會臨時抱佛腳地問人資料表要如何開, 由於它只是一個 table , 因此您應該很容易就問得到正確的答案, 但當 table 需要比較多個, 或狀況比較複雜時, 您一定就更不會, 卻因為答案變複雜了,以致於願意花時間幫您的人也會變少。
例如圖二, 您想做一個類似的網頁, 左側能顯示產品的分類,右側能顯示產品圖片、簡介、促銷訊息、價格; 它大約只需要二個 table , 還不算難, 但對沒學好 database 的人, 就會有困難; 以我個人經驗, 一個普通的中小企業網站, 會需要 30幾個 table( 但各table 間的關聯比較鬆散 ), 公司內部請假系統也需要 30幾個 table( 各table 間的關聯比較緊密 ), 簡單的進銷存, 也要100個 table ( 關聯更複雜, 有時會需要 join 10 個 table 來獲得您要的資訊 ) , 如果您對 database 不熟, 一定會開出錯誤的 table, 最後導致系統出問題。
如果您有資料庫管理者跟您配合, 會將所有 table 開好, 您只需要寫程式, 難度確實會降低很多, 您只需要學會 INSERT.., UPDATE... , DELETE,... SELECT 等語法就夠應付大多數狀況了, 如果您是這麼幸運, database 可以不必急著學太深, 不過這麼幸運的事比較會發生在規模較大的公司(例如上市公司)。
圖二
結論:
學習 ASP.NET 之前, 應該要對HTML,CSS,JavaScript, DataBase 有一定程度的了解才行, 否則您在學習 ASP.NET 時, 勢必也會遇到不少其他的困難或困擾
註:
圖一截取自 http://www.emailcash.com.tw/join.asp?refer=ifome
圖二截取自 http://shopping.pchome.com.tw/?mod=area&func=style_show&RG_NO=AAAK&BB=A