You are on page 1of 46

Higher National Diploma in Computing

Assignment Brief
Student Name /Cinec Reg No B.H.K. Janindu Bhanuka /M19981124006

Edexcel No

Unit Number and Title Unit 1: Programming

Academic Year 2020/2021

Unit Assessor Thamali Kelegama

Branch CINEC Campus Malabe

Assignment Title Evaluation of application design and implementation.

Issue Date 13/12/2020

Submission Date 24/01/2021

Internal Verifier Name

Student Declaration

I hereby, declare that I know what plagiarism entails, namely, to use another’s work and to
present it as my own without attributing the sources in the correct form. I further understand
what it means to copy another’s work.

1. I know that plagiarism is a punishable offence because it constitutes theft.


2. I understand the plagiarism and copying policy of Pearson Edexcel UK.
3. I know what the consequences will be if I plagiarize or copy another’s work in any of the
assignments for this program.
4. I declare therefore that all work presented by me for every aspect of my program, will be
my own, and where I have made use of another’s work, I will attribute the source in the
correct way.
5. I acknowledge that the attachment of this document signed or not, constitutes a binding
agreement between myself and Pearson Edexcel UK.
6. I understand that my assignment will not be considered as submitted if this document is not
attached to the assignment.

Janindu Bhanuka 2021.01.31

Student’s Signature: Date:


(Provide E-mail ID) (Provide Submission Date)

1|Page B.H.K Janindu Bhanuka


Unit-01 Programming
General Guidelines

1. A cover page or title page should be attached to your assignment. Use page 1 of this assignment
brief as your cover page and make sure all details are accurately filled.
2. The entire assignment brief should be attached as the first section of your assignment report.
3. The assignment report should be prepared using a word processing software. (A4 Sized paper)
4. Allow 1” margin on top, bottom and right sides of the paper and 1.25” on the left side (for
binding).

Word Processing Rules For the Assignment report.

1. The font size (Body text) should be 12 point, and should be in the style of Time New Roman.
2. Set line spacing to 1.5.
3. Justify all paragraphs.
4. Ensure that all headings are consistent in terms of size and font style.
5. Use footer function on the word processor to insert your name, unit, assignment no, and
page number on each page. This is useful if individual sheets get detached from the
submission.
6. Use the spell check and grammar check function of the word processing application to review
the use of language on your assignment.

Important Points:

1. Carefully read the instructions given with the assignment.


2. Ensure that sufficient time is spent to complete the assignment by the due date.
3. Do not wait till the last minute to get feedback on the assignment. Such excuses will
not be accepted for late submissions.
4. You must be responsible for efficient management of your time.
5. If you use other people’s work or ideas in your assignment, it must be properly
referenced, using the HARVARD referencing system, in your text or any bibliography.
Otherwise, you’ll be found guilty of committing plagiarism.
Learning Outcomes and Assessment Criteria of the Module

Pass Merit Distinction

LO1 Define basic algorithms to carry out an operation and outline the process of programming an
application

P1 Provide a definition of what an M1 Determine the steps taken D1 Examine the implementation of an
algorithm is and outline the from writing code to algorithm in a suitable language.
process in building an application. execution. Evaluate the relationship between the
written algorithm and the code
variant.

LO2 Explain the characteristics of procedural, object-orientated and event-driven programming, conduct
an analysis of a suitable Integrated Development Environment (IDE)

P2 Give explanations of what M2 Analyze the common D2 Critically evaluate the source code
procedural, object-orientated and features that a developer has of an application which implements
event-driven paradigms are; their access to in an IDE. the programming paradigms, in terms
characteristics and the relationship of the code structure and
between them. characteristics.

LO3 Implement basic algorithms in code using an IDE

P3 Write a program that M3 Use the IDE to manage D3 Evaluate the use of an IDE for
implements an algorithm using an the development process of development of applications
IDE. the program. contrasted with not using an IDE.

LO4 Determine the debugging process and explain the importance of a coding standard

P4 Explain the debugging process M4 Evaluate how the D4 Critically evaluate why a coding
and explain the debugging debugging process can be standard is necessary in a team as well
facilities available in the IDE. used to help develop more as for the individual.
secure, robust applications.
P5 Outline the coding standard you
have used in your code.

ii | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Criteria Task Evidence
Reference To achieve the criteria the evidence must show that No Page No
the student is able to:
P1 Provide a definition of what an algorithm is and outline the 1.1
process in building an application. 1.2
P2 Give explanations of what procedural, object-orientated and 2.1
event-driven paradigms are; their characteristics and the 2.2
relationship between them.
P3 Write a program that implements an algorithm using an IDE. 3.1
P4 Explain the debugging process and explain the debugging 4.1
facilities available in the IDE.
P5 Outline the coding standard you have used in your code. 4.2
M1 Determine the steps taken from writing code to execution. 1.3
M2 Analyze the common features that a developer has access to 2.3
in an IDE.
M3 Use the IDE to manage the development process of the 3.2
program.
M4 Evaluate how the debugging process can be used to help 4.3
develop more secure, robust applications.
D1 Examine the implementation of an algorithm in a suitable 1.4
language. Evaluate the relationship between the written
algorithm and the code variant
D2 Critically evaluate the source code of an application which 4.5
implements the programming paradigms, in terms of the code
structure and characteristics.
D3 Evaluate the use of an IDE for development of applications 3.3
contrasted with not using an IDE.
D4 Critically evaluate why a coding standard is necessary in a 4.4
team as well as for the individual.

iii | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Submission format

The submission should be in the form of:

 Written Report (covering all the relevant areas of Task 01 to Task 04)
 Executable version of the application you develop in Task 03
 Source code of the application you develop in Task 03

Task 1
1.1 What is an algorithm? Give the definition. Provide an example for an algorithm using
pseudocode. (Task covers LO1, P1)

1.2 Briefly describe the steps you should follow to implement a software. (Task covers LO1,
P1)
Hint: Use SDLC to describe the steps

1.3 What is the purpose of using pre-processer, compiler and interpreter? Explain your
answer with steps taken from writing code to execution of a program. (Task covers LO1,
M1)

