漫談VFP 8.0 |
|
conundrum
尊榮會員 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
漫談VFP
http://www.esis.com.tw/newbuy.asp?cusmail=kib48660@tcts.seed.net.tw 文章標題
Visual FoxPro 漫談
作品來源
BOE 資料網路工作室
最後更新
2001年11月29日
文字數量
約16000字
作者姓名
陳純
譯者姓名
--
版權聲明
版權屬於原作者
相關下載
-- 細節描述
這篇文章可以說是 BOE 資料網路工作室的開山之作了。它的動工是從2000年國慶日開始的,寫寫停停,直到農曆春節才完成初稿……
我寫這篇文章的動機是:平靜的表達我的觀點。作為一名 Visual FoxPro 的程式師經常受到別人的質疑、甚至是批駁、挖苦,我不是一個擅長口舌爭鬥的人,更不敢冒犯“眾怒”。於是我就用鍵盤陸續敲擊一些文字,表達我對 Visual FoxPro 的認識,同時表達對各類問題的看法……
一篇自娛自樂、自我消遣的文章推出之後竟然大受歡迎。更有朋友傳言:這是抄來的,我先是憤怒,過後就是開心——這不表示本文的成功嗎,起碼人家感到它不可能出自我這種“鄉野村夫”之手。
使我感動的是,也是我這麼快就續寫本文的原因是:眾多網友的肯定。他們告訴我,看了這篇文章重新燃起了對Visual FoxPro 的信心!這讓我受寵若驚……
本文出版推出以來,Visual FoxPro 身上發生了不少事情,例如 7.0 版本的正式推出,以及 Visual FoxPro從 Visual Studio.net 中分理出來等,我感到有責任寫一些東西,與大家分享我對這些問題的看法。 Visual FoxPro是什麼
作為市場上最靈活和功能最強大的資料庫管理系統,Visual FoxPro擁有悠久而輝煌的發展歷史。它初創時是Fox Software公司的FoxBASE產品,“Fox”(這是國際編程界對她的稱呼)一種可靠、便捷和高效的程式師用的資料庫產品而名聞遐邇。 世界上沒有一種產品像 Visual FoxPro 那樣運行,她是獨一無二的!
許多人在享受了Visual FoxPro的服務後卻說不清她是什麼。就讓我們沿著她的發展軌跡瞭解瞭解她吧!這會使您能對她有更深刻的認識。
FoxPro隸屬於一種名為Xbase的DBMS類別。Xbase這個術語很常見,他表示諸如FoxPro、dBASEIII PLUS、dBASEIV、FoxBASE 以及ARAGO的語言。Xbase最初起源於一個大型機使用的DBMS,這個DBMS叫做JPLDIS(噴射推動實驗室資料庫管理和資訊檢索系統)。這個DBMS 是由美國人Jeb Long在1972年開發成功的。到目前為止全世界的開發者和程式師已經編寫了幾千萬行的Xbase代碼。
追溯到80年代末,FoxBASE是dBase的克隆系統。只要是dBASEIII能做的工作,FoxBASE就能做得更好更快。FoxBASE雖然擁有某些全新的特徵,但她並沒有真正重大的技術突破,只是為了運行得更快更好,而更重要的是它與dBASEIII相容。
FoxPro 1.0首先背離了與相容的原則。她開始在圖形用戶介面的設計和軟體發展方法中採用一些新的思路,從而使她領先於當時年前景已不妙的dBASEIV。
從2.0開始,FoxPro才真正形成了她自己的特色。當FoxPro 2.0推出時,它包含了若干項關鍵技術,給PC資料庫開發市場帶來了革命性的變化。這些技術是:
加入了Rushmore技術,她能從事許多難以想像的複雜工作。突然之間,帶有以百萬計數的記錄的表格在PC資料庫系統中不僅成為可能,而且可以非常容易地加以實現,無需轉用其他比較昂貴的技術;Rushmore最重要的優點在於它是完全自動化的,不用用戶花費精力和時間。因為有了Rushmore技術,再加上Fox天生的快速,即使在今天Visual FoxPro仍然是最快的桌面資料庫引擎。
SQL語句是FoxPro 2.0推出的另一項具有革命性意義的關鍵技術。Fox的開發人員首次用單一語句取代了整個程式過程,並且這種支援是內含於Fox資料引擎之中的。SQL語言曾經並且現在仍然是強大的資料語言。
FoxPro 2.0還推出了某種所見即所得的開發報表和螢幕的工具。
FoxPro 2.0確實具備了我們今天的Visual FoxPro擁有的一些出色的功能。GUI設計服務、SQL和極快的資料訪問,是她明顯的特徵。
FoxPro 2.5有for DOS、for Windows版,不過那個Windows版只是具有看上去像“Windows”的DOS應用程式的外觀。特別是那個DOS下的版本絕對是經典之作,觀察身邊是不是還有很多這樣的系統在運行著?當時有人這樣評價:這個軟體已經無法再快了,除非硬體升級……
直到1995年春天Visual FoxPro推出時,才出現了FoxPro的又一次重大改進。這時Microsoft已經收購了Fox Software公司。Visual FoxPro 3.0增加了一些人們企盼已久的特性,使PC資料庫開發界大為震驚。我們可以看到:Visual FoxPro與FoxPro是由很大差別的,不要再把Visual FoxPro成為FoxPro了。這些特性是:
資料庫容器(Database Container),也叫DBC,她增加了開發人員多年盼望的對存儲過程的支援、與表格相關聯的資料規則和一系列的附加資料功能。
遠端資料的無縫連接。談到連接遠端資料的處理,大家往往會想到RDO、ADO、BDE等處理資料引擎,那麼Visual FoxPro利用什麼實現遠端資料的無縫連接?Visual FoxPro本身的資料處理引擎,這和其他任何開發工具都是不同的!Visual FoxPro資料處理引擎通過ODBC驅動程式與遠端資料庫伺服器“通話”,遠端資料庫伺服器的ODBC驅動程式能將Visual FoxPro資料轉化成可由他們解釋的資料;相反,Visual FoxPro的ODBC驅動程式也能將遠端資料轉化成可由Visual FoxPro資料引擎處理的資料。可見,只要遠端資料庫有ODBC驅動程式,就可以用Visual FoxPro最為用戶端軟體。常見的SQL Server、Oracle、Access等資料庫都提供ODBC驅動程式。
在Visual FoxPro中實際操作遠端資料有兩種方法,遠端視圖和SPT技術。視圖(View)是可更新的SQL游標,增加了一整套的資料訪問方法,用於資料處理、GUI顯示和報表製作。它支援兩種類型的視圖,即本地視圖和遠端視圖。本地視圖是基於Visual FoxPro表格的視圖,遠端視圖是基於任何ODBC資料源的視圖。另外為了使Visual FoxPro成為完整的C/S開發環境,除視圖之外Visual FoxPro還支援SPT(SQL Pass Through)技術來完成視圖無法完成的工作,比如資料庫伺服器的用戶管理、存儲程序呼叫等。View與SPT技術的產生後,Visual FoxPro就成為訪問遠端資料的主要工具。從總體來看,創建整個企業範圍內的應用程式和使用存儲在遠端資料源中的資料,幾乎與使用Visual FoxPro表格本身一樣容易,處理在資料存取時增加了一些命令、函數,資料處理與普通的Visual FoxPro編程沒有任何區別。再次指出:Remote View與SPT技術是由Visual FoxPro資料處理引擎直接支援的,這與在VB、VC 中的外部資料訪問技術不同(他們使用元件,如:DAO、RDO、ADO……),所以用Visual FoxPro訪問遠端資料的效率很高,並能把遠端資料與本地資料完美的融合在一起,最大程度地提高開發效率和程式運行效率。
完全支援面向物件技術(OOP)。充分而健壯的實現了面向物件的處理方式大大改善了軟體發展條件。健壯的物件模型和創建你自己的類及子類的所用的功能,形成了一種全新的軟體發展手段。
Visual FoxPro 5.0是3.0的升級版本,它是一個32位元的系統。具備了使用和創建COM伺服器的功能,並開始支援在Internet上發佈Visual FoxPro。從這個版本開始,Visual FoxPro進入了Visual studio家族,並且Visual FoxPro將不再升級的謠言也是在這個是其出現。
在Visual FoxPro 6.0出現之前,微軟計畫推出DNA,就是今天的.NET,並承諾把Visual FoxPro發展成健壯的中間層工具,所以這以後Visual FoxPro的變化初級用戶就不太容易感覺了。
Visual FoxPro 6.0也沒有根本上的變化,不過有些變化還是相當明顯的。Access和Assign這兩種方法在控制放入你的物件中的資料方面很有創意。運用新的Component Gallery(元件庫)和Foundation Classes(基礎類),你能很容易地轉向創建面向物件的應用程式的工作。對COM支持的更好,在Server Pack 3後我們可以用Visual FoxPro創建多線程的COM元件。
Visual FoxPro的語言是由Xbase、SQL、OOP構成的。我不知道這樣分解是否合理,我只是從FoxPro的發展歷史得出以上結論的。其實以上三者在Visual FoxPro完美的融合在一起了,已經與Visual FoxPro血脈相連、不可分割,很多語句、函數很難區分它屬於哪個門類(也沒必要)。再者Xbase這一叫法也不十分妥當,這樣容易讓人誤會,好像Visual FoxPro的語言是沒有發展的“死語言”、是十幾年前的“老古董”,其實在FoxPro每一次升級中(現在已是Visual FoxPro 7)都會對這部分語言進行修訂、增補。我看還是這樣:Visual FoxPro語言就叫她:“Visual FoxPro語言”,她既不同於任何以往的Xbase(最多有歷史淵源),也不同於其他的編程語言。這就象Delphi那樣,是Object Pascal語言,不是以前的Pascal;VB就是VB,不是以前的 Basic。
從Fox進入視覺化的時代後,對COM技術的支援一直是Visual FoxPro在過去、現在、將來不斷改進的地方。面向物件程式設計(OOP)的最大的好處就在於代碼的重複使用。然而,OOP只是一種解決代碼重複使用的一種優秀的方案(solution)。單純利用OOP技術不僅要求所有物件都必須用一種語言完成,並且你還需要得到原程式碼嵌入應用程式(就像我們在Visual FoxPro開發使用Class那樣)。如果物件是有你或你的公司完成的這些可能不是什麼問題,但如果物件是由其他人或其他公司寫的這就是問題了……再者為了節省資源我們常希望把一物件放在遠端的電腦上供許多應用程式使用,怎樣簡單、安全完成這個任務呢?看來,單有OOP是不行的!於是微軟提出了Component Object Model(COM)技術,有了它我們就不需要把物件根源程式嵌入我們的應用程式中,就可以使用其他語言開發的物件,就可以分佈的使用物件了。
COM技術提供四種不同的特性,Visual FoxPro支援所有的COM 特性。
ActiveX documents 允許用戶在一個應用程式中編輯另一個應用程式的document。我們把Word文檔嵌入或鏈結到Visual FoxPro中,就可以不離開Visual FoxPro編輯Word文檔了。
ActiveX controls 為開發人員提供了增加的系統功能的方法,典型的應用就是各類ActiveX控制項的使用來加強用戶介面。這裏要說明的是Visual FoxPro不支持(7.0也不支持)“集裝箱式的”ActiveX 控制項,比如Cool bar控制項。
Automation 允許用戶在一個應用程式中操縱另外一個應用程式或元件,典型的應用就是Visual FoxPro 與Office 的OLE-Automation應用。
Remote Automation 或者稱 Distributed COM (DCOM)與Automation技術差不多,只是它支援組件的分佈,這就是微軟的分散式應用戰略。
Visual FoxPro 不支援Active controls(ActiveX)的開發,但支援server components的開發,也就是在Automation、Remote Automation中使用的元件都可以用Visual FoxPro來開發。Visual FoxPro的這種能力是從5.0開始具有的,到了6.0的SP 3已經可以開發出多線程的元件了,這些在上文已經有過論述。Visual FoxPro未來的版本一定會對Automation,特別是Remote Automation有更好的支持,無論是開發server components,還是由Visual FoxPro充當客戶程式。
綜上所述,Visual FoxPro是創建關鍵任務的、企業範圍的、面向物件的單層次、雙層次、多層次應用程式的重要開發工具,這些應用程式可以在本地或全球範圍內進行配置。 Visual FoxPro 已經過時了嗎
恕我直言,這樣的問題我真的聽膩了。這個問題我聽了好幾年了。從謠言出現到今天Visual FoxPro的版本已經生了兩次變化,就是Visual FoxPro 6.0 與馬上就要推出的Visual FoxPro 7.0(去年低本人已經得到了Visual FoxPro 7.0的Beta 1)。我不能保證是否會有Visual FoxPro 9.0(這就像我不能保證微軟是否在那時還存在一樣),但我可以肯定Visual FoxPro 8.0一定會在一兩年後面世。可以這樣認為,只要不出意外情況(比如微軟倒閉、業界發生了重大的變革等),Fox就會不斷地發展!
在國外,一個程式師、一家公司把他們使用的開發工具視作一項投資,作為Visual FoxPro的開發廠商微軟公司就必須保護客戶的投資權益,這是很基本的商業原則,微軟絕對不敢隨意淘汰有著50萬用戶的Fox,除非永遠不想賺這50萬用戶的錢了。據我所知Visual J 已經被淘汰了,可能支持他的用戶群過於單薄已是個重要原因吧!
為什麼會有Visual FoxPro 要淘汰的傳聞呢,我不是很清楚。但這兩年微軟對Visual FoxPro的不宣傳態度卻是為這股謠言起到了推波助瀾的作用。另外Visual FoxPro 確實是一個容易引起誤會的產品,初級用戶很容易對她產生“不怎麼樣的”評判,於是加上那謠言就產生了“Visual FoxPro 就真的要淘汰了”的幻覺了。
為什麼說Visual FoxPro 是容易引起誤會的產品呢?我總結以下幾點原因:
產品定位導致Visual FoxPro變化不易為人們感覺。微軟要把Visual FoxPro作為三層構架(或是多層構架,叫.Net也可以)的中間層開發工具。
什麼是三層構架呢?第一層是用戶介面:它包含了用戶介面,讓使用者輸入,輸出,查詢等工作;第三層是資料層:它就是用來放資料的地方,一般是指後端資料庫,主要有包括 Oracle、SQL Server 等,它主要是提供一個很大的地方,來有規則的存放資料;第二層是商務邏輯層(中間層):有人要說了:存取資料,直接從第一層跳到第二層可不可以?當然可以,沒有人規定不能走後門,而且從後門直接抓資料,既快又好,那為什麼搞出個第二層呢?商務規則是經常變化的,比如上班從8 點改為10 點,那電腦怎那麼知道老闆因為不景氣少讓大家上二個小時班呢?它一定無法知道,你必須告訴它,這時問題就來了,如果你有很多部電腦,例如:100 台,你就得一部部換新程式。如果這是一個掛在Internet上的網路程式,難道總讓用戶download新程式不成?於是就提出了中間層的概念——把處理相同業務程式歸攏在一起,一切工作由它完成(由它連接著後臺資料庫與前端用戶介面,執行商務邏輯),這樣老闆再有什麼新花樣就不必擔心了——改一個程式就行了。
中間層是沒有圖形介面設計的代碼編寫,並且是OOP方式的代碼編寫,不僅要熟悉後臺資料庫的特性,還要考慮前臺介面工具的特性,最重要的是商務邏輯的構架,同時還要求懂得IIS、MTS(COM )、NT的安全設置等複雜枯燥的東西。如果您仔細研究一下Visual FoxPro在近年來的重要改進,微軟確實向著這個目標花了很大的力氣,成效是令人滿意的。但由於這種變化屬於深層次的升級,不易被人感覺,往往就導致人們誤以為:Visual FoxPro不再發展了。
不要以為Visual FoxPro是“低端產品",無論從資料庫(DBF Base)品質還是開發環境評價Visual FoxPro,他都是一個“高端工具”。
許多人認為Visual FoxPro只能用來開發單用戶系統或是檔伺服器構架的小型網路系統——這是謬誤——這種無知的言論在許多講C/S、三層構架的書中都有(特別是一些VB、PB、Delphi的資料庫編程書)。我可以很負責任的告訴大家完全可以用Visual FoxPro開發C/S結構的系統。這裏說的C/S構架絕對是正宗的,不是用什麼F/S構架在糊弄大家。在C/S構架中我們常常選擇Visual FoxPro作為用戶端開發工具,以Oracle、SQL Server等網路資料庫壓在後臺,使用Visual FoxPro內置的Remote View和SPT技術,這樣就可以完美地解決問題。這裏不能詳細展開,只特別介紹Visual FoxPro的本地引擎在開發中的作用。Visual FoxPro的本地引擎特別強大(上文我們說過處理百萬條記錄不費吹灰之力),我們在設計系統時可以十分簡單的將遠端資料與本地資料結合,很簡單、很有效地控制網路資料流程量、提高系統工作效率(我看過不少VB、Delphi、PB的書,他們很少在怎樣控制網路資料流程量、提高系統工作效率論述,不知是不屑一顧,還是其他什麼原因)。
我認為Visual FoxPro的本地引擎在C/S構架下起碼有三項偉大的用途。其一:非經常變動資料的本地存。我國的郵遞區號與地區的關係是相對穩定的資料,而且資料量也不是太小,我想總有上千個記錄(我沒仔細考察過具體情況),我們把這些資訊存儲在用戶端的電腦中,就可以在使用郵遞區號及其相關資訊時從本地得到資料,這樣能使高系統效率同時節省網路資源(這是C/S開發的重要原則),只在郵遞區號發生變化時在伺服器上統一更新,下載更新客戶機上的資料。如果用別的軟體實現同樣的功能,絕對比Visual FoxPro麻煩而且效果絕對不及Visual FoxPro,這因為Visual FoxPro的資料引擎直接支援遠端資料讀取,能很好的融合本地資料與遠端資料;其二:離線數據包。單位裏總有人出差,在千萬裏路之外能不能拿著筆記本為客戶發訂單、與客戶簽合同,就像在自己的辦公室一樣?當他回到公司時只要把筆記本連到伺服器中,發送更新就行了。Visual FoxPro的離線視圖是經濟且高效安全的方案(當然您可以使用遠端撥入或建一個Web網站,這些Visual FoxPro可能幹)。其實離線資料包還有一個重要的功能:當下載的資料是大量的(除非萬不得已請不要這樣設計系統),這種情況下使用離線視圖可以資料集自動轉化為物理表,充分利用Visual FoxPro的高速與靈活,完成後連線更新後端資料源——一切都很簡單。我認為:離線視圖絕對是Visual FoxPro在C/S系統中的一個賣點,雖然ADO也支援類似的東西,但肯定不及Visual FoxPro有效率;其三:資料驅動。您是否知道,Visual FoxPro中絕大多數檔格式實際上都是DBF檔,如DBC、SCX、FRX等,他們都可以由Visual FoxPro的本地引擎驅動完成複雜的任務。在設計C/S結構時如果要存儲用戶設置、自定義檔格式,用Visual FoxPro的本地引擎幫忙絕對比其他軟體簡單,因為你用的是換湯不換藥的方法,但它簡單、有效率。
在三層構架中,Visual FoxPro可以從當任意一層的任務,但本人以為大中型系統的資料庫部分應以網路資料庫為主。用戶端介面用Visual FoxPro也是可以的,但一般限於企業內部,在Internet上我們通常使用IE作為客戶介面。在三層構架中Visual FoxPro最勝任中間層的開發,它簡單(開發難度與普通的Visual FoxPro項目相差不大)、快速的字串生成、支援COM技術、它支援(MTS)COM 技術、它支援XML(Visual FoxPro 7.0將提供4個或更多與XML有關的函數)、它具有強大本地資料引擎、靈活的資料處理方式、它支援多線程的服務元件的開發。
可能有人要問:用ASP 腳本語言一樣可以開發Web系統,何必加個中間層。的確,目前在市面上與多討論Web的書都直接使用腳本語言來開發整個系統,這是十分不正確的做法,甚至有寫書還說硬體越來越快,因此使用腳本語言來開發整個系統並沒有什麼關係。會說出這樣話的作者通常都是沒有實際開發Web應用經驗的人。腳本語言,如VBScript是一種解釋性語言,運行效率很低,他們只合適作為膠水程式。開發Web系統正統的做法是:把應用邏輯編寫成COM、DCOM物件,或是MTS/COM 物件然後用少量的腳本語言來驅動/使用這些物件。這樣系統開發時工作量會大一些,但它符合開發任何資料庫應用程式的最基本的原則:分離應用邏輯與用戶介面。這樣系統就會變的容易維護了——你可以經常變換那些膠水程式來改變Web頁面,應用邏輯變換時你又可以改變某一個邏輯物件,而不用為雜亂且關係複雜的代碼發愁。再者,由於Visual FoxPro是高效、靈活的資料處理語言,任何商業邏輯都可以用它來代碼化,並且您可以獲得幾十倍甚至上百倍於ASP 腳本語言的運行效率,以及更為強健的執行效果。
解決了上面一個問題,又有人會提出:我可以用VB、VC 建立物件元件時,為何我要用Visual FoxPro 來建立相同的組件? 微軟對這一問題有專門的評論,大意為:快、重複使用性、跨語言重複使用性。“快”是指用Visual FoxPro開發的元件擷取、處理資料都極為迅速,並且Visual FoxPro能夠非常迅速的建立字串。到底有多快,我想資料處理、存取的速度大家平時都領教過了,字串生成速度我這裏有個資料不妨一看,這是臺灣的一位高手做的試驗——將1M的資料寫入文本中,結果VC 6.0程式用了3.5秒、VB 6.0程式用了11秒、Java 1.1.5用了24秒、Visual FoxPro 6.0用了7秒;“重複使用性”是指Visual FoxPro具備OOP的功能;“跨語言重複使用性”是指Visual FoxPro編寫的物件編譯以後成為COM、COM 物件元件,這樣就可以在其他語言中使用它了。 Visual FoxPro 的語言看上去蠻難的。
人們在讚揚 Visual FoxPro 始終是褒揚他的易學易用,我不同意這種觀點(我不知道他們站在什麼立場上說話)。我看問題的角度是“成為一名還過得去的 Visual FoxPro 程式師”,我的結論是Visual FoxPro 作為一個開發工具並不是好學的。這不是說Visual FoxPro的語法、概念像C那麼繁複,而是指:即使是簡單的應用,也要掌握很多Visual FoxPro的概念、語法、函數,可能還要較深入瞭解OOP——往往讓人摸不到深淺。比如,拿資料庫系統最重要的功能——查詢來講,Visual FoxPro就“花樣繁多”。我曾統計過,不算“List、Browse"等互動式命令,Visual FoxPro起碼支援4條命令(Find,Seek,Locate,Select-SQL)、3個函數(Lookup(),Seek(),Indexseek()),(當然其中有的已經淘汰)這些命令的關鍵字、函數的參數眾多,有的要求索引, 有的可以用索引但要求優化索引……而這在VB、Delphi中絕對就只是兩三個方法的事情。從上面的例子中如果您只看到了Visual FoxPro的繁雜,那麼您就完全錯了:在VB、Delphi實現查詢功能的原理與Visual FoxPro應是一樣的,但他們封裝了許多環節,而Visual FoxPro就把許多東西更低階(當然不如VC 那麼低層次,但是已經比使用物件的語言難多了)的展示給我們,所以Visual FoxPro的開發者往往比使用其他的開發工具開發者更會思考、更懂得的資料庫開發的真諦,因為工具逼迫他們朝這個方向努力……
用Visual FoxPro有助於提高程式師對資料庫概念的理解。許多在Visual FoxPro程式師中不是問題的問題往往成為那些使用物件處理資料的程式師的噩夢。比如在Visual FoxPro中資料緩衝、事務處理都是重要的概念(事實上要幹活就必須瞭解這些東西),在其他開發環境中一味強調方便快速往往忽視程式師的基本概念培養,編出的東西要麼效率不高、要麼老出問題。讀書人都懂得:基本概念、基本理論是命根子,這就是Visual FoxPro帶給我們的好處。
有趣的是Visual FoxPro繁、難也就到這個程度了 ,他的學習難度曲線是所有語言中最平穩的——不像在有些語言中,基礎開發十分容易,一旦深入卻難度很高。在Visual FoxPro中初級應用、中級應用、高級應用的難度差異很小——就是那些似曾相識的語句、易於理解的函數。Visual FoxPro的這種高級應用不太難,初級應用不十分容易的特性,對初入門者來講是無法體會其中的妙處的,這就造成了Visual FoxPro的不太友好形象;
同時,Visual FoxPro的難度卻帶來了很多的好處(前文我已談了很多),Visual FoxPro比其他語言在資料處理上更快速、更靈活,資料處理方式更多、更完備。設想一下用Visual FoxPro開發資料物件時,我們可以使用豐富多彩的語句、函數,實現十分複雜、變化多端的功能,用其他語言開發資料物件,它們的功能只能是建立在已有的資料物件的功能之上(這叫繼承),變化就少了,功能就弱了。如果要實現Visual FoxPro的Xbase SQL 那樣靈活、強大的功能恐怕要使用底層的API了——這太可怕了!
OOP不僅是指“面向物件”的開發環境,更是一種開發思想、開發技術,Visual FoxPro 在後者上做得更好。
我們講過Visual FoxPro完全支持OOP的開發,但有趣的是在資料處理方面,微軟實際上沒有提供什麼現成的物件(FFC是Visual FoxPro 6.0才有的,且封裝性、適應性都不盡如人意),這一點我不知是Visual FoxPro的福氣還是禍害。說“福氣”這將逼迫程式師掌握這門並不太簡單的技術(可能用“思想方法”更恰當),而不是簡單地使用物件。OOP對於中間層的開發來講是很重要的,因為COM元件必須是建立在OOP思想上的,要開發這種元件就必須掌握OOP技術;講“禍害”這使Visual FoxPro變得不易於學習和使用了(就我個人而言,真正體會到“用Visual FoxPro應會編制資料處理物件”這一問題也是在使用了Visual FoxPro好長時間之後的事情了)。事實上現在很多誹謗攻擊Visual FoxPro的人都沒有深刻的認識這一問題——他們只感到Visual FoxPro用起來不及Delphi、PB、VB容易,但他們從不想該怎樣開發資料處理物件,到編寫COM元件時就要他們的命了。那些“精英們”大多不懂OOP,他們只懂“點”操作符號——仿佛對象的使用就是OOP,他們有什麼資格來批評我們呢? Visual FoxPro的介面能力真的很差嗎?
我認為最為資料庫系統的開發工具微軟為我們提供的那些內置控制項加上十幾個附送的ActiveX控制項已經夠用了。
我們討論Visual FoxPro控制項應從兩方面入手,第一就是介面美觀問題,再就是資料處理、分析是否方便。很多人很在意的前一個問題,我倒是不以為然——控制項不多特別是美化介面的控制項不多並不代表Visual FoxPro就開發不出賞心悅目的軟體,我的感受是軟體介面的專業化程度、高級別的審美、整體的效果要比個別的介面特效重要千萬倍,實際效果可要好上千萬倍。看看國外用Visual FoxPro編制的程式您就會明白這個道理了;我對Visual FoxPro的不滿在於資料處理、分析控制項不全,特別是缺少了一批資料分析控制項。比如沒有可以與資料捆綁的圖表控制項、沒有可以列示捆綁交叉表的表格控制項、沒有可以捆綁資料的樞紐分析表格控制項……在這個問題上Visual FoxPro確實應該向Delphi、PB等軟體學習,這是我們對未來的Visual FoxPro的期望! Visual FoxPro與OLE DB、ADO
ADO是Windows環境下主流的資料存取的解決方案,那些以物件運算元據的語言基本上都使用ADO實現資料存取,如:VC 、VB、Delphi。在Visual FoxPro的開發環境中好像看不到ADO的影子,是不是Visual FoxPro不支持ADO呢?ADO其實是一組COM物件,Visual FoxPro支持COM,當然支持ADO。
我認為:Visual FoxPro對ADO的支持只是停留在較低的水平。這並不是說Visual FoxPro限制了什麼ADO的功能(所有功能都能用),而是指:用起來不方便,不像在VB、Delphi中方便。這種不方便主要體現在ADO的Recordset無法與Visual FoxPro的內置控制項捆綁。其原因是:Visual FoxPro 不認識ADO的Recordset,只能將記錄逐條讀取,而不是一下子認得整個Recordset。這樣資料就不能被捆綁了,同時也不能對ADO直接使用Visual FoxPro強大的資料處理功能(ADO是用來存取資料而處理資料還要靠客戶軟體)。
就象Visual FoxPro使用ODBC連接遠端資料源那樣,ADO通過OLE-DB與資料提供者對話。 (By the way: Visual FoxPro 7是OLE-DB提供者,這樣就可以 通過正宗的OLE-DB驅動程式在其他開發工具中使用ADO存取Visual FoxPro數據了 。) ADO能為Visual FoxPro帶來什麼? 首先要注意的是:ADO與Visual FoxPro的資料引擎是毫無關係的系統,從某種程度上講ADO的出現為Visual FoxPro提供了一種全新的遠端資料處理方式。
ADO是多層應用程式中資料集合傳遞的最好解決方案。如果我們用Visual FoxPro開發了一個中間層系統,用VB開發了用戶介面,當中間層要傳遞一個cursor到VB的用戶端就不可以使用Visual FoxPro的cursor或DBF,因為VB不認得他們。使用ADO的Recordset就可以解決問題,因為大家都認得他;Visual FoxPro 7只是XML後可能會彌補Visual FoxPro本地引擎在應用程式傳遞資料集的不足。
ADO可以存取非關係型數據庫。ADO是微軟的Universal Data Access構架的主將,它可以存取Excel等非關聯式資料資料庫的資料。通過ODBC存取遠端資料的Visual FoxPro就無此能力了。但是我使用了ADO存取Excel後很失望,因為連接必須是獨佔的,所以這種功能帶給我們的幫助只是有限的!
ADO可以彌補Visual FoxPro在遠端資料存取時的不足之處。譬如Visual FoxPro不認得SQL Server中nText、nVarchar、nChar等資料類型,但ADO可以。 在Visual FoxPro使用ADO存在如下缺點:
Visual FoxPro只能通過COM的方式識別ADO的Recordset,不能像表格那樣讀寫它,這樣就出現了兩個問題:Recordset無法與Visual FoxPro的內置控制項捆綁;無法直接使用Visual FoxPro強大的資料處理功能(ADO是用來存取資料而處理資料還要靠客戶軟體)。
Visual FoxPro中使用代碼實現ADO的全部功能,但代碼量大、書寫麻煩。
對待以上不足Visual FoxPro開發小組在Visual FoxPro 6推出不久後就發佈了一個叫VFPCOM.DLL的元件,可以用它部分解決ADO的Recordset與Visual FoxPro的cursor的轉換和ADO事件的綁定 ,Visual FoxPro 更是內置支持 COM 事件綁定。在本文的第一版中,筆者曾有這樣的希望:“Visual FoxPro 更具效率的支援ADO”。現在我的看法有了一些改變,我認為在 Visual FoxPro 處理資料,無論是本地、還是遠端資料,無論是什麼構架的系統,最佳的解決方案認識內置的資料引擎,而不是現在流行的ADO,現在 Visual FoxPro對ADO的支持程度已經足夠了! Visual FoxPro的資料引擎與ADO相比有什麼優勢呢?
Visual FoxPro資料引擎系統資源耗用小,ADO畢竟是COM組件要花用更多的資源。
作為系統共用元件,使用ADO可能會在不同應用系統中產生ADO的版本問題,這就像我們常遇見的ActiveX的控制項版本問題。我的英文Windows 2000由於安裝了Visual Studio.net Bata 1,Delphi 5的ADO Express 就不正常工作了。但實踐證明:Visual FoxPro 3開發的程式與Visual FoxPro 6開發的程式同時安裝也不會產生版本問題。
ADO只是資料存取元件,無法它沒有資料處理功能,要處理資料必須使用客戶應用程式,如VB、Delphi。Visual FoxPro資料引擎同時支援資料存取、資料處理,我已多次強調Visual FoxPro在這兩方面的偉大功能;其四:ADO沒有本地資料庫作為強大的支援,有需要將遠端資料暫時存放在物理檔中ADO絕對不及Visual FoxPro。Visual FoxPro的資料庫是桌面資料庫中最好的,遠端資料暫存其中不僅方便,而且伸縮性強。
開發單機程式時,絕對不要使用ADO,這樣做既沒開發效率也沒運行效率;開發C/S系統時我們應選用Visual FoxPro的SPT和Remote View,它們完全可以很完美的解決問題(已經有很多很多成功經驗),不需要捨近求遠地使用ADO;在中間層開發時,可以考慮使用ADO,我們為在此種情況下使用ADO的開發效率是蠻高的,因為這時所有的代碼都要我們用一句、一句的寫出來(在其他開發環境也一樣),Visual FoxPro的語法簡單再加上Visual FoxPro 7的極為強大Intellisense功能(真的很快並且可以由用戶自定義),也許我們還會占些便宜的。
雖然ADO與Visual FoxPro是完全無關的系統,但他們卻有共同的母親——FoxPro 開發小組,原來ADO的游標集(Cursor Engine)是他們開發的。如果你同時瞭解ADO與Visual FoxPro,你會發現ADO的很多思路與Visual FoxPro一模一樣……我總是拿這個典故說服那些不相信Visual FoxPro的人:最流行的ADO的游標集是FoxPro 開發小組寫的,有什麼理由懷疑Visual FoxPro的資料引擎——它是世界上最棒的!
Visual FoxPro是一種歷史悠久的產品,很多用戶是從FoxBASE到FoxPro到Visual FoxPro,這樣一步一步過來的。歷史的積澱多了,歷史的包袱也重了——許多程式師往往抓住老產品而忘了深入鑽研新產品的新特性,這是一種悲哀。
我遇到許多所謂會使用Visual FoxPro的人,還口口聲聲叫“Query Design”為“RQBE”,朋友那可是DOS時代的概念了。
很多人不仔細鑽研Visual FoxPro,只是從其他工具中看到某項功能,憑空想像就說:Visual FoxPro不支持的。Delphi中特別指出它有異構資料關聯能力,比如:父表是SQL Server資料,子表是Access資料,要求建立關聯,實現“一多關係”。在Delphi要求使用特別的SQL語法來實現該功能。Visual FoxPro的文檔裏好像沒特別說明這項功能,是不是沒有呢?如果你深刻理解Visual FoxPro的遠端視圖及Cursor的用法,答案很容易得到。事實上,用Visual FoxPro能更直接、簡單實現的實現:建兩條“連接”、兩個“遠端視圖”,對子表加索引,Set relation to,set skip to……
反過來Visual FoxPro能實現的功能,Delphi的BDE(Delphi的本地引擎)卻不能:Visual FoxPro的遠端視圖能夠將多個表關聯後的結果集設定為“可更新”,並在資料變動後自動產生Update子句分別更新後臺資料。例如:對SQL Server中Pubs資料庫建立連接,新建遠端視圖為:
CREATE SQL VIEW TEST VIEW REMOTE CONNECTION CONNECTION1 AS SELECT Publishers.pub_id, Publishers.pub_name, Titles.title_id, Titles.title, Titles.price, Authors.au_id, Authors.au_lname, Authors.au_fname, Authors.phone, Authors.address FROM dbo.publishers Publishers, dbo.titles Titles, dbo.titleauthor Titleauthor, dbo.authors Authors WHERE Titles.pub_id = Publishers.pub_id AND Titleauthor.title_id = Titles.title_id AND Authors.au_id = Titleauthor.au_id ORDER BY Publishers.pub_id
這是四個表間的關係,算是比較複雜的SQL語句。別擔心,這一切在Visual FoxPro只不過是用滑鼠在“視圖設計器”點擊幾次就行了。在您對視圖進行“添加、刪除、修改”並發送更新時, Visual FoxPro會進行分析地智慧,產生Update字句分別將變化更新到後端若干個表中。而Delphi的BDE只能對Xbase資料源有此的作用,對其他的資料源都無此功能。Visual FoxPro可以支援所有的ODBC資料源(只要資料源本身支援),如:Oracle、SQL Server,Access……當然在Delphi 5.X中可以通過ADO彌補此缺陷,但Visual FoxPro同樣支持ADO。Visual FoxPro的程式師要有這樣的信心:Visual FoxPro為我們提供了最好的本地引擎!
古人雲:欲善其事、必先利其器。所以我們不要指責工具怎麼、怎麼,多看看自己用好了沒有! Visual FoxPro 與其他開發工具的比較?
這其實是一個很傻的話題,選擇何種開發工具完全是由於程式師的面臨的任務以及個人的喜好決定的。只要您選用的工具能夠勝任您從事的專案,只要您對開發工具有足夠的造詣以應付多變、複雜的工作,只要這個工具還在繼續升級,您就沒有理由更換工具,更沒有必要摻和到這種無聊的討論中去。
任何工具都有其優勢與弱勢,產品定位更是各不不同,每個程式師都覺得自己的選擇是最好的,別人都是愚蠢的。以下的討論只是無聊的筆者發出的無聊的言論,您大可掠過不看。
談論Visual FoxPro,我們必須注意這樣一個問題:Visual FoxPro 是幹什麼用的。毋庸置疑,它是一種資料庫系統的開發工具。 我個人認為,到目前為止在Microsoft公司的所有開發工具中,Visual FoxPro是開發資料庫應用程式的最佳產品。我們必須承認這樣的事實:從一開始,Visual FoxPro 就是為處理資料而設計的,她運行速度快、功能強大、而且非常靈活。
有很多人老喜歡拿Access與Visual FoxPro 比較,對此我總不屑一顧,且讓我們看看微軟的評論吧!微軟原話如下:“Microsoft Access 是 Office 中的資料庫,也是微軟所銷售的軟體中,使用最廣且最容易學習的資料庫工具。如果你是資料庫的新手,如果你要使用Microsoft Office 來建立應用程式,或者你想要一個相當便利的互動式產品,那麼就選擇Access。Visual FoxPro 是用來建立關係型數據庫應用程式的一種功能強大的RAD工具。如果你是一位元以建立關係型數據庫應用程式維生的資料庫開發人員,而且你希望速度與功能都達到極限,那麼請選擇Visual FoxPro。”(這段話在今年Visual FoxPro 退出Visual Studio後,微軟又重複了一次,強調Visual FoxPro是專業開發人員的開發工具,而不是Access 那樣的普通用戶的辦公平臺。)
有多人拿Visual FoxPro與VB、Delphi甚至是VC 做比較,這是很幼稚的,後面三者是編程語言,而Visual FoxPro是資料庫 系統的開發工具,天生分工就不同。我聽說這樣的典故:Foxmail最初是用Visual FoxPro編寫的,後來改用Delphi編寫。如果這是事實就很能說明問題,Visual FoxPro是資料庫開發工具以它編寫郵件客戶軟體有點勉為其難,即使成功了效率也不會很高,但如果是一個用Visual FoxPro寫的管理系統中要求有郵件功能,Visual FoxPro則完全 可以辦得很好。Visual FoxPro作為資料庫開發工具,它為我們提供了十分強健、高效的資料引擎,它容量大、速度快、靈活、健壯,所以用Visual FoxPro開發單用戶資料庫絕對比其他所有軟體來的高效——曾經有人嘲笑VB處理5、6萬條記錄就趴下,但我們的Visual FoxPro處理百萬條記錄也不覺吃力,所以Visual FoxPro的開發人員無論在什麼時候都要注意發揮Visual FoxPro的資料引擎的威力,這樣才能立於不敗之地。VC 很厲害,但真正地用好它不容易, 開發效率也不高。如果使用VC 開發應用程式還象VB那樣只會使用控制項,那麼還是別使用VC 了(這叫掛羊頭賣狗肉),Visual FoxPro、Delphi、VB會更簡單、更具生產力! 再者Visual FoxPro本身是VC 編寫的,是歷代最優秀的程式師智慧的結晶,為什麼有了VC 還要花精力編寫Visual FoxPro,這本身就 很說明問題。
又有人把Power Builder請出來與Visual FoxPro作比較,大家都是資料庫應用程式開發環境,好像PB比Visual FoxPro厲害。 就資料庫系統的開發而言,Visial FoxPro 可以開發單用戶系統、網路環境下的檔伺服器系統、客戶機\伺服器系統、Web Server、資料處理的COM元件,可以說出了Web介面無法開發之外,凡是與資料庫系統有關的開發領域Visual FoxPro都很好的支援。PB的起點在客戶機\伺服器系統,也能很漂亮的完成工作,此中取捨全憑個人喜好;另外,PB的成本很高。據我所知它的的價格十分昂貴(有人戲稱說PB是世界五百強才用的起的產品),而Visual FoxPro才賣幾千人民幣。當然,這個觀點您可以不接受——在中國軟體是沒有價值的,每張只賣6元人民幣;還有PB的開發方式與眾不同,用了他以後再改學別的會比較困難;最後退一萬步講,您要變換編程工具,我也不贊成改用PB,因為PB再好也是一個資料庫開發工具,從這上面講與Visual FoxPro是一個級別的東西,您想變化工具一定有更多的需求,我看用VC (C#)或Delphi會是更佳的選擇。
又有人把網路資料庫如Oracle、SQL Server與Visual FoxPro相比較,說了Visual FoxPro一大通的壞話,這種人其實很傻,你大可對他嗤之以鼻。大型資料庫與桌面資料庫在系統開發中的作用是不一樣,兩者是相輔相成的。我們應該把注意力放在“怎樣發揮兩者資料庫引擎最高效能的問題上”,而不是去爭論孰優孰劣。這種爭論就好比是評論是男人漂亮、還是女人美麗那樣——毫無意義。 Visual FoxPro 從Visual Studio 中分離出來了
2001年2月26日,微軟宣佈將Visual FoxPro 7從Visual Studio 中分離出來,這是一個這樣的消息,是好還是壞?關於這個問題當時我們工作室就發表了專門的評論,這裏就不再哆嗦了。總之:我們贊成! Visual FoxPro 7 之我見
Visual FoxPro 7 已經在2001年5月中旬正式發佈了,6月份在美國上市。他的 Bata 版不少網友都用過,於是產生了種種評判。在美國人們認為,Visual FoxPro 7是繼 Visual FoxPro 3以後 Fox 發展史上最具有“革命意義”的版本,評價是很高的;而在國內,不少嘗鮮者感歎:這是微軟不好意思說SP的產品,簡直就是Visual FoxPro 6 SP6……兩種評價相差這麼大,誰是誰非呢?
筆者在去年底就得到了Bata 1版,初次見面確有失望之處——介面改觀太小了——除了幾個視窗可以停放、功能表上多了幾個圖示之外,幾乎與Visual FoxPro 6沒有區別,最無法容忍的是視覺化控制項一個也沒有增加……
停了幾天,我開始讀著幫助瞭解Visual FoxPro 7的新特性,慢慢的我有了這樣的感受:有了Visual FoxPro 7我決不用Visual FoxPro 6,這也是我對Visual FoxPro 7的評判,雖然他不完美,有的地方不盡如人意,我還是覺得給他打個80分總是應該的。接下來筆者就談談試用的感受:
太好太好的開發環境。以前我很羡慕VB的程式師——不用記憶太多的命令、函數,一切系統為你導航;碰到COM元件可以很方便的流覽他的屬性、方法、事件……現在Visual FoxPro給了我們一個屬於自己的高效率開發環境,並且他支持用戶的自定義控制。如果說絕大多數Visual FoxPro程式師是在大量代碼的書寫中鍛煉出來的,不怕記憶、書寫大量程式,但你見到COM元件、ActiveX的編程一定很頭疼,因為您不熟悉他;看到COM組建中大量的常量您可能更頭疼,要我到哪里找到他們表示的數值啊!現在一切都好了……如果要全面的談論開發環境的增強可能要花費很多的筆墨,其實他的好處您試試就知道了!
60個左右的資料庫事件,這是對Visual FoxPro 近年來最大的一次對資料庫引擎的改善。這些事件對管理整個資料庫有很重大的意義,我們可以把維護資料庫的代碼寫在事件中,只要有相應的操作就會觸發,這樣就網羅了所有的相關動作,而不是像以前那樣寫在應用程式中,不啟動程式一切白搭!資料庫的事件應用面可能很廣,發揮它的作用還得靠大家的智慧!
COM元件開發的感覺特爽,不僅是開發效率的提高,更是COM元件運行的效果明顯改善。Visual FoxPro 是從5.0開始支援COM元件的開發,6.0版本開始走向成熟,6.0的SP3以後支援多線程元件的開發,7.0版本中開發COM元件明顯比6.0版本運行效果好,可以說是成熟、完美的技術了。難怪微軟在宣傳Visual FoxPro 7時指出:Visual FoxPro的COM元件可以被用作工業現場的無介面資料處理,可見其穩定性。
新特性還有不少,到時您就自己看吧!
軟體的升級對我們用戶是否有好處,主要是看他為您解決了多少難題、減輕了多少痛苦。Visual FoxPro 7對於高級用戶可能更a
|
conundrum
尊榮會員 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
http://vfp.sunyear.com.tw/viewtopic.php?t=80 google http://www.google.com.tw/ VFP相關網站列表 1.繁體 VFP 愛用者社區 http://vfp.sunyear.com.tw 紅狐論壇 http://fox.hanyu.com.tw 阿貴 http://www.foxing.idv.tw/ 阿貴 ftp://www.foxing.idv.tw/ 程式設計俱樂部 http://programmer.eforum2000.net/ 常誠電腦 http://www.esis.com.tw/newbuy.asp?cusmail=kib48660@tcts.seed.net.tw VFP使用者俱樂部 http://211.21.66.74/ ellery個人筆記 http://home.kimo.com.tw/h94u04bp6/ 飛狐俱樂部 http://vfp.gtic.com.tw 韋伯軟體工作室 http://www.web888.idv.tw/ VFPWiki--一本關於VFP的電子書,需要各位狐友一起來完成 http://wiki.sunyear.com.tw/ MSDN http://www.microsoft.com/taiwan/msdn/ 微軟知識庫搜索 http://support.microsoft.com/default.aspx?scid=fh;ZH-TW;KBHOWTO 2.簡體 VFP愛好者天堂 http://www.myf1.net/bbs/ 梅子論壇 http://meizibbs.3322.org/ VFP精英站 http://www.foxer.net 動感游標 http://www.vfp.cn/main.asp BOE副站 http://shhuachen.vicp.net/boe/ 小狐天地 http://hxb.51.net 編成園地 http://www.vfptop.com/ 紅虎工作室 http://www.hhgzs.com 晨旭工作室 http://www.sz.ah163.net/chenxu/vfp.html 夜來香---中狐網 http://Www.ChinaFoxer.Com 肥豬 fox基地 http://yxsoft.vicp.net:2521/bbs/index.asp 華寧論壇 http://www.huayunet.com.cn/bbs/index.asp 童心未眠 http://www.vfp80.net http://218.75.129.136/ 狐皮超市 http://202.99.183.179/virus/foxskin/index.asp 理想狐社區 http://www.ytys.com/ideal/index.asp 天涯閑狐 http://www.freefox.net/ 雅狐論壇 http://www.yafox.com 網易精華 http://uh1.gz.163.com/cgi/docelite?i=8142 逗逗網站 http://www.ddhome.net/program/pbvf/index.asp 編成愛好者 http://www.programfan.net/club/ 飛狐堂BLOG http://www.vfp.cn/blog/ 代碼 http://www.codechina.net:8080/Default.asp?classid=7 China http://tech.china.com/zh_cn/netschool/programme/vfp/index.html CSDN http://expert.csdn.net/expert/forum.asp MSDN http://www.microsoft.com/china/msdn/default.mspx 4.英文 Microsoft http://msdn.microsoft.com/vfoxpro/default.asp VFP Update http://msdn.microsoft.com/vfoxpro/downloads/updates/default.aspx UT http://www.universalthread.com/VisualFoxPro/ Using Win32 functions http://www.news2news.com/vfp/ OpenFox http://www.openfox.org/ Task Pane Central http://taskpane.leafe.com/ experts-exchange http://www.experts-exchange.com/Databases/FoxPro west-wind http://www.west-wind.com/articles.asp Foxite http://www.foxite.com/ FoxproWiki http://fox.wikis.com/ Active-FoxPro-Pages http://www.afpages.com/ Ramani's pages http://winnersoft.coolfreepages.com/index.htm OpenTech http://www.leafe.com/forum/index.php Calvin Hsia's WebLog https://blogs.msdn.com/calvin_hsia/default.aspx 4.週刊&雜誌 希網網路 http://www.cn99.com/cgi-bin/getlsts?listname=ycxy&start=16 5.FTP For FoxPro VFP愛好者天堂 ftp://61.133.63.168 USER:fox PASSWORD:fox ftp://myf1foxer:myf1foxer@shhuachen.vicp.net (LZY) ftp://fox:fox@xyx.3322.org @_@ ftp://fox:fox@61.133.63.168 (小好) ftp://upload:foxer@bugz.vicp.net ftp://down:foxer@bugz.vicp.net ftp://down:down@61.145.116.139 (RMH) ftp://anonymous:user@user.com@ftp.cuteftp.com/pub/cuteftp ftp://fox:fox@wlczy.3322.org (大奔) ftp://meizibbs:meizibbs@61.153.51.74 (梅子) ftp://zhjame:zhjame@218.88.220.31 (zhjame) FTP://customer:customer@SKYPROSTEC.COM 各位,不足的地方請幫忙補充 _________________ ############################# 舞動生活色彩,盡在VFP愛用者社區 學會VFP使用者社區的搜尋,Code才會更有趣~ 資料庫相關訊息網站 DBWord http://www.dbworld.com.tw/ 1.InterBase&FireBird Borland Interbase http://www.borland.com/interbase/ InterBase World http://www.interbase-world.com/ InterBase Installation http://ibinstall.defined.net/ 龍豪軟件 http://www.3asoft.com/cn/ IBExpert工具 http://www.ibexpert.com/ FireBird官方站 http://firebird.sourceforge.net/ IBPhoenix http://www.ibphoenix.com/ Ivan Prenosil's InterBase site http://www.volny.cz/iprenosil/interbase/ PHP http://www.fanqiang.com/a4/b4/20010418/142314_b.html 工具下載地點 FireBird資料庫 http://prdownloads.sourceforge.net/firebird/Firebird-1.5.0.3744-RC4-Win32.exe ODBC驅動程式 http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_60_odbc IbExpert工具 http://www.hksoftware.net/download/ibep_2.5.0.56_full.exe 書籍 http://www.3asoft.com/cn/download/InterBase/ib70guide.zip 2.MySQL MySQL官方站 http://www.mysql.com MySQL中文手冊 http://php.wilson.gs/mysqldoc/big5/manual_toc.html 資料庫入門 http://sy3es.tnc.edu.tw/teaching/php_mysql/php-mysql.htm 豆豆網站 http://www.ddhome.net/program/mysql/index.asp 3.PostgreSQL 資庫網 http://www.pgsql.com.tw/ Delphi 俱樂部 http://www.delphi.club.tw/ PostgreSQL 物件關聯資料庫系統) http://www.usinglinux.org/doc/translations/zh/PostgreSQL-HOWTO.txt PostgreSQL + JDBC + Servlet + XMLC 中文完全解決方案 http://www.pgsql.com.tw/images/pgsql-cjdbc.pdf 4.MSDE 2000 網站 http://www.microsoft.com/taiwan/sql/msde/howtobuy/msdeuse.htm MSDE授權: MSDNR Universal、Enterprise 和 Professional 訂閱 Microsoft Office XP 程式開發版 SQL Server 2000 開發人員版、標準版和企業版 Microsoft Visual StudioR .NET Architect、Developer 和 Professional 版本* Microsoft Visual FoxProR 7.0 或 8.0 當您以下載方式取得 ASP.NET Web Matrix 時,MSDE 只能與使用 ASP.NET Web Matrix 所開發的應用程式一起使用。 SQL Server 教程 http://uiproject.udngroup.com.tw/ui/TechDocs/SQL/LessonList.htm OLAP 教程 http://uiproject.udngroup.com.tw/ui/TechDocs/SQL/Lessons/OLAP/LessonList.htm 5.DB2 安裝與使用手冊 http://www-3.ibm.com/software/data/db2/everyplace/doc/cht/html/iug/dsyiug02.htm#ToC VB網站 1.繁體 小雄資訊中心 http://infoserv.com.tw/vb/ VB教程 http://uiproject.udngroup.com.tw/ui/TechDocs/Seminar.htm VB記事本 http://www.hosp.ncku.edu.tw/~cww/ 3.英文 VBIP http://www.vbip.com/tools.asp VBCity http://vbcity.com/default.asp Delphi網站 delphi K.Top http://delphi.ktop.com.tw/ Delphi 基礎教學 http://www.cthing.idv.tw/delphi/uses/basic/index.html Delphi俱樂部 http://www.delphi.club.tw/index.php .Net快速入門教學課程 ASP.NET http://cht.gotdotnet.com/quickstart/aspplus/doc/webdataaccess.aspx ADO.NET http://cht.gotdotnet.com/quickstart/howto/doc/adoplus/ADOPlusOverview.aspx Net俱樂部 http://www.oiservice.com/tw/documents/alldoc.aspx?articletype=5 Linux知識網站 ■Study-Area http://www.study-area.org/menu2.htm ■鳥哥的私房菜 http://www.macsoho.net/xoops202/modules/mylinks/visit.php?cid=3&lid=12 ■狼主得實驗室 http://netlab.kh.edu.tw/index.htm ■knoppix中文交流網站 http://knoppix.tnc.edu.tw/ ■台南自由網站 http://free.tnc.edu.tw/modules/newbb/index.php ■Jona首頁 http://www.hmes.kh.edu.tw/~jona/ ■網路農夫-UNIX C Shell http://freebsd.sinica.edutw/docs/csh/ ■Ask Linux http://asklinux.net/ ■我寫的網管講義 http://linux.tnc.edu.tw/techdoc/ ■永遠的UNIX http://www.fanqiang.com/index_b.shtml ■小紅帽技術論壇 http://redhat.ecenteridv.tw/bbs/index.php ■酷!學園論壇 http://phorum.study-area.org/index.php ■竹貓星球論壇 http://phpbb-tw.net/phpbb/ ■校園自由軟體交流網論壇 http://sfs.wpes.tcc.edu.tw/ ■Linux安全交流網 http://safe.ip-market.com/ ■李老師教室 http://www.cmes.ylc.edu.tw/~lee/index.php ■byzantineOS http://byzgl.sourceforge.net/ ■Damn Small Linux http://www.damnsmalllinux.org ■Morphix http://morphix.sourceforge.net/modules/news/ Linux手冊 1.Linux系統管理入門課程教材 http://opensource.nchc.gov.tw/intro_to_linux/ 2.網路管理語言 Perl 入門與實作 http://linux.tnc.edu.tw/techdoc/perl_intro/book1.html 3.Debian 參考手冊 http://www.debian.org/doc/manuals/debian-reference/reference.zh-tw.html 如何製作KNOPPIX 0)KNOPPIX_BV1AL使用參考手冊 http://knoppix.tnc.edu.tw/knoppix_doc/knxbvbook/index.html 1)Knoppix 改裝報告 http://www.cyut.edu.tw/~ckhung/b/sa/knoppix.shtml 2)KNOPPIX使用心得(結)----用KNOPPIX提供網路服務---- 莊士毅 http://dajia2.dj1es.tnc.edu.tw/knoppix_paper/page4/ 3)KNOPPIX 中文化的可行方法 http://dajia2.dj1es.tnc.edu.tw/knoppix_paper/page4/ 4)自製 KNOPPIX 光碟簡要說明 http://163.26.135.4/knoppix_paper/knoppixDIY.html 自製KNOPPIX簡要說明(2002-12-15修訂) http://163.26.135.4/knoppix_paper/diy.txt 5)自製KNOPPIX簡要說明 http://phorum.study-area.org/viewtopic.php?t=14043&highlight=knoppix 6)中文化knoppix自製步驟 http://www2.cyut.edu.tw/~s9054455/file/knoppix_tw.htm 7)製作個人風格的Knoppix開機檔 http://imil.au.edu.tw/~chiao/FAQ/make_knoppix_boot.html 把 KNOPPIX 塞在 USB 隨身碟帶著走 http://rz-obrian.rz.uni-karlsruhe.de/knoppix-usb/ 9)自由軟體KNOPPIX研習 http://lfes.tnc.edu.tw/~she/left/study/knoppix.htm 10)Knoppix Hard Disk Installation HOWTO http://www.freenet.org.nz/misc/knoppix-install.html 11)HOW I BUILT A CUSTOM DEBIAN CD FROM KNOPPIX http://gnubox.dyndns.org:8080/~sunil/knoppix.php 12)This is a guide that will show you how to remaster KNOPPIX http://www.knoppix.net/docs/index.php/KnoppixRemasteringHowto Windows 1. http://www.bonny.idv.tw/ 2.Windowx XP 超級大法 http://netcity6.web.hinet.net/UserData/antonio/computer/main_xp.htm http://hk.geocities.com/alanhkg888/ _________________ ############################# 舞動生活色彩,盡在VFP愛用者社區 學會VFP使用者社區的搜尋,Code才會更有趣~ ############################# 網路教學網站總匯集 http://www.dfmg.com.tw/dasp/life/webtech.html 王老師Q&A教學 http://www.pcbaby.idv.tw KNOW http://www.ravs.ntct.edu.tw/know/ 程式人 http://newsfamily.com/programmers/ XML教程1 http://uiproject.udngroup.com.tw/ui/TechDocs/xml/Lessons/LessonList.htm XML教程2 http://uiproject.udngroup.com.tw/ui/TechDocs/xml/MOC/LessonList.htm Office 2000 程式開發 http://uiproject.udngroup.com.tw/ui/TechDocs/Office/Lessons/LessonList.htm Exchange 2000 程式開發 http://uiproject.udngroup.com.tw/ui/TechDocs/Exchange/Ex2KClasses/Develop/LessonList.htm huanlin筆記本 http://huanlin.adsldns.org/ 峰筆記 http://www.cs.nchu.edu.tw/~fileman/Glindex.htm JavaServer Pages 實務 http://macspeed.net/coursejsp/ 酷必網知識社群網站 http://come.to/Joseph2001 硬體報導網站 ■超頻者 http://www.oc.com.tw/ ■電腦人 http://www.pcuser.com.tw/ ■Tom硬體指南網站 http://www.big5.tomshardware.com/howto/03q3/030804/nktwpa-03.html 優良資訊管理網站 葉宏謨 http://erp.im.fju.edu.tw/ WWWBoard Version 2.0 http://www.cyut.edu.tw/~fmlee/03Smiswwwboard/wwwboard.php 鉅仁科技 http://www.inqgen.com ASERP http://www.aserp.net/product/as/aserp/freeform_erp.htm 資治資訊 http://www.comstory.com.tw 鉅茂 http://www.erpservice.com/tw/sg_Q_A.htm 會計資訊網 http://ais.idv.tw/index.htm 立誠會計服務網 http://www.1234567.com.tw/ 私立學校會計系統 http://www2.tku.edu.tw/~account/ _________________ ############################# 舞動生活色彩,盡在VFP愛用者社區 BLOG網站建立須知: 1.申請域名之外,我還申請了虛擬主機: http://www.chieftain.idv.tw/archives/000003.html 2.我架站的方法及注意事項: http://www.chieftain.idv.tw/archives/000001.html 3.目前的正體中文patch方法: http://phpbb.elixus.org/viewtopic.php?t=186 4.下載: http://mtbook.net/download.html BLOG部落 用 Blog 做個人日誌 http://p4.elixus.org/repos/@md=d&cd=//member/Jedi/slide/20031023/&c=pdx@//member/Jedi/slide/20031023/root-0.html 酋長的部落格 Chieftain's BLOG (英文部落) http://www.chieftain.idv.tw/blog/ MTLIN Free"Blog"SD (隨筆) http://mtlin.org/blog/archives.html _________________ ############################# 舞動生活色彩,盡在VFP愛用者社區 多國語言方案 http://leoboard.cpatch.org/cgi-bin/leoboard.cgi ConvertZ ver 6.02 中文內碼轉換器(免費軟體) http://alf-li.tripod.com/c_convertz.html 非簡體Windows下如何使用《寧寧版》 http://www.zhsc.org/soft/poemsne/_internation.htm 中文黃大仙 http://wongtaisin.uhome.net/ 簡體轉換成繁體 http://hk.geocities.com/kuensun_wong/ 繁/簡,簡/繁轉換功能 http://www.sinica.edu.tw/imh/computer/Word2k/1.htm 簡體Windows 之繁體注音輸入法 http://shareware.foruto.com/Cccltd/pime_py.htm 華文館 http://www.winperturn.com.tw/index.html _________________ ############################# 舞動生活色彩,盡在VFP愛用者社區 學會VFP使用者社區的搜尋,Code才會更有趣~ 企業管理網站 資誠企業管理 http://www.pwchr.com.tw/ 企業管理 http://www.ithome-cn.net/book/book.htm 法律顧問網站 mylawyer http://www.mylawyer.com.tw/ 北大商學網 KM http://www.beidabiz.com/bbdd/kmsjk/kmsjk.html ?章制度典范 http://www.cn21.com.cn/managetools/index.htm 中國教育網 http://www.cer.net/ eworks http://www.e-works.net.cn/glxxh.htm ERPKM http://www.e-erpchina.com _________________ ############################# 舞動生活色彩,盡在VFP愛用者社區 學會VFP使用者社區的搜尋,Code才會更有趣~ 常用工具網站 ZIP--QUICKZIP http://www.quickzip.org/ FTP--filezilla http://sourceforge.net/projects/filezilla _________________ ############################# 舞動生活色彩,盡在VFP愛用者社區 學會VFP使用者社區的搜尋,Code才會更有趣~ ASP網站 藍色小舖 http://asp.database.net.tw/default.asp ASP線上教學 http://yes.nctu.edu.tw/wbe/1685/Books/Kings_W0145/AspExample/ VBScript,JScript,WSH 中文電子書下載網址 http://yes.nctu.edu.tw/wbe/1685/Books/Kings_W0145/AspExample/ PHP網站 1.繁體 PHP官方網站 http://www.php.net/ Php5 http://www.php5.idv.tw/ 神奇傑利網 http://www.jerry.com.tw/ PHPLink http://www.hkcode.com/articlecate.php CRLin http://mail.dhjh.tcc.edu.tw/~gzqbyr/phpBB/viewforum.php?f=2 PHP入門 http://chensh.loxa.edu.tw/php/A_4.php PHP+MySQL Web 程式語言 http://sfs.wpes.tcc.edu.tw/docs4/ PHP&MySQL講義連結 http://php.tnc.edu.tw/ PHP程式設計講義區 http://www.wasite.com/php0/index.htm PHP手冊 http://linux.tnc.edu.tw/techdoc/php/php_big5/index.html PHP教學 http://waha.uhome.net/teach/php/main.asp 網頁利器PHP簡介與安裝 http://mouse.oit.edu.tw/php3/ http://www.php5.idv.tw/documents/smarty20031225/#TOP Smarty 入門 2.簡體 超越PHP http://www.phpe.net/ 中文PHP http://www.21php.com/tutorial/ PHP聯盟 http://www.phpx.com/web.php PHP開發網站 http://bbs.usephp.com/ 源代碼大全 http://www.vvsoft.net/vvsrcd/index.asp?typename=php PHP完全手冊 http://php.freehostingguru.com/ 海天Php教室 http://www.egou.95.cn/show_morenews.php?iid1=1&iid2=1&marks=tech PHP&MySQL講義 PHP&MySQL講師研習班 課程一講義 http://edu.slat.org/Download/PMA_0001.zip PHP&MySQL講師研習班 課程二講義 http://edu.slat.org/Download/PMB_0001.zip DreamWeaver goEway http://www.goeway.com/web/webproduce/dreamweaver/dw4/concision_01.asp 動感網路學院 http://study.mesky.net/infoList/Catalog_75_1.html 神童教程 http://www0.ccidnet.com/school/zhuan/dw4.htm 網頁工具篇 CodeCharge http://www.codecharge.com.tw 博網 http://www.webapp.com.tw/default.htm 討論區 http://www.allenkuo.com/forum/index.asp gotocode http://www.gotocode.com/ _________________ ############################# 舞動生活色彩,盡在VFP愛用者社區 桌面圖示 商督桌面 http://desk.shangdu.com/ 桌面城市 http://www.deskcity.com/catalog.asp _________________ 點空間 http://www.dotspace.idv.tw/ 矇矇的秘密基地 http://www.kenming.idv.tw/ _________________ ############################# PDA網站 eMbedded Programming http://www.cj.idv.tw/ 華人WINCE論壇 http://www.wince.com.tw/bbs/index.asp Xian的家 http://www.xian.idv.tw/modules/tutorials/index.php?op=viewtutorial&tid=125 雷神的心得筆記 http://www.ai361.com/WINCE/handbook/index.asp 各種 CE 裝置的開發工具下載網址 http://www.microsoft.com/windowsmobile/resources/downloads/default.mspx _________________ 網路小說 龍騰世紀 http://www.millionbook.net/ 雲台書屋 http://www.b111.net/index1.htm _________________ 認真努力和實踐,夢想不再是遙遠的天邊.台灣災難都是事後算帳 無人飛行載具(Unmanned Aerial Vehicle,UAV)為什麼沒大量應用於救災行列 |
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
AndrewK
高階會員 發表:6 回覆:151 積分:161 註冊:2006-10-09 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |