IRJET-Web Based Interface Implementation for: Ruby, Perl, Python, VB & HTML.

Published on January 2017 | Categories: Documents | Downloads: 41 | Comments: 0 | Views: 144
of x
Download PDF   Embed   Report

Comments

Content

International Research Journal of Engineering and Technology (IRJET)
Volume: 02 Issue: 06 | Sep-2015

www.irjet.net

e-ISSN: 2395 -0056
p-ISSN: 2395-0072

Web Based Interface Implementation for: Ruby, Perl, Python, VB
& HTML.
Poreddy Jayaraju, Vijay Prakash
1. Master of engineering, computer science, Sri Vaishnav Instt. of Tech .&science Indore. RGPV University,
Bhopal, Madhya Pradesh, India.
2. Asst professor, computer science, Sri Vaishnav Instt. of Tech .&science Indore. RGPV University, Bhopal,
Madhya Pradesh, India.
---------------------------------------------------------------------***---------------------------------------------------------------------

Abstract web based interface is an application
which provides facilities to programmer for software
development such as code completing and fixing,
source code editing and management, automated
testing, etc. Software is rapidly moving from the
desktop to the Web. The Web provides a generic user
interface that allows ubiquitous access, instant
collaboration, integration with other online services,
and avoids installation and configuration on desktop
computers. Moving IDEs to the Web is not just a
matter of porting desktop IDEs, a fundamental
reconsideration of the IDE architecture is necessary in
order to realize the full potential that the combination
of modern IDEs and the Web can offer. This paper
discusses implementation of Web based IDE
environment for compilation and execution of codes
written in different languages like C, C++, C#, VB, Java,
Pascal, Perl, Python, Ruby, Fortran, PHP, SQLite, CSS,
HTML, JavaScript, VBScript languages. Users can edit,
write, compile, debug and store their code on server.
Users need not to spend their time for finding and
installing an IDE for different languages. User can use
IDE in any device like PC, tablet and mobile devices
which has browser with internet connection. Web
Based IDE can be used in low configuration systems
also.
Index Terms— web based interface, Web, Compiler,
programs.

I.

Introduction

Software is moving from the desktop to the Web. Online
services are rapidly replacing traditional downloadable
software products. Based on the latest developments in
Ajax technologies, vastly improved JavaScript engines,
© 2015, IRJET

and the introduction of HTML5, there is now even a
small but growing collection of browser-based code
editors. Fully fledged integrated development
environments (IDEs) are still lagging behind in this pull
towards the Web. Modern, desktop-based IDEs integrate
a wide range of software engineering tools, and provide
a platform for writing, maintaining, testing, building,
running, debugging, and deploying software. They
increase developer productivity by incorporating many
different kinds of editor services specific to the syntax
and semantics of a language. These services assist
developers in understanding and navigating through the
code, they direct developers to inconsistent or
incomplete areas of code, and they even help with
editing code by providing automatic indentation, bracket
insertion, and content completion. The integration of
complete tool suites for software development and the
development of language-specific editor services took a
tremendous effort for the current generation of IDEs
such as Eclipse and Visual Studio [19].
This paper discusses the implementation of Web Based
Integrated Development Environment (IDE) for the
different languages to code, compile and run the code.
The Web Based IDE will allow easy development and
testing of applications. The users have the privilege to
register on to the system write, save and manage
programs online. After the language is chosen by the
user the request is forwarded to the respective compiler.
Multiple users can write programs in different
programming languages and also can compile and run
the program. a source code editor, a compiler and/or
interpreter, built-in automation tools, and a debugger
Some modern IDEs even employ plug-in frameworks
that support extension to the environment hence
meeting various needs of programmers[21].

ISO 9001:2008 Certified Journal

Page 166

International Research Journal of Engineering and Technology (IRJET)
Volume: 02 Issue: 06 | Sep-2015

www.irjet.net