1.4 Evaluate the difference between algorithm and the code. Use suitable examples to
evaluate your answer (Task covers LO1, D1)

Task 2

2.1 Explain procedural, object oriented and event driven programming paradigms. Your
explanations should also include the characteristics of each. (Task covers LO2,P2)

2.2 Describe the relationship between procedural, object oriented and event driven
paradigms. (Task covers LO2, P2)

2.3 Explain what an Integrated development environment (IDE) is. Also explain the
features of the three (03) IDEs. (Task covers LO2, M2)
Task 3
You should be able to implement a system according to the given scenario.
The manager of a computer hardware desired to have a fully working application (Desktop
application) to maintain inventories in the shop. Following are the functions he requested
for the system.
 Once a customer wants to buy an item, manager can select that item from the list and
then it will load the order page where the manager can enter customer details and
order details.
 If the customer does not have enough money to buy that item, he can make an
advance payment and book that item. Then the system will display the balance.

To implement above system, you need to create a database and add tables as bellow.
Table name: Customer
 CustomerName
 Address
 Contact Number

Table Name: Order


 ID
 CustomerName
 ItemName
 Quantity
 Price
 Advance
 Balance

Then create interfaces according to above requirements.


You are required to fulfil the following in terms of building the above application:

3.1 Use an Integrated Development Environment (IDE) of your choice to implement the
above mentioned application. Include source code and screen shots of the application.
(Task covers LO3, P3)

2|Page B.H.K Janindu Bhanuka


Unit-01 Programming
3.2 Provide evidence of how the IDE was used to manage the development of your code.
(Task covers LO3, M3)

3.3 What are the advantages of using IDE to implement such a system rather than not using
an IDE. (Task covers LO3, D3)

Task 4

4.1 Briefly describe the debugging process. (Task covers LO4, P4)

4.2 What are the coding standards you have used when develop the application in task 03?
(Task covers LO4, P5)

4.3 Do an evaluation of the debugging process in the IDE you used focusing on how it helped
with the development of your application. You may discuss both positives as well as
negatives (if any) (Task covers LO4, M4)

4.4 Critically evaluate why a coding standard is necessary for implementation? (Task covers
LO4, P5,D5)

4.5 Critically evaluate the source code that you wrote for the application in Task 03 in
procedural, object orientated and event-driven programming viewpoints, paying
attention to the code structure and characteristics. (Task covers LO2, D2)

:End of Tasks

Assignment Feedback

3|Page B.H.K Janindu Bhanuka


Unit-01 Programming
Formative Feedback: Assessor to Student

Action Plan

Summative feedback

Feedback: Student to Assessor

Assessor Signature Date

Student Signature Janindu Bhanuka Date 2021.01.31

4|Page B.H.K Janindu Bhanuka


Unit-01 Programming
Student Assessment Submission and
Declaration
When submitting evidence for assessment, each student must sign a declaration confirming that the work is
their own.
Student name: Assessor name:
Janindu Bhanuka Mrs. Thamali Kelegama

Issue date: Submission date: Submitted on:


2020.12.13 2021.01.24 2021.01.31

Program:
HND in Computing

Unit:
01- Programming

Assignment number and title:


Evaluation of application design and implementation.

Plagiarism
Plagiarism is a particular form of cheating. Plagiarism must be avoided at all costs and students who break the
rules, however innocently, may be pena. It is your responsibility to ensure that you understand correct
referencing practices. As a university level student, you are expected to use appropriate references throughout
and keep carefully detailed notes of all your sources of materials for material you have used in your work,
including any material downloaded from the Internet. Please consult the relevant unit lecturer or your course
tutor if you need any further advice.
Student Declaration
Student declaration

I certify that the assignment submission is entirely my own work and I fully understand the consequences of
plagiarism. I understand that making a false declaration is a form of malpractice.

Student signature: Janindu Bhanuka Date: 2021.01.31

5|Page B.H.K Janindu Bhanuka


Unit-01 Programming
Table of Contents
Student Assessment Submission and Declaration .................................................................................. 5
Plagiarism .............................................................................................................................................. 5
Table of Figures ....................................................................................................................................... 7
Acknowledgement .................................................................................................................................. 9
Introduction .......................................................................................................................................... 10
Task 01 .................................................................................................................................................. 11
Task 1.1 What is an Algorithm .......................................................................................................... 11
Task 1.2 Software Development Life Cycle ....................................................................................... 15
Task 1.3 Purpose of using pre-processer, compiler and interpreter ................................................ 21
Task 1.4 Difference between Algorithm & Code .............................................................................. 26
Task 02 .................................................................................................................................................. 27
Task 2.1 Programming Paradigms..................................................................................................... 27
Task 2.2 Relationship between the Programming Paradigms .......................................................... 31
Task 2.3 Integrated Development Environment ............................................................................... 32
Task 03 .................................................................................................................................................. 34
Task 3.1 Source Code of the Project ................................................................................................. 34
Task 3.2 Advantages of NetBeans ..................................................................................................... 34
Task 3.3 Advantages of Using an IDE ................................................................................................ 35
Task 04 .................................................................................................................................................. 35
Task 4.1 Debugging Process .............................................................................................................. 35
Task 4.2 Coding Standards ................................................................................................................ 37
Task 4.3 Evaluation of Debugging of NetBeans ................................................................................ 38
Task 4.4 Importance of Coding Standards ........................................................................................ 39
Task 4.5 Evolution of My Project Source Code ................................................................................. 40
References ............................................................................................................................................ 41

6|Page B.H.K Janindu Bhanuka


