This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
XML has become the widely accepted communication standard for the Internet. XML can be combined with database to create a powerful platform for querying and retrieving data. There are two types of XML databases, XML-enabled and Native XML. This paper will discuss XML and database, their relationship and how they interact.
Choosing the right web development platform can be a daunting task. One of the most important decisions to make is to choose the platform or programming language. As is the case with all technology, it will inevitably change as will the platforms and software. Whichever the choice, it must be able to evolve with an organization. There are many alternatives to choose from when deciding on database driven solutions that can be used to create dynamic websites. PHP, ASP.NET and Java are three of these solutions . Each technology hasÂ advantages and disadvantages as well as issues that need to be considered when selecting platform.
In today's business environment, static web pages are a thing of the past. Static web pages may be easy to setup but take time and effort to maintain and update.. With database driven, dynamic web content can change through user interaction, the pages are usually easier to maintain, and design elements are separated from contents. When considering the platform and language to use for a web project, one has many factors to consider and take into account. Some of these factors include performance, security, available frameworks and libraries, complexity, scalability and robustness. This paper will outline these three technolgies and recommend a solution for a small to mid-sized organizations seeking to deploy a dynamic, database driven web site.
Personal Homepage Tools was originally created in 1994 by Rasmus Lerdof. It was a set of Common Gateway Interface (CGI) binaries written in C to replace PERL scripts used to maintain Lerdof's online resume and track the number of visitors to his website. In 1997, two Isreali developers rewrote the parser and the basis for PHP: Hypertext Preprocessor (PHP) was created. Today PHP is the most widely used web server extension language and is used on both large and small websites.
PHP was designed to be an HTML embeddable language. PHP is implemented by writing or inserting scripts within HTML pages. The PHP scripts are separated from the regular code by identifiers, and a file containing PHP is distinguished from regular HTML by the file extension. The extension identifies the files to the server, triggering the server to take action on the file before sending it to the end-user's computer. Since PHP is a scripting language, it means it is not required to be compiled to be used unlike Java and ASP.NET. This is the reason it can be embedded into HTML and executed.
There are numerous advantages to using PHP as a development platform one of the major advantages to using PHP is that web applications can be developed very rapidly. PHP was designed to be very Rapid Web-Application Development tool. A web application project that may take months to code in C++, can be developed in days using PHP. Another advantage is that applications are very stable and do not depend on the browser technologies. When using PHP the browser does not know that the HTML page is generated by PHP. Other advantages to PHP include PHP's excellent database connectivity to all SQL database servers, partial support for object-oriented programming features, and PHP performance can be optimized with the use of third-party products such as Zend optimizer which speeds up performance. PHP also has a very large user and developer base so many applications are open-source therefore less expensive to develop.
The process of removing the processing code from individual computers and moving it server side creates benefits for PHP over other development languages. Workload by the user's computer is diminished since their computer is not required to conduct of the processor-intensive work. This reduces page load times and enhances the browser experiences. Data collection and use with PHP is convenient since the processing of code is on the server. Applications can be developed to allow users to have access to this centralized data. This allows for dynamic websites that can react to user input.
PHP makes use of stored variables. The scripts can encode and store visitor information that can be passed to other code. This code can then query the database to pull data dependent on the user's inputs. Through these means, PHP can take user input and change a website in response to input unlike hard coded HTML which is generally static (Christian, 2007).
PHP is popular for many reasons. It is easily integrated and accepted across many development platforms, is compatible with almost all servers used today (Apache, IIS, etc.) and supports many databases (MySQL, Oracle, PostgreSQL, Generic ODBC, etc.). Another reason for its popularity is that Windows applications integrate seamlessly with online PHP. PHP is a widely-used alternative to competitors such as Microsoft's ASP and Sun's Java platform. It's wide spread use can also be attributed to the fact that it is free to download and use but also its open source nature.
Prior to 1997, web pages content was largely static. These web pages needed to be continually and manually, updated. As the Internet evolved, it was obvious there was a need to create web sites that were dynamic and could update automatically. Microsoft's Active Server Pages (ASP) was created and to meet this need. ASP is executed on the server side, with output being sent to the user's web browser, allowing the server to generate dynamic web pages based on the actions of the user. ASP .NET is the next iteration of ASP; however it is not an upgraded version of ASP. It is a new language and is not backward compatible with ASP. ASP.NET is a part of the Microsoft's .NET Framework. The .NET Framework is a programming environment used to create, build, deploy and run Web applications and services. It provides a feature-rich application environment, simplified development and easy integration between a numbers of different development languages such as C++, C#, Visual Basic,Â and Jscript(Microsoft, 2005).
ASP.NET uses the Common Language Runtime (CLR) provided by the .NET Framework. This CLR managesÂ execution of the written code. ASP.NET code is a compiled CLR code instead ofÂ interpreted code like PHP (ASP.NET, 2010). Similar to PHP, ASP.NET is a server-side Web technology that can be used to develop dynamic and scalable Web applications. Applications that can connect to databases, interact with users, and provide asynchronous services. Both small business web sites and a large corporate web applications distributed across multiple networks can benefits from ASP.NET's features. ASP.NET executes code on the server before it is sent to the browser. The code that is sent back to the browser is pure HTML and not ASP.NET code. Similar to client-side scripting, ASP.NET code writes alongside HTML. The script that is written alongside the HTML is not sent back to the browser which prevents others fromÂ stealing the code that has been developed.
One of the advantages of ASP.NET is that it makes it easy for developers to perform common task. Client authentication, form submission, deployment and site configuration are made simple. ASP.net provides a number of other benefits. ASP.NET reduces the amount of code required to build applications and make development of pages simpler and easier to maintain with the use of event-driven, server-side programming model. The pages are easy to write and update since the source code and HTML are written together. Another benefit of ASP.NET is performance. The server compiles the page the first time it is requested. The server then saves the compiled page for the next time the page is requested. Another advantage for ASP.NET is the out of box functionality. There is built-in Windows authentication and configuration on a per-application basis. This allows for safe and secured applications. For better performance ASP.NET comes with early binding, just-in-time compilation, native optimization, and caching services right out of the box. Finally, since ASP.NET is language-independent, it allows developers to choose the language that best applies to their applications. ASP.NET is not limited to script languages, so programmers can take advantage of .NET languages like C#, J#, VB, etc. Since it is built on CLR, it can be used on any Windows server.
Java is an object oriented, server side programming language developed for the Web. Released in 1995, Java was developed by Sun Microsystems. In 2006, Sun released parts of Java as open source software, under the GNU General Public License (GPL).(). The release of the complete source code under GPL occurred in 2007. Java is popular on web servers, and used by many of the world's largest interactive websites. It serves the same role as PHP and ASP but is predominately used for larger-scale web projects. Its syntax is mostly derived from C and C++. Java is also be used to create small programs, called "applets." These applets can be embedded into web pages. Examples may include an interactive video game or weather map in a web page. However, after many years of popularity, Java's use in the browser has continually eroded. Interactive animations have been almost completely replaced by Flash and Shockwave. Microsoft also no longer includes the Java platform with Internet Explorer or Windows.
Java applications are compiled to byte code (.class files). The source code is first compiled into the byte code. The byte code is a pre-compile version of the program. This version of the program is platform independent. The .class files can be used on any operating system. When the Java application is started, the byte code is interpreted by the Java Virtual Machine. Because the byte code is pre-compiled, Java does not have the disadvantages of interpreted languages, like PHP.
Like the other development languages has is own advantages. Java is a simple, robust, architecturally neutral, portable, interpreted, threaded, dynamic and high performance programming language. Java enables the development of robust applications on multiple platforms in heterogeneous, distributed networks(Gosling and McGilton, 1995). It was designed to be easy to write, compile and debug. To make it simple to use, complex parts of C++ were excluded from Java. Because Java is object-oriented. This means it is centered on creating and manipulating objects and then making them interact together. This allows developers to create portable programs and reusable code. Platform independence is another significant advantage of Java. This makes it easy to move from one computer system to another.Â It is platform independent at both the source and binary levels. Java is designed to make distributed computing easy due to the networking capability that is inherently integrated into it.Â Java is also multithreaded. This means that it has the capability to perform several tasks simultaneously within a single program.
PHP and ASP.Net and Java are all server side programming languages. PHP is an interpreted language that allows HTML and code to be mixed in the same file. Java and ASP.NET are languages that are dynamically compiled when a page is requested. This gives them faster performance as compared to PHP. PHP and Java can both be embedded into an HTML page while ASP.Net cannot. Out of the three, PHP is the only scripted language, affecting its overall performance. Third party accelerators can be used to increases PHP's performance. Java applications can cause huge drain on system resources and ASP.Net has been said to also cause large memory usage and slow execution time. This is caused in large part to longer code path. These limitations can be a serious problem, because applications can scale to thousands of users per second and memory usage will become an issue for Web servers.
All the languages allow for the creation of dynamical drive websites and can be used to build database driven web applications. The simplest and most common applications are MySQL for PHP, Oracle for Java and MSSQL for ASP.NET. Other databases can be by all three languages by simply adding or installing the appropriate drivers. PHP and Java are both open source and cross-platform while ASP.Net is not. PHP works best when used with the LAMP (Linux, Apache, MySQL and PHP) bundled environment, it can be deployed on other platforms. ASP.Net can only run on Windows and Microsoft IIS severs while PHP and JAVA can run on Microsoft's IIS web server, UNIX, Solaris etc. While all of three programming languages have third party frameworks, those available for PHP and Java are mostly open source or free. With ASP.NET, the libraries and components are mostly commercial.
PHP is the most cost effective solution for most organizations.. Software, databases, Web servers and operating system are all free. There are no licensing fees for PHP or Java but there is for ASP.NET. PHP can be run on inexpensive servers or managed hosting solutions. ASP.NET requires expensive hardware and can be hosted externally but will be more expensive than external hosting of PHP applications. Java is the most cost prohibitive as it requires expensive server solutions and external hosted options are limited.
While choosing a web platform, many factors must be taken into consideration. PHP, ASP.NET, and Java are the most popular platforms for web development Each has its own advantages and disadvantages. After careful analysis of these three leading server-side programming languages, and taking into consideration project size and scope for a small to mid-sized organization, it became apparent that the best solution would be PHP. Using a LAMP platform to develop a dynamic database drive website will provide several advantages over the ASP.NET and Java. The determining factors are cost, performance, security, and cross platform applicability. ASP.NET can be costly and has security concerns while Java development can be time consuming and are usually used for large scale deployments. LAMP deployment is easy and efficient. Being able to use managed hosting is also an advantage because internal resources can be freed to focus on their areas of expertise rather than server management. Support is also availabe through a large developer's community that can also help with development and troubleshooting. PHP may have its limitations but they are minorr drawbacks and its strengths far outweigh its weaknesses.