[Design &Thinking ]基于WEB應用的開發(fā)的個人總結
前言
屈指一數(shù),涉足web應用的開發(fā)都有三四年的日子了,從最初的一些類似于word文檔的網(wǎng)頁編寫,到現(xiàn)在一些MIS(manage information System)應用系統(tǒng)的開發(fā)。當中的確經(jīng)歷許多,早已準備寫點文字總結些東西,最終還是拖到現(xiàn)在才打起精神來細寫。
何為web應用
web應用是指基于瀏覽器(browser)的應用,用戶使用用簡單的瀏覽工具(常用的如IE)。
通過http協(xié)議, 發(fā)出請求(request),服務器接收作出響應(response),返回請求需要結果或是進行相關的目標操作,這種架構也可以稱為B/S架構( Brower/Server 模式)。
本人懂事之年正遇上internet盛行之際,因此非科班出身的我也進入了IT軟件開發(fā)的行業(yè),這多得于當時3p(asp,php,jsp)技術的入門門檻不高,以及自己一直以來的興趣所在。
web應用的優(yōu)勢所在
web應用系統(tǒng)使用客戶端采用的是瀏覽器, 基本上每一臺PC機都會有的大眾軟件,免去類似于C/S系統(tǒng)中的升級麻煩的問題。
應用服務器采用 Web 服務器。只要在一臺或若干臺服務器即可,對客戶端信賴十分少。
適合于一些分布式的應用。對網(wǎng)絡用戶跨平臺支持,可跨平臺共享數(shù)據(jù)、文本、以及一些多媒體文件等多種形式的信息。
web 應用分類
關于web應用的開發(fā)實在太廣泛,在這里以靜態(tài)web應用以及動態(tài)web應用劃分
A 按效果分
這里的靜態(tài)是指純粹的html(超文本標記語言)頁面,或許現(xiàn)在這種web的應用可能不再存在,這里只作一個分類說明;
而動態(tài)是增加了一些dhtml(動態(tài)html),javascript等腳本語言技術以及flash動畫技術,其實可以這樣定義,就算增加的是一些動畫效果的GIF圖片以使頁面不再給人靜的感覺也屬于這里的范疇。
B 按內(nèi)容分
按內(nèi)容分靜態(tài)web應用以及動態(tài)web應用
這里的靜態(tài)應用是指頁面所展示的內(nèi)容是hardcode在頁面中的,不可再變化(通俗點來講是寫死在頁面中),除非從服務器download下來修改再upload上去。主要適合一些簡單的應用,以及一些固定內(nèi)容的展示。
現(xiàn)網(wǎng)絡上不少公司企業(yè)網(wǎng)站屬于這一類,主要是其開發(fā)簡單快捷,以及國人對于這方面的應用峽窄所至。
而動態(tài)是指頁面中顯示的關鍵內(nèi)容是保存在數(shù)據(jù)庫中的(簡單的應用或許保存在文本文件中,例如bat,txt等),授權用戶通過交互操作動態(tài)新增,修改,刪除相關的內(nèi)容或紀錄。通過控件輸入相關信息而動態(tài)地請求出所需要的內(nèi)容。以達到真正的人機互動。是過去幾年來最受歡迎的應用,當然也少不了asp,php,jsp服務器語言技術的成熟與發(fā)展的一份功勞!
技術要點
通過以上的介紹,我們已接觸到相關的技術點,但是它們是散亂的以及不全的。
在這里我通過使用java 世界中講得比較流行的的MVC模式 來進行層次劃分說明一下可使大家了解其中的技術點更為清晰:
V (view) - 表現(xiàn)層
負責頁面的展示,提供用戶操作的界面。這里包含的細節(jié)主要是
頁面的導航(navigation)
UI 控件( UI component)
數(shù)據(jù)的有效性檢測( Validator)
事件及監(jiān)聽 (Events and listeners )
信息的返回(Messages)
…………等
這方面的技術點主要包括展示語言html,xhtml,css,xml,xslt,script語言,RIA方面的(FLEX,XUL, XAML),jsp,jstl,tab lib,strtus等等。
C (controll) - 控制層
1、負責接受客戶端的請求,調(diào)用Model層商業(yè)方法
2、接收DAO執(zhí)行商業(yè)方法的執(zhí)行結果,將其現(xiàn)給客戶端。
這方面的技術點主要包括:java world中的 spring,strtus框架提供了這方面的封裝支持等
M (model) - 業(yè)務層
主要負責商業(yè)邏輯,所以也叫商業(yè)邏輯層,包括簡單的CURD的操作,以及一此復雜的邏輯。
應用領域
1、一般網(wǎng)站應用,主要面向的所有瀏覽用戶或注冊用戶
包括一些門市網(wǎng)站,企業(yè)(產(chǎn)品)形象的展示,電子商務站點等
2、 企業(yè)信息化應用,主要面向的企業(yè)內(nèi)部員工以及管理層
包括一些日常辦公,生產(chǎn),管理信息化的操作平臺。典型的有
英文簡稱 | 中文 | |
OA | 協(xié)同辦公 | |
CMS | 內(nèi)容管理系統(tǒng) | |
CRM | 客戶關系管理 | |
SCM | 供應鏈管理 | |
財務系統(tǒng) | ||
生產(chǎn)管理 | ||
人力資源管理 | ||
KM | 知識管理 |
技術表格
sort | common | java world |
view 層 |
HTML,XML,XHTML, |
jstl,tag lib,strtus,jsf,Tapestry,webwork…… |
controller 層 | strtus,spring | |
model層 | transactions ,java | |
數(shù)據(jù)庫技術 | 標準sql,db,dba,特定sql,pl/sql | jdbc,ORM(hibernate,ibatis)等 |
web Containers | tomcat,weblogic,Webspace ,jboss,Resin | |
Security | ||
os | window,linux | |
browser | IE,firefox | |
EAI(企業(yè)應用整合) | Web Service, Portal …… | |
其它 | Design Pattern,算法,優(yōu)化技巧 |
后注
帖些學習資料,主要針對java平臺開發(fā)
1、Struts User and Developer Guides 分類得不錯,step by step 對MVC各層的知識點也提供了介紹以及學習資源
2、All About Java 關于Java的一切 : 工具, 類庫, 框架
posted on 2005-06-27 22:01 一凡@ITO 閱讀(586) 評論(0) 編輯 收藏 所屬分類: Design &Thinking