Logo

Navigation
  • Home
  • Services
    • ERP Solutions
    • Implementation Solutions
    • Support and Maintenance Solutions
    • Custom Solutions
    • Upgrade Solutions
    • Training and Mentoring
    • Web Solutions
    • Production Support
    • Architecture Designing
    • Independent Validation and Testing Services
    • Infrastructure Management
  • Expertise
    • Microsoft Development Expertise
    • Mobile Development
    • SQL Server Database and BI
    • SAP BI, SAP Hana, SAP BO
    • Oracle and BI
    • Oracle RAC
  • Technical Training
    • Learn Data Management
      • Business Intelligence
      • Data Mining
      • Data Modeling
      • Data Warehousing
      • Disaster Recovery
    • Learn Concepts
      • Application Development
      • Client Server
      • Cloud Computing Tutorials
      • Cluster Computing
      • CRM Tutorial
      • EDI Tutorials
      • ERP Tutorials
      • NLP
      • OOPS
      • Concepts
      • SOA Tutorial
      • Supply Chain
      • Technology Trends
      • UML
      • Virtualization
      • Web 2.0
    • Learn Java
      • JavaScript Tutorial
      • JSP Tutorials
      • J2EE
    • Learn Microsoft
      • MSAS
      • ASP.NET
      • ASP.NET 2.0
      • C Sharp
      • MS Project Training
      • Silverlight
      • SQL Server 2005
      • VB.NET 2005
    • Learn Networking
      • Networking
      • Wireless
    • Learn Oracle
      • Oracle 10g
      • PL/SQL
      • Oracle 11g Tutorials
      • Oracle 9i
      • Oracle Apps
    • Learn Programming
      • Ajax Tutorial
      • C Language
      • C++ Tutorials
      • CSS Tutorial
      • CSS3 Tutorial
      • JavaScript Tutorial
      • jQuery Tutorial
      • MainFrame
      • PHP Tutorial
      • VBScript Tutorial
      • XML Tutorial
    • Learn Software Testing
      • Software Testing Types
      • SQA
      • Testing
  • Career Training
    • Career Improvement
      • Career Articles
      • Certification Articles
      • Conflict Management
      • Core Skills
      • Decision Making
      • Entrepreneurship
      • Goal Setting
      • Life Skills
      • Performance Development
      • Personal Excellence
      • Personality Development
      • Problem Solving
      • Relationship Management
      • Self Confidence
      • Self Supervision
      • Social Networking
      • Strategic Planning
      • Time Management
    • Education Help
      • Career Tracks
      • Essay Writing
      • Internship Tips
      • Online Education
      • Scholarships
      • Student Loans
    • Managerial Skills
      • Business Communication
      • Business Networking
      • Facilitator Skills
      • Managing Change
      • Marketing Management
      • Meeting Management
      • Process Management
      • Project Management
      • Project Management Life Cycle
      • Project Management Process
      • Project Risk Management
      • Relationship Management
      • Task Management
      • Team Building
      • Virtual Team Management
    • Essential Life Skills
      • Anger Management
      • Anxiety Management
      • Attitude Development
      • Coaching and Mentoring
      • Emotional Intelligence
      • Stress Management
      • Positive Thinking
    • Communication Skills
      • Conversation Skills
      • Cross Culture Competence
      • English Vocabulary
      • Listening Skills
      • Public Speaking Skills
      • Questioning Skills
    • Soft Skills
      • Assertive Skills
      • Influence Skills
      • Leadership Skills
      • Memory Skills
      • People Skills
      • Presentation Skills
    • Finding a Job
      • Etiquette Tips
      • Group Discussions
      • HR Interviews
      • Interview Notes
      • Job Search Tips
      • Resume Tips
      • Sample Resumes
 

Server Side Scripting

By Exforsys | on July 4, 2007 |
Client Server

Client Side Programming

In web applications, client-side programming is usually written in HTML meanwhile the application servers, the middle tier in three-tier client/server architecture, are usually written in C++ or Java. By using a scripting language embedded in HTML, web servers act as translation layers that allow for communication between the client and server layers. Application servers perform the in-house work of analyzing site traffic and creating personalized pages based on dynamic data such as user history and behavior on previous visits to web sites.

By combining business logic, computation and data retrieval, application servers bear the procedural burden of processing requests and returning responses in HTML, so that they will be understandable by user interfaces (UIs). This layer receives requests from clients and generates HTML responses after requesting it from database servers. Popular scripting languages include JavaScript, ASP (Active Server Page), JSP (JavaScript Page), PHP (Hypertext Preprocessor), Perl (Practical Extraction and Reporting Language), and Python.

