锘??xml version="1.0" encoding="utf-8" standalone="yes"?>Key Features
聽
XML & Web Services
聽
祿聽XML home page
祿聽Web Services home page
聽
Scripting Language Support
聽
祿聽Scripting for the Java Platform
祿聽JSR 223
聽
Java DB and Database Support
聽
祿聽Database home page
祿聽JSR 221
聽
Desktop and Deployment
聽
祿聽Desktop home page
聽
Monitoring and Management
聽
祿聽Monitoring and Managing technical article
聽
Security
聽
祿聽Security home page
祿聽Native security services technical article
聽
Performance
聽
祿聽Performance home page
聽
Compatibility
聽
祿聽Compatibility release notes
祿聽Compatibility home page
JavaScript錛屾垨鑰呭彨 Mocha錛屾垨鑰呭彨 LiveScript錛屾垨鑰呭彨 JScript錛屽張鎴栬呭彨 ECMAScript錛屾槸涓栫晫涓婃渶嫻佽鐨勭紪紼嬭璦涔嬩竴
Despite its popularity, few know that JavaScript is a very nice dynamic object-oriented general-purpose programming language. How can this be a secret? Why is this language so misunderstood?
灝界瀹冨緢嫻佽錛屼絾鏄緢灝戞湁浜虹煡閬揓avaScript鏄竴涓潪甯告
The Java- prefix suggests that JavaScript is somehow related to Java, that it is a subset or less capable version of Java. It seems that the name was intentionally selected to create confusion, and from confusion comes misunderstanding. JavaScript is not interpreted Java. Java is interpreted Java. JavaScript is a different language.
Java- 鍓嶇紑寰堝鏄撲嬌浜鴻仈鎯沖埌Java錛屽茍璁や負瀹冩槸Java鐨勫瓙闆嗘垨綆鍖栫増
JavaScript has a syntactic similarity to Java, much as Java has to C. But it is no more a subset of Java than Java is a subset of C. It is better than Java in the applications that Java (fka Oak) was originally intended for.
JavaScript鐨勮娉曞拰Java鏈夌浉浼間箣澶?wbr>錛岃繖灝卞儚Java鐨勮娉曞拰C寰堢浉鍍忎竴鏍楓備絾鏄畠涓嶆槸Java鐨勫瓙闆?wbr>錛屽氨鍍廕ava涓嶆槸C鐨勫瓙闆嗕竴鏍楓傚畠鍦↗ava錛圤ak
JavaScript was not developed at Sun Microsystems, the home of Java. JavaScript was developed at Netscape. It was originally called LiveScript, but that name wasn't confusing enough.
JavaScript涓嶆槸Sun Microsystems鐨勪駭鍝侊紝Sun鏄疛ava鐨勫
The -Script suffix suggests that it is not a real programming language, that a scripting language is less than a programming language. But it is really a matter of specialization. Compared to C, JavaScript trades performance for expressive power and dynamism.
-Script鍚庣紑璁╀漢璁や負浠栦笉鏄竴闂ㄧ湡姝g殑緙栫▼璇█錛屽拰涓闂?緙栫▼璇█
JavaScript's C-like syntax, including curly braces and the clunky for statement, makes it appear to be an ordinary procedural language. This is misleading because JavaScript has more in common with functional languages like Lisp or Scheme than with C or Java. It has arrays instead of lists and objects instead of property lists. Functions are first class. It has closures. You get lambdas without having to balance all those parens.
JavaScript鐨勭被C璇硶錛屽寘鎷ぇ鎷彿鍜岃鍙ョ殑褰㈠紡聽
JavaScript was designed to run in Netscape Navigator. Its success there led to it becoming standard equipment in virtually all web browsers. This has resulted in typecasting. JavaScript is the George Reeves of programming languages. JavaScript is well suited to a large class of non-Web-related applications
JavaScript鏈鍒濊璁捐鎴愬湪Netscape Navigator涓繍琛岋紝瀹冨湪Navigator涓殑鎴愬姛寮曢瀹?wbr>鎴愪負浜嬪疄涓婃墍鏈墂eb嫻忚鍣ㄧ殑鏍囧噯瑁呭銆傝繖灝遍犲氨浜?綾誨瀷杞崲"
The first versions of JavaScript were quite weak. They lacked exception handling, inner functions, and inheritance. In its present form, it is now a complete object-oriented programming language. But many opinions of the language are based on its immature forms.
JavaScript鐨勬渶鍒濆嚑鐗堥潪甯稿急錛屾病鏈夊紓甯稿鐞?wbr>錛屾病鏈夊唴閮ㄥ嚱鏁板拰緇ф壙銆傜幇濡備粖錛屽畠宸茬粡鎴愪負瀹屽叏闈㈠悜瀵硅薄鐨勭紪紼嬭璦
The ECMA committee that has stewardship over the language is developing extensions which, while well intentioned, will aggravate one of the language's biggest problems: There are already too many versions. This creates confusion.
ECMA濮斿憳浼氾紝榪欓棬璇█鐨勭瀹訛紝姝e湪瀵瑰畠榪涜鎵╁睍錛屼篃鍦ㄨ搫鎰忔伓鍖栧畠鏈澶х殑闂
No programming language is perfect. JavaScript has its share of design errors, such as the overloading of + to mean both addition and concatenation with type coercion, and the error-prone with statement should be avoided. The reserved word policies are much too strict. Semicolon insertion was a huge mistake, as was the notation for literal regular expressions. These mistakes have led to programming errors, and called the design of the language as a whole into question. Fortunately, many of these problems can be mitigated with a good lint program.
娌℃湁浠涔堢紪紼嬭璦鏄畬緹庣殑銆侸avaScript涔熸湁瀹冭璁′笂鐨勯敊
The design of the language on the whole is quite sound. Surprisingly, the ECMAScript committee does not appear to be interested in correcting these problems. Perhaps they are more interested in making new ones.
榪欓棬璇█鐨勬暣浣撹璁★紙涓婄殑闂錛夋槸鐩稿綋鏄庢樉鐨勩傚鎬殑鏄疎CMAScript濮斿憳
聽
Some of the earlier implementations of JavaScript were quite buggy. This reflected badly on the language. Compounding that, those implementations were embedded in horribly buggy web browsers.
JavaScript鐨勪竴浜涙棭鏈熷疄鐜版湁璁稿bug
Nearly all of the books about JavaScript are quite awful. They contain errors, poor examples, and promote bad practices. Important features of the language are often explained poorly, or left out entirely. I have reviewed dozens of JavaScript books, and I can only recommend one: JavaScript: The Definitive Guide (4th Edition) by David Flanagan. (Attention authors: If you have written a good one, please send me a review copy.)
鍑犱箮鎵鏈夌殑JavaScript涔﹂兘鏄浉褰撳彲鎬曠殑銆傚畠浠寘鍚敊璇?wbr>錛屽寘鍚笉濂界殑渚嬪瓙錛屽茍榧撳姳涓嶅ソ鐨勫仛娉曘侸avaScript璇?wbr>璦鐨勪竴浜涢噸瑕佺壒鎬у畠浠涔堟病鏈夎В閲婃竻妤氾紝瑕佷箞鏍規湰灝辨病鏈夋彁鍙?wbr>銆傛垜鐪嬭繃寰堝JavaScript鐨勪功錛屼絾鎴?span style="FONT-WEIGHT: bold">鍙兘鎺ㄨ崘涓鏈?/span>
The official specification for the language is published by ECMA. The specification is of extremely poor quality. It is difficult to read and very difficult to understand. This has been a contributor to the Bad Book problem because authors have been unable to use the standard document to improve their own understanding of the language. ECMA and the TC39 committee should be deeply embarrassed.
ECMA鍏竷鐨?a onclick="return top.js.OpenExtLink(window,event,this)" target="_blank">瀹樻柟璇█瑙勮寖鐨勮川閲忔瀬鍏剁殑宸備笉浠呴毦璇昏屼笖鏋佸叾闅炬噦銆傚畠鍙負閭d簺"緋熺硶鐨勪功
Most of the people writing in JavaScript are not programmers. They lack the training and discipline to write good programs. JavaScript has so much expressive power that they are able to do useful things in it, anyway. This has given JavaScript a reputation of being strictly for the amateurs, that it is not suitable for professional programming. This is simply not the case.
浣跨敤JavaScript鐨勪漢澶у涓嶆槸紼嬪簭鍛橈紝浠栦滑緙哄皯鍐欒壇濂界▼搴忕殑
Is JavaScript object-oriented? It has objects which can contain data and methods that act upon that data. Objects can contain other objects. It does not have classes, but it does have constructors which do what classes do, including acting as containers for class variables and methods. It does not have class-oriented inheritance, but it does have prototype-oriented inheritance.
JavaScript鏄潰鍚戝璞$殑鍚楋紵瀹冩湁瀵硅薄錛屽畠鐨勫璞″彲浠ュ寘鍚?wbr>鏁版嵁浠ュ強瀵規暟鎹繘琛屾搷浣滅殑鏂規硶錛屽璞′篃鍙互鍖呭惈鍏朵粬鐨勫璞?wbr>銆傚畠娌℃湁綾伙紝浣嗘槸瀹冩湁鏋勯犲嚱鏁版潵鍋氱被鐨勪簨鎯咃紝鍖呮嫭澹版槑綾葷殑鍙橀噺鍜屾柟
The two main ways of building up object systems are by inheritance (is-a) and by aggregation (has-a). JavaScript does both, but its dynamic nature allows it to excel at aggregation.
鏋勫緩瀵硅薄緋葷粺鐨勪袱澶т富瑕佹柟娉曟槸緇ф壙錛坕s-a錛夊拰鑱氬悎錛坔as
Some argue that JavaScript is not truly object oriented because it does not provide information hiding. That is, objects cannot have private variables and private methods: All members are public.
涓浜涘叧浜嶫avaScript涓嶆槸鐪熺殑闈㈠悜瀵硅薄鐨勪簤璁哄叾鐞嗙敱鏄畠娌?wbr>鏈夋彁渚涗俊鎭殣钘忋備篃灝辨槸璇碕avaScript鐨勫璞℃病鏈夌鏈夊彉閲?wbr>鍜岀鏈夋柟娉曪細瀹冪殑鎵鏈夋垚鍛橀兘鏄叕寮鐨勩?/p>
But it turns out that JavaScript objects can have private variables and private methods. (Click here now to find out how.) Of course, few understand this because JavaScript is the world's most misunderstood programming language.
浣嗘槸浜嬪疄鏄?a onclick="return top.js.OpenExtLink(window,event,this)" target="_blank">JavaScript 鐨勫璞″彲浠ユ湁縐佹湁鍙橀噺鍜岀鏈夋柟娉曪紙鐐瑰嚮榪欓噷鏉ョ湅濡備綍瀹炵幇錛?/a>銆傚綋鐒訛紝涔嬫墍浠ュ緢灝戞湁浜虹煡閬撹繖涓槸鍥犱負JavaScript鏄笘鐣?wbr>涓婅瑙f渶娣辯殑璇█鍢涖?/p>
Some argue that JavaScript is not truly object oriented because it does not provide inheritance. But it turns out that JavaScript supports not only classical inheritance, but other code reuse patterns as well.
鍙︿竴浜涘叧浜嶫avaScript涓嶆槸鐪熺殑闈㈠悜瀵硅薄鐨勪簤璁哄叾鐞嗙敱鏄畠娌℃湁鎻愪緵緇ф壙銆備絾鏄簨瀹炴槸JavaScript涓嶄絾鏀寔緇忓吀鐨勭戶鎵匡紝鑰屼笖鏀寔鍏朵粬涓浜涗唬鐮侀噸鐢ㄧ殑妯″紡銆?/a>
Copyright 2001 Douglas Crockford.All Rights Reserved Wrrrldwide.
Flash Presentation : http://www.netbeans.org/download/flash/why-netbeans-part1/player.html
The NetBeans IDE is a free, open-source Integrated Development Environment for software developers. The IDE runs on many platforms including Windows, Linux, Solaris, and the MacOS. It is easy to install and use straight out of the box. The NetBeans IDE provides developers with all the tools they need to create professional cross-platform desktop, enterprise, web and mobile applications.
Design Swing GUIs intuitively by dragging and dropping GUI components from a palette onto a canvas, then click into JLabels, JButtons, JTextFields and edit the text directly in place. You can even use the GUI builder to prototype GUIs right in front of customers. The NetBeans IDE comes with built-in support for GUI localisation and accessibility.
All features
Create a complete functional JSF page for manipulating data from a database in a few steps. Supports JavaServer Faces (JSF), JavaServer Pages (JSP), Persistence Units, Struts, and the JavaServer Pages Standard Tag Library (JSTL). Comes with a visual editor for deployment descriptors and an HTTP monitor to debug web applications.
All features
Use BluePrints, templates and wizards to quickly create Enterprise Java Beans (EJB 3) and JAX-WS web services. Full support for Java EE 1.3, 1.4 and 1.5 standards.
All features
NetBeans IDE works out-of-the box with Sun Application Server, Tomcat, Weblogic9 and JBoss 4, and it supports J2EE 1.4 and Java EE 5, including the JAX-RPC and JSR 109 standards.
All features
Version control is tightly integrated into the IDE's workflow: The IDE recognizes your existing CVS working directories automatically. Use the built-in CVS or get the Subversion module from the Update Center.
All features
With NetBeans Developer Collaboration (available from the Update Center), you share whole projects and files in real time over the network. Allow your co-workers to make remote changes and watch them type and run your application. Review your partner's work and send instant messages in plain text, XML, HTML, or Java complete with syntax highlighting.
All features
The language-aware editor indents, completes, and syntax-highlights your source code. It parses your code live, matches words and brackets, marks errors, and displays hints and javadoc. The Editor can be fully customized and split vertically or horizontally, and offers well integrated Refactoring, Debugging and JUnit testing.
All features
The free Mobility Pack adds all the functionality to the IDE needed for professional Java ME development. Install the Mobility Pack for CLDC/MIDP if you develop for devices supporting CLDC and MIDP, or the Mobility Pack for CDC if you develop for smart communicators, set-top boxes, or PDAs.
Learn more about Mobility Pack
The free Visual Web Pack adds powerful tools to the IDE that speed up the development of web applications. It includes visual editors for rapidly building standards-based web applications using AJAX, CSS, and JSF.
Learn more about Visual Web Pack
The free Enterprise Pack adds all the functionality to the IDE needed for professional Service-Oriented Architecture (SOA) development. Write, test and debug applications using XML, BPEL, or Java web services.
Learn more about Enterprise Pack
The free NetBeans Profiler provides expert assistance for optimizing your application's speed and memory usage. With its tight integration into the NetBeans IDE work flow, the Profiler helps you build reliable and scalable applications.
Learn more about the Profiler
The free C/C++ Pack adds all the functionality to the IDE needed to develop professional native applications. Write C and C++ code for a variety of platforms including Microsoft Windows, Linux, and Solaris Operating Systems.
Learn more about C/C++ Pack
(*) Install all of this functionality free and in one step by downloading the appropriate Add-On Pack.
The 5.0M1 release includes major enhancements and bug fixes for the MyEclipse environment, including:
Source: http://www.myeclipseide.com/displayarticle55.html
Milestone
Date
Description
Pre-Iteration -2
Friday, 9-Dec-05
Callisto M3 [Done]
Pre-Iteration -1
Friday, 23-Dec-05
Callisto M4 [Done]
Iteration 1 (i1)
Friday, 24-Feb-06
Callisto M5 (TPTP 4.2 Iteration 1 Stable build - API freeze) [Done]
Iteration 2 (i2)
Friday, 14-Apr-06
Callisto RC0 (TPTP 4.2 Iteration 2 Stable build - UI freeze)
Friday, 28-Apr-06
Callisto RC1
Friday, 12-May-06
Callisto RC2
Iteration 3 (i3)
Friday, 26-May-06
Callisto RC3 (TPTP 4.2 Iteration 3 Stable build)
Friday, 2-Jun-06
Callisto RC4
Tuesday, 20-Jun-06
Callisto RC5
Wednesday, 28-Jun-06
Callisto RC6
Iteration 4 (i4)
Friday, 30-Jun-06
Callisto GA (TPTP 4.2 GA Release, English only)
Post-iteration
Aug-06 (tentative)
TPTP 4.2 GA Release, Translated