---
title: "Higher-level language versus OO approach"
subject: "Multimedia System"
chapter: 7
key: "semester_8/multimedia_system:hll-vs-oo-approach"
source: https://www.bctengineer.com/q/semester_8/multimedia_system/hll-vs-oo-approach
site: BCT Engineering
---

# Higher-level language versus OO approach

Multimedia System · Chapter 7: Abstractions for Programming

- Asked in: 2071 Bhadra, 9 marks
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_8/multimedia_system/hll-vs-oo-approach
- Whole chapter: https://www.bctengineer.com/md/semester_8/multimedia_system/chapter-7

## Question

Differentiate between higher programming language approaches and object oriented approaches.

## Short answer

Higher-level language approaches use procedures or scripts with library calls, making small tasks easy but reuse and maintenance limited. Object-oriented approaches encapsulate data and operations in classes, enabling reuse through inheritance and easier extension for large systems. Examples are scripting languages versus Java or Qt Multimedia.

## Answer

A higher programming language approach adds multimedia support to a procedural or scripting language through library calls or language constructs. An object-oriented approach models media, devices and streams as classes and objects with attributes and methods.

| Point | Higher programming language approach | Object-oriented approach |
|---|---|---|
| Basic idea | Media handled by statements, procedures and functions | Media and devices are objects with methods |
| Structure | Procedure-oriented; data and operations separate | Data and operations bundled together (encapsulation) |
| Media abstraction | Media accessed through library calls or media-specific commands | Media classes hide format and device details |
| Reuse | Limited; copying or calling functions | High; through inheritance and class libraries |
| Extension | Needs changes to the language or library | Easy by creating subclasses (polymorphism) |
| Synchronisation | Language or script handles timing | Synchronisation represented as an object relationship |
| Complexity management | Becomes difficult for large systems | Better for large and complex systems |
| Maintenance | Harder as program grows | Easier because of modularity |
| Learning effort | Easier for small tasks | Requires knowledge of OO concepts |
| Examples | Lingo, ActionScript (early), scripting such as Authorware, Java Sound functions | Class frameworks in C++/Java, such as Java Media Framework, Qt Multimedia |

**Example:** in a higher language, one might write `play("song.mp3")`. In an OO approach, one creates `Audio a = new Audio("song.mp3"); a.play();`, where Audio is a subclass of Media and can be reused or extended for Video.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. How do the two approaches differ in structure?
   A. HLL bundles data and operations; OO keeps them separate
   B. Both keep data and operations separate
   C. HLL is procedure-oriented with data and operations separate; OO bundles them via encapsulation
   D. Both are purely object-based
   Answer: C. A higher-language approach is procedural, whereas OO bundles data and operations together (encapsulation). (Key point: Structure)

2. Which approach gives higher reuse, and how?
   A. Higher programming language approach, by copying functions
   B. Neither, reuse is the same
   C. Higher programming language approach, by inheritance
   D. Object-oriented approach, through inheritance and class libraries
   Answer: D. OO provides high reuse through inheritance and class libraries, while HLL reuse is limited to copying or calling functions. (Key point: Reuse)

3. How is a new media type added in the OO approach?
   A. By creating a subclass (polymorphism)
   B. By changing the language or library
   C. By rewriting all procedures
   D. By removing encapsulation
   Answer: A. OO is extended easily by subclassing, whereas HLL needs changes to the language or library. (Key point: Extension)

4. Which statement is correct about complexity and learning effort?
   A. HLL is better for large systems and needs OO knowledge
   B. OO is better for large systems but needs knowledge of OO concepts; HLL is easier for small tasks
   C. Both are equally easy to maintain
   D. OO is easier to learn and worse for large systems
   Answer: B. OO manages large, complex systems and maintenance better due to modularity, but requires OO knowledge; HLL is easier for small tasks. (Key point: Large systems and learning effort)

## Related in Multimedia System

- [Libraries, system software, languages, OO](https://www.bctengineer.com/question.md?key=semester_8%2Fmultimedia_system%3Alibraries-system-software-languages-oo) — Multimedia System, chapter 7

## Related in other subjects

- [Compare procedural and object oriented programming](https://www.bctengineer.com/question.md?key=semester_3%2Fobject_oriented_programming%3Aprocedural-vs-oop-compare) — Object Oriented Programming, chapter 1
- [Object oriented system and core concepts](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Aoo-system-concepts-explained) — Object Oriented Analysis and Design, chapter 1
- [Algorithmic vs object-oriented decomposition](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Aalgorithmic-vs-oo-decomposition) — Object Oriented Analysis and Design, chapter 1
- [Define programming language](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Adefine-programming-language) — Computer Programming, chapter 1, asked 3×
