Complete assignment of Unit 16.1.
Grade Achieved - Distinction
DISCLAIMER! I do not recommend copying and pasting this document for your assignment as I have been a student myself and I have uploaded this assignment to TurnItIn. If you copy paste then this might flag up in the system, therefor...
Student ID Number: B1903084
Name of teacher: Chris Livesey
Word Count: 5911
Unit 16 – Object Oriented Programming
Unit 16 – Object Oriented Programming
Learner Name
Assessor Name
Qualification Title BTEC - L3 IT Extended Diploma in Computing
Unit Title Unit 16 – Object Oriented Programming
Assignment No./Title 14.2 – Design and Develop a Computer Game to Meet Client Requirements
16.2 – Design and Develop Object Oriented Solutions to Identified Problems
17.2 – Design and Develop a Mobile App
Learning Aim(s) A: Understand the principles of object-oriented programming
Issue Date
Planned Submission
18/11/22
Date
Re-submission Date (if
16/12/22
approved)
Feedback Provided online in the form of rubric, comments, and general feedback.
Reflection Once you receive feedback, you should reflect on your performance using the
reflection document. This should be recorded on your ProPortal
--> ILP --> 3. My Learner Reflections
SMART You should regularly set SMART Actions/Targets on your ProPortal
Actions/Targets --> ILP --> 4. My SMART Actions
Evidence of proof-reading and improvements to quality of communication using Microsoft Editor
Print screen of Microsoft Editor Print screen of Microsoft Editor Print screen of Microsoft Editor
before improvements after improvements (1) after improvements (2)
Re-sub if required
1
,SECTION 1: INTRODUCTION
Object-oriented programming is an industry-proven method for developing reliable modular programs
and it is very popular in software engineering. Consistent use of object-oriented techniques can lead
to shorter development life cycles, increased productivity and can lower the cost of producing and
maintaining systems. Furthermore, programming with objects simplifies the task of creating and
maintaining complex applications.
In this unit I will develop an understanding and proficiency in object-oriented programming. I will study
the principles of object-oriented programming, and explore the tools and techniques used in the
design and development of object-oriented software.
I will be using a structured, modular approach to the design and development of applications,
ensuring the solution is well-documented and tested thoroughly against the original user
requirement.
2
,Table of Contents
Section 1: Introduction.............................................................................................................................................2
Section 2: Learning Aim A: Understand the principles of object-oriented programming – The Features of OOP..4
References..............................................................................................................................................................25
3
,SECTION 2: LEARNING AIM A: UNDERSTAND THE PRINCIPLES OF OBJECT-
ORIENTED PROGRAMMING – THE FEATURES OF OOP.
Task 1 (A1/P1): Features of OOP – Explain the importance of principles of object-oriented
programming and factors affecting the performance, safety and security of object-oriented
programs.
What is OOP?
Programming or writing code can be done through three different programming paradigms. These can be
either Procedural, Event Driven, and finally Object Oriented. Object oriented programming is a programming
paradigm that uses the concept of real-world objects to structure the design and code of a
program/application.
In the real world, the term ‘object’ is referred mostly to inanimate items but since this is programming we can
give a supposedly inanimate object the power to be alive in a virtual world. This is done by creating a class
(which act like blueprints) to create individual instances of them known as objects, which we then feed code
instructions and data that would give it A) Attributes/Properties, and B) Actions/behaviours which are known
as methods/functions. In this programming paradigm, the whole application is based on entities called objects
and then feeding them data and functions that provide functionality and their interaction with each other.
Hence why the name “Object Oriented” programming.
Distinguishing Characteristics of OOP programming compared to other types of programming
paradigms
Along with other aspects of OOP having differences compared to Procedural and Event Driven Paradigms,
there are differences in the basic features between these paradigms too, and these will be shown below:-
Procedural Event Driven Object Oriented
Variables: Local & Global Variables: Local/Global Attributes/Properties can be
public or private instead of Local
& Global but has the same
concept technically.
Procedures Procedures Methods
Functions Functions Methods
Structure: Structure: Structure:
Main Loop Classes
Statement Call back function Objects/Instances
Blocks Sub-routines
Sub-routines:
Procedures
Functions
Features: Features: Features:
Sequence Events Inheritance
Selection/Conditional/Branching Event handlers Encapsulation
Iteration Event loops Polymorphism and
Service Oriented Overloading
Processing Data Hiding
Time Driven Reusability
Trigger Functions
4
, (Livesey, 2022)
Table 1.0 shows the basic features of all programming paradigms
It should be noted that Object Oriented programs can also work in event driven paradigms. These OOP
programs have to use Event Driven theory to have a graphical user interface (GUI).
Benefits of Using OOP
There are many benefits of using OOP, some of them are: -
Reusability: Code can be re-used through inheritance and interfaces. This saves a huge load of time for
programmers as they don’t have to repeat writing the same code again and again.
Flexibility: Not only can you use the same code again through inheritance, but you can also modify it to suit
the needs of an object or class by using the concept of polymorphism. This enables adaptation to the
class/object the function/method is placed in.
Reliability: As the code is modular, and a lot of the code is inherited, this reduces the risk of human error and
increases the reliability of OOP. Also the same behaviour and object can implemented again, again reducing
the risk of human error and increases productivity.
Multiplatform: Since OOP has multiple languages that can work for different purposes, this gives this paradigm
a broader range of possibilities to write and translate code in.
Features of OOP
I will now explain the features of object-oriented programming below: -
Class
A class is the core of any OOP language such as C#. A class is a mandatory template that is needed to represent
data in OOP. It is a blueprint of object(s) which then contain functions and operations to perform on the
program.
A class does not occupy any memory space in the RAM as it is only a logical representation of data to organise
the data more efficiently and comprehensible for humans. To get started, one simply uses the keyword “class”
in C# to create a class which is followed by its custom class name. Below I have listed brief syntax and the
details of a class: -
- Blueprint/Template
- NOT a real world entity
- Attributes and methods
{ body } (contains members and functions NOT implemented).
Constructors – A constructor is a special method that is found within a class, and it’s got the exact same name
as the class name. This is used to pass arguments to fields when creating an object.
Destructors – This is a method that is used to de-initialize or destroy an object. In other words, free the
memory the object was taking up. This is done by invoking the .Dispose method, however with the garbage
collection feature this is not usually done manually by programmers anymore. (More on this later)
Abstract class – This is a restricted class that doesn’t allow the creation of objects within it, and this is only
made accessible by the use of inheritance from another class. The point of this is to achieve security – by
hiding certain details you don’t want to expose and only expose the important details of an object, in other
words to achieve data abstraction.
5
The benefits of buying summaries with Stuvia:
Guaranteed quality through customer reviews
Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.
Quick and easy check-out
You can quickly pay through credit card for the summaries. There is no membership needed.
Focus on what matters
Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!
Frequently asked questions
What do I get when I buy this document?
You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.
Satisfaction guarantee: how does it work?
Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.
Who am I buying these notes from?
Stuvia is a marketplace, so you are not buying this document from us, but from seller omarmahmood. Stuvia facilitates payment to the seller.
Will I be stuck with a subscription?
No, you only buy these notes for £15.49. You're not tied to anything after your purchase.