計算機軟件從最開始的ui+db到后面的n層機構(gòu),無疑是很大的一個進步。就以j2ee標準來說,持久層負責以對象的形式為業(yè)務(wù)層提供數(shù)據(jù),并維護數(shù)據(jù);業(yè)務(wù)層負責組裝業(yè)務(wù)邏輯,并以適當?shù)姆绞綄?shù)據(jù)分發(fā)出去。這方面的技術(shù)很多,方案也很好。但是困擾web開發(fā)的問題在于client端。
我覺得client端最大的問題在于無狀態(tài),導致模型層和展現(xiàn)層的分離。我認為最佳的解決方案是客戶端有一個強大的容器,能夠請求、展現(xiàn)、維護客戶端模型,并展現(xiàn)、修改客戶端展現(xiàn)層。不妨定義為客戶端容器語言,此語言是否可以考慮成領(lǐng)域語言,專注于客戶展現(xiàn)層展現(xiàn)和客戶端模型層。
js在客戶端展現(xiàn)沒有問題,但是js多了brower是不是太慢了,而且js本身寫起來比較難,比較容易出錯。在模型層方面,似乎不那么讓人放心。關(guān)鍵問題是不是js的語言不夠規(guī)范標準,容器不夠強??
flash,感覺有點偏鋒。他完全繞開了html。ui完全是自己的,我覺得還是用html正統(tǒng)。
xaml,他也是完全繞開html。除此以外,完全和我想的一樣。
java技術(shù)是否可以考慮在client端有一個容器,操作html,負責與服務(wù)器交互并維護模型層,指導展現(xiàn)層??