Performance Analysis of Web Development Technologies

Verified

Added on  2020/05/16

|13
|4936
|292
AI Summary
This assignment delves into a comparative analysis of various web development technologies, focusing on PHP, Python, and Node.js. Students are expected to research and evaluate the performance characteristics of these languages across different aspects such as execution speed, memory usage, and scalability. The analysis should be supported by relevant benchmarks, studies, and real-world examples. Additionally, students may explore the advantages and disadvantages of each technology based on specific use cases.
tabler-icon-diamond-filled.svg

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
Running head: PROGRAMMING LANGUAGES CONCEPTS
Programming Languages Concepts
Name of the Student
Name of the University
Authors note
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
1PROGRAMMING LANGUAGES CONCEPTS
Executive Summary
The following paper consist of discussion about the development of the server side
scripting language PHP. Different sections of this report contributes to the development of
the language, overview and features of this language. In addition to that the, implementation
methods, evaluation and the assessment depending upon the evaluation is also provides in
this report.
Document Page
2PROGRAMMING LANGUAGES CONCEPTS
Table of Contents
Introduction................................................................................................................................3
Language Development.............................................................................................................3
Designer / Developer:................................................................................................3
Year or Time period:..................................................................................................3
Domain and Category:...............................................................................................4
Motivation and Intended use......................................................................................4
Language overview....................................................................................................................5
Implementation method:............................................................................................5
Features and constructs that characterize the language:............................................5
Constructs:..................................................................................................................5
Source code examples demonstrating such features and the general programming:.6
Style of the language:.................................................................................................7
Language Evaluation..................................................................................................................7
Consistent support to the different OOP characteristics............................................7
Support to the MVC architecture for applications.....................................................8
Language Assessment................................................................................................................9
Conclusion................................................................................................................................10
References................................................................................................................................11
Document Page
3PROGRAMMING LANGUAGES CONCEPTS
Introduction
PHP is a scripting language that is used at the server side for the web applications.
This language is purely interpreter based language and therefore it does not require any
compilation process. Whenever a PHP file is run through an interpreter, it produces
corresponding HTML code. This HTML code is then represented in a graphical manner on
the browser in order to display the users requested content.
Scripting languages like the PHP are originated and popular among the developers as
this kind of language is easy-to-use, and mainly interpreter based. Being interpreter based
language it reduces the time and complexity related to the compilations of process. PHP
supports loose data typing along with that it is robust too (Wyke, Walker & Cox, 2016).
Therefore, this high-level and generic programming languages are helpful in boosting the
development process of developing Web application. Popularity of this type of server side
scripting languages are clearly evident from the statistical data about their use in the open-
source repositories like GitHub and SourceForge.
Following r paper contributes to the development of the PHP language, overview of
its features, evaluation compared to other languages and final assessment of the languages in
the present development scenario.
Language Development
Designer / Developer:
PHP, as known today, is the successor to a product called PHP/FI. It was created by
Rasmus Lerdorf, in 1994. Initial incarnation of PHP comprised of a set of CGI or “Common
Gateway Interface” binaries. It was written in C language. As time passed more functionality
were desired. Rasmus then recomposed PHP tool and produced richer and broad
implementation (Nguyen, Kästner & Nguyen, 2015). It was capable of various database
interactions. It provided framework in which users were able to develop simple web
applications like guestbooks. Further, Rasmus released source code for the PHP Tools in
front of common people in 1995. It helped developers to use that as they witnessed the fir.
Moreover, users got encouraged and permitted to deliver fixes for bugs in code and improve
upon that (Hu, 2016).
Year or Time period:
In September 1995, Rasmus expanded the language and dropped the name. The code
went through another makeover in April 1996 and assimilating the names of prior releases,
PHP\FI was introduced by Rasmus. This second-generation deployment started to evolve the
language from suite of tools to a programming language at individual right. As it finally
passed the beta status in November 1997 the underpinning parsing engine got completely
revised (Nguyen, Kästner & Nguyen, 2014).
It underwent a short life of development. However, it continued to enjoy rise in
popularity in the nascent world of Web Development. PHP/FI, in 1997 and 1998 possessed a
cult of numerous users across the globe. Netcraft survey, as done on May 1998, denoted
about 60,000 domains comprising of headquarters having “PHP” (Brooks, 2017). This
denoted that the host server never intended to get that installed. This amount equated to about
1% of every domains on Internet simultaneously.
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
4PROGRAMMING LANGUAGES CONCEPTS
New engine named Zend Engine met various successful design goals and was
introduced in 1999. The PHP 4.0, on the basis of this engine coupled with various range of
extra new features got officially released on May 2000. Finally PHP 5 got released in the
month of July at 2004 after various releases and long development.
Domain and Category:
PHP is a broadly used open source scripting language of general purpose. It is suited
for web development and embedded to HTML. Apart from various commands to the output
HTML, the PHP pages have been containing HTML along with embedded code. The code is
executed over server which generates HTML that is further sent to clients (Dahse & Holz,
2014). They receive outcomes of running the script. However, they are never aware of what
the underpinning code has been. Here all HTML files can be processed with PHP by
configuring web servers.
PHP has been supporting huge amount of protocols like LDAP, IMAP and POP3.
PHP4 has adding support for distributed object architectures like CORBA and COM and
Java. This has made n-tier development a possibility regarding first time.
Motivation and Intended use
For a long period of time the language was not regarded as a serious language to be
applicable on large Web application development. However, the situation changed drastically
in current time. PHP has been possessing three web frameworks expanding capabilities of
languages like Zend Framework, CakePHP and Symfony. This phase of development was
stable and quick at the same time. The object-oriented source code written in PHP5 has been
maintainable and elegant (Bashir, Hoque & Nath, 2016). More and more projects started to
use its framework. From various popular languages of website development PHP is found to
be more suitable for development and framework analysis.
PHP has been intended to perform system functions like files on system it could
create, read, write, open and close. It is able to manage forms and collect data from files and
save data to files. Data could be send trough email and then returned to user. One can delete,
add and modify elements under the database by PHP (Prokhorenko, Choo & Ashman, 2016).
Moreover, it is able to access cookies variables and set cookies. PHP usage restricts users to
access some pages to websites. It is also able to encrypt data.
It is a huge motivation for web developers since it could be run on different platforms
like Mac OS X, Unix, Linux and Windows. It is also compatible with all servers that are
currently in usage today. For example, IIS, Apache and others could be considered here. It
has been supporting a wide range of databases and is free to be downloaded. It is easy to
grasp and been running effectively on server sides.
Language overview
Implementation method:
PHP has been using blends of compilation and interpretation for providing the best
mix of flexibility and performance to the programmers. PHP has been compiling scripts down
to various instructions as it gets accessed. It has been distinct from traditional compiled
languages where codes are compiled down to conventional executable codes. PHP re-
Document Page
5PROGRAMMING LANGUAGES CONCEPTS
compiles script every time it gets requested (Bakker, Tiesinga & Kötter, 2015). This
recompilation has been seen to be wasting of processor time and has been not at all poor. It is
helpful to hand recompilation of scripts as any changes are done. Many scripts, on flip side
have been taking longer to compile than they could do.
Moreover, it has been providing fast feedback while the development has been going
on. As there is any error anywhere in the file, PHP refuses to compile that page till the
problem is fixed. This is because one can step through the execution of the code by line till
one finds any problem. Speed hit of regular compilation gets nullified completely by the
usage of PHP opcode caches. In interpreted code, the memory utilized by that script is
controlled by PHP (Hills, 2015). It cleans up automatically as all the scripts are finished. It
indicates that one never needs to worry regarding closure of database links, freeing memory
assigned to images and so on since PHP never does that.
Features and constructs that characterize the language:
Features of PHP:
Features Discussion
Simple This has been most simple and easy in using. Compared to the other
scripting languages it has been most effective and broadly used around the
globe.
Interpreted This has been the interpreted language and there has been no necessity to
compile.
Faster This has been quicker than the other scripting languages like jsp and asp.
Open
Source
This has been an open source indicating necessity to pay for using PHP one
can able to use and download freely.
Platform
Independen
t
The PHP code has been running on various platforms.
Case
Sensitive
It is a case sensitive scripting language during the time of variable
declaration. PHP has comprised of various keywords, user-defined
functions, functions and classes that has not been case-sensitive (Weißer,
Dahse & Holz, 2015).
Constructs:
The language constructs in PHP has been relatively quicker than different built-in
functions. They have been the primary elements of that language. Here the final time of
execution depends on parameters passed to built-in functions and language constructs.
1 .echo ('Today is a beautiful day');
2. echo 'Today is a beautiful day';
3 .$today = 'Today is a beautiful day';
4. echo $today;
Document Page
6PROGRAMMING LANGUAGES CONCEPTS
5. die('You are not authorized to access this content');
6..die;
In the above code the lines has been correct and processed as thought to be. Die() and
echo() has been both the language constructs and could be utilized with or without
parenthesis. Moreover, one cannot utilize built-in functions without the parenthesis.
1.count($namesArray); // This is correct assuming that $namesArray is defined.
2.count $namesArray; // This is incorrect. It's identified as a syntax error.
Source code examples demonstrating such features and the general
programming:
For this a program a simple program is considered. A file is created named
random.php stating the following.
<html>
<head><title>Random number</title></head>
<body>
<p>I have chosen <?php
echo rand(1, 100);
?>.</p>
</body>
</html>
In the web browser something can bee seen as following.
I have chosen 47.
It is seen that the basic PHP program has been primarily HTML. As the Wb server
witnesses a PHP File, it sends that page to verbatim of Web browser till it finds character
sequence.
Here the ultimate outcome of the above method is that as any Web browser accesses
Web page, server sends HTML to browser as illustrated below.
<html>
<head><title>Random Number</title></head>
<body>
<p>I have chosen 47.</p>
</body>
</html>
Here browser has been receiving straight HTML. This is just like Web page has been
simple HTML file. Since the browser never saw any PHP, that there has been no cause for
the people. This has been for the PHP programmers for worrying regarding browser support.
Till the browser has been supporting HTML, it has been able to read the PHP pages (Taricco,
2015).
Style of the language:
Some of the coding style guides followed by PHP is as follows.
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
7PROGRAMMING LANGUAGES CONCEPTS
This code should utilize 4 spaces regarding indenting not tabs.
Here no hard limit of line length is followed. The soft limit has been of 120
characters. The lines are of 80 characters or less.
No blank line is there after the “namespace” is declared. There should be a single
blank line after the “use” declarations.
The opening spaces related to classes go on the next line. The closing braces go on
next line after body part.
The visibility is declared on every methods and properties. The “final” and “abstract”
is declared before the visibility takes place. The static has been declared after
visibility takes place (Wyke, Walker & Cox, 2016).
Language Evaluation
Consistent support to the different OOP characteristics
The PHP language is one of the most extensively used server side scripting language.
numerous websites are developed with this language as it provides easier operating process
and great response against the user request on the Web (Nanz & Furia, 2015). The only
condition for this performance is that HTML and PHP should work together with great
cohesion.
Following is the statistics for the usage of the different languages;
1
0.00% 10.00% 20.00% 30.00% 40.00% 50.00% 60.00% 70.00% 80.00% 90.00%
Chart Title
Erlang PYTHON PERL JAVASCRIPT RUBY
CLOD FUSION STATIC FILES JAVA ASP.NET PHP
Figure 1: use of PHP as server side scripting language
The present version of PHP (PHP7) supports the OOP concept or paradigm (Object
Oriented programming). In addition to that the, it also supports single level inheritance,
implementation of abstract method and class (i.e. interfaces). Like other modern OOP based
languages it also provisions encapsulation of the variables and methods.
In PHP the inheritance helps in inheriting the characteristics of defined base classes
which in turn helps in reusability of codes and structure the codes for any application. In
PHP, the keyword “new” is used to instantiate an object related to the non-abstract class
(Bakker, Tiesinga & Kötter, 2015). On the other hand, the keyword “extends” is used to
assert which classes are inherited from which one.
Document Page
8PROGRAMMING LANGUAGES CONCEPTS
It also supports the usage of abstract class, which can be used by any class in
developing an application. An abstract class essentially have to create an interface. Any
Interface in PHP is helpful in define a common data structures (Wyke, Walker & Cox, 2016).
This data structures cannot be instantiated by itself. Interfaces are helpful in implementation
of the abstract methods declared in the parent classes. Moreover, in order to reach a certain
level of encapsulation, PHP uses some keywords or access specifiers such as private, public,
protected. This helps in manipulation of the visibility of different class members which may
be a data member or methods.
The web application development today utilizes HTML and CSS to display
information to users and interaction by the users are handled by of JavaScript. These
advances are called "front-end”. Again, at the “server-side” the PHP is used as the scripting
language.
Support to the MVC architecture for applications
In case of developing web applications, developers and Designers consolidate HTML
code with server side programming/scripting languages to develop dynamic website and
applications and this prompts exceptionally trapped and unmaintainable code. Another issue
has become out of the way that web technologies are progressively used to fabricate a wide
range of complex applications.
In order to meet the user expectations, security in the applications the PHP also
supports the use of the MVC paradigm. This paradigm helps in having tremendous
advantages to be had in the event that one forms applications on account of modularity in the
developed applications (Taricco, 2015). Isolation of the functional units from each different
module as much as could be expected makes it simpler for the application developer to
comprehend and adjust every specific unit without knowing everything about alternate units.
An application is partitioned into three primary classifications: the model of the
application domain, the representations of data in that model and user interaction with the
application.
The MVC splits different responsibilities in three fundamental parts along these lines
taking into consideration more productive coordinated effort. These fundamental parts are
design, development and integration.
The MVC configuration design is very helpful for web application development, since
they join multiple technologies typically split into an organized of layers (Hills, 2015).
Additionally, MVC particular behaviour could be send to the particular perspectives to
diverse sorts of end users (Bakker, Tiesinga & Kötter, 2015). User interaction with a MVC
application takes after a characteristic cycle: the user makes a, action, and accordingly the
application changes its data model and conveys a refreshed view to the concerned user of the
application. After this the cycle repeats according to the user’s request. This is an
exceptionally beneficial for web applications conveyed as a progression of HTTP responses
against the user’s requests.
Model: In MVC, the Model layer is mainly responsible for handling the business
rationale of at the back end of an application. It will epitomize techniques to get to
information (documents, databases, and so forth.) and will make a reusable class library
accessible. Generally, a Model is worked with information reflection at the top of the priority
list, approval and confirmation (Taricco, 2015). Also, the Model is comprised of classes that
characterize the area of intrigue. These items that have a place with the space frequently
Document Page
9PROGRAMMING LANGUAGES CONCEPTS
exemplify information that is put away in databases, yet in addition incorporate code that is
utilized to control this information and uphold business rules.
View: The View component is capable with graphical UI administration. This implies
all structures, realistic components and all other HTML components that are inside the
application (Nanz & Furia, 2015). Perspectives can likewise be utilized to produce RSS
content for aggregators or Flash introductions. By isolating the plan of the application from
the rationale of the application we significantly diminish the danger of mistakes showing up
when the planner chooses to adjust the interface of that application by changing a logo or a
table
Controller: The Controller is mainly responsible for event handling of the deployed
application. These events at the front end can be activated by either a user communicating
with the application or by a framework procedure. A controller acknowledges asks for and
readies the information for a reaction. It is moreover mindful with building up the
configuration of that reaction. The Controller connects with the Model keeping in mind the
end goal to recover the required information and produces the View (Dahse & Holz, 2014).
This procedure is otherwise called an activity or a verb. When a demand touches base at the
server, the MVC system dispatches it to a strategy in a controller in view of the URL. The
Controller ties all application rationale and joins the show in the View with the usefulness in
the view. It is capable with information recovery from the View and with building up the
execution way for the application. The Controller will get to the Model usefulness and it will
translate the information got with the goal that it can be shown by the View. It is additionally
mindful with mistake taking care of.
Language Assessment
PHP integrates the HTML codes of an application easily; this causes web
servers to process the website pages before they are really shown on the web
program. Other scripting has this component yet not easily, since it is not
undeniable web improvement programming language.
PHP is dynamic web scripting language whereas other languages like Scala
require a third party framework in order to perform web server scripting
(Bakker,Tiesinga & Kötter, 2015).
PHP is flexible server-side scripting language and is supported on the vast
majority of the web servers and keeps running on every working framework.
Scala needs the JVM introduced and other extra to help web advancement.
Since PHP is quicker it helps in speedier page loading.
There is colossal online repositories and documentation available and are
accessible for web development in PHP.
PHP is sensibly one of the high performing scripting languages while
providing the developers higher productivity in terms of software. PHP is
considered as an important alternative for distributing SOAP based web
services apart from the well-known REST- web services (Hills, 2015).
PHP has better execution because compared to the other interpreted languages
of dynamic compilation of written code. PHP has high adaptability and
incredible documentation giving a more extensive view about the web
administrations it can offer.
PHP has a more extensive help for the most of the web service designing
process.
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
10PROGRAMMING LANGUAGES CONCEPTS
The readability of the codes written in the PHP is far better when compared to
other server side scripting language.
Use of the Reflective API in PHP is considered as expensive when it is
compared in terms of performance (Nanz & Furia, 2015).
In PHP, it is easier to implement Reflection compared to the other language.
Conclusion
With the different characteristics explained in the different sections of this there are
some issues that are considered as pitfalls of this language. PHP has no exceptional
concentrate on functional programming, despite the fact that it is conceivable to store a
method or function name as string in a variable and afterward utilize it to call a referenced
work. This is only an extremely fundamental and fragmented functional behaviour,
subsequently PHP cannot be characterized to give useful functional paradigms. There are
other significant disadvantages of the PHP, which are portrayed in different sections of this
paper and are summarized here. PHP permits the utilization of uninitialized variables, most of
the time has conflicting naming conventions.
In addition to that, there are similar functions which is declared with different order
of parameters. There were no dedicated namespaces until PHP version 5. Therefore, the
name of the functions or methods should be unique; There are numerous accessible functions
and the count is extremely high, some of them usually perform similar functionalities and
consequently lead to the confusion of the developers or software engineers. In this language
the error handling resolved twice in different manners: procedural with the capacity " set
error handler ()" and another in the object oriented approach is use of exceptions.
PHP can be utilized in a secured manner, however there are additionally some
important security issues that are the outcome of a design of the programming language plan.
There are different web projects like Suhosin1 that gives a PHP security hardening patch as
well as security framework. This fixes issues like the buffer overflow on the web servers or
formatting string vulnerabilities in the web applications. For this issues PHP permits poor
programming practices by the developers (at the server end) which result in numerous
security related bugs in web applications.
Document Page
11PROGRAMMING LANGUAGES CONCEPTS
References
Ammon, U. (2012). Linguistic inequality and its effects on participation in scientific
discourse and on global knowledge accumulation–With a closer look at the problems
of the second-rank language communities. Applied Linguistics Review, 3(2), 333-
355.
Bakker, R., Tiesinga, P., & Kötter, R. (2015). The Scalable Brain Atlas: instant web-based
access to public brain atlases and related content. Neuroinformatics, 13(3), 353-366.
Bashir, G. M. M., Hoque, A. S. M. L., & Nath, B. C. D. (2016). E-learning of PHP based on
the solutions of real-life problems. Journal of Computers in Education, 3(1), 105-129.
Brooks, D. R. (2017). PHP from a Command Line. In Programming in HTML and PHP (pp.
231-236). Springer, Cham.
Dahse, J., & Holz, T. (2014, February). Simulation of Built-in PHP Features for Precise
Static Code Analysis. In NDSS.
Hills, M. (2015, October). Supporting PHP dynamic analysis in PHP AiR. In Proceedings of
the 13th International Workshop on Dynamic Analysis (pp. 37-38). ACM.
Hu, Y. (2016). Design and Implementation of Recruitment Management System Based on
Analysis of Advantages and Disadvantages of PHP Three-Tier. Romanian Review
Precision Mechanics, Optics & Mechatronics, (49), 74.
Lei, K., Ma, Y., & Tan, Z. (2014, December). Performance comparison and evaluation of
web development technologies in php, python, and node. js. In Computational
Science and Engineering (CSE), 2014 IEEE 17th International Conference on (pp.
661-668). IEEE.
Nanz, S., & Furia, C. A. (2015, May). A comparative study of programming languages in
Rosetta Code. In Software Engineering (ICSE), 2015 IEEE/ACM 37th IEEE
International Conference on (Vol. 1, pp. 778-788). IEEE.
Nguyen, H. V., Kästner, C., & Nguyen, T. N. (2014, November). Building call graphs for
embedded client-side code in dynamic web applications. In Proceedings of the 22nd
ACM SIGSOFT International Symposium on Foundations of Software
Engineering (pp. 518-529). ACM.
Nguyen, H. V., Kästner, C., & Nguyen, T. N. (2015, May). Varis: IDE support for embedded
client code in PHP web applications. In Proceedings of the 37th International
Conference on Software Engineering-Volume 2 (pp. 693-696). IEEE Press.
Prokhorenko, V., Choo, K. K. R., & Ashman, H. (2016). Context-oriented web application
protection model. Applied Mathematics and Computation, 285, 59-78.
SEHGAL, R. (2017). Tracing Cyber Threats (Doctoral dissertation, INDIAN INSTITUTE
OF TECHNOLOGY, KANPUR).
Suzumura, T., Trent, S., Tatsubori, M., Tozawa, A., & Onodera, T. (2008, September).
Performance comparison of web service engines in php, java and c. In Web Services,
2008. ICWS'08. IEEE International Conference on (pp. 385-392). IEEE.
Document Page
12PROGRAMMING LANGUAGES CONCEPTS
Taricco, G. P. (2015). PHP-HTML for a customizable edit form.
Titchkosky, L., Arlitt, M., & Williamson, C. (2003). A performance comparison of dynamic
Web technologies. ACM SIGMETRICS Performance Evaluation Review, 31(3), 2-11.
Trent, S., Tatsubori, M., Suzumura, T., Tozawa, A., & Onodera, T. (2008, December).
Performance comparison of PHP and JSP as server-side scripting languages.
In Proceedings of the 9th ACM/IFIP/USENIX International Conference on
Middleware (pp. 164-182). Springer-Verlag New York, Inc..
Walia, E. S., & Gill, E. S. K. (2014). A framework for web based student record management
system using PHP. International Journal of Computer Science and Mobile
Computing, 3(8), 24-33.
Weißer, D., Dahse, J., & Holz, T. (2015, November). Security Analysis of PHP Bytecode
Protection Mechanisms. In International Workshop on Recent Advances in Intrusion
Detection (pp. 493-514). Springer, Cham.
Wyke, R. A., Walker, M. J., & Cox, R. (2016). PHP developer's dictionary.
chevron_up_icon
1 out of 13
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]

Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

[object Object]