Unit-01 Programming
Table of Figures
Figure 1 Acknowledgement ....................................................................................................... 9
Figure 2 Programming ............................................................. Error! Bookmark not defined.
Figure 3 Algorithm Definition ................................................................................................. 11
Figure 4 Advantages of Pseudo Codes .................................................................................... 12
Figure 5 Disadvantages of Pseudo Codes ................................................................................ 13
Figure 6 SDLC ......................................................................................................................... 15
Figure 7 Software Development Life Cycle Models ............................................................... 17
Figure 8 Waterfall Model ......................................................................................................... 18
Figure 9 V-Shape Model .......................................................................................................... 18
Figure 10 Prototype Model ...................................................................................................... 19
Figure 11 Spiral Model ............................................................................................................ 19
Figure 12 Iterative Incremental Model .................................................................................... 20
Figure 13 Big Bang Model....................................................................................................... 20
Figure 14 Agile Model ............................................................................................................. 21
Figure 15 Examples for Preprocessors..................................................................................... 22
Figure 16 Examples for Compilers .......................................................................................... 22
Figure 17 Process of Interpreter & Compiler ........................................................................... 23
Figure 18 Compiler vs Interpreter ............................................................................................ 24
Figure 19 Procedural Programming Example .......................................................................... 28
Figure 20 Object Oriented Programming Example ................................................................. 29
Figure 21 Event Driven Programming ..................................................................................... 30
Figure 22 Relationship of Programming Paradigms ................................................................ 31
Figure 23 IDE........................................................................................................................... 35
Figure 24 Debugging Process .................................................................................................. 36
Figure 25 Syntax Error ............................................................................................................. 38
Figure 26 Logical Error............................................................................................................ 38
Figure 27 Debugging Tool ....................................................................................................... 39

7|Page B.H.K Janindu Bhanuka


Unit-01 Programming
8|Page B.H.K Janindu Bhanuka
Unit-01 Programming
Acknowledgement

Foremost, I would like to express my sincere gratitude to my Subject Lecturer and my


Assignment Adviser Mrs. Thamali Kelegma at the CINEC Campus for giving good guidance
and motivation to me.

Also, in preparing for this project, I could not complete it without the support of my
batch mates. They always direct me to create this project successfully.

My sincere thanks also go to my dearest parents for giving me valuable advice and for
giving me their maximum support to complete this project.

Finally, I would like to say Thank you to the unmentioned people who have guided
me, directly and indirectly, to write this project successfully.

Figure 1 Acknowledgement

9|Page B.H.K Janindu Bhanuka


Unit-01 Programming
Introduction
In this world, everything operates by another thing. For example, universe operates the
seasons, day and night, sunrise and sun set… So, there is a sequence of some instructions to
operate things. Let’s we look at another side of it.

Since 1975, the digital revolution started. As a result of this digital revolution humans began
to use information technology for make their daily works easier than earlier. So, they invented
many technological equipments to the modern world such as computer, smart phone….These
technical equipments which are based on the information technology are control by a code
based program. In that smart devices, some code programs are running in the device
background. When we press a key, when we move the mouse cursor likewise every single
simple task has code instructions to execute the tasks. Now you may wondering what is this
coding means.

Coding or programming is a method to instruct the computers to carry out the assigned tasks.
So, a computer program is a set of instructions that the computer executes. Now, you know
the meaning of coding.

Every machine have their own language as our mother language. In machines, it is called the
machine language. Machine language is consist with only two states. They are 1 for on and 0
for off. But the thing is humans cannot understand this machine language. They want to build
up a language which can understand by both human and machines. As a result of this, humans
invented the programming languages and translators.

Programming languages are used to make computer programs in human language and
translators are used to convert that program into machine language. This is how people build
up computer programs to make their daily work much easier.
So, we will go through some main aspects in programming subject with a small project in this
assignment.

10 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 01
Task 1.1 What is an Algorithm
Let’s get an example. Imagine we want to make a cup of tea. This is our problem. To get the
answer we have to follow this steps. First of all we boil the water. After 5 to 6 minutes we put
the boiled water into a jug. Then we put tea bags as we want. Stir well after adding tea bags.
By finishing this simple steps we can get hot and tasty cup of tea. According to this simple
scenario, we have a problem and sequence order for get the solution. This is a simple
algorithm. So, an algorithm is a group of procedures which are in a specific sequence
order and using to get the solutions for any problem. For any kind of problem we have to
follow simple set of steps which are in order to get the solution. In modern world we are using
numerical, theoretical, operational, sequential, geometric & algebraic algorithms to find
solutions for various kind of problems.

Figure 2 Algorithm Definition

11 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Characteristics of an Algorithm
 Well defined inputs & outputs
 Language Independent
 Feasible
 Clear
 Finite-ness

Pseudo Codes
Pseudo code is an informal, non-programming language which is describe the steps of an
algorithm in simple way. Also, it represents the implementation process of any algorithm but
it does not include in detail facts.

Advantages of Pseudo Codes

Figure 3 Advantages of Pseudo Codes

12 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Disadvantages of Pseudo Codes

Figure 4 Disadvantages of Pseudo Codes

There are some special words to represent pseudo codes.


1) To staring the pseudo code, we use “Begin”.
2) To end the pseudo code, we use “End”.
3) To input values to the pseudo code, we use “Input / Get / Read / Enter”.
4) To get the output of the pseudo code, we use “Output / Display / Show / Print”.
5) To represent the process of the pseudo code, we use “Process / Calculate”.
6) To choosing process of the pseudo code, we use “If / Then / Else / End-if”.
7) To Looping process of the pseudo code, we use “While-do / For-Do / Repeat / Until”

Also, there are some special words called as variables to store information about the values
of the computer program.
Ex-: Integer - Numbers (1, 2, 3, 4, 5……)
String - Nouns (“apple”, “car”, “bed”…..)
Char - Characters (@, *, #.....)
Double / Float - Decimal Numbers (1.2, 2.5, 5.88, 8.9977…)

13 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Example for Algorithm Using Pseudo Codes

1) Question 01…..
Get the total of two numbers.

Answer 01……
Start
Integer num1, num2, Total
Input num1, num2
Total = num1 + num2
Print Total
End

2) Question 2…….
Get numbers between 1 to 10.

Answer 02……
Start
X=0
While X<10 do
Input number
Print Number
X=X+1
End While
End

14 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 1.2 Software Development Life Cycle

Figure 5 SDLC

Software Development Life Cycle is a development procedure of a software which consists


with sequence order of some simple steps which is give a high quality software within less
time period in less cost. Also, it fulfill the customer expectations. We use software
development life cycle because,
 To build up a basement for the project planning, scheduling and estimating.
 To increase the development speed.
 To improve the relation between client and the service provider.
 To decrease the project risk.

