偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

ESRI為什么選擇JSF

開發(fā)
本文介紹在這300多種framework中,ESRI為什么選擇JSF?各個framework有各個framework的好處。JSF最大的優(yōu)點就是:像Swing和AWT一樣,JSF是一個可以提供一組標準的、可重用的 GUI 組件的開發(fā)框架。

在正式開講之前,我們來探討一下為什么要使用JSF來實現(xiàn)SERVER ADF,這也是很多開發(fā)商跟我討論時經(jīng)常會問到的問題。

世界上有300種Java的framework,這個數(shù)字是我?guī)讉€月前聽到的,現(xiàn)在可能已經(jīng)不止這個數(shù)了。我曾經(jīng)用過的framework包括 Structs,Hibernate,Spring。這些framework不但能加速開發(fā),而且會帶來全新的程序設計理念。我當時的感覺是:原來程序還可以這樣寫! 當然,這些framework都是開源免費,你不用擔心自己的良心受到譴責,也不用擔心比爾蓋茨半夜敲門收錢。

在這300多種framework中,ESRI為什么選擇JSF?各個framework有各個framework的好處。JSF***的優(yōu)點就是:像 Swing 和 AWT 一樣,JSF 是一個可以提供一組標準的、可重用的 GUI 組件的開發(fā)框架。

選擇JSF的原因: 行為與表示的完全分離。

行為和表現(xiàn)不分離的一個典型例子是普通的JSP 技術,這一技術很好,因為很容易在 HTML(和類 HTML)頁面中混合 Java 代碼。這樣我們就可以使用強大的Java API的功能。當然,很明顯的壞處是行為表現(xiàn)黏合在一起。而且代碼不容易重用。這讓我想起剛使用JSP技術時,在文本編輯器下寫JSP頁面,讀寫數(shù)據(jù)庫,并且在同一個頁面上顯示出來的痛苦回憶。

Model1架構的出現(xiàn)使開發(fā)人員可以用javabean的方式進行開發(fā),舒服多了。當然,還有更好的。

這就不得不提到著名的MVC結(jié)構,(MVC) model-view-controller架構提供了一系列的設計模式,這些模式讓你可以輕松地應用于程序地開發(fā),特別是有界面程序的開發(fā)?,F(xiàn)在又有多少的程序是沒有界面的呢?
 
Model包裝了商業(yè)邏輯,也包含了數(shù)據(jù)持久的代碼,包括存取數(shù)據(jù)庫或者存取文件。Model***不要跟View有任何關系,它***不要知道誰將顯示結(jié)果,是一個Swing界面,還是JSF界面,還是普通的JSP界面。為了做到這一點,事先的規(guī)劃要花一些時間,但是相信我,這些花的時間帶來的價值將超過你的想象。如果設計得當,許多用ArcGIS Engine開發(fā)的代碼可以輕松在Server中使用,不需要修改任何代碼。.net也是一樣。

View只用來顯示顯示邏輯,不能有任何商務邏輯。controller是view和model的橋梁,它和model進行交互,并且把結(jié)果顯示在 Model中。顯示頁面的選擇也由controller進行選擇。我會在后面的講座中詳細解釋JSF中的Controller的實現(xiàn)。

Structs,Spring都實現(xiàn)了MVC的架構。但是它們都沒有像JSF這樣,提供一個事件驅(qū)動的組件對象模型。大家可以想一想,一個平常在HTML 中使用的標簽,     <input type="text" name="q">,在JSF框架中變成了一個組件,這個組件還可以有事件,而且可以對這個事件可以進行編程。這是多么得激動人心?。?GIS程序需要和用戶進行良好地交互,選擇一個事件驅(qū)動的framework,可以更加容易編程和實現(xiàn)。
這是ESRI選擇JSF的重要原因之一

【編輯推薦】

  1. 程序員必備Java API
  2. 對于JSF的一些思考
  3. 從JSF的切入點控制JSF
  4. 幾個JSF流行名詞的解釋
  5. 淺談JSF的UI組件
責任編輯:佚名 來源: JavaEye
相關推薦

2011-11-28 10:21:52

Nginx特性

2012-02-28 09:11:51

語言Lua

2009-12-21 17:11:38

Linux認證

2009-06-22 13:48:45

JSF是什么

2020-06-10 09:06:48

MongoDB架構高可用

2013-10-22 15:18:19

2023-02-26 01:25:23

Sanic框架工具

2016-08-19 16:27:52

數(shù)據(jù)庫Mongo DB開發(fā)

2017-02-27 15:19:04

2012-11-14 20:55:07

容錯服務器選型CIO

2009-06-11 11:22:40

JSFJSPJSF的UI組件

2023-03-21 08:02:36

Redis6.0IO多線程

2015-10-08 16:53:51

IaaSPaaS云應用

2015-02-11 10:22:25

對象存儲云共享S3存儲

2021-04-06 11:07:02

字節(jié)跳動組織架構

2016-09-27 21:25:08

Go語言Ken Thompso

2022-11-14 21:34:17

2011-06-16 15:29:22

2021-02-01 07:20:51

KafkaPulsar搜索

2014-03-24 10:49:20

諾基亞UI京東
點贊
收藏

51CTO技術棧公眾號