[go: up one dir, main page]

0% found this document useful (0 votes)
109 views15 pages

Programming Languages and Program Development Tools

The document discusses programming languages and tools, describing low-level languages like machine language that use binary and high-level languages like Java that are machine-independent. It explains the differences between compilers that translate entire programs and interpreters that translate statements sequentially. The document also covers object-oriented programming languages and how objects can be reused to develop applications more quickly.

Uploaded by

Oh Revi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
109 views15 pages

Programming Languages and Program Development Tools

The document discusses programming languages and tools, describing low-level languages like machine language that use binary and high-level languages like Java that are machine-independent. It explains the differences between compilers that translate entire programs and interpreters that translate statements sequentially. The document also covers object-oriented programming languages and how objects can be reused to develop applications more quickly.

Uploaded by

Oh Revi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 15

Programming Languages and Program Development Tools

Programming Language
- is a set of words, abbreviations, and symbols that enables a programmer to
communicate instructions to a computer. It is the language programmers used in
communicating with the computers. This words, abbreviations, and symbols are
artificial languages that programmers, the persons who create or modify
programs, used.
Computer Program
- is a series of instructions that directs a computer to perform tasks.
Programmers use a variety of programming languages and tools to create
programs. In fact, several hundred programming languages exist today. Like how our
language is different from other countries, each programming language is also has its
own rules for writing the instructions and is typically unique on its own.

Two types of Programming Languages

1. Low Level Language


- is a programming language that is machine dependent. A machine-dependent
language runs on only one particular type of computer. Low level language is
programmer-friendly languages. Meaning, they are manageable, easy to
understand, debug, and widely used in today's times. It can be very difficult for us
to understand this language because it mostly use binary digits but can be easily
interpreted by machines. Low level language is further divided into two types
namely machine and assembly languages.

a. Machine language
- It is known as the first generation of programming languages. It is the only
language the computer directly recognizes and it uses a series of binary digits
(1s and 0s) or a combination of numbers and letters that represents binary digits.
Machine language also runs directly on the central processing unit and because
it uses a binary digits, it is prone to errors and is also time consuming because it
is manually manipulated. Machine language is also said to not be portable, which
means that this type of language can be used only on a specific type of machine.

b. Assembly language
- It is the second generation of programming languages. In assembly language, a
programmer writes instructions using symbolic instruction codes. Examples of
these codes include A for addition, C for compare, L for load, and M for multiply.
Assembly language is less prone to errors and can be coded easier. Unlike
machine language, assembly language uses English instructions and symbolic
addresses. A symbolic address is a meaningful name that identifies a storage location.
But, it must be noted that programmers must first convert an assembly language
program into machine language before the computer can run the program. Because the
computer cannot execute the assembly source program. A source program is the
program that contains the language instructions, or code, to be converted to machine
language. To convert the assembly language source program into machine language,
programmers use a program called an assembler.

2. High Level Language


- It is often machine independent. A machine independent language can run on
many different types of computers and operating systems. High level language is
portable to use because it is machine independent and also uses English
language so it is easier to understand. The disadvantage of this language is that
it takes more time to translate to a machine code for the computer to recognize.
Example of this language are Java, C++, and C-sharp. Two types of high level
language namely procedural and object oriented language.

a. Procedural Languages
- It is often called a third-generation language (3GL). A programmer uses a
series of English-like words to write instructions. For example, ADD stands for
addition or PRINT means to print. These English-like words and arithmetic
symbols simplify the program development process for the programmer because
it uses series of steps and procedures within its programming context to
compose a program. It contains a systematic order of statements, functions and
commands to complete a computational task or program.
To create programs, they use variables, conditional statements, and functions
that permit a computer to process and provide the desired output. Although it allows the
users to give computers instructions in a natural language like Chinese, French, or
English, computers are unable to understand these human communication. Therefore,
users cannot do that. Human intelligence can create ambiguities in communication with
natural language, but a computer needs a clear instruction and mathematically precise
communication system. Therefore, all symbols or collections of symbols must have
exactly the same meaning.
Examples of Procedural Language
 C programming language