Scripting languages are high-level interpreted programming languages. That is to say, at runtime (whereby processing occurs while the program is being executed), scripting languages are interpreted by another program rather than compiled. Compiling turns source code into objects.

Compiling takes several steps to make a program executable and the runtime interpretation that takes place through scripting languages is much quicker. Server-side scripting is a technology that works to help web servers generate dynamic HTML web pages. Scripts are run directly on the web server. Their primary benefit is their ability to return highly customized responses, as discussed previously. They provide highly interactive web sites with user-friendly interfaces connected to databases.

They control user access, respond intelligently to user requirements, and base responses on queries in their databases. Scripting languages can be embedded in HTML and are commonly used to enhance web page functionality with different features such as different menu styles or graphic displays. But, basically, server-side scripting languages help translate and manipulate data from a database on the server. Remember, servers help manage network systems, process requests, and deliver responses.

This article will discuss some of the major server-side scripting languages as an introduction to their role on web servers.

Perl

Perl stands for Practical Extraction and Reporting Language. It was designed by Larry Wall with the specific purpose of processing text. Perl, first released in 1987, is one of the original scripting languages that still remains influential today.

In the early days of the Web, Perl was used to write CGI scripts. CGI stands for Common Gateway Interface and it was one of the first programs that facilitated communication and dynamic interaction between web servers and users.

For example, CGI is often used to process data that has been entered in forms on HTML pages. Currently, Perl has shifted its original focus on text processing and expanded its realm of influence. It is used in network programming, system administration, GUI (graphic user interface) development, and web development. It includes features that support multiple programming models.

Perl’s syntax is similar to C language. C language is a programming language that focuses on procedure and structure. It was used by both operating systems and applications. (However, C++ and Java are replacing it because of their ability to write increasingly popular object-oriented programming.) Perl also draws influence from shell scripts, which function as command line interpreters for operating systems and provide the interface where users make requests.

Perl also contains the elements of ‘awk’, ‘sed’, and ‘grep’. ‘Awk’ is an interpreted programming language developed for manipulating and filtering text. It is included in most versions of UNIX. ‘Sed’ refers to ‘Stream Editor’. It is a UNIX text editor that applies editing commands to entire files. ‘Grep’ is the acronym for ‘global regular expression print’. Grep allows users to search multiple files for particular strings of text and displays all files where the string occurs. Like the other influences, C language emerged from UNIX text editing programs.

While Perl is one of the first scripting languages it continues to thrive in new versions such as Perl 5.8.8. Perl 6 is still in development. Perl is an ‘open source’ program, which means users have access to source code. They can alter it and re-distribute it. It is widely known as the “glue” or “duct-tape” of the Internet. Perl’s greatest contribution is that glue-like function. It makes otherwise uncooperative systems work together and programmers able to creatively choose one of many ways to accomplish their goals.

However, as an older language Perl is being replaced by languages like Python that offer similar features but simpler design. Operating systems that support Perl are UNIX systems, MAC OS 7-9 and X, Windows, and VMS (Virtual Memory System).

PHP

PHP stands for “hypertext preprocessor”. It is a free software that builds dynamic web pages. PHP is a reflective language. As a program, it can observe and modify itself at the same time that it is being executed. PHP can run on most web servers and its complete source code is available for free, so users can customize it to their needs.

Its focus is server-side scripting and it can be compared to other languages like ASP.NET by Microsoft and JavaServer Pages (JSPs) by Sun Microsystems in its ability to provide users with dynamic content through web servers. In HTML, PHP is embedded between tags. These tags make it possible to jump between the HTML and PHP.

PHP is the ‘P’ in LAMP architecture. LAMP architecture is a collection of software programs that, together, are used to run dynamic web sites or servers. ‘L’ is for Linux, the operating system. ‘A’ is for Apache, the web server. ‘M’ is for MySQL, the database management system (DBMS) or the database server. ‘P’ stands for PHP, which provides the programming language. (Sometimes the ‘P’ stands for Perl or Python, alternate programming languages.)

The scripting component of LAMP allows users to execute application on web servers through their web browsers. PHP can process text streams easily even if they are coming from different sources. PHP, like other scripting languages, is also referred to as a glue language. Glue languages are used to connect and translate software components.

To make PHP work as server-side scripting, three components are needed: a PHP parser, a programming routine that analyzes and breaks down programming language/sentences into more easily processed functions. PHP parsers are usually CGIs or server modules.

