By Bruce Eckel
Java resistance has been initially revealed, and we have begun to see some fundamental changes caused by this.
Some of Bruce Tate's books focus on Java's flaws and point out the need to give up some unimplemented ideas. Blogs such as Jens alfke's thought Palace and Stephen colebourne's weblog frequently mention this issue. Of course, there is also a famous reference of Steve Jobs (referenced from the iPhone): "Java has no building value. People will no longer use Java. It is just a huge burden ". Sun always thinks that Java is ubiquitous and omnipotent. It was once an amazing language, but it can continue to develop only when the Language designers and advocates can recognize the problems. If the language is no longer successful and still persists, such behavior itself is a denial. EJB has responded to this issue. The ejb3 team finally admitted that the EJB cost was too high and learned from Hibernate and spring, but it was not enough to solve the problem. Most people seem to think that hibernate and spring are simpler and more intuitive than ejb3. Therefore, it is difficult to go back to their previous views on this previously costly technology.
Java 5 defaults to the fact that Microsoft uses C # To implement many interesting functions, the features introduced in Java 7 also support the idea that Java is currently playing catch-up games with C #3.0. Competition is good, and Java is not dead. As it continues to develop, the emergence of new languages built on JVM (such as Ruby, Scala, and groovy) is a symbol of the restoration of Java technology. We want to ask the following question: Why is Java Applet not used as a client standard for RIA (rich Internet applications) on the Internet? This is a very acute problem, because Gosling and its team intend to abandon Java (so as to discard a lot of decision-making without weeks of consideration), which will lead to a revolution in the Internet. This is why AWT and applets were abandoned at the last moment. It is said that it took a month from planning to completion. Bill Venners quoted Patrick Naughton: "This is a time problem and it takes only three months to reach the entire Java field. This is initiated by us ." I have heard of this sentence 1 before, and this attitude always seems wrong when building a programming language. You are creating a basic architecture and hope that people will adopt and use it for years. This is where you need to think carefully, not impulsive.
I can understand why green team holds this attitude: This is Microsoft's approach. Throw a product to attract public attention. This product does not have to be perfect; it only needs to occupy the market space. Over time, you can fix any defects in a product that has been launched in a rush. This is an agile marketing method. This method is applicable to dynamic languages. Visual Basic, one of the most popular languages, has been developed for many years. Python has fixed some defects that are harmful to the original code to optimize the language. It is said that Ruby plans to do the same. However, for static languages that contain a lot of code (especially lengthy languages), fixing vulnerabilities does not seem to work that well. All code must be re-compiled and may be changed, but I think Java can also adopt the python method: Do not update it if you do not want to change it. Many companies have never updated their Java versions.
1. 1. Especially when I write thinking in Java, many people say, "there are already too many Java books, and your books won't be available in the market. It's not worth doing this ."
Web chaos
It is good to be able to identify the possibility, but the disadvantage is that it is difficult to determine when a fault occurs. The concept of web is far-sighted, but most web applications fail. Yes, we have been able to make the web work, but it is hard to say that it "runs well ". Specifically, any application that uses HTML, CSS, and JavaScript is difficult to develop and expensive, and it does not seem possible to have the same appearance on different browsers. Even simple pages may look different due to font issues.
If you use Firefox, how many websites you visit are difficult to read at least some of the content that is created for Internet Explorer (IE? In my opinion, the situation is getting worse and worse. I see that more (not fewer) sites are not very compatible with Firefox, so that I will seriously consider turning to IE.
CSS does not fulfill its outstanding promise. After many years, its implementations on various browsers are still inconsistent. As long as you use HTML and CSS, you always want to know whether your application will produce unexpected results on other browsers. In addition to IE or Firefox, other browsers are even worse.
Javascript also appeared in the early stages of the Web, but the browser melee caused JavaScript inconsistency and difficulty in use. One of the key elements of AJAX is that someone has begun to solve cross-platform JavaScript problems, so you do not need to consider the frequent inconsistencies between different browsers. This method has two problems. The first problem is that JavaScript has limited functions. Although AJAX can fully utilize the functions of JavaScript, its functions are also very limited. The second problem is that we rely on the Ajax library to handle cross-browser issues. If you want to write your own code, you must be proficient in these issues, and many Ajax functions are useless by then. Ajax greatly improves the user experience, but it also has limitations. I guess we have understood most of the functions Ajax will provide.
What's even more impressive is Google Web Toolkit (GWT), which converts type check Java to cross-platform JavaScript to accelerate the development process. First, write the code in Java, and then compile it into a cross-browser JavaScript with GWT. Then, JavaScript becomes the intermediate code that can be run on all platforms. However, this makes Google's think tank have to solve problems that should not have occurred. In addition, if you do not have the required library, you must still solve the cross-platform JavaScript problem before writing new code. Even if GWT is so clever, I think it will be exhausted by the internal limitations of JavaScript and browsers.
We did see some amazing Ajax-based tools, such as Gmail and other Google tools, which are constantly tempting me. This is a good phenomenon, but is this the best result you want to see on the web? As you can see, without this restriction, these applications are very close to the desired results, even if they cannot continue to work (Yes, I know that Google tools are still "in the testing phase "). For example, in Gmail, you can press 'R' to reply to the message. Sometimes this is feasible, but it often does not work, which is very annoying. In addition, the Ctrl-C copy operation does not work when I use a web application like Gmail. This problem may occur in windows, Firefox, JavaScript, or other software, but it seems to be related to Web applications, and this situation lasts for at least a year. Frankly speaking, I don't care about the cause of the problem, and I believe that no other user will care about it. If such a simple problem occurs, the future is not optimistic.
How much effort must we make to remedy a series of wrong decisions that have created today's web?
Rich internet applications
We want to ask the following question: Why is Java Applet not used as a client standard for RIA (rich Internet applications) on the Internet?
This is a very acute problem, because Gosling and its team intend to give up Java (and thus discard many decisions that are not well considered), which will lead to a revolution in the Internet. This is why AWT and applets were abandoned at the last moment. It is said that it took a month from planning to completion. Bill Venners quoted Patrick Naughton: "This is a time problem and it takes only three months to reach the entire Java field. This is initiated by us ." I have heard of this sentence 1 before, and this attitude always seems wrong when building a programming language. You are creating a basic architecture and hope that people will adopt and use it for years. This is where you need to think carefully, rather than thinking.
I can understand why green team holds this attitude: This is Microsoft's approach. Throw a product to attract public attention. This product does not have to be perfect; it only needs to occupy the market space. With the time shifting, you can fix any defects in the products that have been launched in a rush. This is an agile marketing method. This method is applicable to dynamic languages. Visual Basic, one of the most popular languages, has been developed for many years. Python has fixed some defects that are harmful to the original code to optimize the language. It is said that Ruby plans to do the same.
However, for static languages that contain a lot of code (especially lengthy languages), fixing vulnerabilities does not seem to work that well. All code must be re-compiled and may be changed, but I think Java can also adopt the python method: Do not update it if you do not want to change it. Many companies have never updated their Java versions.
Installation Problems
Java has existed for 10 years, and Applet is not the main way to interact with web. I think the main reason is the installation problem, which is another Java issue that has not been taken seriously. Honestly, why do we like Ajax?
This is obviously not because Javascript is easy to use-the cross-platform problem of JavaScript is the reason that people did not want to use it in the past. Ajax is popular because we know that the client has installed necessary software. People must first solve the cross-platform JavaScript issue, but if Java Runtime Environment (JRE) is easy to install, everyone only needs to create a Java applet. But this is not the case. Applet is not so popular, so everyone turns to Ajax. Therefore, Ajax has become a popular Ria technology.
Using ecmascript standardization can improve the situation, but I am still more willing to use Java programming than JavaScript, mainly because of JavaScript inconsistency. Maybe the current version of ecmascript will become the standard for almost all browsers in eight years. However, the current version of JavaScript is ready for use (although its implementation is relatively casual), and there is no installation problem. I think this is a good example: the reason why Java fails to take over the RIA language is its installation problem.
Although Java has been patched for many years, I think the fundamental problem is that all the people trying to solve the installation problem are only from the technical point of view, but not from the perspective of real needs: external user experience. For example, I have been troubled by the Linux release because it is difficult to install. I install linux almost once every year, and once installed, the installation program starts to ask questions. Only those proficient in Linux know the answer to these questions. I have no idea how to do it, so I have to give up and try again in the next year. Then Red Hat was born (at least, I think it is the first product that focuses on the installation experience), and does not ask questions when installing Linux, or at least give some reasonable default settings. Linux has become popular since that time. (Recently, UBUNTU seems to be a leader in solving Linux friendliness issues .)
To install JRE, you need to answer questions. For those proficient in JRE, the answers to these questions are simple or obvious, but for other web users, these questions will make them overwhelmed. In the sun never sets on Java security updates article, the Ed Foster of InfoWorld commented and gave an example to illustrate the Java installation problem. Although this article mainly complained about updates, it is also very dissatisfied with the old version of Java. Ryan tomayko also wrote a blog about Java installation.
Java Network Launch Protocol (JNLP) is the basis of Java WebStart. It should solve these problems and create desktop applications that are easy to install. I think that the reason why JNLP is not widely used can be found at https: // aerith.dev.java.net/. This is a page that includes cool javaone demos. If you click the JNLP version link on the page, it starts to start, download something, and ask you questions. Then there will be no more details. There is no error message or any information to tell you what happened. Repeated attempts will still produce the same results, but the speed is faster, because the required files have been downloaded. At least, my experience is like this. If you can use it normally, it is even worse-it can only run randomly on some platforms, but not on others. How can I debug such a product?
It is not impossible to use Java to build GUI applications. However, over the past 10 years, installation problems still exist in applet, Java WebStart, and common applications. Ten years later, people no longer trust it. If this problem does not occur after 10 years, I dare say some people will think that this problem is not worth repairing. Even if they fix the issue, it takes years for users to rebuild their trust because they already have so many bad experiences.
Java Applet and Application Experience
AWT's initial user experience has been a heavy blow to Sun's enthusiasm for Java, and I think the applet has not yet recovered. As a result, Java will never become the mainstream of RIA. Java applets cannot be conveniently run on the Web site even if they exist. They failed and do not know where the error is. Even worse, they even prevent Firefox from opening a new window until I restart the computer.
The common response to "applet is dead" is "they are not dead. I have been using them all the time ." Applet is not useless; people are still using it to create outstanding products. Java posse publishes one or more applets every week. The above conclusion should be understood as "for Web Ria, the applet is dead ". The Installation Process of JRE and any specific applet is not sufficient to persuade anyone to use them on a common web site.
Java defects also affect desktop applications, as do applet. I have used a Java product called Memorex expressit. Its UI is very ugly and has many defects. I have also used the Logitech I/O pen support software (written in. net). It runs smoothly and looks pretty, in stark contrast to Memorex expressit. You may say that Memorex programmers lack experience, but Logitech is just a small running application that does not require any hard work. However, there is almost no easy-to-use application written in Java I have used. Eclipse is a very good software, but I think it must be full of "hard work ".
Corel once tried to use Java to create a Text Processing Program (I forgot whether they wanted to transplant WordPerfect or write it from scratch ). Apparently their actions are too early because they only have AWT. However, if you have heard Sun's exaggerated publicity, you will feel that this is the right choice. But it doesn't matter. In any case, it can still work, because such failures have made people afraid to use Java.
OpenOffice is not written in Java, but in C ++. I believe this is not because programmers want to fight against the cross-platform issue of C ++. It is because C ++ is fast, perhaps because it can control the underlying platform more directly. Despite Sun's control over the development direction (I attended a press conference many years ago, and gosling said at the conference that "Java is always as fast or faster as C ++ ", but Java cannot solve all the problems. What do we like about Ajax? This is obviously not because Javascript is easy to use-the cross-platform problem of JavaScript is the reason that people did not want to use it in the past. Ajax is popular because we know that the client has installed necessary software. People must first solve the cross-platform JavaScript issue, but if Java Runtime Environment (JRE) is easy to install, everyone only needs to create a Java applet. But this is not the case. Applet is not so popular, so everyone turns to Ajax. Therefore, Ajax has become a popular Ria technology.
Although the use of ecmascript standardization can improve the situation, I am still more willing to use Java programming than JavaScript, mainly because of JavaScript inconsistency. Maybe the current version of ecmascript will become the standard for almost all browsers in eight years. However, the current version of JavaScript is ready for use (although its implementation is relatively casual), and there is no installation problem. I think this is a good example: the reason why Java fails to take over the RIA language is its installation problem.
Although Java has been patched for many years, I think the fundamental problem is that all the people trying to solve the installation problem are only from the technical point of view, but not from the perspective of real needs: external user experience.
For example, I have been troubled by the Linux release because it is difficult to install. I install linux almost once every year, and once installed, the installation program starts to ask questions. Only those proficient in Linux know the answer to these questions. I have no idea how to do it, so I have to give up and try again in the next year. Then Red Hat was born (at least, I think it is the first product that focuses on the installation experience), and does not ask questions when installing Linux, or at least give some reasonable default settings. Linux has become popular since that time. (Recently, UBUNTU seems to be a leader in solving Linux friendliness issues .)
To install JRE, you need to answer questions. For those proficient in JRE, the answers to these questions are simple or obvious, but for other web users, these questions will make them overwhelmed. In the sun never sets on Java security updates article, the Ed Foster of InfoWorld commented and gave an example to illustrate the Java installation problem. Although this article mainly complained about updates, it is also very dissatisfied with the old version of Java. Ryan tomayko also wrote a blog about Java installation.
Java Network Launch Protocol (JNLP) is the basis of Java WebStart. It should solve these problems and create desktop applications that are easy to install. I think that the reason why JNLP is not widely used can be found at https://aerith.dev.java.net/. This is a page that uses cool javaone demos. If you click the JNLP version link on the page, it starts to start, download something, and ask you questions. Then there will be no more details. There is no error message or any information to tell you what happened. Repeated attempts will still produce the same results, but the speed is faster, because the required files have been downloaded. At least, my experience is like this. If you can use it normally, it is even worse-it can only run randomly on some platforms, but not on others. How can I debug such a product?
It is not impossible to build a GUI application using Java. However, over the past 10 years, installation problems still exist in the applet, Java WebStart, and common applications. Ten years later, people no longer trust it. If this problem does not occur after 10 years, I dare say some people will think it is not worth fixing. Even if they fix the issue, it takes years for users to rebuild their trust because they already have so many bad experiences.
Cross-platform is far from enough
Over the years, I have been working hard to solve cross-platform problems for products such as hands-on Java CD. This is the same as the RIA problem, because I want the installation process to be as simple as possible, and all functions to run seamlessly without any platform problems. My solution can take effect in many cases, but sometimes the customer will send me an email saying that this solution won't work on their computers, and I don't know where the problem is. The best thing I can do is let him "Try it on other computers", and this can often solve the problem ...... No matter what the problem is. I never want to hear such problems; I just want all the functions to take effect.
My main goal is to create a slide-and-audio content delivery system, as you can see in hands-on Java cd rom or thinking in C. Java once declared that "It can be run anywhere just once written" and it is an attractive competitor. Unfortunately, Linux's support for it is too late (and Mac support is also relatively late ). Linux and Mac users may be a minority, but they can speak bluntly.
Unfortunately, Java does not support MP3 and multimedia. As the dick wall of Java posse has repeatedly pointed out, java media framework (JMF) has been ignored for many years. In my initial decision, I did not support any compressed audio format (I prefer other formats than MP3 ). Even now, only open-source software can support MP3. Theoretically speaking, it is good, but I don't want to test it and find out platform problems-I hope it can run; the only response I want to hear from customers is "that's great!"
It seems that only RealPlayer can be used, so I use it to play the second version of hoj CD. However, RealPlayer always tries to buy a paid version during installation. I must tell people how to find the free version. And it is very domineering-It replaces MP3, although you tell it not to do so.
Even so, RealPlayer is not reliable. Occasionally, problems may occur during its installation. I have received many such emails. I don't know the root cause of the problem, but customers usually think it is a problem with CD. Daily Show has been using RealPlayer for many years. It is not only annoying because it is always started and stopped (all media cannot be predownloaded, but can only be watched online), and there is always a drag on the left side of the image. Now Comedy Central has been transformed into a new system, but it can only run intermittently. So I can only expect them to be released on YouTube.
Flash Solution
So this is my problem. Maybe 10 years later, Java still cannot occupy the RIA field. Maybe Ajax is just "The expected JavaScript running method", but the limitations of browsers, HTML and CSS seem to limit its development space. What will we use to build Ria?
For me, I just want to have such a system that can solve all my UI problems, not just some problems. If I want to learn it, I don't want to hit the wall when I start development. This has happened many times. Obviously, the only solution is flash. Flash is always related to all cross-platform multimedia experience and user interfaces. People are very familiar with and like flash, and it is installed on almost all computers. It is trustworthy, stable, and reliable.
Flash Installation is very simple for everyone. No need to answer questions or perform special operations; it runs well. That's why it is so popular. The current and future flash versions will be on three platforms (yes, except 64-bit Linux, but this problem is being solved, and its users usually have more than one computer, so they have alternative methods) for simultaneous release. The standard Flash Installation can play MP3 and various video types, so you don't have to worry about "writing it once can run anywhere ...... In addition to multimedia ".
It is undeniable that the user interface generated by Flash is very friendly. What are the use cases of Flickr and Picasa? Not Java, not Ajax, but flash. Google Video is written in Ajax and cannot be used in all places, because they bought YouTube with flash. Even the most stubborn swing supporter secretly hopes that his UI can be so beautiful, especially without all the extra work required by swing.
There is a very good flash web application called gliffy, which imitates Visio (it was created using openlaszlo and will be mentioned later ). No one can think of Using ajax to create such a software, even if they use HTML, CSS, and JavaScript to mimic a simpler Microsoft Paint. Very good, but you will think this is close to the functional limits of these technologies, and Flash is just getting started. Apart from the slowness and awkwardness of painting cloning, the UIS on various browsers are also inconsistent. There are still limits even if you have achieved surprising achievements within the limits of JavaScript and technologies such as Ajax, JSON, GWT, and others. We face these limits every day, but they do not disappear.
Solve UI Problems
A difficulty in Gui programming is to select a GUI library. Sometimes there is a standard library, but it cannot be changed. In Java, we first use AWT, and later proved this was wrong, so we had to endure the developed swing until IBM and eclipse joined and provided an additional SWT. In python, there are many GUI Libraries, including built-in tkinter (which overcomes installation problems), wxpython, QT, and so on. Windows-specific libraries have similar options, but these libraries are useless if you want to create cross-platform applications.
If you study these GUI Libraries, you need a lot of in-depth knowledge like me. Every database requires time to learn, and each database has its own characteristics. Some activities are very simple in one database, but they are only possible in another database. Each library treats GUI programming in a different way. I would rather learn a solution and then use it for all applications. In this way, I don't have to learn about the GUI solution and then start to study it in depth. Ideally, this will be a real programming language that produces consistent results on all platforms. I believe that to solve user interface problems, we need a domain-specific language that focuses on user experience. For me, flash-based technology (such as flex) is the best solution to this problem. (I am arranging to sign a consultancy agreement with Adobe to help them train the public with Flex knowledge. But a long time ago I was convinced that flash, especially flex, was the best solution to user interface problems. I started writing this article before Adobe expressed my interest in help ).
What is Flex?
Generally, Flash content and applications are created using the flash writing tool. The current version of the tool is flash 8 Professional (this is easy to confuse, but 10 years ago, I decided to give the tool the same name as the runtime ). There is also a tool called Macromedia ctor, a multimedia production tool for CD-ROM, Which is earlier than Flash and outputs a shockwave format file that runs in a plug-in or ActiveX control, this control is similar to the Flash content, but it is a completely different control. Shockwave has its own strong period and has been widely used, especially in games. However, Flash is more lightweight and widely used than shockwave.
Flex is a way to program and develop flash applications. It includes a descriptive XML language called mxml and a programming language called ActionScript. The former is used for user interface layout, and the latter is an extension set of ecmascript (that is, standardized JavaScript ), it also includes some additional features, such as optional static type checks. ActionScript is a language that runs across multiple platforms, so you don't have to worry about the differences between platforms. Because it is based on ecmascript, JavaScript knowledge can be used. All mxml components are written in ActionScript. You can use them if you want to write your own components. The flex application is directly compiled into SWF (flash binary code) and then compiled by just-in-time (JIT) during flash running, which can speed up.
Cost is the main factor that initially hinders my use of FLEX, mainly because readers are unwilling or unable to pay these fees. In the earliest versions of FLEX, you must purchase a server version to create a static SWF. The server version is designed for dynamic content. For large enterprises that create dynamic SWF from databases or similar programs, it is worth the money. But there is no reason to spend the money for anyone who just wants to try flex. If most people do not have a reasonable lab method, including creating static SWF for delivery from their own servers, I would be hard to recommend flex. However, you can now download the free command line flex compiler to create static SWF, or you can deliver these SWF from your web site without any fees. Compilers, frameworks, and debuggers are free of charge, so there is no reason not to use flex.
You can purchase the flex builder ide To help create the flex application. This is built on the eclipse platform (instead of creating a new GUI development system from scratch-A wise way ). It has common functions as expected, such as automatic compilation, context help, debugging, and GUI layout tools. You can use the layout tool to get started at design, but I found that manual optimization is more useful after the draft is designed.
The following are some of the problems I encountered in the past: Although flash players for Windows and Mac are always released at the same time, flash for Linux will be released much later. I didn't know it at first until I launched the first beta version of thinking in C eseminar and received complaints from Linux and Mac users about flash. After some investigation, I decided to port back the application (this is feasible, and Flash 7 contains all the required features ). This seems to be the best solution for me, because I don't need to wait until the new flash version is released, and I don't have to worry about Linux. One of my main uses of Flash is to make apps transparent across platforms and minimize Installation issues. However, in Flash 9 and later versions, the release interval of all players is only several weeks. This policy will also be applied in later versions of flash. So now you don't have to worry about anyone complaining. If you use flex to build your UI, it will be "normal ".
Use flex as a graphic DS
One of the most attractive aspects of Flex is that flash was initially created based on the UI idea. In a very real sense, it is a domain-specific language for graphics, multimedia, and UI, most other solutions are languages that are later added to the UI library. Thanks to this design goal, flex and flash provide a complete, unrestricted, and flexible tool for building user experience. From a programmer's time investment standpoint, you only need to learn a language for building the UI without worrying about problems or restrictions in the future-problems include:
• Installation Problems
• Functional limitations
• Steep learning curves
You can use many fancy components-the flex framework (part of the free download) comes with more than 100 components. There is also an active component creator market, including open-source and paid. Adobe has created such a library: Flex charting components (within a few hundred dollars), but there are still many attractive chart components.
Of course, one of the most interesting aspects of AJAX is that it represents "a" of "Asynchronous ". This allows information to flow between the client and the server without refreshing the entire page. For flash, flex Data Services provides a better version. This is a publishing/subscription API for data management. Flex data services automatically performs cache and update between the client and server, without the need to write additional code to produce the best user experience. This allows you to process real-time data, build collaborative applications, and integrate enterprise messaging. You can use flex data services on a single CPU for free. If your application requires multiple CPUs, you will be treated as an enterprise with a certain license fee.
I mentioned previously that gliffy is built using openlaszlo. Openlaszlo was very attractive before the flex compiler and framework became free. However, the openlaszlo team has decided that they will combine DHTML with flash to provide the technology most people can accept, which breaks down the limitations of DHTML. Flex attracts me because it allows me to perform operations that cannot be performed in common browsers, and these operations will produce the same results wherever they are. In addition, Flex is faster than openlaszlo because it uses the JIT compiler in Flash 9. Because Flex is free now, there is no reason not to use it.
Flex on the desktop
Of course, if my dream is to learn a GUI system in depth, will this tool be flex? Because it was originally designed for Web Ria?
The flex UI can initiate communications with its server or any other server it chooses. The server cannot initiate communication with the flex UI, which is important because it ensures security (similar to an open port on the computer ).
However, the flex UI not only communicates with the server, but also with local applications. Therefore, you can create an application in any language you like (or even a dynamic language like python or Ruby) and then build a beautiful UI using Flex.
Adobe is developing a new tool called Apollo, which supports creating desktop Ria using Flex when running across OS. This means that your flex skills can be further used to create smooth desktop applications, it also means that you can easily build applications that can run on the web and desktop (I have seen expensive and difficult tools that support other languages to implement this function ).
Conclusion
We obviously cannot wait for sun to fix all Java problems. In the end, open-source Java may have a huge impact on fixing Java defects. For example, the work in java media framework (JMF) may be restored. The installation may be fixed one day. This is entirely possible, but if you need to solve the problem now, the solution is to take the strengths of each part of the language. We have already done this. You do not insist on using a database for an application; you use a dedicated system, such as mysqloracle. Sun can directly support jruby development for mixed Java/jruby programming. We will see that other languages with special purposes will appear to solve special problems. If a dedicated system can better solve this problem, why should we insist on using a Java library for the UI?
As shown in turbogears-Flex demo I created with James Ward, a language like python (or Java, Ruby, C #, or other) may be used as the backend and flex is used to build the user interface. This can even be implemented on desktop applications (more can be implemented using the forthcoming Apollo tool ).
More information
On the adobe.com web site and http://www.flex.org/, you can get rid of all flexinformation. This is a rich site that contains a large number of examples, tutorials, and screen recordings. They even have an online flex compiler that can be tried immediately. There is also an in-depth presentation provided by James Ward about using Flex for development. Another screen recording is being created, showing how to use flex as the front-end of a Java Server application. When it is completed, I will notify you in the Developer Center. Download Flex (trial or purchase ). You can now create a low-cost and powerful Java combination on the server (you can run Linux on its hardware), and create an interactive flash interface on the client.
About the author
Bruce Eckel has written many books and articles on computer programming. He often holds speeches and lectures for computer programmers. He is a member of the ANSI/iso c ++ Standards Committee. His most famous books are thinking in Java and thinking in C ++, which are suitable for programmers who have little experience in object-oriented programming. Most critics believe that these works are more valuable than most introductory articles about Java or C ++ and are more suitable for teaching. Both of his books can be downloaded for free. However, thinking in Java, his latest book, fourth edition, no longer provides free versions or electronic versions.
Related technical articles:
MySQL Management in flex
Value of PHP Web Services
Ten misunderstandings about Adobe Flex
Use Adobe AIR to create a desktop conversation Application
Download resources:
Flex builder 3 download
Flex builder 3 beta download
Adobe air sdk beta download
From: http://news.csdn.net/n/20080229/113994.html