. NET vs j2ee--facing the absurdity and misunderstanding of SOA

Source: Internet
Author: User
Tags continue object model web services client advantage

·. NET and Java-EE in the financial industry is increasingly close to the trend, both claimed to provide a different from each other, sounds very attractive personalized application services.

• Rational It executives are acutely aware of the fact that both. NET and Java EE will have their own place in the application of SOA ideas in the future.

· Microsoft's. NET technology is an endless business opportunity in today's financial markets.

• Once upon a time, absurdity and misunderstanding remain. NET and Java-EE platform lingering: it seems that no one it decision-makers can see through the fog, and then make a rational choice between the two platforms.

• Today, technical executives have been able to grasp the motivation of demand and make the right choices on both platform architectures.

Topics covered

SOA (service-oriented architecture, service-oriented architecture) has become a core technology issue in the global industry, then the technical standards for SOA implementation become a core issue of critical concern. In this area, all the IT managers will have to face an age-old problem: Java EE and. Net, who do we choose?

I'm not willing to try to answer yes or no, the choice of a particular application in a specific enterprise is not within the scope of the discussion, but this article does a wide collection of the universal thinking of today's IT professionals in the financial field and the methodology of their choice of technical architecture. IT managers and software providers will be able to find some surprising conclusions from this article's discussion of the technical architecture, and to understand how the financial IT experts think in this debate about Java EE and. NET technology architecture. So since the birth of Java EE and. NET, the "absurd arguments and myths" that pervade your mind about these two platforms is likely to disappear.

Background

In the 90 's of the last century, object-oriented programming (OOP) has caused many software development standards. The first is Microsoft's Component Object Model (COM), a modular (component-based) technology development architecture derived from Microsoft's early object linking and embedding technology (OLE). A slightly more senior technician should know that the most common ActiveX technology in Internet applications today is built on the COM framework.

2002 Microsoft's comprehensive use. NET replaces COM from the logical layer as a new software development framework (COM is still supported). NET technology, unified Microsoft's different technical concepts and platforms. As a strategic brand,. NET provides a native solution for Web service and a standard for promoting interoperability between different applications and systems.

In 1993, after Microsoft introduced COM, Sun company launched the Java platform in 1995. The Java platform consists of a set of application development languages (Java), APIs, and Java Virtual machines (JVMS), which allow programs written in Java to run on different operating systems. In fact, Sun's introduction to Java was designed to enable programmers to develop portable applications without caring for hardware and operating systems. At the end of 1999, Sun presented the Java Platform Enterprise Edition (Java-ee---Enterprise Edition), which was applied to major IT providers to build robust application frameworks such as IBM, Oracle and BEA, among others.

In 2003, Sun launched the Java EE 1.4 Edition, adding Web services support, in addition to enhancing more robust enterprise applications. Sun has dubbed this most popular version Java EE.

Because. NET and the original intention of Java EE, make the competition between the two often mixed with some inexplicable absurd. But the recent debate over the issue between it experts and it policymakers has focused more on the technical pros and cons of business practice, as it will help them make the right choice.

Some data

Almost every IT technology manager has ever heard of it. " NET application of the lack of ductility or the Java-EE architecture is not easy to develop "story, indeed, the two platform of cognitive misunderstanding in the industry is widespread."

Just over the last two years, many IT managers have deliberately rejected another platform with a personal bias against one of the platforms. They refuse to deploy a platform simply because of an unfounded personal expectation, or even from a technical article in a magazine. The situation is so prevalent that it surrounds. NET and the Java EE who gifted who the bad discussion quite a lot.

We admit that. The scalability of the net platform is constrained by its particular intel-based hardware platform, but we should not overlook it. NET platform, it has more interoperability than the Java-EE platform, and allows developers to take advantage of existing ones. NET components to build more complex solutions without costing too much.

Java EE has been supported by most vendors, including SUN,IBM, so the maximum flexibility and portability of Java EE is not questionable. On the other hand. NET platform is fully supported by Microsoft, so it has a more consistent way of behaving and predictable.

Unfortunately, the lack of first-hand testing of the two technology platforms always makes subjective assumptions often above the development of technology itself. The blurring of. NET and Java EE has also led to the indecision of it executives at critical moments, and even back to the early years of this century, when the platform was distributed as follows.

Net 22%

Java EE 26%

Not sure 15%

There's no 30%.

There are 7%

Cross-industry survey of Global. NET and Java Technologies (2002)

Source: Merrill Lynch & Co.

The table above is a 2002-year Merrill Lynch global data on the application of Web service on both platforms for 100 CIOs worldwide. A survey of 100 CIO shows that their company lacks a clear Web service application strategy.

The following table shows 2002 years. NET and Java EE platform in the United States the largest 100 banks in the application distribution.

Net 15%

Java EE 36%

Not sure 24%

There's no 5%.

There are 20%

Table for 2002 platform distribution for the largest 100 banks in the United States

