熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

Java與.NET之外的語言視界詳談

2013-11-23 18:41:08  來源: Java核心技術 

  去年的這個時候我寫了一篇文章來總結C++的題目是《波瀾不驚》其實當時我預料C++的波瀾不驚不僅會是的主題恐怕也是之後很多年的主題不過這個預料在僅僅一年之內就被打破今年微軟推出的C++/CLI著實翻起了一些波瀾給本已平靜的C++世界塗抹了一縷亮色按照Stan Lippman的說法C++/CLI是一座橋梁將原本屬於靜態世界的C++與動態的CLI聯系起來動靜結合自然不同凡響C++/CLI大致將於年推出第一個正式版而大約要到年才能夠完全成熟
  
  目前的C++/CLI語言從設計上來講可為是毀譽參半贊譽之詞不必多說至於社群裡的反對意見大致是來自兩種情緒其一是覺得C++/CLI對C++進行了專屬的改造使得自己熟悉的C++代碼面目全非其二是覺得C++/CLI將C++的復雜性與CLI的復雜性統統暴露出來令人望而生畏依我看來第一種責難其實出於一種不必要的宗教虔誠並不足以為據倒是第二種看法頗值得我們擔憂如果得不到很好的解決模型我們也可以認定C++/CLI只是一小撮專家們手中的屠龍術而很難產生更廣泛的影響
  
  如果把C++/CLI的喧囂撥開看看傳統的C++那麼年就不僅僅是波瀾不驚甚至可以說是水波不興我甚至要頗費一番思索才能夠列出一兩件事情來代表C++社群這一年的所作所為還要擔心讀者怪罪我小題大做
  
  Boost庫在年改進了兩版加入了一些很棒的組件比如序列化庫等等標准委員會也開會接納了幾個小玩意進入C++ X標准C++社群自年以來傾心於基礎庫的建設這對於C++來說的確是必須但是對於這個迅速變化的世界究竟能起到多大的影響現在還很難說其實一直以來Boost庫的精致程度就已經非常高但是對外界的影響力還不夠我當然樂於看到三年不鳴一鳴驚人的局面但是對此並不樂觀總的來說C++社群要加油
  
  與之相對應的在實際工程中C++的應用還是非常穩定地發展著只不過人們固執地使用著傳統的基於對象或者面向對象的風格至多摻入少許的STL年以來C++領袖們一直號召使用者轉向新風格現在看來這麼多年過去了效果並不很理想其中主要的原因固然是因為通往新風格之路的艱辛也一定程度上是因為新興動態語言的替代作用動靜兼濟之美未必要通過C++自身的涅磐來達成事實上類似Python和Ruby這樣的動態語言一方面提供了遠遠超越Java和C#的動態能力另一方面又能夠方便地與C/C++交互用它們與C/C++混合開發毫無疑問是開發應用系統的極佳組合方案
  
  Python升級到從語言本身來說的差別很小對一般開發的影響幾乎可忽略不計但是就在日當天ActivePythonPyWin等主要Python實現包均同步升級到此後數日各主要Python軟件包均升級兼容動作之整齊劃一有如一家紀律嚴明的公司充分體現了Python社群的成熟令人震撼
  
  然而對於Python來說本年度最令人振奮的消息是IronPython的橫空出世IronPython不僅向Python社群證明了NET平台也向NET證明了Python其開發者Jim Hugunin已經被微軟招入麾下專職研究NET平台上動態語言的實現技術Python等動態語言有望將軟件的開發效率在Java和C#的基礎上進一步提升所以毫無疑問的我們當然希望Python能夠進入NET成為一等公民不過一般來說年恐怕還不可能微軟還是非常熱衷於推銷自己發明的語言而對於開源社群的貢獻保持著一種官方的矜持也許Java社群在這方面反而要更積極一些
  
  日本人Yukihiro Matsumoto發明的Ruby語言以其更純粹的面向對象支持更一致的類型系統和為人津津樂道的block/iterator結構而迅速崛起逐漸呈現與Python分庭抗禮之勢對於熟練的Python開發者來說Ruby的吸引力並不是很大但是對於剛剛踏入動態語言世界的C++/Java程序員來說Ruby似乎比Python有更大的魅力Ruby發布了這是一個比較大的升級Ruby再接再厲連續推出同時Ruby社群成立了RubyForge網站實現了力量的大整合其發展勢頭更加迅猛
  
  腳本語言老將Perl今年把精力投入到了Perl 雖然距離Perl 的成形還很有一段路要走但是Perl 已經成為熱門話題OReilly甚至已經出版了一本書而源於巴西的動態語言新丁Lua發布了以其獨特而小巧的設計出奇的高效令世人驚訝
  
  總的來說在動態語言領域裡老將的優勢是支持庫豐富新丁的特長則是語言設計優美新老各有優勢讓人難以取捨如果能新老結合豈不是很美好?這就是Parrot項目的初衷——為動態語言提供最優化的基礎運行平台其版本號升級到我們已經可以憧憬一個這樣的未來即PythonPerl和Ruby自由協同互相無拘束地調用因此可以說Parrot VM是比任何單個動態語言發展都更為意義深遠的事件如果動態語言家族實現大統一整個編程世界將被非常深刻地影響今天任何一個執迷於Java或NET世界而無暇四顧的人在不久的未來都將為此而深感震撼
  
  事實上動態語言本身的能力是有局限的一般而言其效率也是較差但是與C/C++的相互結合使得程序員在開發時得以動靜兼濟取長補短很多人都相信動態語言是編程技術發展的新方向縱觀展望這種預測是很有希望成為現實的
  
  日 Boost 發布
  日 C++標准委員會在悉尼召開第次會議
  日 Lua work 發布
  日 微軟發布Visual C++ Toolkit
  日 GCC 發布
  日 Python 發布
  月 Linux Standard Base 加入一個C++ ABI標准
  月 微軟發布Visual C++ Express Beta展示新的C++/CLI
  日 Ruby語言的權威著作《Programming Ruby》第二版問世
  月 C++標准委員會在微軟總部雷蒙德召開第次會議
  日 Ruby preview 發布
  日 Boost 發布
  日 Parrot 發布
  日 Python 發布
From:http://tw.wingwit.com/Article/program/Java/hx/201311/25571.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.