15 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
There are seven stages of SDLC. They are described as follows.

1. Requirement Gathering and Analysis


This is the first step and the most important step of the Software development
life cycle. In this stage, the senior team members gather the all relevant
information about the project from the experienced people, developers and
industry experts. Information are like what is the customer need, who is the end
user, purpose of this project, Also, the senior team members analyze the
customer requirements to design the project plan. All the team members can get
a complete picture of the project by doing this step.
2. Feasibility Study
This is the second stage of the SDLC. In this stage we conduct a feasibility study
which is covering some special areas of the project. That is operational area,
economical area and technical area. Also, the senior members design a cost plan
and a risk plan for the project. They estimate the cost for the project and analyze
the solutions for the identified risks. Then they include these information to a
document and get the approval from the project manager and the customer.
3. Designing
This is the third step of the SDLC. In this stage the senior members arrange the
software design documents. It helps to identify the whole system architecture.
There are two designing types in this stage. These two models are low level
design and high level design. High level design consists with the brief
description of the project scope, the functionalities of the every module of the
project, relations of the interface and architecture diagrams with its’ technical
details. Low level design consists with database tables’ types and the sizes, error
massage lists and complete the interface.
4. Development
This is the fourth and the longest step of the software development life cycle.
The app developmenting and the programming code generating is start in this
stage. The project tasks are assign to small teams or units. Every team or a unit
has a leader to control and monitor his team. Also, his responsible is to archive
the given tasks within or before the target date with his team members. The team
members must work with the same vision. All developers must follow the
guidelines which are define by the organization. The programming language
and the programming tools are based on the software that customer wants.
5. Testing
This is the fifth step of the software development life cycle. In this step, the
quality assurance team and the testing team will test the project quality by
various kind of testing tools and techniques. They can ensure the customer
requirements are fulfilled and the project is in the standard quality. They verify
the code is meets the targets. Also, they identify the bugs of the project. They
inform the identified bugs to the development team and the development team
will fixing the issues. This process will continue until get the stable project
outcome.

6. Deployment
This is the sixth step of the software development life cycle. In this stage the
team will finalize the project. The senior members check the assigned tasks are

16 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
successfully archived or not and some areas to develop. After finalizing the
project they finalizing the documentation part with the customer and the project
manager. Finally, the software is release to the customer.
7. Maintenance
This is the seventh and the last step of the software development life cycle. In
this step the development team must fix the issues which are identified by the
customer when they using the software. Also, the team must upgrade new
versions with the new features to the software.

Software Development Models

Figure 6 Software Development Life Cycle Models

Software Development Life Cycle Model is a formal and clear description which is
represented the software development life cycle. There are eight models.

Waterfall Model

17 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Figure 7 Waterfall Model

V-Shaped Model

Figure 8 V-Shape Model

Prototype Model

18 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Figure 9 Prototype Model

Spiral Model

Figure 10 Spiral Model

Iterative Incremental Model

19 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Figure 11 Iterative Incremental Model

Big Bang Model

Figure 12 Big Bang Model

20 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Agile Model

Figure 13 Agile Model

Task 1.3 Purpose of using pre-processer, compiler and


interpreter

Preprocessor
A preprocessor is a program that measures its input to process output that is contribute to
another program as an input. The output is supposed to be a preprocessed type of the
information, which is regularly used by some resulting programs like compilers. The amount
and the processing type is based on the nature of the preprocessor. Preprocessor is a system
software. It converts the high level language into the machine level language.

21 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Examples for Preprocessors

Figure 14 Examples for Preprocessors

To run a computer program we have two ways. It is compiling the program and pass the
program via an interpreter.

Compiler
Compiler is a computer software program which converts the high level language which is
written by a programmer into machine language which can identify by the computer processor
without changing the purpose of the source code. There are three types of compilers. They
are single pass compilers, two pass compilers & multiple pass compilers.

Examples for Compilers

Figure 15 Examples for Compile

22 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Compilers are act like an error scanners because it scan the whole program to recognize the
errors of the program. Also, it check the data types of the program. It increase the performance
of the executable file. The program will execute faster by doing this. Compiler allows us to
build up an internal structure in memory. By using the compiler, we do not want to run the
program on the same machine which is build. So, we can run the program in several machines.
Also, compiler convert the files into an executable format.

Interpreter
Interpreter is software program which execute the instructions of a program that written in a
high level language.

Process of the Compiler & the Interpreter

Figure 16 Process of Interpreter & Compiler

23 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Compiler vs Interpreter

Figure 17 Compiler vs Interpreter

Example for Compiler

We have to get the total of two numbers. We get three variables to execute the program. We
get A as the first number. We get B as the second number. We get C as the answer of the total
of two numbers. Then we assign values for each variable. This can describe as follows.
Line 1 A = 100;
Line 2 B = 200;
Line 3 C = A + B;
Line 4 Display (C);

24 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
The above mentioned process is written in high level language which cannot understand
by the computer processor. So, we use interpreter to convert this source file into machine
language. So, the interpreter takes the input of the source file and then the interpreter generate
an object file. The object file consists with numerical and characters in some special sequence
order.

First of all, the interpreter scan the first line of the source code and generate the first
line into machine code. Then interpreter scan the second line of the source code and generate
the second line into machine code. After that, the interpreter scan the third line of the source
code and generate the third line into machine code. Finally, the interpreter scan the fourth line
of source code and generate the fourth line into machine code. If any issue in the source code
the interpreter will display it as an error massage. Also if any line has an issue it will not
continue the execution process. After fixing the issues, compiler will run the program. The
computer show the output as “300” as we wish.

Example for Compiler


Let’s get the above example for this also. The procedure is same but it has little difference.
That is the interpreter generates the source code line by line. But the compiler check the whole
source code at once. The computer has to wait till the interpreter scan the all lines of the
source code. In compiling computer get fully translated file in one go. So, computer hasn’t
wait.