- It is developed in the early 1970s by Dennis Ritchie at Bell Laboratories,
originally was designed for writing system software. C runs on almost any type of
computer with any operating system, but it is used most often with the UNIX and
Linux operating systems.
 COBOL (Common Business-Oriented Language)
- It is a programming language designed for business applications. Although
COBOL programs often are lengthy, their English-like statements make the code
easy to read, write, and maintain. It is especially useful for processing
transactions, such as payroll and billing, on mainframe computers.

Compiler and Interpreter


With an assembly language program, the 3GL code (instructions) is called the
source program. Programmers must convert this source program into machine
language before the computer can execute the program. This translation process often
is very complex, because one 3GL source program instruction translates into many
machine language instructions. For 3GLs, programmers typically use either a compiler
or an interpreter to perform the translation.

Compiler - is a separate program that converts the entire source program into machine
language before executing it. The machine language version that results from compiling
the 3GL is called the object code or object program.
The compiler stores the object code on storage media for execution later. While it is
compiling the source program into object code, the compiler checks the source program
for errors. The compiler then produces a program listing that contains the source code
and a list of any errors. This listing helps the programmer make necessary changes to
the source code and correct errors in the program. Therefore, a compiler translates an
entire program before executing it.

Interpreter – it translates and executes one statement at a time. An interpreter reads a


code statement, converts it to one or more machine language instructions, and then
executes those machine language instructions. It does this all before moving to the next
code statement in the program. Each time the source program runs, the interpreter
translates and executes it, statement by statement. Unlike compiler, an interpreter does
not produce an object program. One advantage of an interpreter is that when it finds
errors, it displays feedback immediately. The programmer can correct any errors before
the interpreter translates the next line of code. The disadvantage is that interpreted
programs do not run as fast as compiled programs.
b. Object-Oriented Programming Languages
- It is a high-level computer programming language that implements objects and
their associated procedures within the programming context to create software
programs. It was primarily designed to reduce complexity in typical procedural
languages through data binding and encapsulation techniques. In object-oriented
language, the objects created provide limited or no access to other functions or
methods within the program. This enables only authorized or inherited
methods/functions to access a particular object. Programmers use an object-
oriented programming (OOP) language or object-oriented program development
tool to implement objects in a program. An object is an item that can contain
both data and the procedures that read or manipulate that data.
A major benefit of OOP is the ability to reuse and modify existing objects. For
example, once a programmer creates an Employee object, it is available for use by any
other existing or future program. Thus, programmers repeatedly reuse existing objects.
For example, the payroll program and health benefits program both use the Employee
object. That is, the payroll program would use it to process employee paychecks and
the health benefits program would use it to process health insurance payments.
Programs developed using the object-oriented approach have several advantages. The
objects can be reused in many systems, are designed for repeated use, and become
stable over time. In addition, programmers create applications faster because they
design programs using existing objects.

Object-oriented programming languages and program development tools work


well in a RAD and IDE.
 RAD (Rapid Application Development)
- It is a method of developing software, in which the programmer writes and
implements a program in segments instead of waiting until the entire program is
completed. An important concept in RAD is the use of prebuilt components. For
example, programmers do not have to write code for buttons and text boxes on
Windows forms because they already exist in the programming language or tools
provided with the language.

 IDE (Integrated Development Environment)


- It includes tools for building graphical interfaces, an editor for entering program
code, a compiler and/or interpreter, and a debugger, which means to remove
errors. One of the main benefits of an IDE is that they offer a central interface
with all the tools a developer needs. IDEs also improve productivity by lessening
the setup time, boosting the speed of development tasks, keeping developers up
to date with the latest best practices and threats, and standardizing the
development process so that everyone can get on board.
Examples of Object Oriented Programming Languages
 Java
- is an object-oriented programming language developed by Sun Microsystems.
When programmers compile a Java program, the resulting object code is
machine independent. Java uses a just-in-time (JIT) compiler to convert the
machine-independent code into machine-dependent code that is executed
immediately.

