<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    hk2000c技術專欄

    技術源于哲學,哲學來源于生活 關心生活,關注健康,關心他人

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      111 隨筆 :: 1 文章 :: 28 評論 :: 0 Trackbacks

    2011年11月10日 #

    posted @ 2014-04-21 21:33 hk2000c 閱讀(196) | 評論 (0)編輯 收藏

    許多年以來,對于軟件項目,企業軟件開發的主流實踐一直都傾向于在單一的通用編程語言上進行標準化,從而使得Java和C#成為今天編程語言的主流選擇。隨著越來越多的目光開始投向DSL,也許我們的前腳已經踏在了一道新的門檻之上,向前望去,我們會發現在軟件項目中采用多種語言已經成為一個標準,但80年代和90年代初出現的問題不會重現。

    Martin Fowler提出,也許我們正在邁進這樣的一個新時期

    [……]在這個時期內,我們將見證多種語言在同一個項目上的應用,人們就像現在選擇框架一樣,根據功能來選擇相應的語言。

    Fowler稱:“像Hibernate、Struts和ADO這樣的大型框架,給人們在學習上帶來的挑戰,絕不亞于學習一門語言,即便你在單一一門宿主語言上使用這些框架編程也是如此。”此外,在它們的宿主語言中表述需求的難度可能會相當大,并可能引出笨拙難用的配置文件,“這些配置文件實際上就是使用XML寫的外部領域特定語言”。

    在語言中嵌入DSL,而不是使用類庫,可能會是一個更為合適的解決方案。Martin給出了這樣的一個分析結論:“API就好比是在聲明一個詞匯表,而DSL則為其增加了相應的語法,使得人們能夠寫出條理清晰的句子。”因此,使用DSL而不是框架會使代碼豐富表現力,為人們帶來“更良好的抽象處理方式”,并使“閱讀我們寫出的代碼及對我們意圖的展示變得更加容易”。

    Piers Cawley稱,DSL的主要特性并非其可讀性,而是“它們對去相應領域的高度專注”使得它們能夠更加明確地表義。Cawley為了闡述他的觀點舉了一個例子,說明DSL不僅僅能讓我們“寫出讀起來像領域專家說出來的話一樣的程序”,也可以很技術化,用來代表一個使用它們的語法進行操控的框架。

    Neal Ford也相信,被他稱為多語言編程(Polyglot Programming)的勢頭正在興起。在軟件開發的這個新紀元中,日益明顯的主要特征就是嵌入更多的語言,使人們能夠“為所做的菜選擇一把恰到好處的刀,并且恰如其分地使用它”。他舉了一個例子,展示在Java編程語言中并行類庫的使用難度,并將其與Haskell作比。Haskell是一門函數式語言,“消除了變量所帶來的副作用”,并使“編寫線程安全的代碼”變得更容易。Ford強調說,Java和.NET平臺都存在Haskell語言的實現(Jaskell和Haskell.net)。

    不再使用單一語言進行開發所帶來的風險之一可能讓80年代末90年代初所出現的問題又再次重現,當時語言就是完全獨立的平臺,既不能互操作也不能放在一起良好地使用。Martin Fowler指出,現在的情況有這樣的一個重要區別:

    在80年代末期,人們很難讓各個語言之間緊密地互操作。這些年來,人們花了很大精力創建出可以讓不同語言緊密共存的環境。腳本語言在傳統上與C語言有著很密切的關系。在JVM和CLR平臺上也有人為互操作花費了大量精力。另外人們也在類庫上投入了很多人力物力,為的是讓語言忽視類庫的存在。

    最終,要學習并使用多種語言,對于業界乃至開發人員都可能會變成一項重要資產。《Pragmatic Programmers》這本書里面就說到,由于這樣做會對人們對編程的思考方式產生影響,因此這樣能幫助人們發現解決問題的新途徑。

    您是怎樣認為的呢?在下去的五年中,我們會開始混合使用語言,并像用類庫一樣頻繁地使用DSL嗎?

    posted @ 2011-11-10 05:56 hk2000c 閱讀(332) | 評論 (0)編輯 收藏

         摘要: java 裝載 groovy 方法  閱讀全文
    posted @ 2011-11-10 05:45 hk2000c 閱讀(748) | 評論 (0)編輯 收藏

         摘要: java 和groovy 集成

      閱讀全文
    posted @ 2011-11-10 05:37 hk2000c 閱讀(1070) | 評論 (0)編輯 收藏

    主站蜘蛛池模板: 在免费jizzjizz在线播| 一级毛片在线完整免费观看| 免费国产叼嘿视频大全网站| 亚洲国产精品毛片av不卡在线 | 亚洲欧洲中文日韩久久AV乱码| 亚洲中文字幕人成乱码| 国产成人精品免费视| 亚洲国产成人精品无码区在线秒播| 久久99精品国产免费观看| 亚洲尹人九九大色香蕉网站| 一级毛片aaaaaa免费看| 在线电影你懂的亚洲| 精品免费久久久久久久| ASS亚洲熟妇毛茸茸PICS| 在线观看免费大黄网站| 亚洲精品国产国语| 日韩成人免费aa在线看| 国产精品久久亚洲一区二区| 亚洲精品在线视频| 日本一区午夜艳熟免费| 久久丫精品国产亚洲av不卡 | 免费看成人AA片无码视频吃奶| 亚洲色自偷自拍另类小说| 久久中文字幕免费视频| 亚洲人成在线中文字幕| 日本xxwwxxww在线视频免费| 无遮挡免费一区二区三区| 亚洲熟女一区二区三区| xxxxx免费视频| 亚洲国产高清国产拍精品| 亚洲美女在线国产| 鲁大师在线影院免费观看| 亚洲国产日韩精品| 亚洲国产一成久久精品国产成人综合 | 免费播放特黄特色毛片| 99精品免费视品| 亚洲男人天堂影院| 亚洲Av无码乱码在线观看性色| 中国好声音第二季免费播放| 亚洲一卡2卡4卡5卡6卡在线99 | 69成人免费视频无码专区|