25 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 1.4 Difference between Algorithm & Code
According to the above tasks, you know the definitions of the algorithm and the code.
Algorithm and code are not the same procedures in programming. These two doing quite
similar works but these have some differences. An algorithm is normally run and execute by
the computer programs. But in some algorithms can be rectified by the humans such as
mathematics algorithms. But code can only run and execute by computer programs. An
algorithm can be written in natural language but a code should be written in a suitable
programming language that is best for the execute program. An algorithm can understand by
any person who knows the algorithm wrote the language but code can only understand by
computers and programmers who know the programming languages. Let’s take an example to
get a better understanding of the difference between a code and an algorithm. Think, we want
to type a document in Microsoft Word. We use a keyboard to type the document and we can
do changes and formatting by using the toolbars of the Word software. When we type letter J,
letter A, letter N, the letter I, letter N, letter D, letter U it displays as “JANINDU”. So, we can
type words easily because there are keys for each letter on the keyboard. The assigned letter of
the key is displayed on the keyboard. That’s why we can easily type words. This thing is like
an algorithm. The keyboard key letters are in the English language. So, we can understand it
easily. But the thing is computers cannot understand words, letters, or symbols. The computer
can only understand binary codes that are consistent with 1 and 0. When we press any key there
is a small code run in the computer to generate the pressing key letter in binary code. Also,
when we do any changes or formatting to our document, every single simple task has a code to
generate our need as a machine language. So, that code can only understand by the computer.

Figure 2 Binary Codes

26 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 02
Task 2.1 Programming Paradigms
Programming Paradigms are the different styles of the programming. There are many
programming paradigms in computer science. They are,
 Procedural Programming
 Object Oriented Programming
 Event Dirven Programming
 Parallel Processing Programming
 Logic Programming
 Functional Programming
 Database Processing Programming

Procedural Programming
Procedural programming is a programming method which is divide the main large
program into sub units called procedures. Any new programmer will learn this paradigm in his
first step of programming. In this method the computer will instruct the code how to complete
the assign task in completing the small steps because this paradigm is based on the top to
bottom concept. The large program is at the top level and its divided parts are at the bottom.
By completing this all sub units we can archive the task. For example, imagine there is a small
program which have 10 line instructions. When we run this program, the computer will execute
the first line and then the second line likewise it continues to line ten. The computer cannot
skip the lines it should execute line by line as the sequence order of the program. So, the
procedural programming is best to develop a medium size applications. There are two types of
data used in the procedural programming. They are local data and global data. Local data
always in the function and the global data is always at the outside of the function. In procedural
programming it used “Cobol, Forton, C, Pascal, Basic” as the programming languages.

Advantages of Procedural Programming


 The coding part is simple.
 The codes can use again in parts of the program.
 It used less memory in computer.
 The program path can tracked.
 The program source code is portable.

27 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Disadvantages of Procedural Programming
 It is only focus to the functions.
 The maintaining and enhancing is difficult.
 Cannot design a large application.

Example for Procedural Programming

Figure 18 Procedural Programming Example

Object Oriented Programming


Object Oriented Programming is a programming method which is consist with the
collection of classes, methods, attributes and objects which are working each other to solve a
problem. The basic entity of the object oriented programming is the object. For example if we
get fruits as our class orange, mango, and grapes are the objects of that class. This programming
paradigm is the most popular programming paradigm in programing. Also, the execution part
is only performed on the objects. There are four principles of this programming paradigm. They
are Inheritance, Encapsulation, Abstraction and Polymorphism. Inheritance means it give the
ability to the classes to inherit features of the other classes. Encapsulation meaning is all
important information include in the object and only view the selected information to the
outside. Abstraction means the user only communicate with the selected attributes only.
Polymorphism means it design the objects to share. In object oriented programming it used
“Java, C++, Python, R, PHP, Perl, and Dart… as the programming languages.

28 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Advantages of Object Oriented Programming
 Easy to manage
 The security is very high because we can encapsulate the data.
 We can eliminate the redundant code using various types of techniques.
 Reduce the code duplication
Disadvantages of Object Oriented Programming
 Only understand this paradigms who are experts in programming mythologies and
software engineering.
 Difficult to trace the flow
 Debugging is complex

Example for Object Oriented Programming

Figure 19 Object Oriented Programming Example

29 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Event Driven Programming

Event Driven Programming is a programming method which is based on the events


because the program execution procedure is determined by the program events. It means the
execution program code is ready but not run until us clicking the mouse button or a keypad
button or a massage from us. Events are the user interaction such as mouse click or key press.
Events are monitor and control by the event listener. In event driven programming, it used “C#,
C++, Java Script..” as the programming languages.

Advantages of Event Driven Programming


 Flexibility is very high.
 It is suitable for graphical interfaces and model systems.
 Easy to code
 It is highly compostable paradigm.

Disadvantages of Event Driven Programming


 The debugging is complex.
 Loading and running is slower than the other paradigms.

Example for Event Driven Programming

Figure 3 Event Driven Programming

30 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 2.2 Relationship between the Programming Paradigms
Event Driven Programming paradigm is basically uses by the event handlers to control the
large number of programming codes as a proper way. If a code is no need to use with a given
scenario, the code will automatically stopped and rest on the side lines of the whole code. By
the way, it does not involve to another code instructions. Presently, all programs are consist
with subprograms which are assigned to represent a different types of tasks with several types
of events such as drop downs, mouse clicks, key press, text boxes… The controlling programs
normally keeps a track of several events. Also, event handlers are in the procedural and object
oriented programming paradigms. Without using one of this three paradigm the expected
program cannot archive successfully. Also, object oriented programs are usually in a
procedural way because it has series of steps to complete the target program in a nice way.
We can say object oriented programming is a combination of the event driven and the
procedural programming. The functions, entities and variables are always kept in a special
object. These objects cannot create randomly. Every object come out from a class. A class is
a design for creating objects. Procedural programming uses variables to store the state of the
application and procedures to change that particular state. The problem is that any small piece of
code can access any variable. That makes it difficult to debugging this code because a faulty state
can be start in anywhere. It also makes it complex to test it because the behavior of a procedure
may be different based on the state of the variables. There are two ways to solve that problem.
First one is you have to add access restrictions to the variables and the second one is you have to
restrict the action to modify them. Access restriction procedure is actually an object oriented
programming. Also, restriction of modification is an event driven programming.

