當(dāng)今時(shí)代,互聯(lián)網(wǎng)中只有Web應(yīng)用程序開發(fā)的火熱程度能夠與微信開發(fā)抗衡,作為IT人士,不得不了解Web應(yīng)用的開發(fā)流程。
在了解Web應(yīng)用的開發(fā)流程前,應(yīng)先了解什么是Web應(yīng)用程序。Web應(yīng)用程序是一種可以通過Web訪問的應(yīng)用程序。Web應(yīng)用程序的一個(gè)最大好處是用戶很容易訪問應(yīng)用程序。用戶只需要有瀏覽器即可,不需要再安裝其他軟件。Web應(yīng)用程序就像Android一樣,是跨平臺(tái)的,只要設(shè)備安裝瀏覽器就可以使用,其發(fā)展?jié)摿Σ谎远鳌?/p>
了解了什么是Web應(yīng)用程序后,就可以學(xué)習(xí)Web應(yīng)用程序的開發(fā)流程了。
步驟一:分析
開發(fā)一個(gè)Web應(yīng)用的第一步是分析需求。此時(shí)應(yīng)該定義出一個(gè)盡量周全的應(yīng)用應(yīng)該提供的功能清單。如果是為一個(gè)客戶做這些工作,需要明白客戶想要什么。從與客戶的討論中,能總結(jié)出需求和軟件規(guī)格。即使是為自己開發(fā),建議希望這個(gè)Web應(yīng)用能夠做的功能列出來。
步驟二:設(shè)計(jì)
一旦清楚了這個(gè)Web應(yīng)用需要做哪些事情,就可以開始設(shè)計(jì)了。這個(gè)步驟通常會(huì)反反復(fù)復(fù)進(jìn)行很多次,每一次都把設(shè)計(jì)細(xì)化一些。第一要做的是畫出頁(yè)面流程圖。
建議使用一些詞語描述,適度細(xì)化。當(dāng)想到一個(gè)很好的想法時(shí),或想到事情該如何做時(shí),標(biāo)注到紙上(例如,當(dāng)點(diǎn)擊這個(gè)按鈕時(shí)應(yīng)該使另外一個(gè)元素改變或隱藏,把這寫在流程圖上)。
對(duì)做出的草圖滿意后,可以開始制作實(shí)體模型。實(shí)體模型仍然是些圖案,但有色彩和細(xì)節(jié)。最終的實(shí)體模型看起來應(yīng)該像將要實(shí)現(xiàn)的Web應(yīng)用的一個(gè)截圖。
原型是用HTML開發(fā)出來,使用CSS渲染(有時(shí)也是有Javascript)。頁(yè)面布局要做出來,鏈接能夠點(diǎn),顏色,字體,字體大小要設(shè)定好(如果做了實(shí)體模型,這個(gè)會(huì)很容易)。這一步非常的重要,因?yàn)檫@里所有的東西都能用于最終的應(yīng)用中。如果允許的話,在的原型上做一些可用性測(cè)試,從長(zhǎng)期的效果來看,這能使避免大量的失誤。
在這個(gè)步驟的最后,基本上就知道了Web應(yīng)用是如何組織到一起的了。登錄頁(yè)面有些什么,用戶如何從主頁(yè)轉(zhuǎn)向到各個(gè)頁(yè)面。
步驟三:實(shí)現(xiàn)
現(xiàn)在已經(jīng)知道了要去開發(fā)什么東西,那就要做出來。這一部分的工作很多,大部分的時(shí)間都要花在這個(gè)上面。第一個(gè)要做的決定是如何著手,采用什么樣的技術(shù),什么框架。有很多選擇的余地,需要選出一個(gè)適合的。下面是一個(gè)最常用的框架的列表:
ASP.NET
PHP 上的任何一個(gè)流程的框架
Python with Django
Ruby on Rails
沒有一個(gè)明確的標(biāo)準(zhǔn)說哪個(gè)框架較好。它們都各有不同,每個(gè)都有自己的長(zhǎng)處。最重要的是要知道它們?nèi)魏我粋€(gè)都能讓開發(fā)出好用的Web應(yīng)用。
一旦知道了如何去開發(fā),那就要甩開臂膀開干了。這個(gè)開發(fā)工作可以看作有很多塊,但說到底,這都是標(biāo)準(zhǔn)的編程活動(dòng)了。在后臺(tái),要?jiǎng)?chuàng)建類,對(duì)象,服務(wù),過程,以及持久層來把這些對(duì)象保存到數(shù)據(jù)庫(kù)中。后臺(tái)是整個(gè)應(yīng)用的核心,對(duì)任何應(yīng)用來說,它跟普通的編程沒有什么區(qū)別。接著是前臺(tái)的開發(fā),現(xiàn)在編寫的代碼才是真正給用戶使用的操作界面。把后臺(tái)的程序和原型界面集成到一起,把系統(tǒng)各部分集成到一起。還可以把在開發(fā)過程中想到的一些很炫的小功能用JavaScript實(shí)現(xiàn)。
再說一次,有很多種途徑可以實(shí)現(xiàn)后臺(tái)程序。建議去讀一讀跟選擇的框架相關(guān)的資料,弄清楚如何實(shí)現(xiàn)這一部分的工作。通常,這些知識(shí)會(huì)跟面向?qū)ο缶幊逃嘘P(guān),但有些框架正在慢慢的向領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)發(fā)展。
步驟四:打磨拋光
現(xiàn)在應(yīng)用程序已經(jīng)開發(fā)出來,各個(gè)獨(dú)立的模塊也集成到了一起。需要通過測(cè)試來確保在步驟一中定義的需求和軟件規(guī)格是否被實(shí)現(xiàn)(這個(gè)問題在開發(fā)的整個(gè)過程中都要記在腦中)。要確保那些愚蠢的用戶不能通過試圖做一些還沒有實(shí)現(xiàn)的操作而把的應(yīng)用弄壞(參考白盒和黑盒測(cè)試)。同時(shí)還要確保的程序能夠在各種瀏覽器里都能正確的運(yùn)行。
現(xiàn)在也是做一些小的調(diào)整,改進(jìn)的應(yīng)用程序給人的感覺的時(shí)候,讓它趨于完美。
步驟五:發(fā)布和后續(xù)工作
最后一步是發(fā)布的應(yīng)用,讓用戶能夠真正使用它。如果愿意,先發(fā)布一個(gè)Beta版,這樣只有一小部分用戶能夠發(fā)現(xiàn)的應(yīng)用里的大問題,他們會(huì)幫助改進(jìn)程序的質(zhì)量。不要忙著增加功能,要專注于把目前的程序變的穩(wěn)固。
當(dāng)經(jīng)過了Beta階段,的程序已經(jīng)變得十分的穩(wěn)固,聽取用戶反饋的意見,自己試用一下自己的應(yīng)用,可以開始思考如何使應(yīng)用變的更好。找出不和諧的地方。以后每次的迭代都要經(jīng)過上面所說的五個(gè)步驟。
按照以上Web應(yīng)用的開發(fā)步驟,只要愿意花費(fèi)時(shí)間,做出一個(gè)完美的Web應(yīng)用程序?qū)⑹且患p松的事情。
對(duì)于廣大程序開發(fā)人員來說,現(xiàn)在有一個(gè)喜訊,Eyoucms現(xiàn)免費(fèi)提供Web應(yīng)用開發(fā)的培訓(xùn),并推出應(yīng)用開發(fā)平臺(tái),通過平臺(tái)開發(fā)的應(yīng)用可直接銷售給30萬精準(zhǔn)客戶。