如何從零開始教女同學(xué)進(jìn)行PHP開發(fā):寫需求文檔
背景:遠(yuǎn)在北京的高中女同學(xué)讓我?guī)兔Ξ?dāng)她的實(shí)訓(xùn)“技術(shù)顧問”,實(shí)訓(xùn)要求個(gè)人獨(dú)立開發(fā)一個(gè)web項(xiàng)目,她選擇的開發(fā)語言是php。其實(shí)我又當(dāng)了一次標(biāo)題黨,她雖然以前從來沒用過PHP,但是卻有一點(diǎn)點(diǎn)html、css、javascript基礎(chǔ)(據(jù)說已經(jīng)忘光了),有用過C和java寫過東西。
項(xiàng)目描述:
題目——資源預(yù)定管理系統(tǒng)
功能需求——
1. 針對(duì)企事業(yè)單位開發(fā)一個(gè)資源預(yù)定管理系統(tǒng)
2. 針對(duì)不同類別的資源,例如會(huì)議室、汽車、儀器設(shè)備等,向員工提供預(yù)約使用的功能
3. 員工登錄系統(tǒng)后,可以查看指定的資源當(dāng)前的預(yù)定情況,可以預(yù)定指定時(shí)間段內(nèi)空閑的資源。
4. 不同的資源需要根據(jù)情況設(shè)置不同開放時(shí)間,例如每天的8:00到18:00,用于智能在開發(fā)時(shí)間內(nèi)進(jìn)行預(yù)定
5. 不同的資源可以預(yù)定的最小時(shí)間單位是不同的,例如會(huì)議室按分鐘進(jìn)行預(yù)定,最短15分鐘,汽車按小時(shí)預(yù)定,最短2個(gè)小時(shí)。
6. 系統(tǒng)遵循先到先得的原則進(jìn)行預(yù)定。
7. 用戶預(yù)定后,尚未使用前可以取消,取消后,其它用戶可以繼續(xù)預(yù)定
第一步:寫需求文檔
計(jì)算機(jī)專業(yè)的同學(xué)一般都上過軟件工程這門課,自然知道做需求的重要性。就算沒上過,有過工作經(jīng)驗(yàn)的同志們也應(yīng)該看過別人寫的需求文檔。如果把一個(gè)項(xiàng)目的完成比作造房子,那么需求就好比建筑設(shè)計(jì)圖,如果設(shè)計(jì)的不好,那么造出來的房子也不會(huì)好看。雖然軟件開發(fā)比建筑有更大的靈活性(起碼房子不能動(dòng)不動(dòng)就回滾代碼,撤銷更改),但是需求要是做得不全面不嚴(yán)格,往往會(huì)極大地增加不必要的工作量和降低工作效率。
你想想,今天告訴你這樣一個(gè)需求,你代碼寫了一半,過幾天告訴你需求改了,之前的代碼都沒用了,你什么感覺?雖然需求變更是常有的事,但是一旦需求發(fā)生失控,對(duì)項(xiàng)目的影響往往是災(zāi)難性的。
幸好妹子之前做桌面軟件課程設(shè)計(jì)的時(shí)候?qū)戇^需求文檔,不然要從頭開始學(xué)怎么做需求還是一件蠻麻煩的事情。但如果剛?cè)腴T的童鞋嫌麻煩不做需求是大大的不妥,且不論進(jìn)入正式工作后要接觸更為嚴(yán)格嚴(yán)謹(jǐn)?shù)男枨笪臋n,哪怕只是應(yīng)付學(xué)校里的課程設(shè)計(jì),在軟件規(guī)模足夠大的情況下,做需求用一天的時(shí)間,起碼可以使開發(fā)的時(shí)間縮短一個(gè)星期。
第二步:登錄頁面的舉例
妹子寫需求文檔去了,那我也不能閑著。因?yàn)槲抑爸皇巧晕⒖催^php的相關(guān)資料,并沒有用過php寫過一行代碼,為了走在妹子前面,必須要提前學(xué)習(xí)妹子要用的東西。由于這個(gè)課程設(shè)計(jì)的項(xiàng)目有登錄的功能,所以我打算用這個(gè)頁面作為介紹php的第一個(gè)例子,并且往后還會(huì)就登錄功能整個(gè)流程進(jìn)行更加詳盡的說明。
首先,我們看一個(gè)最簡單的html登錄頁面,上代碼!
- <html>
- <head>
- <meta charset="gbk">
- <title>用戶登錄界面</title>
- </head>
- <body>
- <form name="login" action="Controller.php" method="post" >
- <td class="tbl">用戶名:</td><td><input type="text" name="user_id"></td>
- <td class="tbl">密碼:</td><td><input type="text" name="user_password"></td>
- <td><input type="submit" value="登入系統(tǒng)"></td>
- </form>
- </body>
- </html>
為了讓大家不當(dāng)極致的伸手黨,我就不把頁面截圖上來了,大家自己復(fù)制代碼用瀏覽器看看效果。為什么我要給妹子寫這幾行代碼呢?主要是想讓妹子重新熟悉一下html代碼長什么樣子,而且是為了下面讓妹子知道php與html為什么混合在一起做鋪墊。過了這么一會(huì)兒,大家應(yīng)該已經(jīng)看過上面那些代碼的顯示效果了吧。既然這樣,請(qǐng)看下面加入php后的代碼:
- <?php //php代碼部分開始
- echo "<html>";
- echo "<head>";
- echo "<meta charset=\"gbk\">";
- echo "<title>用戶登錄界面</title>";
- ?><!-- php代碼部分結(jié)束-->
- </head>
- <body>
- <form name="login" action="Controller.php" method="post" >
- <td class="tbl">用戶名:</td><td><input type="text" name="user_id"></td>
- <td class="tbl">密碼:</td><td><input type="text" name="user_password"></td>
- <?php
- echo "<td><input type=\"submit\" value=\"登入系統(tǒng)\"></td>"
- ?>
- </form>
- </body>
- </html>
這段代碼主要讓妹子了解這么幾點(diǎn):(1)php代碼要用<?php ?>標(biāo)簽進(jìn)行標(biāo)識(shí)(2)如何使用echo語句進(jìn)行輸出html代碼,另外關(guān)于要用對(duì)""中的"(雙引號(hào))用\(轉(zhuǎn)義符)進(jìn)行轉(zhuǎn)義。(3)php代碼是如何跟html代碼進(jìn)行混合的。
PS:完事開頭難,第一篇文章就先寫這么多。起點(diǎn)定的太高反而不好,容易把初學(xué)者搞迷糊了。多看作為例子的代碼,自己動(dòng)手改一改,寫一寫,感受一下。
原文鏈接:http://www.cnblogs.com/levenyes/archive/2013/09/04/3299146.html