Figure 21 Relationship of Programming Paradigms

31 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 2.3 Integrated Development Environment
Integrated Development Environment is a software suite or a software application
consist with a source code editor, build automation tools and debugger which is used to
software development and which is provide more facilities to a programmer to create, build
and test his code with minimizing the coding mistakes and maximizing the productivity of the
programmers by combining the common activities to a single graphical user interface of a
frame work.
When we open an IDE it looks in blank. Then we starts coding our coding in that blank
page. We can edit codes. We do code editing in the code editor of the IDE. Then the complier
of the IDE will converts the source code into a machine readable language. After that the
debugger of the IDE will check the errors and fixed it. Also, it has a feature called syntax
highlighting. It means when we started our code typing, the IDE will show the programming
language keywords and coding errors or the syntax errors. Syntax errors are normally represent
by several colors and several font types of the language. Another thing is, modern IDEs have
an intelligent to complete our incomplete code. It will give suggestions to the incomplete code
and it automatically complete it when we type. Also, it has automatic refactoring feature. IDEs
have debugging feature to find issues of our code and fixed it. Also, IDEs have code search
facilities. It means it has the ability to find class of the code, function declarations, usages,
variables, form based widgets, and natural language based interfaces... The toolbar of the IDE
is a normal toolbar because it has color based organization, source code formatting’s, error
diagnostics... Imagine, if we haven't a IDE, the developers have to broadly think about some
factors such as what tools have to use to complete the tasks, how to use these tools, configuring
that tools. So, now programmers have not to worry about that because all of the tools are in a
one framework and it allows many programming languages.
Normal Steps of IDE is,

1. If we forget to save our code all the unsaved changes are saved in the text editor of the IDE.
2. The compiler will convert the source code into a machine language which can understand
by the computer.
3. The linker will opens the object file of the program and then linker links that file with the
library object files.
4. The loader will load the executable file into the computer memory and the loader inform the
CPU of the computer to process the instructions.

32 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Advantages of IDE
 Easy to operate.
 IDE simplify the database
 IDE doesn’t require any detailed knowledge about databases.
 IDE has the ability to provide good facilities to code faster with using less effort.
 Group of programmers can work together in a IDE.

Disadvantages of IDE
 Some IDEs can be complex to beginners.
 IDE will not eliminate efficiency in our application.

Key Features of Visual Studio


 Searching is improved.
 Visual Studio has main three version. They are community version, professional
version and enterprise version.
 Ability to identify and fix warnings by code cleanup feature.
 We can customize the IDE according to our needs in the my profile page at the
startup. Visual Studio Developer is the default profile at the startup.
 Support 36 programming languages
 Autocomplete suggestions are appear in the modeless list box.
 We can setup a bookmark for navigate some codes quickly.
 Code editor include multi item clipboard and a task list.
 We can save repeating codes as a template in code snippets.
 The debugger is works with both managed code and the native code.
 Some designers can use IDE to archive their needs such as windows forms
designers, WPF designers, web designers, class designers, mapping designers…
 Some special tools are in the IDE such as open tab browser, properties editor, object
browser, solution explorer, team explorer, server explorer…

Key Features of NetBeans


 NetBeans is a free version and the official IDE of the Java 8.
 It supports Windows, Linux and Mac operating systems.
 We can search multiple apps in a same time.
 NetBeans has visual debugger for the Java SE applications.
 It support apache Maven.
 Net Bean users can create, test, debug and deploy which are run on the raspberry
PI, PDAs, mobile phones and setup boxes.
 It also supports CVS, subversion, GIT, Mercurial and clear case.
 Also it support JSF component libraries.

33 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Key Features of Eclipse
 There is an autocorrecting system for the incomplete and issue codes.
 User Attractive interface with drag and drop feature.
 Functionalities can add by adding more plugs to the IDE.
 Eclipse is a free software.
 Also have the ability to diff two files quickly.
 The code can auto format.
 It has dark theme and crisper icons.
 We can deploy our applications to a Docker container directly.
 Eclipse supports JPA tooling and JSF tooling.
 Support web service development, edit the XML files and sprig based applications.

Task 03
Task 3.1 Source Code of the Project
The Screenshots of the source code are include in the source code file.

Task 3.2 Advantages of NetBeans


NetBeans provides Integrated Development Environment (IDE). When you work with Java
SE, Java EE, or Java ME technology as well as PHP, JavaScript and C / C ++, NetBeans IDE
can increase your productivity. There are also visual tools that generate skeletal code, allowing
you to create a basic application without having to write a single line of code. The built in
functions of the NetBeans IDE is very useful to me to build up the system quickly. There are
some key functions that are help me. First one is the syntax highlighting function. In this IDE
some special words and simple tasks such as buttons, tables, variables, errors are highlight with
a different color formats. So, I can clearly understand wha unction. In this IDE, it provide code
suggestions for incomplete codes. When I coding half t I am coding now and for what this code
is apply to. Second one is code suggestion f the codes, the IDE automatically show the code
suggestion to me. So, I can click the suggestion to complete my incomplete code without typing
the whole code line. Third functions is debugging. In this IDE, it showed me the error code
lines of my program. By using error icons and word highlighting. So, It helped me to find the
error and fixed it quickly. Fourth function is we do not want to compiling our code manually
as we do in a text editor because NetBeans IDE done it itself. Also the debugging process is
helped me a lot to fix my code errors.

34 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 3.3 Advantages of Using an IDE
The big advantage of an IDE is
the integrated part. You don’t
have to use different tools to
design a layout, debug, write the
code, build…You can do it all in
one developing tool. The parts
of the IDE are designed to work
well together. IDE makes
writing code easier and quickly.
Figure 4 IDE
IDE eliminate the development of
many complex, repetitive and hard tasks. For example, almost all IDEs give code suggestions
or some form of code completion, where you start typing in the name of a function or variable
and fill in the remaining for you. This is great when you have active names that reach the further
point. IDEs are best for debugging processes. For example, you can pause your program at any
time and navigate through tasks, view values stored in variables, and even view raw memory.
You can set a breakpoint or a bookmark, which automatically pauses as soon as your program
reaches a certain code line. IDE makes coding easier and smarter. IDEs are also suitable for
controlling how your software is built. You can set up compiler flags, store multiple
configurations.

