首頁 »
2007/06/19

利用SOA開發出可以接近跨平台的應用程式

foxpro + soa 利用 foxpro 所提供的 xml function 來完成本架構。
最近在論壇上討論熱烈的話題,受歡迎的程式語言,對!就是這一個討論。引起大家的注意,發文的朋友強調目前foxpro 已是黃昏商品,應該要趁機換工具再出發。基本上,這一個論述,並沒有不對的地方,但是,我倒是覺得有一些朋友所提到的論點也是不錯的,值點思考,如:

以下是引用101112的發言:
本人是認為有空學學"有低階功能並有高階方便" 的c語言最好,因為它的應用與供獻太廣了,不會被淘汰,是一種很有前途的語言,另一種未來滿有前途的語言是 java

以下是引用FoxMan的發言:
工具不是說轉就轉的,對於基礎不夠深厚、或已經習慣於 xbase 思考模式、凡事都 use、replace、append blank... 的老老程式師而言,工具轉換起碼需要半年以上的『專心』摸索。

以下是引用Syntech的發言:
一招半式走天下的時代應該結束十幾年了.


這些朋友的論點,基本上是OK的,都沒有錯。開發工具只是一時,而系統的架構才是永恆。如果今天你只能一個字一個字的敲,那未來如果三通之後,你一定會被
對岸的朋友給比下去,所以我在這要說的不是某一種開發工具的好,也不是要在foxpro 的存亡時刻,推薦大家換工具,每一種工具的推出,都有其時空背景。所以我還是要再說一次,『系統的架構才是永恆』。

今天要介紹給大家的,不是新東西,是之前就有人在提的SOA,全名為「服務導向架構」(service-oriented architecture)。












大部份的程式都是直接去存取資料庫,這樣的開發方式會較沒有彈性,如果未來要換前端的工具時,一定會遇到程式重寫的問題,但是如果你把商業流程取出,以 web service 的方式來呈現,這樣就可以以服務的方式來提供給不同的介面,而且未來就算是商業邏輯改變,你還是可以保有彈性,因為主要的資料存取都是在中間層,如此也算是真正的實現了三層式架構。
當然,使用這樣的架構,也不是沒有代價,就是你要比直接存取資料庫來說,要多付出一些時間成本。因為我們又多了一層的包裝,在實際的資料中測試,以20多萬資料, 『select * from omtran where imno = '5965000698886'』,如此是取回1200多筆資料,約要花二秒的時間,比起直接連接到資料庫取回資料,真的是慢了很多。
但是!我還是建議用這樣的方式來開發你的程式,因為你不會知道下一回你的開發工具是否會繼續存在這一個世界上。


foxpro 阿仁寫的文章←上一篇 │首頁│ 下一篇→foxpro 中 select into cursor 錯誤