Source: Assessment Report by Global financial advisory and consultancy firm TowerGroup

A few years later, IT managers ' decisions are becoming more rational, and they are starting to make more choices based on business needs and technical factors. We have finally found that the same bank often exists at the same time. NET and Java EE Two technical architectures, more importantly, WEB Services has become a common bridge between these two platforms.

Back to the original

Which platform is more suitable for new applications? Or should we upgrade to that platform? A decision must be made. In the last 6 years,. NET and Java EE platform in the global scope has not been able to maintain the absolute advantage of each other, they have their own characteristics.

TowerGroup, the world's leading financial consulting firm, in a discussion with CIOs and it architects in the financial industry in 2006, found that their choice of the two platforms had clearer goals and expectations, a good opportunity to dispel misunderstandings.

At least two points in this discussion deserve our attention: companies do not seem to be inherently biased; there is no clear indication that the platform is more malleable and reliable.

(1) for. NET and Java EE have no particular preference.

After extensive investigation, TowerGroup company found that the previous preference for a technology platform is based solely on individual hobbies and impetuous "swarm" mentality. This trend is now becoming more rational, of course, there are still some IT managers have a personal hobby.

But the company's strong focus on Web service and SOA means that personal indulgence for a platform is no longer an acceptable basis for platform selection.

(2) There is no evidence that the platform is more malleable and reliable

Although there are many about. NET and Java-EE platform performance, but most of these reports are either from Microsoft or from the Java EE vendors, making their fairness questionable. Perhaps their findings are true, but the supplier's own performance tests themselves dilute the value of the research results. In addition, the design of test case is very complex, at most only one or two more comprehensive test cases, the other use cases are very pale and simple, greatly restricting the adaptability of the test scope, so far from the actual application scenario.

The inevitability of difference

Although for. NET and the personal preference of the Java EE platform seem to be unfounded, but IT managers acknowledge the fact that the diversity of two platforms is often an important reference for their development, selection and maintenance upgrades.

(1) Portability between the hardware and the operating system

. NET and Java-ee the biggest difference between the financial enterprises to do the technical selection of the important basis: the data center of the hundreds of servers between the ability to transplant applications. Because the Java EE is a set of cross-platform application specifications, so for those who need to deploy to different servers in the application, the Java-EE seems to be a better choice.

However, the above advantages of the Java EE have been seriously challenged by two factors.

First of all, there are no two manufacturers of Java-EE specifications are exactly the same. This subtle difference in deployment, storage, and security specifications means that an application transplant between two platforms needs to pay for this discrepancy. Because for many applications, the portability of applications is far more important than maintainability.

Second, banks have always had the need to upgrade to a server with high-end processing capabilities in order to overcome the bottleneck of application capability. But as Windows-intel-based machine processing becomes more powerful, this demand is minimized. Unisys has launched a windows-based host (Mainframe) 6 years ago, IBM has also launched 64-bit Windows-compliant systems, and CPU cascade technology allows for four CPUs on SMP (symmetric-multi-processing) Windows Server systems. Further. NET operating system (Vista and Longhorn) will enter the high-end processing market, especially the emergence of network computers, so that a large number of stand-alone distributed processing capacity sufficient for the current mainframe workload.

(2) Easy to be developmental and disassembly

. NET's ease of use, efficiency and cost are all ahead of Java EE. Use. Net,it experts are less concerned with the bottom details than using the Java EE. So you can quickly capture business opportunities and lower costs.

. NET is much more flexible than Java, which allows developers to use multiple languages to develop on the same platform, thereby leveraging a wide range of development resources. All in all, make the development team work more efficiently.

The important thing is that. NET has a relatively large number of available resources. For the financial industry, the Windows platform occupies an absolute number, and almost all ISVs (independent software vendors) support the Windows platform.

In addition, most IT executives are concerned only with the solution, not the platform itself. They do not require ISVs to help them migrate from the. NET platform to the Java EE platform, so the financial industry often maintains a different application environment.