Task 04
Task 4.1 Debugging Process
Debugging is a systematic and multistep process to identify and eliminate the errors or the
issues or the bugs of the code to design stable and error free software to the customer. Software
needs to stable and error free before it going to the market. Debugging is not a simple task it is
a complex task. Sometimes debugging process task takes more time than the coding time. We
use debugging tools such as Radare2, WinDbg, Valgrind to identify the errors. We must
properly study the whole system for larger duration because to get complete idea of the whole
system. This thing is help to debugger to made different views of systems to be debugging
based on the need.

35 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Firstly, we must identify the issue in precisely because if we cannot find the issue correctly, we
have to waste our valuable time to find the issue. After that we have to recognize the source of
the issue. We can analyze the issues backwards. We can analyze our code forwards. It helps us
to recognize the further points which can be occurring issues. After completing this steps, we
have to get clear understand about the recognized error. So we have to analyze it. Then we have
to gather the unit tests of all units of the code because to make sure the code is stable and it
give the output as we aspect. Finally, we fix the all recognized errors and ready the program
for release.
There are different types of debugging in several operating systems. In Windows, we use visual
studio as an editor and the debugger. In Linux and Unix, we use GDB as the debugger. In Mac
operating system, we use LLDB. Also, we use various types of debugging techniques to make
easier the debugging process. For example, debugging by brute force, induction strategy,
deduction strategy, Backtraking strategy…

Figure 5 Debugging Process

36 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 4.2 Coding Standards
In the modern world, many software organizations aspect from their developers and
programmers to maintain some standard style of coding. That coding style called as the coding
standard. Actually, coding standards are collection of coding rules or guidelines and best
practices to ensure the implement code is safe, secure, reliable, testable maintainable and
portable. Some coding standards are highly required for compliance procedure. Such as IEC
61508, ISO 26262, EN 50128, IEC 62061. In C programming we use MISRA and CERT
coding standards. In C++ programming we use MISRA, AUROSAR, and JSF AV C++
1. Global Variables declaration
In this standard, we look about what type of variables can be categorize as a global
variable of the local variable. This helps us to maintain the confidentiality of the data, even in
cases where only a select group of users should be given access.

2. Naming Conventions
In this standard, the naming conventions are designed to express any kind of object in
the software. This standard provide a common structure of the variable names.

3. Contents of Headers
Each module has a pre-defined format of data that should be in the header. This
normally includes the module name, created data, approval date, developer or author name,
summary, module description, module defined variables and functions.

4. Error Return Conventions


In some range of input data, there are certain conditions. In such cases, an error message
should be displayed if the data entered by the user exceeds the specified range. The error return
conventions define the range and criteria by which the error should arise

5. Small Length of Functions


Functions may be have 10 to 12 code lines.

37 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 4.3 Evaluation of Debugging of NetBeans
I used NetBeans IDE as my project IDE. In NetBeans IDE the debugging process is
very easier because if we have an error in a code line, it will indicate an error icon at the code
line. When we move our mouse cursor to that small icon, it displays the error and the solution
in a yellow square. So, we can rectify our error by following that instructions.
When we have a syntax error in our code line, the IDE indicate the error by underline
the error syntax in red color. Also, it mentioned the error icon as I mentioned in the above
paragraph. When we move our mouse cursor to the red underline, it will show the error

description.

Figure 6 Syntax Error

If we run our program without considering the errors there is other way to find our
errors. When we press the run button, the description of the error will show in red color words
at the bottom of the IDE. It displays the small description about the error and the error code

Figure 7 Logical Error

Figure 8 Debugging ToolFigure 9 Logical Error

Figure 10 Debugging Tool

Figure 11 Debugging ToolFigure 12 Logical Error

Figure 13 Debugging ToolFigure 14 Logical Error

38 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
line. So, we can easily find the error code line and fix the mentioned error. Usually, we use this
to the logical errors of the code.
Also, we have another special tool in the NetBeans IDE to fix our errors. That is the debugger
tool. When an error occur at the code line, we have to select it by pressing Ctrl key and the F8
key at once. Then the error will highlight. Then we have to press the debug button in the toolbar
which is next to the run button.

Figure 15 Debugging Tool

Figure 16 Debugging Tool


Task 4.4 Importance of Coding Standards
Figure 17 Debugging Tool
Coding standards are very important to the developers and the programmers to implement a
stable and a best code for their program. Instead of increasing the development costs,
Figure 18 Debugging Tool
implement coding guidelines and standards to identify existing issues and correct them in a
precise time manner. This thing is a great strategy to increase the efficiency of coding. Also,
writing an unique code makes maintenance and monitoring easier by decreasing the error
detection time. Also, following an own unique code standards provides clean and reusable code
that greatly reduces the development costs and efforts. Another thing is reusing the same code
will save the coding time. Coding standards help to increase the efficiency and excellence of
the source code. It is ultimately useful to developers as they can understand what a specific
code modules. This greatly reduces the project failures. Also, using the correct architecture and
connecting the all modules properly will help the programmers to build a great solution that
meets all client requirements. Furthermore, the debugging can be delegated to a developer other
than the person who developed it. This thing can be a problem if the coding standards and
guidelines are not used at all. Therefore, it is important to use the encoding standards in our
source code to decrease the time to debug the code and provide the best possible output to
customers.

