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

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

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

    Dedian  
    -- 關注搜索引擎的開發
    日歷
    <2006年4月>
    2627282930311
    2345678
    9101112131415
    16171819202122
    23242526272829
    30123456
    統計
    • 隨筆 - 82
    • 文章 - 2
    • 評論 - 228
    • 引用 - 0

    導航

    常用鏈接

    留言簿(8)

    隨筆分類(45)

    隨筆檔案(82)

    文章檔案(2)

    Java Spaces

    搜索

    •  

    積分與排名

    • 積分 - 65532
    • 排名 - 817

    最新評論

    閱讀排行榜

    評論排行榜

     

    Follow is some guy's complaint for Java programming...
    somehow, it is true, but only true. I'd like to say that no language is perfect...

    Quote:

    Java is a poor programming language.

    There, I said it. I've been using Java since it first became generally available and my opinion of it has, if anything, lessened over the years. Just off the top of my head, the major problems include:

    Enforcing a Single Paradigm
    Object oriented techniques provide some powerful mechanisms for managing dependencies between components of a software system, but they are not the only useful techniques. Languages that support multiple paradigms, including functional approaches, are much more powerful.
    Limited Object Model
    Actually, the term "single paradigm" above is overstating the case. Java is a partial paradigm language, supporting only a subset of OO. Single inheritance of implementation (prohibiting mix-ins) and no support for multiple dispatch are significant restrictions.
    Not only is Java's object model limited, it is inconsistent. Consider int vs. Integer for just one example.
    Bondage & Discipline
    Some programmers will argue in favor of restrictions like single inheritance as enforcing the "right" way to develop software. Those programmers are welcome to tie themselves up and hand Duke a riding crop, but I want a language that empowers developers, not one that constrains them.
    Generics
    The implementation of generics in 1.5 is what one would expect from a partial-paradigm language: a large increase in complexity in exchange for minimal benefit.
    No Destructors
    Resource Acquisition Is Initialization (RAII) is a very useful pattern that can only be implemented clumsily in Java.
    Verbosity
    Java is verbose. Java is painfully verbose. Java is incredibly, unnecessarily, excrutiatingly painfully verbose. Part of this verbosity is due to its type system. A significant additional influence is the requirement to declare exceptions and the proliferation of try/catch blocks.
    Lack of Expressiveness
    Java's verbosity and limited object model make it an inexpressive language. These problems could be ameliorated if it were possible to manipulate the language somehow, but Java doesn't provide support for Lisp-like macros. Or C-like macros. Heck, it doesn't even have typedef.
    Given the ever increasing complexity in each release, Java is well on its way to becoming the COBOL of the noughties.
    Nothing New
    The most damning criticism of Java is that it doesn't progress the state of the art. When Alexander Stepanov was asked about his use of Java, his response was "For the first time in my life, programming in a new language did not bring me new insights." Juxtapose that with Alan Perlis' famous quote: "A language that doesn't affect the way you think about programming, is not worth knowing."

    Despite these issues and many others, Java does have one saving grace: support for mobile code. Jini is a truly innovative technology for developing large, distributed, mission-critical systems. Retrieving proxies or entire services at runtime is only possible because Java classes can be serialized and dynamically loaded.

    The ability to build scalable, resilient, performant, and extensible service oriented architectures without the need for SOAP, UDDI, and WSDL makes up for a multitude of sins.

    posted on 2006-04-19 02:13 Dedian 閱讀(181) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
     
    Copyright © Dedian Powered by: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 亚洲国产精品免费视频| 亚洲中文字幕无码中文字| 特级av毛片免费观看| 国产成人啪精品视频免费网| 亚洲精品99久久久久中文字幕 | 久久夜色精品国产亚洲AV动态图| 亚洲性无码av在线| 曰批视频免费40分钟试看天天| 久久久亚洲AV波多野结衣| 最近免费中文字幕大全高清大全1| 亚洲电影中文字幕| 国产成人精品免费视频网页大全| 亚洲精品国产精品乱码不卞| 中文字幕免费播放| 毛片免费在线观看网站| 亚洲伊人久久大香线蕉AV| 日韩一品在线播放视频一品免费| 亚洲大尺度无码无码专区| 无码av免费一区二区三区试看| 四虎影视永久免费视频观看| 一级做性色a爰片久久毛片免费| 最新免费jlzzjlzz在线播放| 国产午夜亚洲精品不卡免下载| 四虎在线最新永久免费| 亚洲日韩精品无码专区| 久久精品国产亚洲一区二区三区| 国产免费拔擦拔擦8X高清在线人| 亚洲国产成人久久综合一区77| 国产成人精品日本亚洲专区6| 国产高清视频在线免费观看| 国产在线观a免费观看| 亚洲高清无在码在线电影不卡| 久久电影网午夜鲁丝片免费| 特级一级毛片免费看| 夜夜亚洲天天久久| 成人免费看片又大又黄| 成人毛片100免费观看| 亚洲人配人种jizz| 国产亚洲精品不卡在线| 很黄很色很刺激的视频免费| 亚洲一卡二卡三卡四卡无卡麻豆|