全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:943
推到 Plurk!
推到 Facebook!

李維印象

 
speed
一般會員


發表:13
回覆:17
積分:6
註冊:2003-04-30

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-12-31 14:32:11 IP:218.162.xxx.xxx 未訂閱
資料來源: http://spaces.msn.com/members/bogao/?mkt=zh-cn 李維印象 昨天參加Delphi 2005產品發佈會,見到了李維。 從Turbo Pascal 3.0開始用Borland產品,到今年也有九年了吧!那個時候存在的公司,結局不出兩種,一種是不復存在了,還有一種就是已經做大——Borland屬於非典型的後一種。但是在商業編譯器領域,Borland無疑是唯一能與微軟抗衡的。而且我特別喜歡Borland編譯器的原因當然還有一點,就是它把最美麗的Pascal語言支援到了今天。這使世界瞭解到,Pascal語言決不像一些人所認為的那樣,只是“用於教學的工具”。如果沒有Borland,今天還會有人記得Pascal語言是什麼嗎?我不敢想像。但是Pascal的內在的美,的確非常值得大大地褒賞。對C/C 的任何語言細節的修改,馬上就會出大亂子,這究竟是完美還是脆弱?無論如何,對Pascal語言的修改卻每次都覺得讓人很舒心,覺得非常自然,甚至後來的學習者會發問:“難道原來不是這樣的嗎?”的確如此,Pascal語言給我的感覺是不像C/C 那樣的銳利和直白,而是有容乃大,修改時對舊有的代碼形成的衝擊非常小。 今天的Borland當然更不同於幾年前的Borland,不過李維這個名字,這幾年是漸漸地耳熟能詳了。在中國,提到唐駿,大家就想到了微軟,這就比較像李維和Borland了。但是李維和唐駿不同的是,唐駿是個商人,而李維是個作家。很難比較商人和作家究竟哪個對公司的貢獻更大,但無疑的是作家我更喜歡,因為我是個讀書人。但是,話說回來,前幾年主要是集中研究C/C ,侯捷的書看了不少,李維的書卻是看得並不多。其實還有一個原因,那就是Delphi實在是給出了太好的線上幫助,與原先Turbo系列的用戶操作也非常一致,是故也並不覺得有必要去大批地買Delphi的書看——腦子裏有個想法兒,自己動手做一遍,就非常清楚了。只是最近買了一本李維的《Inside VCL》,還未動一章,李維已經來到上海站在我面前了。 請了假,招了一輛TAXI,一溜煙兒來到長樂路上的新錦江飯店。在大螢幕上看到在四樓的白玉蘭廳,就跑上去。看到第一排的座位還有空兒,就找了一個坐下,上面一個人正在調試設備。旁邊是一個上師大的CS研究生,我問他,你見過李維嗎,長得啥樣?他笑了,說,上面那個人就是。說著說著,“那個人”已經拿起話筒開講了,原來真的是李維。 李維身上有一絲痞氣,這個沒想到。雖然每句話都是標準的臺灣腔,但說話的方式和語氣很像北京人。喜歡用一些包袱來調整氣氛,是個很有意思的演講者,也可以從一些細節聽出來,他已經是個資格很老的演講家。Delphi 1的中國區發佈就是李維來主持的,這個也是沒有想到。看來在臺灣,他的名氣是會更響一點。而且在Delphi 1發佈之時,恐怕大陸和臺灣的技術交流也遠非像現在這樣多。 發佈會分上下兩場,上半場主要是Talkshow,介紹了一下大陸、臺灣和香港的語言發展近況及Borland的業務營收分佈。這些對李維來說當然是瞭若指掌,語速極快,顯然是背過無數遍。營收的情況我完全不懂,只當是聽了就扔吧。但是語言/工具分佈,卻實在是一件有意思的事。三個地方的前三名狀況大致若下: 大陸:C/C ,Java,VB 臺灣:Java,Delphi,VB 香港:Java,VB,Delphi 這裏可以看出許多地域的性格來,大陸的程式師充滿了理想主義色彩,而且很重視“理”。這一點,C/C 揭示的機器運行的本質顯然比Java和VB這種層層封裝的東西要好許多。但是Delphi在這方面是處於兩者之間的中庸,我是喜歡這個的。它一方面繼承了從Turbo Pascal來的底層揭示(說實在的,Turbo C和Turbo Pascal的系統開發能力是完全一樣的,Turbo Pascal很可能還好些),另一方面和VB一樣,也是個不折不扣的RAD工具。但是大陸人是比較趨向於極端的——君子,或者小人。換到開發工具方面,就是大牛,或者惡俗。而這一點儒家傳統卻被港臺人完整地保存了下來,也說明那裏的人求利之心比大陸要重很多,顯然實用主義在港臺人那裏是占了最大的市場。所以大陸人做事時的考慮中,求理比求利來得重。但是電腦的學問又是實踐的很,那些只為完成項目而拼命趕工求巧的,反而創立了無數的理論。而大陸人一心求著符合一個大而美的框架,卻始終停在表面功夫,以文字華麗代替工程分析,深入不下,這樣就落後了很多。李維淺淺地說了一句“政治我完全不懂”,可能也是無奈之說,否則這些事實也無法規避。 講了一個小時,休息時間,我趁機跑到那裏求其簽名合影,做些俗事。不過這種事,臉皮不厚之人也大概是不肯去做,我是已經習慣了。請了一個朋友用其相機,正在等其發來,而後收進相冊,嘻嘻。不過很好的一點,是搞到了他的MSN,不過現在還沒上過線呢。估計像李維這樣的人,時間表會很收緊的吧。 幾分鐘內談了幾句話,他非常謙虛而合作,有大家風範,是那種見過場面的人。要了名片,準備以後經常騷擾他,嗯。 下半場比較高興地看到李維做的demo,印象中是做了五個。但是印象最深的是StarTeam和ECO II的兩個,相信很多人和我一樣。這兩個東西都是工程學的產物,也從一個側面反映出來我的興趣已經有點轉移到工程方面了。前一段時間在看《B方法》,那是純形式化的。但是Delphi是非常工程的,非常可操作的。StarTeam的版本控制這個方面,我在2001年寫過一個小軟體(基於DOS),可以以TSR方式運行並把BAK檔自動地更名成一個有序的歷史檔,這樣可以保證代碼不丟而且能看到建立日期和版本號。當時就在想這種很原始的做法會不會有公司來做成一個成熟的產品出來,我知道這會是一個趨勢。現在果然已經有了。而且像Borland這樣的公司,做成的產品一定會是方便、好用且符合邏輯的。如今看到,果不其然。 其實源代碼管理從一開始就是軟體工程的核心問題,這一點即使是一個人的“團隊”,亦是煩惱極多。即使需求分析和系統設計可以完全不管,規模小到4000L的小程式,也是一定會出現源代碼大改的情形。程式設計在本質上還是人心的工作,這一點就決定了它永遠不可能徹底地“工程化”,和機械或建築的設計完全不同。因此,程式師工具永遠都有改進的空間,這一點我認為是肯定的。我幾年前寫過一篇東西叫《多階工具》,這也是我堅持的觀點。總有辦法再把效率提高,這僅囿於人的思考速度,而那個簡直是無限的。 資料庫的抽取功能更是讓人耳目一新,雖然以前在JBuilder中也見過類似的功能,但這個演示還是覺得讓人眼前一亮。這個理論在Ullman的First Course裏見過,但是Borland的過人之處在於對怎麼想都非常複雜的東西給出一個完美的視覺化的實現,“拿給你看”!現在可以直接把資料庫轉換成標準的Delphi類,並且把其中的關聯完整地描述出來。視圖方面我覺得有可能是參考了Rational Rose,以非常清晰的直線條表現。Demo中採用了有名的Northwind作案例,我們可以看到這個抽取是正確無損的。而且,對屬性集元素的修改直接反映到物理資料表。在這裏,SQL也同時轉換成了OCL,這一點我就可以想像了。Borland的產品還有一個非常大的好處,就是可以從早期的版本中看出端倪來。其實,我們原來不也是這樣在工作嗎?把資料表的欄位轉換成了屬性,通過操作屬性來操作記錄。但這裏的改進,用李維的話說,是“觀念的進步”,傳統的關聯資料庫和新的面向物件的資料庫,在前者的後期和後者的前期會共用許多概念和術語,但是後者的革命性還需要時間來表現,這和算盤與電腦的關係是完全一樣的。無論如何,現在的直接的好處是我們不必再採用直接的SQL來操作資料庫。一般的做法是用字串來傳遞SQL語句,這是極其笨拙而不直觀的,而且有許多漏洞在此。現在用面向物件的語言來做這件事,就免除了這些擔心,而且Delphi的理論這裏可以全盤用上,比提供一個Delphi和SQL的介面,那無疑是要一致得多,也方便得多了。 這次還演示了一些語言特徵方面的小改進,如全局函數/過程的inline,及與foreach對等的for... in迴圈語法。李維對這兩點都作了解釋:Delphi中的inline與C/C 中的不同,並非建議而是強制開關,此是由編譯器的編譯遍數不同所致。而C#中的foreach也必須是個.NET物件聚集,但是Delphi中不必。值得注意的是,李維數次強調兩件事,一是VCL已然全部移植到.NET上,可以直接把.NET中的全部舊有代碼複用;二是Delphi 2005同時支持Win32和.NET,並非把Win32拋棄不管。我的理解是,他的意思是Delphi 2005在移植性方面做到了大包大攬,不會因為代碼太新而出問題,也不會因為代碼太舊而出問題。這一點還有待時間考證,不過顯然李維的演示給了我作為一個Delphi長期用戶以很大的信心。 我問了兩個問題,一個是有關發佈的定制腳本,一個是資料抽取時的Unicode轉換。李維對前一個問題做了解答,不過他沒有完全理解我的意思,我的意思是是否會提供像Application.Run那樣,提供一個Application.Deploy這樣的東西,可以自己撰寫程式碼來定制。不過一秒鐘之內,誰能有這種反應呢!第二個問題李維老老實實地說了“我不知道”,並說要測試一下。這給我的印象很好,這人不是不懂裝懂。 結束以後,又和李維交談了一會兒,事先沒有準備,討論話題深入不下去,因此也就罷了。總體來說昨天的發佈會我還是收穫不小,見了一直想見的人,看見了許多新技術。如果準備一下可能會收穫更大,不過工作實在很忙,能寫這麼一篇東西,也算沒有白去了。
系統時間:2024-07-03 13:39:11
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!