39 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
Task 4.5 Evolution of My Project Source Code
As a beginner to the programming, I used object oriented, event driven and procedural
programming paradigms to complete my project successfully. You know procedural paradigm
is a method which is divide the main large program into sub units. So, my main target or the
customer requirement is to design a Computer hardware inventory system to a computer
hardware shop. This is the final outcome. As a steps of a staircase this final outcome cannot
achieve directly. We have to fulfill some subparts to complete the final. We know every system
has a logging page. That is the first interface in every application or a system. So, firstly I
designed my logging page as a user friendly one. Admin or the shop owner can assign a
password to it and login to the system. I used “If” function to the logging page source code.
When a user type incorrect username or a password, that user cannot logging to the system. If
the username and the password is correct and it will move to the second interface. It is the main
menu interface. In that, we can place some orders as the customer need. Then the owner can
choose items in the item interface. Likewise I add some interfaces which are related to the
hardware shop. So, these are the subunits of the project. Every interface and the project
database link together. All of these are done systematically step by step to finish the task
and to run the program. If a code line have an error the executing process will not run further.
This is the procedural programming paradigm of my project.
You know object oriented programing is a method which is consist with the collection
of classes, methods, attributes and objects which are working each other to solve a problem. In
this I tried to use real world objects into a code generated one. So, I use different types of
classes to design every interface such as main menu class, logging class, customer
class…..Also, my programming language java is fully object oriented programming language.
Another thing is customer details, order details, item details are the real world scenarios and I
generate that into a code generated one. It helped me to design this application more user
friendly.
You know event driven programming is a method based on the events because the
program execution. In my project, I designed buttons to execute tasks. For example, when we
click the add customer button we can add customer details and the details will automatically
fill in the customer database. If we want to run a particular task, we should click the suitable
button to execute the task. Until that, the task will not execute. Likewise I use many triggers to
build this application user friendly. This is the event driven programming paradigm of my
project.

40 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
References
 What is algorithm? - Definition from WhatIs.com
What is algorithm? - Definition from WhatIs.com (2021). Available at:
https://whatis.techtarget.com/definition/algorithm (Accessed: 14 January 2021).

 How to write a Pseudo Code? - GeeksforGeeks


How to write a Pseudo Code? - GeeksforGeeks (2018). Available at:
https://www.geeksforgeeks.org/how-to-write-a-pseudo-code/ (Accessed: 14 January
2021).

 SDLC - Overview - Tutorialspoint


SDLC - Overview - Tutorialspoint (2021). Available at:
https://www.tutorialspoint.com/sdlc/sdlc_overview.htm (Accessed: 14 January 2021).

 What Is SDLC (Software Development Life Cycle) Phases Methodologies


What Is SDLC (Software Development Life Cycle) Phases Methodologies (2020).
Available at: https://www.softwaretestinghelp.com/software-development-life-cycle-
sdlc/ (Accessed: 14 January 2021).

 What Is SDLC? Understand the Software Development Life Cycle


What Is SDLC? Understand the Software Development Life Cycle (2020). Available
at: https://stackify.com/what-is-
sdlc/#:~:text=The%20Software%20Development%20Life%20Cycle%20(SDLC)%20
refers%20to%20a%20methodology,Planning (Accessed: 14 January 2021).

 Preprocessor
Preprocessor (2013). Available at: https://en.wikipedia.org/wiki/Preprocessor
(Accessed: 14 January 2021).

 How a Preprocessor works in C? - GeeksforGeeks


How a Preprocessor works in C? - GeeksforGeeks (2017). Available at:
https://www.geeksforgeeks.org/preprocessor-works-c/ (Accessed: 14 January 2021).

 C - Preprocessors - Tutorialspoint
C - Preprocessors - Tutorialspoint (2021). Available at:
https://www.tutorialspoint.com/cprogramming/c_preprocessors.htm (Accessed: 14
January 2021).

 What is a Compiler? - Definition from Techopedia


What is a Compiler? - Definition from Techopedia (2021). Available at:
https://www.techopedia.com/definition/3912/compiler (Accessed: 14 January 2021).

 Compiler Definition & Meaning | What is A Compiler?


 Definition & Meaning | What is A Compiler? (2010). Available at:
https://www.webopedia.com/definitions/compilier/ (Accessed: 14 January 2021).

41 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming
 Introduction of Programming Paradigms - GeeksforGeeks
Introduction of Programming Paradigms - GeeksforGeeks (2018). Available at:
https://www.geeksforgeeks.org/introduction-of-programming-paradigms/ (Accessed:
16 January 2021).

 Programming Archives - Tuan Nguyen's Blog


Programming Archives - Tuan Nguyen's Blog (2019). Available at:
https://www.tuannguyen.tech/category/programming/ (Accessed: 16 January 2021).

 What is Procedural Programming? [Definition] - Key Features


What is Procedural Programming? [Definition] - Key Features (2021). Available at:
https://hackr.io/blog/procedural-programming (Accessed: 16 January 2021).

 IDE?, W.
IDE?, W. (2021) What Is IDE? What Are The Advantages And Disadvantages Of
IDE? - Blurtit, Business-finance.blurtit.com. Available at: https://business-
finance.blurtit.com/109106/what-is-ide-what-are-the-advantages-and-disadvantages-
of-ide (Accessed: 17 January 2021).

 What is Debugging? Definition of Debugging, Debugging Meaning - The Economic


Times
What is Debugging? Definition of Debugging, Debugging Meaning - The Economic
Times (2021). Available at:
https://economictimes.indiatimes.com/definition/debugging#:~:text=Definition%3A%
20Debugging%20is%20the%20process,to%20behave%20unexpectedly%20or%20cra
sh.&text=Debugging%20tools%20(called%20debuggers)%20are,errors%20at%20var
ious%20development%20stages. (Accessed: 21 January 2021).

 Software Engineering | Debugging - GeeksforGeeks


Software Engineering | Debugging - GeeksforGeeks (2018). Available at:
https://www.geeksforgeeks.org/software-engineering-debugging/ (Accessed: 21
January 2021).

 What is debugging?
What is debugging? (2021). Available at:
https://searchsoftwarequality.techtarget.com/definition/debugging (Accessed: 21
January 2021).

 What is Debugging? Different Stages of Debugging | Edureka


What is Debugging? Different Stages of Debugging | Edureka (2019). Available at:
https://www.edureka.co/blog/what-is-debugging/ (Accessed: 21 January 2021).

42 | P a g e B.H.K Janindu Bhanuka


Unit-01 Programming

You might also like