.NET is a set of technologies that allows almost any type of program to run on the
Internet or an internal business network, as well as stand-alone computers and mobile
devices. Similarly, ASP.NET is a Web application framework that provides the tools
necessary for the creation of dynamic Web sites. Using .NET or ASP.NET,
programmers easily can develop Web applications, Web services, and Windows
programs. Examples of languages that support .NET include C++, C#, F#, Visual Basic,
Delphi, and PowerBuilder.

 C++
- It is an object-oriented programming language that is an extension of the C
programming language. It includes all the elements of the C language, plus it has
additional features for working with objects. Programmers commonly use C++ to
develop database and Web applications.
 C#
- It is an object-oriented programming language that was developed primarily by
Anders Hejlsberg, Microsoft chief architect and distinguished engineer. It is a
general-purpose, object-oriented programming language and is one of the most
popular languages used for developing desktop and web applications. It is has
also been accepted as a standard for Web applications and XML-based Web
services.
 F#
- It is a programming language that combines the benefits of an object-oriented
language with the benefits of a functional language. A functional language is a
programming language whose natural programming structure is useful in
mathematical programs. Benefits of programs written in F# includes easy access
to .NET libraries and performance similar to C# programs.
 Visual Studio
- It is Microsoft’s suite of program development tools that assists programmers in
building programs for Windows, Windows Mobile, or any operating systems that
support .NET. Visual Studio includes enhanced support for building security and
reliability into applications through its programming languages, RAD tools, IDE, a
specialized query language, and other resources that reduce development time.
For example, Visual Studio includes code snippets, which are prewritten code
and templates associated with common programming tasks. Visual Studio also
includes a set of tools for developing programs that work with Microsoft’s Office
suite.
a. Visual Basic is based on the BASIC programming language, which was
developed by Microsoft Corporation in the early 1990s. This language is easy
to learn and use. Visual Basic is ideal for beginning programmers.
b. Visual C++ is a programming language based on C++. Not only is Visual C++
a powerful object-oriented programming language, it also enables
programmers to write Windows, Windows Mobile, and .NET applications
quickly and efficiently.
c. Visual C# combines the programming elements of C++ with an easier visual
programming environment. The purpose of Visual C# is to take the complexity
out of Visual C++.

Visual Programming Language


A visual programming language is a language that uses a visual or graphical interface
for creating all source code. The graphical interface, called a visual programming
environment (VPE), allows programmers to drag and drop objects to build programs. It
enables the development of software programs by eliminating textual software code
with a series of visual graphics elements. Visual programming language incorporates
these graphical elements as the primary context of the language arranged in a
systematic order. The graphics or icons included within a visual program serve as input,
activities, connections or output of the program. Examples of this languages include
Alice, Mindscript, and Prograph.

Delphi
- is a powerful program development tool that is ideal for building large-scale
enterprise and Web applications in a RAD environment. Programmers use Delphi
to develop programs quickly for Windows, Linux, and .NET platforms. Delphi is
an alternative to language to Visual Basic offering development with both rapidity
and good quality. Delphi's interface also resembles the Visual Basic, making it
easy for visual basic users to use Delphi.
PowerBuilder
- is another powerful program development RAD tool best suited for Web-
based, .NET, and large-scale enterprise object-oriented applications.
Programmers also use PowerBuilder to develop small- and medium-scale
client/server applications. PowerBuilder has a data window that creates, edits
and displays data. It is also capable of creating databases through an object-
oriented interface. PowerBuilder offers native interfaces to support many major
databases that's why it is mainly used by companies in the financial,
telecommunications and manufacturing sectors, as well as in government
agencies.

Other Programming Languages and Development Tools

4GL (fourth-generation language)


- is a nonprocedural language that enables users and programmers to access data
in a database. With a nonprocedural language, the programmer writes English-
like instructions or interacts with a graphical environment to retrieve data from
files or a database. 4GLs are designed to reduce the overall time, effort and cost
of software development. It is why 4GLs are more programmer-friendly and also
enhance the programming efficiency with the usage of English-like words and
phrases, and when appropriate, the use of icons, graphical interfaces and
symbolical representations.