Two factors are also a serious challenge. NET platform for ease of use, efficiency, and low cost (though. NET programmers are always faster and more efficient than Java programmers.

It executives involved in the TowerGroup company survey revealed that for a large project, the TCO between Java EE and. NET (total cost of ownership: including resources, time and money) was only less than 10%. At the same time, many IT managers think that Java-ee is more suitable for performance tuning, these two factors are seriously weakened. NET's advantages.

(3) resources available within the enterprise

Effect. NET and Java EE selection of the biggest factor from the internal resources available within the enterprise.

If most programmers are good at Java EE, then the enterprise will naturally choose the Java-EE platform, and eliminate the cost of retraining; instead, companies will choose. NET platform.

The TowerGroup company's survey believes that in the future, pure code developers will gradually turn to the Windows platform, because. NET supports multi-language development and is far from the bottom of the system. However, Java EE will continue to develop in companies that focus on performance tuning and customized development in specific areas.

Based on this discovery, towergroup an assessment of today's. NET and Java EE markets, as shown in Figure 3.

Net 11%

Java EE 17%

Not sure 15%

There's no 2%.

There are 55%

The platform distribution of US financial enterprises

Source: TowerGroup Assessment Report

While many of the top 100 banks continue to support one of these platforms, most banks are implementing an SOA architecture while maintaining two platforms.

(4) Further business opportunities

Regardless of how the bank's IT organization views the two platforms, it executives surveyed by TowerGroup agree that the Java-EE platform has been widely adopted. In this race, Java-ee is ahead of. Net, and this leading advantage will weaken over time. Several IT managers also believe that Java EE has a longer life cycle, a more sophisticated platform, and more technical expertise than. NET.

In a recent survey of TowerGroup, a European bank IT manager, participants were asked if there was "a lot of deployment." NET platform, no one looked up or raised their hands; but everyone confirmed they had deployed the Java EE platform. In any case, it seems that this leading trend is hard to change.

However, there is a clear consensus in the discussions with them that Microsoft does have a chance to improve. NET in the banking market, filling too many blank.

(5) The difference between desktop application and enterprise-level application

Most people think that one of the most striking differences between. NET and Java EE is. NET platforms are often deployed on the client side, while the Java-EE platform (such as WEBLOGIC/WEBSPHERE/JBOSS/TOMCAT) is more deployed on the server. In fact, this is a nondescript misunderstanding. NET is a technical framework, not a product, not a Windows client, while the Java EE is just a protocol, or the application architecture that complies with the Java EE protocol.

In a way, people are right. NET platform's cognitive misunderstanding also created a joke: Because Microsoft has extended its products to every corner of the enterprise application, from low-end desktop applications to high-end enterprise applications, almost all see. NET platform; then those it executives will inevitably be able to generalize their feelings about low-end products to other high-end Microsoft platforms. When an IT manager answers at home after a busy day and turns on the computer for hours to face virus interference on the PC, the Windows platform will leave a "deep impression" on them. In fact, Microsoft's high-end and low-end products (such as Win2K pro/windows xp/win2k server and Vista/windows server 2003/longhorn) are not the same, but this subjective connection is difficult to avoid.

Perhaps Microsoft needs to have different products to deal with the home application environment and the robust business platform based on key business.

(6) Strong publicity and training

Many banks are right. NET platform in enterprise application technology is ignorant, this right. NET platform lack of awareness extends to the field of training. Some financial institutions complain that Microsoft has never provided any leverage. NET architecture to meet the needs of the business training. If this complaint is true, then Microsoft may only have a chance to say "goodbye" to financial apps.

Given this complaints from users, Microsoft needs to provide the same training as other competitors in the financial industry.

(7) Do not simply mention. NET Technology

In short, Microsoft should recognize those who are trying to buy. NET platform of technical experts are some wily master, if Microsoft blindly pure. NET technology, it will make these "masters" feel this is simply a unique toy, thus the right. NET technology to build a strong solution to the ability to express doubt.

Whenever architects who are preoccupied with SOA answer questions about whether or not the. NET platform is appropriate for their application, they always answer, "Oh, yes, because." NET has been embedded in Microsoft's products.

One of the reasons we saw the popularity of EE in an earlier survey was its resilience. If. NET needs to achieve the same success in the financial sector, and is bound to have the same enhanced resilience and configurable features as its rivals.

(8) Java EE needs to be simplified

When the. NET became active in enterprise-class applications and increasingly impressed policymakers, it forced the Java platform to make a difference in existing high-end applications.

Sun is working to simplify the Java EE Development specification, making it easy and enjoyable for developers alike. NET Developer. A typical example is the advent of Java Studio Creator, which allows developers to drag and drop components using drag & drop to produce a Web application. Open source organizations are also trying to simplify the development of Java EE, so that the use of Java-EE development can be faster and cheaper.

In addition, the number of program languages migrated to the Java virtual machine is increasing, and it is now not just the Java language that can run on the JVM. So. NET's advantages in this respect began to weaken.

Summarize

. Net vs. Java is no longer so elusive, and today's IT executives have been able to use more objective criteria to decide which platform to use and when to use it. Especially in the era of SOA, technical architects are always willing to accept the coexistence of these two platforms and use Web service interconnection.

Today. NET technology is becoming more and more occupy a prominent position. While there is still some distance between the advantages of maturity and the Java EE, Microsoft can take a strategy to quickly bridge the gap.

Java EE also has the opportunity to "keep up". NET platform is easy to use and efficient, and the followers of Java EE are working hard.

Microsoft's frustration in the high-end market is not because of technology, but because of its consistent market strategy. NET itself is an enterprise-class platform technology.

Eventually. NET and Java-EE technology are moving towards the integration of the situation, Web Service, SOA, development speed, lower cost and flexibility are their inevitable choice.

In the future, the only way to survive this competition is to have an soa-based ". NET and Java EE" ———— instead of ". NET vs. Java".



Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.