User Interface: we separated the UI into five
composites in order to implement a flexible structure:
Editor Composite
Explorer Composite
Information Composite
Toolbar Composite
Menu bar Composite
Editor:
The editor is implemented as a pluggable
structure. We separated the Editor into two parts: UI and
Serviette. In the UI part, different syntax highlighting
libraries can be plugged into the editor. In the Serviette
part, different compilers can be plugged into the editor

What Is the Necessity Of Web Based Interface :
Software development is an important activity in today’s
world. In old days, programmers used to write codes
into the text files and then by using compiler and similar
tools which are command line based, these written codes
were turned into software programs. As the computers
evolve, size and the complexity of software production
increased.
With
this
increasing
complexity,
accomplishing tasks such as code editing, build
automation and debugging started getting more and
more difficult. Solution for this problem of programmers
is found to be Integrated Development Environments
which are commonly referred as IDE’s. Although IDE’s
are life saver for programmers, these software
applications have couple of drawbacks. Local systems
IDE’s are installed on a system and one need to use that
computer to use features of IDE and develop the
software. Stand alone IDE high computer resources, as
IDE’s supported more facilities to the programmer they
require much more computer resources, especially
memory and CPU, which may not be available all the
time. Most of the desktop based IDE’s require the
development environment to be set up on their
machines. This development environment requires
language specific integrated development environment
like eclipse or visual studio to be downloaded and
configured within the user’s machine. If the user decides
© 2015, IRJET

167

e-ISSN: 2395 -0056
p-ISSN: 2395-0072

to work on a different machine the entire development
kit and IDE has to be installed in the new system which
makes the process tedious and extremely inconvenient.
Web based IDE thus provides a solution to the given
problem and gives user the flexibility to start a web
browser and open his/her project. The basic
requirement here is that the user must have access to an
internet connection to be able to connect to the Web IDE.
We will install all programming development
environment on a server.

II.

Related Work

Many efforts have been made to implement online
compiler and runtime environments in past few years. In
this section we briefly discuss recent developments.
Python Fiddle [7] is a code editor and code execution
environment that allows programmers to run snippets
and debug scripts on the go. It supports a plethora of
third-party packages, boasts superb documentation,
comes with a wide array of built-in hot keys and is also
open source to boot. Code run Studio [2] offers users a
cross-platform tool for writing ASP.NET, JavaScript, C#,
HTML and CSS. Its default Visual Studio compatibility is a
nice touch and should have Microsoft-focused coders
feeling right at home. It comes equipped with the usual
bells and whistles like code completion and syntax
highlighting. Remote Application Platform [1] Project is
an open-source software project under the Eclipse
Technology Project which aims to enable software
developers to build Ajax-enabled rich Internet
applications by using the Eclipse development model,
plug-in and a Java-only application programming
interface (API). It can be considered a counterpart for
web development to the Rich Client Platform (RCP).
Source kit is a lightweight, browser-based alternative to
bloated desktop development suites. Supported
languages include all the majors you’d expect, such as
C/C++/C#, PHP, Python, Java script, Java and Ruby.
Kodin [3] allows developers to code in PHP, Python, Perl
and Java script while working with popular frameworks
like Django, Ruby on Rails and Node.js. We Scheme [6] is
an educational programming environment, embedding
Code Mirror [4] for syntax highlighting and bracket
matching. However, these can useful tools for coding
small program; they do not provide a comprehensive
environment with all the facilities that are especially
important for productivity in larger projects. They also

ISO 9001:2008 Certified Journal

Page

International Research Journal of Engineering and Technology (IRJET)
Volume: 02 Issue: 06 | Sep-2015

www.irjet.net

