0% found this document useful (0 votes)
78 views5 pages

Week1-Introduction To Programming Concepts

This document discusses key programming concepts such as what a computer program is, how it is developed, and the program development life cycle. It also outlines important characteristics of a good program, such as readability, efficiency, flexibility, and documentation.

Uploaded by

too robaa
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
78 views5 pages

Week1-Introduction To Programming Concepts

This document discusses key programming concepts such as what a computer program is, how it is developed, and the program development life cycle. It also outlines important characteristics of a good program, such as readability, efficiency, flexibility, and documentation.

Uploaded by

too robaa
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 5

LESSON 1: INTRODUCTION TO PROGRAMMING CONCEPTS

Lesson Objectives

By the end of the lesson the learner should be able to;

1. Describe the basic concepts of C programming


2. Explain the qualities of a good program.
Programming Concepts

A computer program is a collection of instructions that performs a specific task when


executed by a computer. Most computer devices require programs to function properly.

A computer program is usually written by a computer programmer in a programming


language. From the program in its human-readable form of source code, a compiler or
assembler can derive machine code—a form consisting of instructions that the computer
can directly execute. Alternatively, a computer program may be executed with the aid of
an interpreter.

A collection of computer programs, libraries, and related data are referred to as software.
Computer programs may be categorized along functional lines, such as application
software and system software.

Program Development Life Cycle

These are sequence of stages followed during program development. They include the
following steps;

1. Step 1: Analyze or define the problem- Program specification or defining the


problem or Program Analysis.
2. Step 2: Design programs- Develop an algorithm/pseudocode/flowchart (or a
step-by-step description of how to arrive at a solution).
3. Step 3: Code programs- Code or write the program using a programming
language.
4. Step 4: Test programs- Test the program and eliminate syntax and logic errors.
5. Step 5: Formalize solution- Complete the documentation or description of the
purpose and process of the program.
6. Step 6: Maintain programs- Implement (rolling out the system) and maintain the
system.
Programming Language A programming language is a formal language, which
comprises a set of instructions that produce various kinds of output. Programming
languages are used in computer programming to implement algorithms.

Most programming languages consist of instructions for computers. There are


programmable machines that use a set of specific instructions, rather than general
programming languages.

The description of a programming language is usually split into the two components of
syntax (form) and semantics (meaning). Some languages are defined by a specification
document (for example, the C programming language is specified by an ISO Standard)
while other languages (such as Perl) have a dominant implementation that is treated as a
reference.

Computer Programmer is a person who creates computer software. The term computer
programmer can refer to a specialist in one area of computers, or to a generalist who writes
code for many kinds of software. A programmer's most oft-used computer language (e.g.,
Assembly, COBOL, C, C++, C#, Java, Lisp, Python) may be prefixed to the term
programmer.

Libraries a library is a collection of non-volatile resources used by computer programs,


often for software development. These may include configuration data, documentation,
help data, message templates, pre-written code and subroutines, classes, values or type
specifications. In IBM's OS/360 and its successors they are referred to as partitioned data
sets.

A library is also a collection of implementations of behavior, written in terms of a


language that has a well-defined interface by which the behavior is invoked. For instance,
people who want to write a higher level program can use a library to make system calls
instead of implementing those system calls over and over again. In addition, the behavior
is provided for reuse by multiple independent programs.

Computer Software: is a collection of data or computer instructions that tell the computer
how to work. This is in contrast to physical hardware, from which the system is built and
actually performs the work.

Characteristics of a Good Computer Program?

Every computer requires appropriate instruction set (programs) to perform the required
task. The quality of the processing depends upon the given instructions. If the instructions
are improper or incorrect, then it is obvious that the result will be superfluous.

Therefore, proper and correct instructions should be provided to the computer so that it
can provide the desired output. Hence, a program should be developed in such a way that
it ensures proper functionality of the computer. In addition, a program should be written
in such a manner that it is easier to understand the underlying logic.

A good computer program should have following characteristics:

 Portability: Portability refers to the ability of an application to run on different


platforms (operating systems) with or without minimal changes. Due to rapid
development in the hardware and the software, nowadays platform change is a
common phenomenon. Hence, if a program is developed for a particular platform,
then the life span of the program is severely affected.

 Readability: The program should be written in such a way that it makes other
programmers or users to follow the logic of the program without much effort. If
a program is written structurally, it helps the programmers to understand their
own program in a better way. Even if some computational efficiency needs to be
sacrificed for better readability, it is advisable to use a more user-friendly
approach, unless the processing of an application is of utmost importance.

 Efficiency: Every program requires certain processing time and memory to


process the instructions and data. As the processing power and memory are the
most precious resources of a computer, a program should be laid out in such a
manner that it utilizes the least amount of memory and processing time.

 Structural: To develop a program, the task must be broken down into a number
of subtasks. These subtasks are developed independently, and each subtask is able
to perform the assigned job without the help of any other subtask. If a program is
developed structurally, it becomes more readable, and the testing and
documentation process also gets easier.

 Flexibility: A program should be flexible enough to handle most of the changes


without having to rewrite the entire program. Most of the programs are developed
for a certain period and they require modifications from time to time. For
example, in case of payroll management, as the time progresses, some employees
may leave the company while some others may join. Hence, the payroll
application should be flexible enough to incorporate all the changes without
having to reconstruct the entire application.

 Generality: Apart from flexibility, the program should also be general. Generality
means that if a program is developed for a particular task, then it should also be
used for all similar tasks of the same domain. For example, if a program is
developed for a particular organization, then it should suit all the other similar
organizations.

 Documentation: Documentation is one of the most important components of an


application development. Even if a program is developed following the best
programming practices, it will be rendered useless if the end user is not able to
fully utilize the functionality of the application. A well-documented application
is also useful for other programmers because even in the absence of the author,
they can understand it.

SUMMARY
Concepts such as programs, programming language, library, high level and low
level were discussed. Further, a good program must observe all the qualities of a
good program.

Revision Questions

1. Distinguish between a program and a programmer.


2. Discuss qualities of a good program.

You might also like