CGIs are the most common way for users to interact with web servers. Server modules are programming modules that provide services to other programs. The other two required components are a web browser and a web server. PHP creates dynamic web content and can send or receive cookies. Cookies are text files sent between the web browser and web server used to analyze user behavior and create customized web content.

ASP

Microsoft developed ASPs or active server pages as a server-side scripting engine, an alternative to CGIs and JSPs (Java Server Pages). They are not, in and of themselves, scripting languages, but engines. They are HTML documents embedded with scripting languages like VBScript or JScript.

These script functions are executed on the web server. Their primary responsibility is to create dynamic, interactive user sessions. They allow users to interact dynamically with programs and databases. These sessions are cookie-based and intelligently record user behavior from one page to the next.

Although the primary scripting languages used are VBScript and Jscript, other active scripting engines can be mobilized to interpret functions embedded into HTML with other, compatible, often open source scripts (PerlScript, for example).

The purpose of active scripting as it appears, for example, on Internet Explorer is to automate routine functions. Precisely, the role of scripting languages in ASPs leans heavily toward automation. ASPs can dynamically edit web content, access data and return responses to users, customize user responses, and minimize network traffic.

ASP.NET is the successor to ASPs. It is a Microsoft-produced web application framework developed for its .NET framework. One of the differences with traditional web scripting is the development of event-driven GUIs (graphic user interfaces), where program flow is directed by user action (mouse clicks, keyboard action). Perhaps the greatest benefit of ASP.NET is that it brings object-oriented programming to building web applications. ASP.NET works on the server and separates code from what is displayed.

Therefore, if controls are written in HTML, ASP.NET can interpret these and use, for example, other scripting languages to tell ASP.NET how the designer wants those controls to look and function. ASP.NET also provides strong web services that allow different parts of an application located on different web servers to communicate and operate seamlessly. Finally, ASP.NET offers increased compatibility and interoperability. Each page can be written in different programming languages but when they are collected through ASP.NET on the server, they will also operate seamlessly.

« « NLP Strategy Model
Supply Chain Management : Quality Control in Industrial Engineering » »

Author Description

Avatar

Editorial Team at Exforsys is a team of IT Consulting and Training team led by Chandra Vennapoosa.

Free Training

RSSSubscribe 394 Followers
  • Popular
  • Recent
  • .NET Client-Server Technology

    July 15, 2007 - 0 Comment
  • Ajax and Web Applications

    August 22, 2007 - 0 Comment
  • Client-Server Technology : Thin Clients

    July 18, 2007 - 0 Comment
  • Client-Server Security

    July 20, 2007 - 0 Comment
  • Client-Server Trends for 2007

    July 28, 2007 - 0 Comment
  • What are Web Servers?

    June 18, 2007 - 0 Comment
  • Virtualization and Client-Server Technology

    August 1, 2007 - 0 Comment
  • Client Server Features

    June 24, 2007 - 0 Comment
  • Client-Server Testing Technology

    August 6, 2007 - 0 Comment
  • Client Server Models in Business Environment

    June 27, 2007 - 0 Comment
  • Ajax and Web Applications

    August 22, 2007 - 0 Comment
  • Java and Client Server Models

    August 22, 2007 - 0 Comment
  • Web Services and Client Server Technology

    August 20, 2007 - 0 Comment
  • Object-Oriented Client-Server Internet

    August 20, 2007 - 0 Comment
  • N-Tier Client-Server Architecture

    August 15, 2007 - 0 Comment
  • Peer-to-Peer and Client-Queue-Client Architecture

    August 15, 2007 - 0 Comment
  • Client-Server Testing Technology

    August 6, 2007 - 0 Comment
  • Virtualization and Client-Server Technology

    August 1, 2007 - 0 Comment
  • Client-Server Trends for 2007

    July 28, 2007 - 0 Comment
  • Client-Server Security

    July 20, 2007 - 0 Comment

Exforsys e-Newsletter

ebook
 

Related Articles

  • Ajax and Web Applications
  • Java and Client Server Models
  • Web Services and Client Server Technology
  • Object-Oriented Client-Server Internet
  • N-Tier Client-Server Architecture

Latest Articles

  • Project Management Techniques
  • Product Development Best Practices
  • Importance of Quality Data Management
  • How to Maximize Quality Assurance
  • Utilizing Effective Quality Assurance Strategies
  • Sitemap
  • Privacy Policy
  • DMCA
  • Trademark Information
  • Contact Us
© 2023. All Rights Reserved.IT Training and Consulting
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.AcceptReject Read More
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT