怎樣才能使大網(wǎng)站規(guī)范
asp開發(fā)規(guī)范
一、單頁編寫規(guī)范:
切記頁面要分模塊來寫:
第一模塊:接收參數(shù)。[有可能從不同頁面提交到同一個(gè)頁面;也可能出現(xiàn)兩個(gè)表單項(xiàng)以哪個(gè)優(yōu)先的處理)。
第二模塊:定義全局變量。
第三模塊:寫處理代碼(盡量將代碼都包含到函數(shù)中,詳見頁面附注一)。——到此asp代碼主要部分完成。
第四模塊:純html代碼,利用儲(chǔ)存在全局變量中的值來生成頁面。
第五(注意):要在頁面頭部寫清頁面邏輯。(如何接收、處理。)
優(yōu)點(diǎn):便于維護(hù)。模塊獨(dú)立,便于重復(fù)使用到類似頁面。
二、全站文件構(gòu)建規(guī)范:
1.工程接手后,先觀看靜態(tài)頁,掌握邏輯及瀏覽順序。
2.抽取頁面中被重復(fù)利用到的地方做成嵌入文件。
3.抽取頭文件、尾文件,及左側(cè)菜單欄,做成嵌入文件。
4.劃分頁面結(jié)構(gòu),做出模板文件。——以后制作中就copy它,然后就可直接制作。
注意:不要急于編寫頁面,除非你接手的是一項(xiàng)小工程,或者用戶需求已經(jīng)非常清楚確定并且不會(huì)再更改,否則,保持頁面代碼的可讀性是非常重要的!(當(dāng)你面對大返工時(shí),你的心情如何?先對潛在的危險(xiǎn)考慮一下吧!)
——因?yàn)槲覀兠總€(gè)人都對自己寫的代碼非常明白,而都比較難于讀懂別人寫的代碼。并且,由于客戶需求的變化,修改甚至推翻原有設(shè)計(jì)是比較常見的事。所以要注意在編寫代碼時(shí)注意讓后來者快速讀懂,并便于修改。] [至少要在頁面頭部加上注釋,在代碼中間重要的部分,也有必要加一些說明性注釋。]
我們所作的一切僅僅是為了:增加可移植可重用性、使邏輯清楚,便于維護(hù)、
視τ沒棖蟮母謀?,并尽快完成,减蓛用功?
――――――――――――――――――――――――――――――――――――――
附注一:第三模塊編寫說明?!禔SP頁面編寫結(jié)構(gòu)》
1.先寫注釋
2.寫嵌入文件。
3.寫大塊的ASP代碼(從COM中取出的)
——注意:復(fù)雜頁面,盡量將不同COM的操作封裝在獨(dú)立的函數(shù)里;
——函數(shù)結(jié)尾有一句調(diào)用,后面頁面中直接讀取函數(shù)處理完的數(shù)據(jù)(已被賦給全局變量)
——調(diào)用函數(shù)前,對頁面入口參數(shù)進(jìn)行合法性檢驗(yàn)。
附注二:第四模塊編寫說明?!禜tml代碼部分需要注意的》
1)最好不使頁面的asp代碼和html代碼混雜在一起,——感覺比較混亂。
2)通過獲取全局變量的數(shù)據(jù)得到asp的處理結(jié)果。
3)關(guān)于客戶端javascript:
表單提交前要進(jìn)行合法性檢驗(yàn)。寫在對下拉框要有和隱藏按鈕同步的,寫出單獨(dú)小函數(shù),放在該按鈕的下面。
對大型innerHTML型的客戶端交互操作,將代碼集中寫在相應(yīng)對應(yīng)的寫客戶端腳本時(shí),可多寫些函數(shù),使函數(shù)間傳遞的參數(shù)簡單,功能單一,以便日后有類似頁面,可以將其拆下來再使用。
---------------------------------------
對網(wǎng)頁制作的要求:
網(wǎng)頁人員完成的頁面,為保證在使用時(shí)不會(huì)出現(xiàn)混亂,請他們作以下處理:
1.表格不要嵌套太多;
2.表格寬度要用象素規(guī)定寬度;
3.單頁中,一個(gè)功能模塊要做成一個(gè)表格,以便編寫頁面時(shí),將重復(fù)部分提取成嵌入文件。
4.其它要注意的:精簡代碼、注意表格中字符和邊框的寬度。
5.文件名請用英文小寫加數(shù)字(和半角下劃線)命名。[想想你的頁面搬到unix主機(jī)上的慘狀]
>>> 5.文件名請用英文小寫加數(shù)字(和半角下劃線)命名。[想想你的頁面搬到unix主機(jī)上的慘狀]
這一點(diǎn), 以前沒有注意過, 我都是這樣的命名:
editNews.asp
delNews.asp
看樣子要寫成
edit_news.asp
del_news.asp 好一點(diǎn)。
----------------------------------------
我也來補(bǔ)充幾點(diǎn)代碼規(guī)范:
1. 很多人都沒有注意到的, 也是我特別要建議的: 運(yùn)算符的兩側(cè), 請多寫一個(gè)空格。 試比較:
a=(b*c/d+3.243)&"sdfsdfsdflkj"&"asdsd"
和
a = (b * c / d + 3.243) & "sdfsdfsdflkj" & "asdsd"
的可讀性區(qū)別。 不言自明。
2. 代碼請按照邏輯進(jìn)行正確的縮進(jìn)!
例子:
if a = 3 then
response.write "test"
else
response.write "sdfsdf"
end if
'' -------------> 注意這里, 兩個(gè)邏輯上的語句塊之間請保留一個(gè)空行
do while not rs.eof
response.write "test"
rs.MoveNext
loop
錯(cuò)誤的例子:
if not rs.eof then
response.write "a"
else
response.write "sfldfsd"
end if
if a = 1 then
if b = 2 then
c = "sdfkgkgskldf"
if d = "dfs" then
e = "sdf"
end if
f = "sdlkfsldfk"
end if
for i = 0 to 100
response.write i
next
end if
據(jù)我觀察,以上代碼習(xí)慣的人在 asp 程序員里面至少占 80%, 我說的一點(diǎn)都不夸張。
你們看看吧,上面這段代碼,能否看懂。反正我是看到這種就頭大。
至于縮進(jìn)量,看個(gè)人習(xí)慣了。通常用的多的是 2 格或者 4 格。我個(gè)人一般是 asp/vb 2 格, js/c 風(fēng)格的用 4 格
注釋+縮進(jìn)+規(guī)范的命名
以上三點(diǎn)真的蠻重要的
--------------------------------------
統(tǒng)統(tǒng)用tab縮進(jìn),至于縮進(jìn)格數(shù)好點(diǎn)的編輯器都可以設(shè)置
盡量不要在response.write輸出html代碼
不使用Option Explicit,個(gè)人覺得此功能并不適用于web
如果是開發(fā)程序方面,用DreamweaverMX開發(fā)程序應(yīng)該可以加快一些程序的開發(fā)效率(如ASP,PHP,JAVASCRIT等),因?yàn)橛懈吡溜@示和標(biāo)式符提示功能。
如果,是頁面設(shè)計(jì)方面,PHOTOSHOP就是一個(gè)不錯(cuò)的工具。PHOTOIMPACT也是不錯(cuò)的頁面設(shè)計(jì)工具。
相關(guān)文章
CSS3使用過度動(dòng)畫和緩動(dòng)效果案例講解
這篇文章主要介紹了CSS3使用過度動(dòng)畫和緩動(dòng)效果案例講解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07詳解IE6中的position:fixed問題與隨滾動(dòng)條滾動(dòng)的效果
這篇文章主要介紹了詳解IE6中的position:fixed問題與隨滾動(dòng)條滾動(dòng)的效果的相關(guān)資料,希望通本文能幫助到大家,需要的朋友可以參考下2017-09-09CSS3+Js實(shí)現(xiàn)響應(yīng)式導(dǎo)航條
今天制作了一個(gè)響應(yīng)式導(dǎo)航條,能夠自動(dòng)隨著不同的屏幕分辨率或?yàn)g覽器窗口大小的不同而改變導(dǎo)航條的樣式,這里主要用到的就是CSS3的Media Query。2014-05-05