Development platforms getting more powerful

A Burton Group analyst says platforms such as .NET, Java and LAMP are becoming more powerful, more flexible and much simpler to use. Web services and SOA get much of the credit for those advances.

SAN DIEGO -- It's a very good time to be a developer, according to one industry expert.

Speaking at the Burton Group Catalyst Conference last week, Anne Thomas Manes, vice president and research director with the Midvale, Utah-based firm, said that Web services and service-oriented architecture (SOA) have initiated a morphing of architecture infrastructure and developer methodologies.

The resulting effect is that development platforms like .NET, Java and LAMP are becoming more powerful, more flexible and much simpler to use.

"Essentially, what that is doing is making interoperability something that works rather than this torturous framework," Manes said. "The bad news is that you're going to experience a lot of pressure to retire or migrate your older applications to take advantage of this new stuff that is coming out."

Initially, the coming changes will be a difficult for developers to deal with, "but ultimately it's going to be extremely positive and I think you're going to be very happy with the end results of the whole process," Manes added.

Take advantage of new technology

The bad news is that you're going to experience a lot of pressure to retire or migrate your older applications ...


Anne Thomas Manes,
Burton Group analyst,
To truly be successful in the development environment emerging today, Manes said that developers need to take advantage of the new technology available to them, including new application platform releases, frameworks and managed code.

An application platform such as J2EE or .NET is defined by the application programming interfaces (APIs) and protocols that developers use to deploy application systems, she said.

Today, the analyst continued, application platforms have evolved to include enormous sets of class libraries that simplify or automate many processes -- like the allocation and de-allocation of memory -- which used to take a great deal of time.

"The problem is that this infrastructure inside your platform doesn't necessarily talk to the infrastructure that is inside a different platform," Manes said. "Integration across platforms becomes a lot more challenging."

Using frameworks to ease integration issues

To help solve the integration problem, Burton Group recommends that developers make use of frameworks.

A framework is a core set of class libraries, APIs and runtime services that essentially implements a partial solution, Manes explained. A framework is also something that can help developers to build portal-types of applications and automate the process of building Web applications.

"In general, a framework is going to simplify and abstract out a bunch of complex functionality," Manes said.

Application platforms include their own low-level frameworks, she said. The problem is that those frameworks are designed to support all possible application systems.

The need to 'abstract out'

To improve

For more information

Read about Eastman Chemical's SOA experience

One case for developing a service-oriented architecture

consistency, Manes suggests that developers design new frameworks that simplify and "abstract out" the basic functionality desired from the low-level framework included in the platform. This gives developers a limited choice of ways to implement certain functions.

Finally, Manes suggested that developers move to managed code environments. Managed code, she explained, is code that runs in a virtual machine. Examples include Java, C# and Visual Basic.

"Essentially, you write a class in your favorite language syntax … and when you compile that class, what you're actually compiling it into is an intermediate code," Manes said. "This stuff is then portable."

At runtime, this compiled class gets translated by a runtime interpreter. Inside this runtime environment there are things like class loaders to manage object life cycles, memory management for automatic memory allocation and a security framework for performing authentication and authorization functions.

"One of the most important aspects of the managed code world is that it dramatically improves the security of this environment," Manes said.

Programmer chores now automated

Following Manes' remarks, one conference attendee, a chief systems architect for a large financial services firm who asked that his name be withheld, explained that managed code environments handle a lot of the details that programmers used to deal with manually.

"We used to have to worry about every detail of writing security code, low-level connection code, queuing code to manage messaging -- all these frameworks take care of that now," the architect said. "Now we can really focus on business logic."

The architect said that he thinks it will be several years before frameworks and managed code can automate the process of generating business logic code.

"Frameworks can handle things that are always the same," he said. "Business logic isn't something that you can encode in the framework and give to people because the requirements are always different."

Dig deeper on Application servers and Web service platforms

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

SearchSoftwareQuality

SearchCloudApplications

SearchAWS

TheServerSide

SearchWinDevelopment

Close