Paper Example Undergraduate 1,812 words

Object oriented programming concepts and applications

Last reviewed: May 30, 2009 ~10 min read

AJAX Programming

The integration of JavaScript and XML has led to the development of the object-oriented language AJAX (Asynchronous JavaScript and XML) (Zucker, 2007) which is making rapid prototyping and application development for Web-based applications significantly more efficient than previous-generation Web technologies. Ruby on Rails has emerged as the most preferred object-oriented programming language for AJAX-based applications as a result (Bachle, Kirchberg, 2007). Tu fully appreciate the design objectives of AJAX and its implications on the future of application development, the dynamics of Web 2.0 platform development and social networking need to be considered. Both of these factors have served as the catalyst that has made AJAX development become pervasive in rapid application development and Web development initiatives today. The asynchronous nature of AJAX specifically addresses the need for interactivity of Web-based applications that Web 2.0 design objectives define, and social networking-based applications require. In addition to all of these factors is the pervasive use of XML today as an integration and data interchange standard, which as part of AJAX, has made it possible for mash-ups to be quickly created. A mash-up combines two disparate and previously not used sets of data to create a new application (Viswanathan, 2008). An example of this would be the development of search engines that do not need to refresh every data element found in constructing a custom taxonomy of search results for example (Wusteman, O'hlceadha, 2006). Python supports Ruby on Rails development and is the object-oriented language that much of the search engine Google is passed on. To see an example of how Ruby on Rails development based on AJAX supports data aggregation using Python, see forecastwatch.com. The integration of 3rd party data elements through XML is evident in this application, and selecting Weather Enthusiasts on this site also shows ForecastAdvisor. The ForecastAdvisor website is also based on Ruby on Rails and shows the integrative aspects of AJAX, including its asynchronous communications capability.

Catalyst leading To the Development of AJAX Programming

The continual maturation of Web-based programming to move away from page-based definition of applications to more interactive experiences for users initially led to asynchronous development languages that eventually led to AJAX being developed and adopted en masse (Serrano, Aroztegi, 2007). At the center of the revolution away from purely static-based development to interactive, more asynchronous development was the introduction of Web 2.0 development standards as initially defined by Tim O'Reilly, and shown in Figure 1, the Web 2.0 Meme Map. These attributes of a more interactive Web experience, from the ability to allow users to control their own data to the development of applications that allowed for people to create their own data taxonomies, often on the fly, led to a massive shift in development tools and platforms. Ruby on Rails, since the introduction of the concepts of Web 2.0 programming, has emerged as the dominant platform due to its adherence to the design objectives that emanate from a functionality analysis of how to transform Web 2.0 design goals into programming platforms and tools (Bachle, Kirchberg, 2007).

Figure 1: Web 2.0 Meme Map That Serves as a Foundation

for AJAX Design Objectives

Initially in response to the development environments that emanated from the new, unmet and urgent needs to give programming languages the ability to scale asynchronously to meet user requirements for interoperability, AJAX initially focused on dynamic access to HTML data. This proved to be problematic at the outset and often led to incomplete pages, and slow performance at the client, as the Web Browser, as opposed to the server in HTML, do the majority of processing in AJAX-based applications. Examples of applications created during this period of time include Adobe's AIR framework, SilverLight from Microsoft, and Opera Desktop from the company of the same name (Serrano, Aroztegi, 2007). The "groundswell" of change that consumers are having on all industries including the development and continual improvement of Web programming languages (Bernoff & Li, 2008) continues to revolutionize social networking as well. Much of the existing websites for Facebook, Friendfeed, Twitter and many others are based on AJAX programming principles and technologies as they allow for selective, asynchronous updates to specific Web-based application components. The continual improvement of Web-based gadgets and today, widgets that are applied to specific pages of a website or blog are also extending the concepts of rich Web application development through the development of standalone-based AJAX applications that can run independent of browsers as well (Viswanathan, 2008). This is the technological direction of AJAX. It is moving more toward creating completely stand-alone applications that can via XML integrate to third party data to gain valuable database and table-based parameters for the creation of mash-ups, which were briefly explained at the beginning of this paper (Serrano, Aroztegi, 2007)

Deconstructing AJAX and Its Integrative Components

Unlike previous generation development languages for the Web, AJAX is based on the assimilation of several generations of technologies into a common platform that allows the browser to gain access to data asynchronously, increasing data latency speed in the process. Increasing the latency of applications in secured environments has led security experts to question how effective this strategy can be in a development environment within government installations for example (Chan, 2006). This concern over the security of caching with AJAX has also led to the development of entirely different series of development standards as well for U.S. Department of Defense use as well (Sharma, Varshneya, Upadhyay, 2007).

As AJAX is comprised of JavaScript and XML, the use of Cascading Style Sheets (CSS) as a means to present applications' pages through a browser interface is extensively used. XML workgroups within the standards organizations including the W3C continually fine-tune CSS as a means to allow for greater flexibility and greater selectivity in which specific elements of a given application's screens are updated (Borkar, Carey, Managementani, McKinney, et al., 2006). As a result of this de-coupling of CSS from HTML in the design of AJAX applications, there is significantly shortened timeframes for the development of enhancements to applications and the fine-tuning of extensions. This is particularly evident in how quickly XML is being used as part of AJAX-based application development in distributed computing and distributed order management applications in Enterprise Resource Planning (ERP) implementations as well. At the center of this CSS style sheet independence is the support for the XMLHttpRequest (XHR), an object that is used as either a script tag or iFrame object to allow for selective update to specific images and text blocks to be selectively updated over time.

In conjunction with these technologies, AJAX also uses a Document Object Model (DOM), which is used as a static-based taxonomy that allows for greater connectivity and integration to HMTL, XHTML and XML-based commands into and out of the AJAX-based applications running. Complimenting this area of the DOM is the flexibility and support for given inbound data formats, including but not limited to XML, plain text in ASCII format and the development of server-side scripting application. Taken together, these components create the basic functionality of AJAX and also define the extent to which server-based computing can be pushed to the client for more adaptability and agility in completing application requests over time. The continual improvements in these areas are also setting the foundation for integration of AJAX into broader development environments that have enterprise software implications, including integration into Service Oriented Architecture (SOA) and Simple Object Access Protocol (SOAP) which is commonly used for the creation of Web Services on the Microsoft .NET platform for example. The extensibility of AJAX as the development language of choice for Web Services is discussed next.

Web Services and the Propagation of AJAX through Enterprises

You’re 77% through this paper. Sign up to read the full paper.

Sign Up Now — Instant Access Already a member? Log in
130,000+ paper examples AI writing assistant Citation generator Cancel anytime
Cite This Paper
PaperDue. (2009). Object oriented programming concepts and applications. PaperDue. https://www.paperdue.com/essay/ajax-programming-the-integration-of-21488

Always verify citation format against your institution’s current style guide requirements.