module 4 part 2 introduction to software development : programming & languages introduction to...

25
Module 4 Part 2 Introduction To Software Development : Programming & Languages

Upload: annabel-wade

Post on 04-Jan-2016

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Module 4 Part 2Module 4 Part 2

Introduction To

Software Development :

Programming & Languages

Introduction To

Software Development :

Programming & Languages

Page 2: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Module ObjectivesModule Objectives

• At the end of the module, students should be able to:– List and describe the levels of programming

languages: machine, assembly, high level, very high level, and natural

– Describe the major programming languages that are in use today

– Explain the concepts of object-oriented programming

Page 3: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

What is Programming ?What is Programming ?

• Computer program – a series of instructions that directs a computer to

perform task.

• Programming language – a set of words, symbols, and codes that enables a

programmer to communicate instructions to a computer.

– a set of rules that provides a way of telling the computer what operations to perform

Page 4: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Levels of Programming LanguagesLevels of Programming Languages

• Lower-level languages – more like the 0s and 1s the computer itself uses

• Higher-level languages – more like the languages people use

• Divided into five generations1. Machine language

2. Assembly languages

3. High-level languages

4. Very high-level languages

5. Natural languages

Page 5: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

1. Machine Language1. Machine Language

• Programs and memory locations are written in strings of 0s and 1s

• Problems with machine languages– Programs are difficult to write and debug– Each computer has its own machine language

• Only option available to early programmers

Page 6: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

2. Assembly Languages2. Assembly Languages

• Substitute mnemonic codes for 0s and 1s – For example, A for add, C for compare, etc.– Use names rather than binary addresses for

memory locations

• Require an assembler to translate the program into machine language

• Still used for programming chips and writing utility programs

Page 7: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

3. High-Level Languages3. High-Level Languages

• Transformed programming– Programmers could focus on solving

problems rather than manipulating hardware– Programs could be written and debugged

much more quickly

• Requires a compiler to convert the statements into machine language– Each computer has its own version of a

compiler for each language

Page 8: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

4. Very High-Level Languages4. Very High-Level Languages

• Also called fourth-generation languages (4GLs)

• Considered nonprocedural languages– The programmer specifies the desired results,

and the language develops the solution– Programmers can be about 10 times more

productive using a fourth-generation language than a third-generation language

Page 9: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

5. Natural Languages5. Natural Languages

• Resemble written or spoken English– Programs can be written in

a natural syntax, rather than in the syntax rules of a programming language

• The language translates the instructions into code the computer can execute

Page 10: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Major Programming LanguagesMajor Programming Languages

• FORTRAN

• COBOL

• BASIC

• RPG

• Visual Basic

• C

• Java

Page 11: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

FORTRANFORTRAN

• The first high-level language

• Stands for FORmula TRANslator

• Used primarily for engineering, mathematical, and scientific tasks

Page 12: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

COBOLCOBOL

• Stands for COmmon Business-Oriented Language

• Used primarily for business requirements– Processes large data files– Produces well-formatted

reports

Page 13: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

BASICBASIC

• Stands for Beginners’ All-Purpose Symbolic Instruction Code

• Developed to teach programming to college students

• Became very popular with the introduction of the microcomputer

Page 14: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

RPGRPG

• Stands for Report Program Generator• Designed to allow rapid creation of reports

– Programmer simply describes the source data and desired report format

Page 15: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Visual BasicVisual Basic

• Allows programmer to create Windows-like user interfaces– Programmer drags a control

(button, text box, etc.) onto the form

– VB creates the code associated with that control

• VB is event-driven– The user controls the program

Page 16: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

CC

• Originally designed to write systems software– Offers the ease of use of a

high-level language with the efficiency of an assembly language

• Very portable – can be used with virtually every combination of computer and operating system

Page 17: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

JavaJava

• A network-friendly programming language that permits a piece of software to run directly on many different platforms– Allows programmers to write one version of the

program, rather than a separate version of each platform

• Very useful for Internet development– Java applets can run in the user’s Web browser

Page 18: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Object-Oriented ProgrammingObject-Oriented Programming

• Object – a self-contained unit that contains both data and its related functions

• Key terms in object-oriented programming– Encapsulation – an object isolates both its data and

its related instructions– Attributes – facts that describe the object

• Also called properties

– Methods – instructions that tell the object to do something

– Messages – an outside stimulus that results in the change of the state of an object

Page 19: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Using ObjectsUsing Objects

• Programmers define classes of objects– The class contains all attributes that

are unique to objects of that class– An object is an instance

(occurrence) of a class

• Objects are arranged hierarchically in classes and subclasses– Subclasses are derived from classes– Inheritance – a subclass possesses

all attributes of the class from which it is derived

– Additional attributes can be coded in the subclasses

Page 20: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Activating the ObjectActivating the Object

• A message is sent to the object, telling it to do something– The object’s methods tell it how to do it

• Polymorphism – each object has its own way to process the message– For example, the class may have a Move

method, but each subclass implements that method differently

Page 21: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Object-Oriented LanguagesObject-Oriented Languages

• C++

• Java

• C#

• Visual Basic

Page 22: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

C++C++

• An enhancement of the C language– Includes all features of C – Adds support for object-oriented programming

• Can be used as simply an improvement of C, without the object-oriented features

Page 23: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

JavaJava

• A pure object-oriented program

• Used to create small programs called applets– Applets can be delivered over the Web and

run on any platform

Page 24: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

C#C#

• Microsoft’s answer to Java

• Has the same advantages over C++ that Java has

• Designed to work within Microsoft’s .NET environment– .NET is designed for building, deploying, and

running Web-based applications

Page 25: Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages

Visual BasicVisual Basic

• Previous versions supported some object technology

• The current version, VB.NET, is the first to support inheritance and polymorphism– These two traits are required for a true object-

oriented language