do not offer any support for collaboration. Another IDE,
specialized to Iron Python, is provided by Void Space,
and uses Silver Light for its implementation [8]. There is
currently one open source initiative for creating an
extensible IDE for the Web, allowing developers to add
new components using JavaScript. The Cloud9 project
[9] integrates the Mozilla Sky Writer [10] and ACE
editors, and provides a plug-in based IDE architecture in
HTML5 and JavaScript. Compile online [17] provides
more than 50 language compilers online but does not
provide facility for store the program. Using compiler
[18] we can learn programming languages and execute
programs online. An Online Programming Tutors named
Problems by Kumar [11] is designed as a tutoring system
for students to learn Java, C++, and C# OO programming.
It mainly covers Java programming and basic
programming constructs. In Cloud9 IDE [9] front end is
all Java script, while the back end relies on the popular
Node JS framework. It has syntax highlighting for C#,
C++, Python, Perl, Ruby, Scale and a few others as well.
Code anywhere [20] is a code editor in a browser with an
integrated ftp client, and all popular web formats are
supported (HTML, PHP, JavaScript, CSS, and XML). Cloud
IDE [5] is a solid Web IDE which supports the usual
languages like Java script, Ruby, Groovy, Java and Html.

System design
Users are required to register through the web interface.
Whenever a new user registered, all the required data
will be created in the database and a predefined
workspace will be assigned for the user. Later, user will
be able to login and logout the system anytime. Of the
existing (JSON
is often used instead), and the requests do not need to be
asynchronous

e-ISSN: 2395 -0056
p-ISSN: 2395-0072

Architecture web based interface:
Steps for web based IDE are as follows.
Step 1, 2: Types the program code on the text area
provided on the web page and submits the code to
server. Step 3: Web server will call appropriate script to
compile the program (E.g. java, tic, and cask
Step 4, 5: After the compilation of the program if there
are any errors present in the program then those error
messages are transferred back to the client side.
Step 6, 7, 8: If there are no errors then process executor
is called and the output of the process is transferred
back to client side so that the user can view the output of
the program.

Technology
1) Visual Studio 2010
Microsoft Visual Studio is an integrated development
environment (IDE) from Microsoft. It is used to develop
console and graphical user interface applications along
with Windows Forms or WPF applications, web sites,
web applications, and web services in both native code
together with managed code for all platforms supported
by Microsoft Windows, Windows Mobile, Windows CE,
.NET Framework, .NET Compact Framework and
Microsoft Silver light.
2) MS SQL Server
Microsoft SQL Server is a relational database
management system developed by Microsoft Inc. As a
database, it is a software product whose primary
function is to store and retrieve data as requested by
other software applications, be it those on the same
computer or those running on another computer across
a network.
3) JavaScript
JavaScript is a technique for manipulating HTML
documents in the browser. This is often called client-side
scripting. It allows the page author to incorporate
facilities
such as buttons that change in appearance when you
move the mouse over them and menus that expand.
4) Query
Query is a fast and concise JavaScript Library that
simplifies HTML document traversing, event
handling, animating, and Ajax interactions for rapid
web development.

© 2015, IRJET

168

ISO 9001:2008 Certified Journal

Page

International Research Journal of Engineering and Technology (IRJET)
Volume: 02 Issue: 06 | Sep-2015

www.irjet.net

5) Ajax
Ajax (also AJAX an acronym for Asynchronous JavaScript
and XML) is a group of interrelated web development
techniques used on the client-side to create
asynchronous web applications. With Ajax, web
applications can send data to, and retrieve data from, a
server asynchronously (in the background) without
interfering with the display and behaviour.

e-ISSN: 2395 -0056
p-ISSN: 2395-0072

Figur3: Web based interface layout:
c# program with print out

Implementation
We have implemented Web Based IDE in ASP.NET using
C# as frontend and SQL Server as a backend. User first
creates a login ID to access the compilers. After creating
login ID user must login in the system. After login user
select the compiler for which he wants to use. After
selecting the compiler user type his code in the editor
and use the button or shortcut keys to compile and
execute the code. The output is displayed on the output
tab. Although the frontend is designed to be as simple as
possible with only a few commonly used options, it is
sufficiently functional and can be used quickly. Proper
validations are used. User code is submitted to server.
Server side code compiles the code and displays warning
message or show the results on the client window,
Compiler Helper class to represent a compiler error or
warning. After successful compilation compiler generate
execute file (exe). This exe file produce the desired
output for the given source code. Following figures show
the Web Based Interface design and working.
Figure1: Web based interface layout: Perl program
with standard input & output:

© 2015, IRJET

169

Fig 6: Web based interface layout: vb.net program
with zoom out:

ISO 9001:2008 Certified Journal

Page

International Research Journal of Engineering and Technology (IRJET)
Volume: 02 Issue: 06 | Sep-2015

www.irjet.net

1) Registration: - This module accepts the
details of a new user and stores it in the
database. This action is logged in the Logs
database. This module ensures that the user is
registered before the first login.
2) Login: - A registered user should login with
his username and password to use the Interface.
3) Create new Project/ File:- This module
permits valid users to create new Project.
4) Open Project/ File:-This module permits
valid users to open existing projects. The user’s
access rights to the projects and files are
checked from the database.
5) Delete Project/ File:- This module permits
the valid users to delete a project.
6) Save: - This module allows the valid users to
save their projects. These projects are stored in
database.
7) Compile & Run: - This module allows the
users to compile and run their code. The result
of compilation is displayed to the user.
8) Zoom in: - This module allows users to do
Decrease of the program code
9) Zoom out: - This module allows users to do
increase of the program code...
10) Font Size: - This module allows users to
change the font size.
11) Download: - This module allows users to
download the code.
12) Print: This module allows users to print
the out of the code. Software is moving from

e-ISSN: 2395 -0056
p-ISSN: 2395-0072

edit-compile-run cycle is the same as for testing
and as for production.
. Disadvantages
1) Developer gives up (some) control of the
execution environment and might be unable to
diagnose problems which require access to logs
and process inspection tools.
2) Network bandwidth and latency make some
applications, especially graphically intensive
ones, infeasible to develop remotely.
3) Duplication of most of the essential tools and
concepts already provided by the operating
system on the user’s machine, though this can be
mitigated by exposing the deployment/
testing/debugging host through a remote shell,
i.e. by breaking out of the traditional Web
interface.
4) Integration with existing deployment and
debugging tools is likely to be difficult, if not
impossible.

APPLICATIONS
The application of the project is provide
different compiler over network. A Web Based
IDE can be used in small companies for
centralized compiler installation. Because of
centralized compiler on the server side, client
desktop need not to be very high configuration.
A Web Based IDE can be used in school / college
/ Institutes for practical examination also using
this student can have facility to use/learn
multiple programming languages with any
devices like PC, tablets or Mobile.

ADVANTAGE& DISADVANTAGS:

CONCLUSION

1) Development can happen on any Webenabled machine, and execution resources can
be shared among developers.
2) Development can be done by low
configuration devices.
3) User can use any device with internet
connection for execution of code.
4) Collaboration becomes easier, and might
amount to as little as sharing the URL to the
same IDE “workspace”
5) Scaling from one machine too many becomes
a matter of configuration – acquiring, setting up
and maintaining the hardware is handled by the
cloud provider.
6) For web applications, there is very little
difference between testing, debugging and
deployment: the mechanism for deploying in the

In this paper we have discussed Web Based IDE
from the stand alone desktop to the Web. The
proposed research questions arose from placing
ourselves in the seat of the software developer
who already develops for the Web, but now
wants to transition his daily development
activities to the Web, and take advantage of the
hallmarks of the Web, pervasive collaboration,
zero deployment, instant-access from anywhere,
and vast computational resources. We discussed
how we can move the software development
environment from one paradigm (the desktop)
to another (the Web). This can be used for Elearning platform that lets students write,
execute and test programs entirely in their
browse. With Web Based IDE allows the user to

© 2015, IRJET

ISO 9001:2008 Certified Journal

Page 170