Classic Programming Languages


Figure 1
Application generator
- Is a program that creates source code or machine code from a specification of
the required functionality. When using an application generator, a programmer or
user works with menu-driven tools and graphical user interface to define the
desired specifications. Application generators most often are bundled with- or are
included as part of a DBMS. An application generator typically consists of a
report writer, form, and menu generator. A report writer allows you to design a
report on the screen, retrieve data into the report design, and then display or print
the report. A menu generator enables you to create a menu for the application
options.
Macro
- is a series of statements that instructs a program how to complete a task. A
macros allow users to automate routine, repetitive, or difficult tasks in application
software such as word processing, spreadsheet, or database programs. That is,
users can create simple programs within the software by writing macros.

Web Page Development


 HTML (Hypertext Markup Language)
- It is a special formatting language that programmers use to format documents for
display on the Web. HTML is a markup language that defines the structure of
your content. It consists of a series of elements, which we use to enclose, or
wrap, different parts of the content to make it appear a certain way, or act a
certain way. You view a Web page written with HTML in a Web browser such as
Internet Explorer, Mozilla, Safari, Firefox, Opera, or Google Chrome. Similarly,
 XHTML (extensible HTML)
- It is a markup language that enables Web sites to be displayed more easily on
micro browsers in smart phones and other mobile devices, as well as on desktop
and notebook computers.
 XML (Extensible Markup Language)
- It is an increasingly popular format for sharing data that allows Web developers
to create customized tags, as well as use predefined tags, used for developing a
single Web site whose content can be formatted to display appropriately on
various devices.
 WML (wireless markup language)
- allows Web developers to design pages specifically for micro browsers. Two
applications of XML are the RSS 2.0 and ATOM specifications. RSS 2.0, which
stands for Really Simple Syndication, and ATOM are specifications that content
aggregators use to distribute content to subscribers.
Scripts, Applets, Servlets, and ActiveX Controls
These programs run inside of another program. One reason for using scripts,
applets, servlets, and ActiveX controls is to add special multi media effects to Web
pages. Examples include animated graphics, scrolling messages, calendars, and
advertisements. Another reason to use these programs is to include interactive
capabilities on Web pages.

Scripting Language
- is an interpreted language that typically is easy to learn and use. Popular
scripting languages include JavaScript, Perl, PHP, Rexx, Tcl, and VBScript. A
scripting language is a programming language that employs a high-level
construct to interpret and execute one command at a time. In general, scripting
languages are easier to learn and faster to code-in, than more structured and
compiled languages such as C and C++.
Examples of Scripting Languages
 JavaScript is an interpreted language that allows a programmer to add dynamic
content and interactive elements to a Web page. These elements include alert
messages, scrolling text, animations, drop-down menus, data input forms, pop-up
windows, and interactive quizzes.
 Perl (Practical Extraction and Report Language) originally was developed by
Larry Wall at NASA’s Jet Propulsion Laboratory as a procedural language similar to
C and C++. The latest release of Perl, however, is an interpreted scripting language.
Because Perl has powerful text processing capabilities, it has become a popular
language for writing scripts.
 PHP, which stands for PHP: Hypertext Preprocessor, is a free, open source
scripting language. PHP is similar to C, Java, and Perl. PHP can be used for many
programming tasks outside the web context, such as standalone graphical
applications and robotic drone control. PHP code can also be directly executed from
the command line.
 Rexx (REstructured eXtended eXecutor) was developed by Mike Cowlishaw at
IBM as a procedural interpreted scripting language for both the professional
programmer and the nontechnical user. Rexx is a full language that can be used as
a scripting, macro language, and application development language. It is often used
for processing data and text and generating reports.
 Tcl (Tool Command Language) is an interpreted scripting language created by Dr.
