IBCS P2 Vocab

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/30

flashcard set

Earn XP

Description and Tags

Basically Topic 4 and answers to past paper questions.

Last updated 1:21 PM on 4/21/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

31 Terms

1
New cards

Nature of an Object

Contains attributes and behaviours. Defined by a class.

2
New cards

Class

The blueprint from which an object is created, defining the attributes and behaviours of the object.

3
New cards

Instantiation

Process of using a class constructor to create an object. Uses keyword new.

4
New cards

Inheritance (is-a)

Solid line and hollow arrowhead from child to parent. Allows a class to have the behaviour and attributes of another class.

<p>Solid line and hollow arrowhead from <strong>child to parent</strong>. Allows a class to have the behaviour and attributes of another class.</p>
5
New cards

Aggregation (has-a)

Relationship between two classes where an object of one class has an object of another. Solid line with unfilled diamond closest to the container class.

<p>Relationship between two classes where an object of one class has an object of another. Solid line with unfilled diamond <strong>closest to the container class</strong>.</p>
6
New cards

Dependency

Exists between two classes if the changes to the definition of one may cause changes to the other (but not the other way around). Dashed line with open arrow.

<p>Exists between two classes if the changes to the definition of one may cause changes to the other (but not the other way around). Dashed line with open arrow.</p>
7
New cards

Why are dependencies bad?

  • Decrease reuse

    • Reduces development speed

    • Reduces code quality

    • Reduces code readability

    • Harder to maintain code

8
New cards

How can dependencies be reduced?

Interfaces and abstract classes → reduces coupling to one single class. Now applies to “umbrella” of classes.

9
New cards

Encapsulation

The process of combining variables and methods in a single package called a class

10
New cards

Data type

Specifies the size and type of values that can be stored in an identifier or variable

11
New cards

Polymorphism

A programming languages ability to handle different data types with the same interface. This presents as:

  • Method Overloading

  • Method Overriding

12
New cards

Method Overloading

Occurs at compile time. Defining more than one method with the same name (constructor).

13
New cards

Method Overriding

Occurs at run time. The ability to redefine methods for subclasses (inheritance).

14
New cards

Advantages of Polymorphism

  • Common Interface → one name for multiple implementations.

  • Extensibility → programs can handle new types of data without restructuring existing code.

  • Code Reuse → common interface, so methods can be reused.

  • Simple maintenance → reduces complex statements → cleaner code + easier to debug

15
New cards

Advantages of Encapsulation

  • Simplifies interaction between objects.

  • Hides the internal details of how an object does something.

  • A class can change its internal implementation without hurting the overall functionality of the system.

  • Prevents code from accidental corruption due to programming errors.

16
New cards

Advantages of Inheritance

  • Code Reuse → don't have to rewrite common code.

  • Extensibility → code is well structured so easier to expand or update.

  • Easier Maintenance → code is well structured so it is easier to maintain.

17
New cards

Advantages of code libraries

  • Increased productivity → programmers don't have to "reinvent the wheel."

  • Efficient code → code is typically stable and optimized.

  • Code reuse

18
New cards

Disadvantages of OOP

  • Size → programs are generally larger than normal programs.

  • Speed → generally slower than normal programs.

  • Effort → programs require a lot more time and effort to create.

  • Learning → there is a larger learning curve when it comes OOP development.

19
New cards

Modularity

The process of creating software modules/sub-programs that can then be combined.

20
New cards

Use of programming teams

Team approach → multiple programmers working on the same piece of source code allows strengths to make up for collective weaknesses; also increases productivity with share responsibilities.

21
New cards

Advantages of modularity

  • Code reuse

  • Easier maintenance → easier to debug, modify

  • Better usability —> easier to read

  • Increased production → makes program development faster

22
New cards

Internationalisation

The Unicode character set has a set large enough to store every language in the world. Program’s UI can be customised to meet the needs of users.

23
New cards

Moral and Ethical obligations of programmers

24
New cards

Advantages of Open Source Movement

  • Collaborative and transparent approach

  • Software is more accessible

  • More affordable/cost-effective solutions

  • Software is more flexible/tailored to needs → higher quality

25
New cards

Object reference

A variable that stores the memory address of an object.

26
New cards

Advantages of binary tree over static array

  • Faster searching

  • Memory efficient

  • Can grow and shrink dynamically

  • Supports ordered storage → efficient retrieval

27
New cards

Disadvantage of binary trees

  • Uses more memory → each node stores extra pointer

  • Deleting a node is complex

  • Trees require careful pointer management/maintenance

28
New cards

Disadvantages of Open Source Movement

  • Security risks with openly accessible code

  • Leads to licence violations and propriety issues

29
New cards

Applications of Circular Linked Lists

  • Playlist

  • Round-robin scheduling

  • Implement queue/dequeue

  • Image galleries

30
New cards

Applications of Queues

  • Printer queue

  • Storing client service requests

  • Multitasking OS/Scheduling → manage multiple processes

31
New cards

Applications of Stacks

  • Parsing expressions in compiler

  • Supporting the ‘undo’ feature

  • History of links in Web browser