Presentation-Oriented and Service-Oriented Web Applications – a Guide to High-level Web App Developm
Web application development is undeniably, a growing sector in the software industry. As more and more web apps today are designed to run on various types of web browser, tech companies keep on developing better web apps in order to stay in the competition.
The number of web apps continues to increase at an exponential rate due to the rapid developments in web browser technology. Well-known app stores like the Chrome Web Store, Microsoft Store, and Mac App Store continue to attract both consumers and web app developers with their apps. For consumers, web apps that offer great value are perfect to download and install on their mobile and desktop devices. For developers, creating apps not only enhance their coding skills, but also provides them with opportunities to sell, attract clients seeking for development services, and build their portfolio on web application development.
Every developer has his own set of programming skills. In web application development, a developer can be an expert in client-side programming or server-side programming, both of which require concrete knowledge on different programming languages. Complete familiarization with Server-Client Architecture also helps a developer in creating better plans and programs relevant to web application development. Furthermore, high-level understanding of Web Application Framework (WAF), a software framework designed to support the development of dynamic websites, web applications, web services and web resources, helps development teams in the proper management of projects.
There are different types of WAF which developers are using, based on their set of skills, when developing web applications, dynamic websites and web services software systems. Some of these frameworks are the ASP.NET, C, C++, PHP, Perl, Java and JavaScript.
To better understand the role of WAF in web application, dynamic websites and web services development, let us establish a clear definition of those terms.
Web Application
As popularly defined across the internet, a web application is “a dynamic extension of a web or application server.” Oracle, the developer of Java framework, further categorizes web application into two types which are:
Presentation-oriented: A presentation-oriented web application generates interactive web pages containing various types of markup language (HTML, XHTML, XML, and so on) and dynamic content in response to requests.
Service-oriented: A service-oriented web application implements the endpoint of a web service. Presentation-oriented applications are often clients of service-oriented web applications.
Web Service
The World Wide Web Consortium (WRC) defines a web service as a “software system designed to support interoperable machine-to-machine interaction over a network.”
Website
Wikipedia’s description of a website is that it is “hosted on at least one web server, accessible via a network such as the internet or a private local area network through an internet address known as a uniform resource locator (URL).”
From the two types of web application coined by Oracle, it can be analyzed that service-oriented is equivalent to the server-side (the web server) while presentation-oriented is equivalent to the client-side (the web browser) in a Client-Server Model (a messaging model in Java WSF). This interaction between a web browser and a web server is clearly visible in a typical web application request handling wherein the client sends an HTTP request to the web server and then the web server process the request by converting it to HTTP response and then returns it to the client.
For developers, it is important to understand these two types of web application defined by Oracle before working on web application development project.
Development of service-oriented and presentation-oriented applications had undergone significant improvements over the years. Various standards evolved, guiding web application developers on their projects. Some of these standards and their relative applications are as follows:
Presentation-Oriented Content Services Through the Web Services for Remote Portlets (WSRP) Standard
Service-Oriented Web Application Development with IBM WebSphere Portlet Factory Software
Developing Service-Oriented Applications with Windows Communication Foundation (WCF)
Building End-to-End Multi-Client Service Oriented Applications with AngularJS
For more information about the Oracle Web Application Development, you may click on this link: Developing Enterprise Applications for the Java Platform