John Ousterhout and maintained by Sun Microsystems Laboratories. Tcl is used for
Web and desktop applications, networking, administration, testing, rapid prototyping,
scripted applications and graphical user interfaces (GUI).
 VBScript (Visual Basic, Scripting Edition) is a subset of the Visual Basic
language that allows programmers to add intelligence and interactivity to Web
pages.

Dynamic HTML (DHTML)


- Is a newer type of HTML that allows Web developers to include more graphical
interest and interactivity in a Web page. DHTML is typically a combination of
HTML and VBscript or javascript. Web pages created with DHTML are more
animated and responsive to user interaction. Colors change, font sizes grow,
objects appear and disappear as user moves the mouse, and animations dance
around the screen.
Ruby on Rails
- Is an open source framework that provides technologies for developing object-
oriented, database-driven Web sites. Ruby on Rails is designed to make Web
developers more productive by providing them an easy-to-use environment and
eliminating time-consuming steps in the Web development process. According to
David Geary, a Java expert, the Ruby-based framework is five to 10 times faster
than Java-based frameworks. Because ruby on rails lies on speed and
convenience, changes made to applications are immediately applied, avoiding
the time consuming steps normally associated with the web development cycle.

Web 2.0 Program Development


Web 2.0 sites often use RSS, or Really Simple Syndication, and Ajax. Ajax,
which stands for Asynchronous JavaScript and XML, is a method of creating interactive
Web applications designed to provide immediate response to user requests.
Instead of refreshing entire Web pages, Ajax works with the Web browser to
update only changes to the Web page. This technique saves time because the Web
application does not spend time repeatedly sending unchanged information across the
network. Ajax combines several programming tools namely JavaScript or other scripting
language, HTML or XHTML, and XML. Examples of Web sites that use Ajax are Google
Maps and Flickr. Most Web 2.0 sites also use APIs so that Web developers can create
their own Web applications.

API (application programming interface)


- Is a collection of tools that programmers use to interact with an environment such
as a Web site or operating system. An API is an intermediary that allows two
applications to talk to each other. Each time you use an app like Facebook, send
an instant message, or check the weather on your phone, you’re using an API.
Mapping Web sites also includes API that enable programmers to integrate maps
into their Web sites.
Web Page Authoring Software
Web page authoring software is use to create sophisticated Web pages that
include graphical images, video, audio, animation.

Four popular Web Page Authoring Programs


 Dreamweaver, by Adobe Systems, is a Web page authoring program that allows
Web developers to create, maintain, and manage professional Web sites.
 Expression Web is Microsoft’s Web page authoring program that enables Web
developers to create professional, dynamic, and interactive Web sites. Expression
Web integrates with Visual Studio.
 Flash, also by Adobe Systems, is a Web page authoring program that enables Web
developers to combine interactive content with text, graphics, audio, and video.
 SharePoint Designer is a Web page authoring program that is part of the Microsoft
Office and SharePoint families of products.

Multimedia Program Development


Multimedia authoring software allows programmers to combine text, graphics,
animation, audio, and video into an interactive presentation. Many developers use
multimedia authoring software for computer-based training (CBT) and Web-based
training (WBT). Popular multimedia authoring software includes ToolBook and Director.
Many businesses and colleges use ToolBook to create content for distance learning
courses.

