網(wǎng)站項(xiàng)目管理規(guī)范 一.概念 網(wǎng)站項(xiàng)目管理就是根據(jù)特定的規(guī)范、在預(yù)算范圍內(nèi)、按時(shí)完成的網(wǎng)站開(kāi)發(fā)任務(wù)?! 《?需求分析 1.項(xiàng)目立項(xiàng) 我們接到客戶的業(yè)務(wù)咨詢,經(jīng)過(guò)雙方不斷的接洽和了解,并通過(guò)基本的可行性討論夠,初步達(dá)成制作協(xié)議,這時(shí)就需要將項(xiàng)目立項(xiàng)。較好的做法是成立一個(gè)專門(mén)的項(xiàng)目小組,小組成員包括:項(xiàng)目經(jīng)理,網(wǎng)頁(yè)設(shè)計(jì),程序員,測(cè)試員,編輯/文檔等必須人員。項(xiàng)目實(shí)行項(xiàng)目經(jīng)理制?! ?.客戶的需求說(shuō)明書(shū) 第一步是需要客戶提供一個(gè)完整的需求說(shuō)明。很多客戶對(duì)自己的需求并不是很清楚,需要您不斷引導(dǎo)和幫助分析。曾經(jīng)有一次,我問(wèn)客戶:“您做網(wǎng)站的目的是什么?”他回答:“沒(méi)有目的,只是因?yàn)閯e人都有,我沒(méi)有!”。這樣的客戶就需要耐心說(shuō)明,仔細(xì)分析,挖掘出他潛在的,真正的需求。 配合客戶寫(xiě)一份詳細(xì)的,完整的需求說(shuō)明會(huì)花很多時(shí)間,但這樣做是值得的,而且一定要讓客戶滿意,簽字認(rèn)可。把好這一關(guān),可以杜絕很多因?yàn)樾枨蟛幻骰蚶斫馄钤斐傻氖д`和項(xiàng)目失敗。糟糕的需求說(shuō)明不可能有高質(zhì)量的網(wǎng)站。那么需求說(shuō)明書(shū)要達(dá)到怎樣的標(biāo)準(zhǔn)呢?簡(jiǎn)單說(shuō),包含下面幾點(diǎn): 1.正確性:每個(gè)功能必須清楚描寫(xiě)交付的功能; 2.可行性:確保在當(dāng)前的開(kāi)發(fā)能力和系統(tǒng)環(huán)境下可以實(shí)現(xiàn)每個(gè)需求; 3.必要性:功能是否必須交付,是否可以推遲實(shí)現(xiàn),是否可以在削減開(kāi)支情況發(fā)生時(shí)"砍"掉; 4.簡(jiǎn)明性:不要使用專業(yè)的網(wǎng)絡(luò)術(shù)語(yǔ); 5.檢測(cè)性:如果開(kāi)發(fā)完畢,客戶可以根據(jù)需求檢測(cè)。 三.系統(tǒng)分析 1.網(wǎng)站總體設(shè)計(jì) 在拿到客戶的需求說(shuō)明后,并不是直接開(kāi)始制作,而是需要對(duì)項(xiàng)目進(jìn)行總體設(shè)計(jì),詳細(xì)設(shè)計(jì),出一份網(wǎng)站建設(shè)方案給客戶??傮w設(shè)計(jì)是非常關(guān)鍵的一步。它主要確定: 1.網(wǎng)站需要實(shí)現(xiàn)哪些功能; 2.網(wǎng)站開(kāi)發(fā)使用什么軟件,在什么樣的硬件環(huán)境; 3.需要多少人,多少時(shí)間; 4.需要遵循的規(guī)則和標(biāo)準(zhǔn)有哪些?! ⊥瑫r(shí)需要寫(xiě)一份總體規(guī)劃說(shuō)明書(shū),包括: 1.網(wǎng)站的欄目和版塊; 2.網(wǎng)站的功能和相應(yīng)的程序; 3.網(wǎng)站的鏈接結(jié)構(gòu); 4.如果有數(shù)據(jù)庫(kù),進(jìn)行數(shù)據(jù)庫(kù)的概念設(shè)計(jì); 5.網(wǎng)站的交互性和用戶友好設(shè)計(jì)?! ?.網(wǎng)站建設(shè)方案 在總體設(shè)計(jì)出來(lái)后,一般需要給客戶一個(gè)網(wǎng)站建設(shè)方案。很多網(wǎng)頁(yè)制作公司在接洽業(yè)務(wù)時(shí)就被客戶要求提供方案。那時(shí)的方案一般比較籠統(tǒng),而且在客戶需求不是十分明確的情況下提交方案,往往和實(shí)際制作后的結(jié)果會(huì)有很大差異。所以應(yīng)該盡量取得客戶的理解,在明確需求并總體設(shè)計(jì)后提交方案,這樣對(duì)雙方都有益處。網(wǎng)站建設(shè)方案的包括以下幾個(gè)部分: 1.客戶情況分析; 2.網(wǎng)站需要實(shí)現(xiàn)的目的和目標(biāo); 3.網(wǎng)站形象說(shuō)明; 4.網(wǎng)站的欄目版塊和結(jié)構(gòu); 5.網(wǎng)站內(nèi)容的安排,相互鏈接關(guān)系; 6.使用軟件,硬件和技術(shù)分析說(shuō)明; 7.開(kāi)發(fā)時(shí)間進(jìn)度表; 8.宣傳推廣方案; 9.維護(hù)方案; 10.制作費(fèi)用; 11.本公司簡(jiǎn)介:成功作品,技術(shù),人才說(shuō)明等?! ‘?dāng)您的方案通過(guò)客戶的認(rèn)可,您可以開(kāi)始動(dòng)手制作網(wǎng)站了。但還不是真正意義上的制作,你需要進(jìn)行詳細(xì)設(shè)計(jì): 3.網(wǎng)站詳細(xì)設(shè)計(jì) 總體設(shè)計(jì)階段以比較抽象概括的方式提出了解決問(wèn)題的辦法。詳細(xì)設(shè)計(jì)階段的任務(wù)就是把解法具體化。詳細(xì)設(shè)計(jì)主要是針對(duì)程序開(kāi)發(fā)部分來(lái)說(shuō)的。但這個(gè)階段的不是真正編寫(xiě)程序,而是設(shè)計(jì)出程序的詳細(xì)規(guī)格說(shuō)明。這種規(guī)格說(shuō)明的作用很類(lèi)似于其他工程領(lǐng)域中工程師經(jīng)常使用的工程藍(lán)圖,它們應(yīng)該 包含必要的細(xì)節(jié),例如:程序界面,表單,需要的數(shù)據(jù)等。程序員可以根據(jù)它們寫(xiě)出實(shí)際的程序代碼?! ∷? 項(xiàng)目實(shí)施 1.整體形象設(shè)計(jì) 在程序員進(jìn)行詳細(xì)設(shè)計(jì)的同時(shí),網(wǎng)頁(yè)設(shè)計(jì)師開(kāi)始設(shè)計(jì)網(wǎng)站的整體形象和首頁(yè)?! ≌w形象設(shè)計(jì)包括標(biāo)準(zhǔn)字,Logo,標(biāo)準(zhǔn)色彩,廣告語(yǔ)等。 首頁(yè)設(shè)計(jì)包括版面,色彩,圖像,動(dòng)態(tài)效果,圖標(biāo)等風(fēng)格設(shè)計(jì),也包括banner,菜單,標(biāo)題,版權(quán)等模塊設(shè)計(jì)。首頁(yè)一般設(shè)計(jì)1-3個(gè)不同風(fēng)格,完成后,供客戶選擇?! ∮涀。涸诳蛻舸_定首頁(yè)風(fēng)格之后,請(qǐng)客戶簽字認(rèn)可。以后不得再對(duì)版面風(fēng)格有大的變動(dòng),否則視為第二次設(shè)計(jì)?! ¢_(kāi)發(fā)制作 2.開(kāi)發(fā)制作 到這里,程序員和網(wǎng)頁(yè)設(shè)計(jì)師同時(shí)進(jìn)入全力開(kāi)發(fā)階段,需要提醒的是,測(cè)試人員需要隨時(shí)測(cè)試網(wǎng)頁(yè)與程序,發(fā)現(xiàn)Bug立刻記錄并反饋修改。不要等到完全制作完畢再測(cè)試,這樣會(huì)浪費(fèi)大量的時(shí)間和精力。項(xiàng)目經(jīng)理需要經(jīng)常了解項(xiàng)目進(jìn)度,協(xié)調(diào)和溝通程序員與網(wǎng)頁(yè)設(shè)計(jì)師的工作?! ≌{(diào)試完善 3.調(diào)試完成 在網(wǎng)站初步完成后,上傳到服務(wù)器,對(duì)網(wǎng)站進(jìn)行全范圍的測(cè)試。包括速度,兼容性,交互性,鏈接正確性,程序健壯性,超流量測(cè)試等,發(fā)現(xiàn)問(wèn)題及時(shí)解決并記錄下來(lái)?! 槭裁匆涗浳臋n呢?其實(shí)本軟件工程本身就是一個(gè)文檔,是一個(gè)不斷充實(shí)和完善的標(biāo)準(zhǔn)。通過(guò)不斷的發(fā)現(xiàn)問(wèn)題,解決問(wèn)題,修改,補(bǔ)充文檔,使這個(gè)標(biāo)準(zhǔn)越來(lái)越規(guī)范,越來(lái)越工業(yè)化。進(jìn)而使得網(wǎng)站開(kāi)發(fā)趨向規(guī)范,趨向合理?! ?.宣傳推廣 宣傳推廣的基本方法有: 1.網(wǎng)頁(yè)里設(shè)置適當(dāng)?shù)腗ETA標(biāo)簽; 2.各搜索引擎登錄; 3.準(zhǔn)備新聞稿件在各新聞公告板發(fā)表; 4.合理使用Email郵件列表; 5.廣告條交換; 6.付費(fèi)廣告。 至此,網(wǎng)站項(xiàng)目建設(shè)完畢,將有關(guān)網(wǎng)址,使用操作說(shuō)明文檔等提交客戶驗(yàn)收。如果需要維護(hù),另行簽定維護(hù)項(xiàng)目?! ∥?維護(hù) 網(wǎng)站成功推出后,長(zhǎng)期的維護(hù)工作才剛剛開(kāi)始,需要做到的是: 1.及時(shí)響應(yīng)客戶反饋;例如可以采取Email自動(dòng)回復(fù)功能,然后在1-3個(gè)工作日里解決問(wèn)題,再次回復(fù); 2.網(wǎng)站流量統(tǒng)計(jì)分析和相應(yīng)對(duì)策; 3.盡量推廣和使用您的網(wǎng)址; 4.網(wǎng)站內(nèi)容的及時(shí)更新和維護(hù)?! ×?遵循的規(guī)范 1.網(wǎng)站建設(shè)目錄規(guī)范 2.網(wǎng)站文件命名規(guī)范 3.網(wǎng)站建設(shè)尺寸規(guī)范 4.網(wǎng)站首頁(yè)head區(qū)代碼規(guī)范 5.網(wǎng)站連接結(jié)構(gòu)規(guī)范 網(wǎng)站開(kāi)發(fā)規(guī)范 任何一個(gè)項(xiàng)目或者系統(tǒng)開(kāi)發(fā)之前都需要定制一個(gè)開(kāi)發(fā)約定和規(guī)則,這樣有利于項(xiàng)目的整體風(fēng)格統(tǒng)一、代碼維護(hù)和擴(kuò)展。由于Web項(xiàng)目開(kāi)發(fā)的分散性、獨(dú)立性、整合的交互性等,所以定制一套完整的約定和規(guī)則顯得尤為重要。定制一系列約定和規(guī)則,包括組件團(tuán)隊(duì)、文件夾命名規(guī)則、文件名命名規(guī)則、程序代碼編程風(fēng)格、數(shù)據(jù)庫(kù)設(shè)計(jì)約定。這些規(guī)則和約定需要與開(kāi)發(fā)人員、設(shè)計(jì)人員和維護(hù)人員共同討論定制,將來(lái)開(kāi)發(fā)都將嚴(yán)格按規(guī)則或約定開(kāi)發(fā)。每個(gè)團(tuán)隊(duì)開(kāi)發(fā)都應(yīng)有自己的一套規(guī)范,一個(gè)優(yōu)良可行的規(guī)范可以使我們工作得心應(yīng)手事半功倍,這些規(guī)范都不是唯一的標(biāo)準(zhǔn)不存在對(duì)與錯(cuò),也許有些地方與你當(dāng)前使用的習(xí)慣相駁,很多地方都有爭(zhēng)議。。 非常明顯在Web項(xiàng)目開(kāi)發(fā)中有前后臺(tái)開(kāi)發(fā)之分,前臺(tái)開(kāi)發(fā)主要是指非程序編程部分,主要職責(zé)是網(wǎng)站AI設(shè)計(jì)、界面設(shè)計(jì)、動(dòng)畫(huà)設(shè)計(jì)等。而后臺(tái)開(kāi)發(fā)主要是編程和網(wǎng)站運(yùn)行平臺(tái)搭建,其主要職責(zé)是設(shè)計(jì)網(wǎng)站數(shù)據(jù)庫(kù)和網(wǎng)站功能模板的實(shí)現(xiàn)。下面的這些規(guī)范主要是從這2個(gè)方面來(lái)定制的,這些規(guī)范是工作中總結(jié)的一點(diǎn)經(jīng)驗(yàn),本文檔比較適合中小型網(wǎng)站或者Web項(xiàng)目的開(kāi)發(fā)規(guī)范?! ∫唬M建開(kāi)發(fā)團(tuán)隊(duì) 在接手項(xiàng)目后的第一件事是組建團(tuán)隊(duì)。根據(jù)項(xiàng)目的大小團(tuán)隊(duì)可以有幾十人,也有可以是只有幾個(gè)人的小團(tuán)隊(duì),在團(tuán)隊(duì)劃分中應(yīng)該含有6個(gè)角色,這6個(gè)角色是必須的,分別是項(xiàng)目經(jīng)理,策劃,美工,程序員,代碼整合員,測(cè)試員。也許你的團(tuán)隊(duì)還沒(méi)有6個(gè)人,沒(méi)有關(guān)系一個(gè)人可以有多個(gè)角色,比如項(xiàng)目經(jīng)理還可以有策劃這個(gè)角色,如程序員還可以含有代碼整合和測(cè)試這2個(gè)角色,如果你的項(xiàng)目夠大人數(shù)夠多那就分為6個(gè)組,每個(gè)組分工再來(lái)細(xì)分。下面簡(jiǎn)單介紹一下這6個(gè)角色的具體職責(zé)?! №?xiàng)目經(jīng)理,項(xiàng)目總體設(shè)計(jì),開(kāi)發(fā)進(jìn)度的定制和監(jiān)控,定制相應(yīng)的開(kāi)發(fā)規(guī)范,負(fù)責(zé)各個(gè)環(huán)節(jié)的評(píng)審工作,協(xié)調(diào)各個(gè)成員(小組)之間開(kāi)發(fā)。策劃,提供詳細(xì)的策劃方案和需求分析。還包括后期網(wǎng)站推廣方面的策劃。美工,根據(jù)策劃和需求設(shè)計(jì)網(wǎng)站AI,界面,Logo等。程序員,根據(jù)項(xiàng)目總體設(shè)計(jì)來(lái)設(shè)計(jì)數(shù)據(jù)庫(kù)和功能模塊的實(shí)現(xiàn)。代碼整合員,負(fù)責(zé)將程序員的代碼和界面融合到一起,代碼整合員可以制作網(wǎng)站的相關(guān)頁(yè)面,測(cè)試員,負(fù)責(zé)測(cè)試程序?! 《_(kāi)發(fā)工具 Web開(kāi)發(fā)工具主要分為3部分,第一部分是網(wǎng)站前臺(tái)開(kāi)發(fā)工具,第二部分是網(wǎng)站后臺(tái)開(kāi)發(fā)環(huán)境,第三部分是項(xiàng)目管理和輔助軟件。下面分別簡(jiǎn)單介紹這三部分需要使用的軟件?! 【W(wǎng)站前臺(tái)開(kāi)發(fā)主要是指Web界面設(shè)計(jì)。包括網(wǎng)站整體框架建立、常用圖片、Flash動(dòng)畫(huà)設(shè)計(jì)等等,主要使用的相關(guān)軟件是:Adobe Illustrator 、Adodb Photoshop、Dreamweaver MX、Flash MX等?! 【W(wǎng)站后臺(tái)開(kāi)發(fā)主要指網(wǎng)站動(dòng)態(tài)程序開(kāi)發(fā)、數(shù)據(jù)庫(kù)建模,主要使用的相關(guān)軟件是: PowerDesigner(數(shù)據(jù)庫(kù)建模),PowerDesigner在數(shù)據(jù)庫(kù)設(shè)計(jì)方面應(yīng)用非常強(qiáng)大,用它可以快速創(chuàng)建數(shù)據(jù)庫(kù)概念和物理模型,我最喜歡的還是它生成數(shù)據(jù)庫(kù)Report的功能太方便了,設(shè)計(jì)數(shù)據(jù)庫(kù)強(qiáng)烈推薦用它。Rational Rose(程序建模),如果你的項(xiàng)目功能模塊不是特別復(fù)雜那就剩了它吧,這樣會(huì)節(jié)省一些時(shí)間和開(kāi)發(fā)的復(fù)雜度,不過(guò)我個(gè)人認(rèn)為不管是大項(xiàng)目還是小項(xiàng)目都應(yīng)該畫(huà)畫(huà)Rose圖?! 【W(wǎng)站項(xiàng)目管理主要指對(duì)開(kāi)發(fā)進(jìn)度和代碼版本的控制。開(kāi)發(fā)進(jìn)度用Microsoft Project來(lái)制定,代碼版本控制采用Visual SourceSafe,當(dāng)然還有其他的選擇比如CVS和Rational ClearCase。網(wǎng)站測(cè)試采用VS.net的附帶工具M(jìn)icrosoft Application Center Test,它可以進(jìn)行并行、負(fù)載測(cè)試等。程序文檔編寫(xiě)采用Word,用WPS也可以?! ∪?網(wǎng)站開(kāi)發(fā)流程 在項(xiàng)目開(kāi)始實(shí)施之前應(yīng)該有一個(gè)工作步驟也就是工作流程,在項(xiàng)目開(kāi)發(fā)中最需要時(shí)間的是總體設(shè)計(jì)和系統(tǒng)測(cè)試,而程序編寫(xiě)代碼所占的時(shí)間并不多,但有的團(tuán)隊(duì)就急于開(kāi)發(fā)寫(xiě)代碼,先把程序?qū)懗鰜?lái)再說(shuō),沒(méi)有注重評(píng)審和測(cè)試這2個(gè)環(huán)節(jié),結(jié)果造成返工,我在一家比較大的公司中都遇到多次這種情況。所以項(xiàng)目來(lái)了不要急于開(kāi)工寫(xiě)代碼,應(yīng)該一步一步慢慢來(lái),只有走的慢才能走得穩(wěn)走得遠(yuǎn)。圖1的開(kāi)發(fā)流程比較好地體現(xiàn)開(kāi)發(fā)的整個(gè)環(huán)節(jié)?! D 1 從圖1可以看到2條主線,這2條主線分別是前臺(tái)開(kāi)發(fā)和后臺(tái)開(kāi)發(fā)。前后臺(tái)開(kāi)發(fā)在項(xiàng)目開(kāi)發(fā)早期互相沒(méi)有交叉,當(dāng)然不是絕對(duì)沒(méi)有,Web策劃和需求分析都是互相有關(guān)系的,一個(gè)是網(wǎng)站表現(xiàn)形式和風(fēng)格的策劃另一個(gè)是網(wǎng)站功能的策劃,它們是衣服和軀干的關(guān)系。到了開(kāi)發(fā)后期就需要把界面和功能模塊結(jié)合起來(lái)形成一個(gè)統(tǒng)一,也就即將發(fā)布的網(wǎng)站。 四.?dāng)?shù)據(jù)庫(kù)開(kāi)發(fā)規(guī)范 數(shù)據(jù)文件命名采用系統(tǒng)名+_+文件類(lèi)型,比如系統(tǒng)名為kupage,則數(shù)據(jù)庫(kù)文件命名為kupage_database.mdf,有的數(shù)據(jù)庫(kù)文件有多個(gè),比如SQL Server就有2個(gè),一個(gè)是數(shù)據(jù)庫(kù)文件,另一個(gè)是日志文件,那么他們的文件命名分別為kupage_database.mdf,kupage_log.log。文件名全部采用小寫(xiě)?! ?shù)據(jù)庫(kù)表命名規(guī)范,表名長(zhǎng)度不能超過(guò)30個(gè)字符,表名中含有單詞全部采用單數(shù)形式,單詞首寫(xiě)字母要大寫(xiě),多個(gè)單詞間不用任何連接符號(hào)。若庫(kù)中有多個(gè)系統(tǒng),表名采用系統(tǒng)名稱+單詞或多個(gè)單詞,系統(tǒng)名是開(kāi)發(fā)系統(tǒng)的縮寫(xiě),系統(tǒng)名稱全部采用小寫(xiě)英文字符,如bbsTitle,bbsForumType。若庫(kù)中只含有一個(gè)系統(tǒng),那么表名僅用一個(gè)單詞或多個(gè)單詞。單詞選擇能夠概括表內(nèi)容的一個(gè)或多個(gè)英文單詞,如UserInfo,UserType。關(guān)連表命名規(guī)則為Re_表A_表B,Re是Relative的縮寫(xiě),如:Re_User_ArticleType, Re_User_FormType?! ?shù)據(jù)庫(kù)字段命名規(guī)范,數(shù)據(jù)庫(kù)字段名全部采用小寫(xiě)英文單詞,單詞之間用”_”隔開(kāi),命名規(guī)則是表別名+單詞,如:user_name,user_pwd。表別名規(guī)則,如果表名是一個(gè)單詞,別名就取單詞的前4 個(gè)字母;如果表名是兩個(gè)單詞,就各取兩個(gè)單詞的前兩個(gè)字母組成4 個(gè)字母長(zhǎng)的別名;如果表的名字由3 個(gè)單詞組成,你不妨從頭兩個(gè)單詞中各取一個(gè)然后從最后一個(gè)單詞中再取出兩個(gè)字母,結(jié)果還是組成4 字母長(zhǎng)的別名。 視圖名采用規(guī)則View_表A_表B_表C,View表示視圖。這個(gè)視圖由幾個(gè)表產(chǎn)生就用”_”連接幾個(gè)表的名,如果表過(guò)多可以將表名適當(dāng)簡(jiǎn)化,但一定要列出所有表名?! 〈鎯?chǔ)過(guò)程命名規(guī)則P_表名_存取過(guò)程名(縮寫(xiě)),比如P_User_Del,P_ArticleType_AddData?! QL語(yǔ)句編寫(xiě)規(guī)則,關(guān)鍵字必須大寫(xiě),其他書(shū)寫(xiě)按上述命名規(guī)則,比如: SELECT user_id, user_name FROM User WHERE user_id = ‘tom’ 五.文件夾文件名命名規(guī)范 文件夾命名一般采用英文,長(zhǎng)度一般不超過(guò)20個(gè)字符,命名采用小寫(xiě)字母。除特殊情況才使用中文拼音,一些常見(jiàn)的文件夾命名如:images(存放圖形文件),flash(存放Flash文件),style(存放CSS文件),scripts(存放Javascript腳本),inc(存放include文件),link(存放友情鏈接),media(存放多媒體文件)等?! ∥募Q統(tǒng)一用小寫(xiě)的英文字母、數(shù)字和下劃線的組合。命名原則的指導(dǎo)思想一是使得你自己和工作組的每一個(gè)成員能夠方便的理解每一個(gè)文件的意義,二是當(dāng)我們?cè)谖募A中使用“按名稱排例”的命令時(shí),同一種大類(lèi)的文件能夠排列在一起,以便我們查找、修改、替換、計(jì)算負(fù)載量等等操作 。 1、圖片的命名原則名稱分為頭尾兩部分,用下劃線隔開(kāi),頭部分表示此圖片的大類(lèi)性質(zhì)例如廣告、標(biāo)志、菜單、按鈕等等?! 》胖迷陧?yè)面頂部的廣告、裝飾圖案等長(zhǎng)方形的圖片取名: banner 標(biāo)志性的圖片取名為: logo 在頁(yè)面上位置不固定并且?guī)в墟溄拥男D片我們?nèi)∶麨?button 在頁(yè)面上某一個(gè)位置連續(xù)出現(xiàn),性質(zhì)相同的鏈接欄目的圖片我們?nèi)∶?menu 裝飾用的照片我們?nèi)∶?pic 不帶鏈接表示標(biāo)題的圖片我們?nèi)∶?title 下面是幾個(gè)范例: banner_sohu.gif 、banner_sina.gif、 menu_aboutus.gif 、menu_job.gif、 title_news.gif、 logo_police.gif、 logo_national.gif 、pic_people.jpg ?! ?、動(dòng)態(tài)語(yǔ)言文件命名規(guī)則性質(zhì)_描述,描述可以有多個(gè)單詞,用”_”隔開(kāi),性質(zhì)一般是該頁(yè)面得概要?! 》独簉egister_form.asp,register_post.asp,topic_lock.asp 六.程序代碼編程規(guī)范 一個(gè)良好的程序編碼風(fēng)格有利于系統(tǒng)的維護(hù),代碼也易于閱讀查錯(cuò)。在此只討論ASP的編程風(fēng)格和約定。在ASP中所有變量是弱變量,無(wú)需定義就可以直接使用,而且代碼不區(qū)分大小寫(xiě)。但其他語(yǔ)言一般這些都要定義的,為了養(yǎng)成良好的編程習(xí)慣,編寫(xiě)代碼務(wù)必按照一下規(guī)則。 1、每個(gè)變量名必須定義,在ASP文件的最開(kāi)始添加語(yǔ)句,強(qiáng)制定制每個(gè)變量?! ?、出于易讀和一致性的目的,在代碼中使用以下變量命名約定: 子類(lèi)型 前綴 示例 Boolean bln blnFound Byte byt bytRasterData Date (Time) dtm dtmStart Double dbl dblTolerance Error err errOrderNum Integer int intQuantity Long lng lngDistance Object obj objCurrent Single sng sngAverage String str strFirstName 3、程序代碼需要有縮進(jìn),縮進(jìn)采用鍵盤(pán)Tab鍵,不采用空格鍵。并且”=”或者鏈接字符串時(shí)需要左右空一格,如下: 4、函數(shù)過(guò)程編寫(xiě)的約定。函數(shù)或者過(guò)程命名采用動(dòng)作+名詞,每個(gè)函數(shù)需要給出相應(yīng)的注釋,函數(shù)功能,傳入變量,以及作者和修改相關(guān)信息。如下面函數(shù): <% '[功能] 返回一個(gè)參數(shù)的值 '[參數(shù)] strParameterName 參數(shù)名稱 '[作者] icefire 2002/8/20 am Function GetParameterValue(strParameterName) Dim objRS, strSQL, strParameterValue strSQL = "SELECT ParameterValue FROM damsParameters WHERE ParameterName = '" & strParameterName & "'" . . . GetParameterValue = strParameterValue Set objRS = Nothing End Function 5、ASP內(nèi)置對(duì)象區(qū)分大小寫(xiě)。如下代碼片斷 strUserName = Request.Form(“UserName”) Set conn = Server.CreateObject("ADODB.Connection") 6、數(shù)據(jù)庫(kù)連接一個(gè)庫(kù)只能有一個(gè)數(shù)據(jù)庫(kù)連接文件,創(chuàng)建數(shù)據(jù)庫(kù)對(duì)象得原則是盡可能晚地打開(kāi)數(shù)據(jù)庫(kù),盡可能早地關(guān)閉數(shù)據(jù)庫(kù)。創(chuàng)建數(shù)據(jù)庫(kù)對(duì)象調(diào)用統(tǒng)一地創(chuàng)建函數(shù)。如下: Sub OpenConn(ByRef conn) Dim strDBPath, strDBConnection strDBPath = Server.MapPath("database/tax.mdb") strDBConnnection = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & strDBPath Set conn = Server.CreateObject("ADODB.Connection") conn.Open strDBConnnection End Sub 7、當(dāng)一個(gè)對(duì)象不在使用時(shí)要釋放對(duì)象資源,比如objFSO,objRS對(duì)象等。采用統(tǒng)一函數(shù)調(diào)用。函數(shù)如下: Sub CloseObj(ByRef obj) If IsObject(obj) Then obj.Close Set obj = nothing End If End Sub 8、時(shí)間全部以字符串的形式保存到數(shù)據(jù)庫(kù)中,這樣做能夠是日期在不同的數(shù)據(jù)庫(kù)中都能良好地保存,也方便數(shù)據(jù)庫(kù)地遷移。時(shí)間用14位字符串保存,日期用8位字符串保存?! ∑撸W(wǎng)站首頁(yè)head區(qū)代碼規(guī)范 head區(qū)是指首頁(yè)HTML代碼的<head>和</head>之間的內(nèi)容。 必須加入的標(biāo)簽 1.公司版權(quán)注釋 <!--- The site is designed by Maketown,Inc 06/2004 ---> 2.網(wǎng)頁(yè)顯示字符集 簡(jiǎn)體中文:<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312"> 繁體中文:<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=BIG5"> 英 語(yǔ):<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> 3.網(wǎng)頁(yè)制作者信息 <META name="author" content="webmaster@maketown.com"> 4.網(wǎng)站簡(jiǎn)介 <META NAME="DESCRIPTION" CONTENT="本站是一個(gè)醫(yī)療站點(diǎn)…"> 5.搜索關(guān)鍵字 <META NAME="keywords" CONTENT="xxxx,xxxx,xxx,xxxxx,xxxx,"> 6.網(wǎng)頁(yè)的css規(guī)范 <LINK href="style/style.css" rel="stylesheet" type="text/css"> (參見(jiàn)目錄及命名規(guī)范) 7.網(wǎng)頁(yè)標(biāo)題 <title>xxxxxxxxxxxxxxxxxx</title> 8.可以選擇加入的標(biāo)簽 1.設(shè)定網(wǎng)頁(yè)的到期時(shí)間。一旦網(wǎng)頁(yè)過(guò)期,必須到服務(wù)器上重新調(diào)閱。 <META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT"> 2.禁止瀏覽器從本地機(jī)的緩存中調(diào)閱頁(yè)面內(nèi)容?! ?lt;META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 3.用來(lái)防止別人在框架里調(diào)用你的頁(yè)面。 <META HTTP-EQUIV="Window-target" CONTENT="_top"> 4.自動(dòng)跳轉(zhuǎn)?! ?lt;META HTTP-EQUIV="Refresh" CONTENT="5;URL=http://www.yahoo.com"> 5指時(shí)間停留5秒?! ?.網(wǎng)頁(yè)搜索機(jī)器人向?qū)?用來(lái)告訴搜索機(jī)器人哪些頁(yè)面需要索引,哪些頁(yè)面不需要索引。 <META NAME="robots" CONTENT="none"> CONTENT的參數(shù)有all,none,index,noindex,follow,nofollow。默認(rèn)是all。 6.收藏夾圖標(biāo) <link rel = "Shortcut Icon" href="favicon.ico"> 所有的javascript的調(diào)用盡量采取外部調(diào)用. <SCRIPT LANGUAGE="javascript" SRC="script/xxxxx.js"></SCRIPT> 附<body>標(biāo)簽: <body>標(biāo)簽不屬于head區(qū),這里強(qiáng)調(diào)一下,為了保證瀏覽器的兼容性,必須設(shè)置頁(yè)面背景<body bgcolor="#FFFFFF"> 八.網(wǎng)站建設(shè)尺寸規(guī)范 1. 頁(yè)面標(biāo)準(zhǔn)按800*600分辨率制作,實(shí)際尺寸為778*434px 2. 頁(yè)面長(zhǎng)度原則上不超過(guò)3屏,寬度不超過(guò)1屏 3. 每個(gè)標(biāo)準(zhǔn)頁(yè)面為A4幅面大小,即8.5X11英寸 4. 全尺寸banner為468*60px,半尺寸banner為234*60px,小banner為88*31px 5. 另外120*90,120*60也是小圖標(biāo)的標(biāo)準(zhǔn)尺寸 6. 每個(gè)非首頁(yè)靜態(tài)頁(yè)面含圖片字節(jié)不超過(guò)60K,全尺寸banner不超過(guò)14K