What in the world is going on in the marketplace? Technology is moving so fast that it is sometimes a little difficult to tell what is happening.
Let’s take a short trip back to the past.
It wasn’t too long ago that applications were designed, developed, and deployed on a single machine. For those of you that can remember the early days of the personal computer era, things like dbase, FoxBASE, and the like might ring a bell. Everything ran on the same machine — the user interface, the business rules, and the database services.
Then along came local area networks, which ushered in the era of clientserver applications. Now the user interface and the business rules sat on the PC and sent requests to a client-server DBMS such as Oracle or SQL Server, while on the server side, records were processed and results were returned to the client.
As LANs matured and their reliability improved, application development went through yet another evolution, namely, the advent of 3-tier architecture. This transformation resulted in the user interface, business rules, and data services each becoming its own independent logical element in the application architecture. The physical world may have implemented each element on a separate machine, but that was not required.
The main advantage of the 3-tier model is that business logic could now be broken up into components, where they could be used not only in one but many applications. Additionally, changes to business logic in the server did not require the calling party or client to change at all. In other words, the details of the implementation of business logic or the function is not important, as long as the way it is called and the type of information that it returns do not change. Let’s face it, the world is changing quickly and we need to be able to adjust without having to re-deploy.
Of course, the initial implementation of the 3-tier model (later to become the n-tier) was primarily on common machines and operating systems such as Intel, Windows, and Unix. Vendors each supported their own brand of components. Microsoft supported COM, followed by DCOM. IBM promoted CORBA, and Sun touted RMI. Each of these middle tier component flavors was proprietary and did not provide for inter-operability and communication among disparate pieces. In order for a Microsoft application to talk with a CORBA component another piece of software was required for translation. The same was true for apps trying to communicate with DCOM objects as well.
All of this made it difficult for diverse systems to talk to one another, creating an increasingly significant problem, as Internet business-tobusiness applications became the focus. The web, a relatively recent addition to the overall IT architecture, has dramatically changed the way we look at application development and correspondingly the deployment of associated services.
If you log on to Land’s End, for example, it’s not unlikely that the underlying application will have to utilize components developed by a number of other parties such as AMEX, MasterCard, Visa, UPS, FedEx, along with a host of internal systems to provide the total consumer shopping experience.
Sun, with it’s Java language, was in the right place at the right time. Java’s ability to be compiled to byte code and run on any machine that had a Java Virtual Machine gave it portability. The fact that it was designed to be totally object oriented, target web-based applications, and observe security issues associated with distributed apps gave it tremendous appeal to corporate clients.
Visual Basic, on the other hand, earned its stripes in the Windows-based application development world. It’s easy to develop apps that leveraged the Window’s Operating System, and as it VB evolved it took on more and more features that made it increasingly object oriented, capable of creating reusable COM/DCOM objects, and a viable tool for web-based applications. Today, Microsoft claims that there are more than 3 million Visual Basic programmers in the world.
Introduced in 1991, Visual Basic has gone through 6 versions. Each one increased power, features, flexibility, and capability, leading up to two major programming languages — Java and Visual Basic, with each camp feeling that their product is better.
Article Source: http://EzineArticles.com/255124