International Research Journal of Engineering and Technology (IRJET)
Volume: 02 Issue: 06 | Sep-2015

www.irjet.net

write and manage their programs on the server.
The programs stored on server, the compilation
of the programs will be managed by the server
by forwarding the request to the required
processor. Based on the programming language
in which program/code is written and sends
that program/code to the respected compiler.
The proposed system showed how Web Based
IDE can be used to eliminate the problem of
storage. Many more applications are possible
when taking into account.
REFERENCES
[1] Remote Application Platform Available:
http://www.eclipse.org/rap/
[2]
Code
runs
Studio
Available:
http://coderun.com.
[3] Coding Available: https://koding.com/
[4]
Code
Mirror
Available:
http://codemirror.net/.
[5] Cloud IDE Available: https://codenvy.com/
[6] D. You, E. Schnauzer, S. Krishnamurthy, and
K. Filer, “We-Scheme: the browser is your
programming environment.”
[7] Python Fiddle http://pythonfiddle.com/
[8] The Eclipse Foundation. Void space python
online
Available:
http://www.voidspace.org.uk/ironpython/silve
rlight /index.shtml.
[9] Cloud9 IDE. https://c9.io.
[10] M. Labs. Mozilla labs: Skywriter.
[11] Problems by Amrita N. Kumar
http://problets.org/
[12] Suryawanshi Hershel, Roader Chakrapani
Ambhore Ajay, Rathod Sharad, “Compiler as
Service over Cloud”, International Journal of
Computer Applications (0975 – 8887) Volume
70– No.1, May 2013
[13] Ansari Mohd. Arshad, Khan Arshiya, Shaikh
Sana, Mirza Zainab, “Compilers on Cloud”,
International Journal of Engineering Research &
Technology (IJERT) ISSN: 2278-0181 Vol. 2
Issue 9, September - 2013
[14] M.Pabitha, T.Selvakumar, S.Punitha Devi
“An Effective C, C++, PHP, Perl, Ruby, Python
Compiler using Cloud Computing”, International
Journal of Computer Applications (0975 – 8887)
Volume 69– No.7.
[15] Mayank Patel “Online Java Compiler Using
Cloud Computing‖”, International Journal of
© 2015, IRJET

e-ISSN: 2395 -0056
p-ISSN: 2395-0072

Innovative
Technology
and
Exploring
Engineering (IJITEE) ISSN: 2278-3075, Volume2, Issue-2.
[16] A.Rabiyathul and Basariya k.Tamil Selvi,
“Centralized
C#
Compiler
Using
CloudComputing”,
IJCE
Volume
06–
No.6,Issue:02, March2012.
[17]
Compile
Online
IDE
Available:
http://www.compileonline.com .
[18]
Online
Compiler
Available:
http://www.Compilr.com
[19] Lennart C. L. Kats, Richard Vogelij, Karl
Trygve Kalleberg, Eelco Visser "Software
Development Environments on the Web: A
Research Agenda"
[20]Codeanywhere
Available:
https://codeanywhere.net/.
[21] Jingwen Ou Mahdi Tayarani Najaran
Mushfiqur Rouf
Aurora SDK: A Web Based Integrated
Development Environment

BIOGRAPHIES:
Poreddy
Jayaraju,
Received The B.Tech
Degree In Computer
Science Engg From MNR
College Of Engg And
Tech In 2012 , Affiliated
To The Jntu Hyderabad.
He Is Also Pursuing
Master Of Engineering In
Computer Science From
Svits, Indore. RGPV University Bhopal, MP, India.
His Research Interests Include Database
Management System, Object Oriented And Web
Technology.
Assistant
Professor
in
Computer
Science
&
Engineering
department, SVITS since 7
years. . He has academic
experience of UG & PG
Courses at SVITS. He
believes in ethical values to
contribute his technical & professional skills to
the society.

ISO 9001:2008 Certified Journal

.Vijay Prakash.

Page 171

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close