Wednesday 19 October 2016

CHAPTER 13

COMPUTER PROGRAM AND PROGRAMMING LANGUAGES

A computer program is a series of instructions that directs a computer to perform tasks


  • Created by a programmer using a programming language



Low level languages


Machine language is the first generation of programming languages
  • Only language the computer directly recognizes

Assembly language is the second generation of programming languages

A source program contains the code to be converted to machine language


Procedural languages- instructions that tell computer what and how to do.
  • Third generation language- a compiler translates an entire program before executing it, and an interpreter converts and executes one code statement at a time.
  • C programming language- used to write many of today's programs.
  • COBOL (COmmon Business Oriented Language)- designed for business application with easy to read English like statements.

Object oriented programming languages- allow reuse and modification of existing object. 

Advantages
  • objects can be reused, 
  • programmers create applications faster, 
  • work well in RAD (Rapid Application Development) environment
  • most program development tools are IDEs (Integrated Development Environment).
Examples
  1. Java- an object oriented programming language developed by Sun Microsystem.
  • Just In Time (JIT) compiler converts byte code into machine dependent code.
2) Microsoft .NET framework- allows almost any type of program to run on the Internet or an internal business network, as well as computers and mobile devices. 
  • Features include CLR (Common Language Runtime) and Classes.
3) C++
  • an extension of C programming language.

4) C#
  • based on C++ and was developed by Microsoft.

5) F#
  • combines the benefit of an object oriented language with those of a functional                 language.

6) Visual studio
  •  Microsoft suite's of program development tools.

PowerBuilder is a powerful program development RAD tool
Best suited for Web-based, .NET, and large-scale enterprise object-oriented applications.

A 4GL (fourth-generation language) is a nonprocedural language that enables users and programmers to access data in a database
  • One popular 4GL is SQL

Classic programming languages:
  • Ada
  • ALGOL
  •  APL 
  • BASIC
  • Forth
  • FORTRAN
  • Hyper Talk
  • LISP
  • Logo
  • Modula-2
  • Pascal
  • PILOT
  • PL/1 
  • Prolog
  • RPG
  • Small Talk
Application generator
  • a program that creates source code or machine code from a specification of the required functionality. Often bundled as part of DBMS (Database Management System).
Macro
  • a series of statements that instructs an application how to complete a task. Can be created in two ways, record the macro with macro recorder and write the macro.

Web Page Development
  • HTML is a special formatting language that programmers use to format documents for display on the Web
  • XHTML is a markup language that allows Web sites to be displayed more easily on mobile devices
  • WML is a subset of XML and is used to design pages for microbrowsers
  • XML allows Web developers to create customized tags and use predefined tags to display content appropriately on various devices
Two applications of XML are RSS 2.0 and ATOM


Various languages that are used to write Scripts, Applets, Servlets and ActiveX controls.
For example:
  • Java Script.
  • Perl.
  • PHP (Hypertext Preprocessor).
  • Rexx
  • Tcl.
  • VBScript.

Dynamic HTML (DHTML)
  • allows web developers to include more graphical interest and interactivity.
CSS (Cascading Style Sheets)
  • contains the formats for how a particular objects should be displayed.
Ruby on Rails (RoR)
  • provide technologies for developing object oriented, database driven web sites.
Web 2.0
  • allows web sites to provide a means for users to share personal information, modify web site content and it has application software built into the site.
API (Application Program Interface)
  • a set of routines, protocols and tools for building software applications. It specifies how software components should interact.
Web page authoring software
  • can create sophisticated web pages that include images, video, audio, animation and other effects.
Example:
  • Dreamweaver.
  • Expression Web.
  • Flash.
  • Share Point Designer.

Multimedia program development

Multimedia authoring software
  • allows programmers to combine text, graphics, animation, audio and video in an interactive presentation.
Example:
  • Tool Book.
  • Director.

Program development
  • consists of a series of steps programmers use to build computer programs.


Steps
Analyze requirement
  • Reviews the requirements
  • Meets with the systems analyst and users
  • Identifies input, processing, and output
  • IPO chart
Design solution
  • Design a solution algorithm
  • In structured design, the programmer typically begins with a general design and moves toward a more detailed design
  • Programmers use a hierarchy chart to show program modules graphically
  • With object-oriented (OO) design, the programmer packages the data and the program into a single object
  • The sequence control structure shows one or more actions following each other in order
  • The selection control structure tells the program which action to take, based on a certain condition
  • The repetition control structure enables a program to perform one or more actions repeatedly as long as a certain condition is met
  • A program flowchart graphically shows the logic in a solution algorithm
  • Flowcharting software makes it easy to modify and update flowcharts
  • Pseudocode uses a condensed form of English to convey program logic
  • UML (Unified Modeling Language) has been adopted as a standard notation for object modeling and development
Validate design
Check for logic errors using test data
  • Develop various sets of test data
  • Determine the expected result
  • Step through the algorithm
  • Compare the results
  • Repeat steps for each set of test data
Implement design

Implementation of the design includes using a program development tool that assists the programmer by:
  • Generating or providing some or all code
  • Writing the code that translates the design into a computer program
  • Creating the user interface
Test solution

The goal of program testing is to ensure the program runs correctly and is error free
  • Errors include syntax errors and logic errors
  • Debugging the program involves removing the bugs
  • A beta is a program that has most or all of its features and functionality implemented
Document solution
  • Review the program code.
  • Review all the documentation


No comments:

Post a Comment