Program Development
Program development consists of a series of steps programmers use to build
computer programs (Figure 2).
The system development life cycle, guides the IT or information technology
professionals through the development of an information system. Likewise, the program
development life cycle (PDLC) guides computer programmers through the development
of a program. As you can see, the steps in the program development life cycle form a
loop and is within system development, specifically on step 4, implementation. The
program development life cycle consists of six steps. Analyzing the requirements,
designing solution, validating then implementing the design, testing the solution and
finally, documenting it. Each time someone identifies errors in or improvements to a
program and requests program modifications, the Analyze Requirements step begins
again. When programmers correct errors (called bugs) or add enhancements to an
existing program, they are said to be maintaining the program. Therefore, program
maintenance is a ongoing activity that occurs after a program has been delivered to
users.
System development life cycle, on the other hand, consists of steps such as
planning, analysis, design, implementation, and finally, operation, support, and security.
During the analysis phase, the development team recommends how to handle software
needs. Choices include modifying existing programs, purchasing packaged software,
building custom software in-house, or outsourcing some or all of the IT operation. If the
organization opts for in-house development, the design and implementation phases of
system development become quite extensive. In the design phase, the analyst creates
a detailed set of requirements for the programmers. Once the programmers receive the
requirements, the implementation phase begins. At this time, the programmer analyzes
the requirements of the problem to be solved.
Thus, program development begins at the start of the implementation phase in
system development and also what initiates program development cycle. The scope of
the requirements largely determines how many programmers work on the program
development. If the scope is large, a programming team that consists of a group of
programmers may develop the programs. If the specifications are simple, a single
programmer might complete all the development tasks. Whether a single programmer
or a programming team, all the programmers involved must interact with users and
members of the development team throughout program development. By following the
steps in program development, programmers create programs that are correct (produce
accurate information) and maintainable (easy to modify).
Figure 2

Control Structures
A control structure, also known as a construct, depicts the logical order of
program instructions. Three basic control structures are sequence, selection, and
repetition.

Sequence Control Structure


A sequence control structure shows one or more actions following each other in order.

Figure 3
As shown in Figure 3, sequence control structure is a steps one after the other and can
be compared to how our everyday routine is. Like waking up at 8am, eating breakfast
then working, attending class on the afternoon, studying at night and sleeping. This
steps or actions include inputs, processes, and outputs. All actions must be executed;
that is, none can be skipped. Examples of actions are reading a record, calculating
averages or totals, and printing totals.

Selection Control Structure


A selection control structure tells the program which action to take, based on a certain
condition. Two common types of selection control structures are the if-then-else and the
case control structure

If-then-else
When a program evaluates the condition in an if-
then-else control structure, it yields one of two
possibilities: either true or false. If the result of the
condition is true, then the program performs one
action. If the result is false, the program performs
a different action. For example, the if-then-else control structure can determine if an
employee should receive overtime pay. A possible condition might be the number of
hours Worked be greater than 40, If the response is yes (true), then the action would
calculate overtime pay. If the response is no (false), then the action would set overtime
pay equal to 0. In some cases, a program should perform no action if the result of a
condition is false. This variation of the if-then-else is called the if-then control structure
because the program performs an action only if the result of the condition is true.

Case control structure


With the case control structure, a condition can
yield one of three or more possibilities. The size of
a beverage, for example, might be one of the
among small, medium, large, or extra large. A
case control structure would determine the price
of the beverage based on the size purchased.

Repetition Control Structure


The repetition control structure enables a program to perform one or more actions
repeatedly as long as a certain condition is met. Many programmers refer to this
construct as a loop. There are two forms of the repetition control structure namely the
do-while and do-until.

Do-while control structure


A do-while control structure repeats one or more
times as long as a specified condition is true. This
control structure tests a condition at the beginning
of the loop. If the result of the condition is true, the
program executes the action(s) inside the loop.
Then, the program loops back and tests the
condition again. If the result of the condition still is
true, the program executes the action(s) inside the
loop again. This looping process continues until the
condition being tested becomes false. At that time,
the program stops looping and moves to another
set of actions.

The do-while control structure normally is used when the occurrence of an event is not
quantifiable or predictable. For example, programmers frequently use the do-while
control structure to process all records in a file. A payroll program using a do-while
control structure loops once for each employee. This program stops looping after it
processes the last employee’s record.

Do-until control structure


The do-until control structure is similar to the do-while
but has two major differences: 1. where it tests the
condition and 2. when it stops looping. First, the do-
until control structure tests the condition at the end of
the loop. The action(s) in a do-until control structure
thus always will execute at least once. The loop in a
do-while control structure, by contrast, might not
execute at all. That is, if the condition immediately is
false, the action or actions in the do-while loop never
execute. Second, a do-until control structure
continues looping until the condition is true — and
then stops. This is different from the do-while control
structure, which continues to loop while the condition
is true.

You might also like