100% found this document useful (1 vote)
38 views2 pages

Mobile Programming and OOP Overview

Uploaded by

Big Fabiano
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
38 views2 pages

Mobile Programming and OOP Overview

Uploaded by

Big Fabiano
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

I- MOBILE PROGRAMMING (25 MARKS)

1. What language is supported by Android for application development? (2marks)


2. Do all mobile phones support the latest Android operating system? (2marks)
3. What is the difference between Mobile device testing and mobile application
testing? .
(2marks)
4. What are the different states wherein a process is based? (4marks)
5. What are the four essential states of an activity? (4marks)
6. What is the Android Architecture? List the components. (4marks)
7. What is Android? (2marks)
8. What Is the Google Android SDK? (2marks)
II- OBJECT ORIENTED PROGRAMMING (20marks)
1. Fill the blank (3marks)
a. Anything that has attributes and member functions that operates on attributes is
known as a (n) --------------
b. The object operations are called ---------------
c. The --------------- initializes an object’s attributes and establishes the conditions
that do not change
2. What are the major components of an object? (3marks)
3. What is the difference between private and public class members? (2marks)
4. What is data hiding or encapsulation? (2marks)
5. Design a class called Cube that has the following data member side of data type
double. Supply the following methods: a constructor with one argument, a getter
and setter method for the side of the cube, the volume equals to side raised to the
power three.
Implement the class Cube and write a test class CubeTest in C++ or Java to verify
the functionalities of the class Cube (10marks)
SECTION III: OOM-UML
1. A company consists of departments. Departments are located in one or more

offices. One office acts as a headquarter. Each department has a manager


who is recruited from the set of employees. Your task is to model the system

for the company.

Task:

Draw a class diagram which consists of all the classes in your system their

attributes and operations, relationships between the classes, multiplicity

specifications, and other model elements that you find appropriate. (16MARKS)

Common questions

Powered by AI

Constructors in Object-Oriented Programming are special methods used to initialize objects. They establish initial conditions for object properties and ensure an object is in a valid state upon creation. The role of constructors is critical in managing the object lifecycle, as they automate the correct setup of instances, reducing the chance of errors and increasing reliability in object utilization .

Data hiding or encapsulation in Object-Oriented Programming restricts direct access to the internal state of an object, allowing it to be changed only through well-defined interfaces, thus ensuring security and integrity. By encapsulating data, it prevents unintended interference and misuse from outside processes, ensuring data integrity while allowing controlled modification through public methods .

UML class diagrams help model complex systems by visually representing the structure of a system, detailing its classes, attributes, methods, and relationships. They enhance understanding by providing a clear blueprint of the system architecture, facilitating communication among team members and stakeholders. Class diagrams allow for better planning and uncovering potential design issues early in the development phase .

An 'Activity' in Android is a single, focused thing that the user can do, typically corresponding to a single user interface screen. Activities have a lifecycle with essential states such as Created, Started, Resumed, Paused, Stopped, and Destroyed. This lifecycle supports consistent management of user interactions and resource management since the system can reclaim resources if an activity is paused or stopped, ensuring optimal performance and experience .

Android architecture comprises components such as the Linux kernel, libraries, Android Runtime, and the application framework. The Linux kernel provides core system services like security, memory management, and process management. Libraries offer a set of C/C++ libraries used by various components of Android. The Android Runtime includes key components such as the Dalvik Virtual Machine or ART, allowing Android applications to run in their own process. The application framework provides an abstraction layer for hardware access and services, enabling developers to build apps across devices .

Mobile device testing typically focuses on the hardware and the overall OS performance of a device. It includes testing for usability, performance, and hardware compatibility to ensure the device functions as intended. Mobile application testing, however, is mostly concerned with an application's functionality, usability, and consistency on different devices and OS versions. While device testing ensures the hardware-software ecosystem works optimally, application testing ensures that individual applications run as intended across diverse devices .

Ensuring all mobile phones support the latest Android OS involves challenges such as hardware constraints, manufacturer-specific customizations, and varied update policies by manufacturers. Many older devices might lack the necessary hardware to support newer OS features. Furthermore, manufacturers add proprietary software to Android, which might not align with future updates. Thus, compatibility and support require careful consideration of hardware specs and manufacturer willingness to provide updates .

The Google Android SDK provides a comprehensive suite of tools and APIs that are essential for Android application development. It includes a debugger, libraries, a handset emulator based on QEMU, and more, facilitating the creation of robust applications optimized for Android devices. The SDK impacts the development process by streamlining app creation, enabling developers to write applications that effectively communicate with device hardware and other applications .

'Public' and 'private' class members in Object-Oriented Programming define the accessibility of class properties and methods. Public members are accessible from outside the class, allowing interaction and communication, while private members are restricted to the class, promoting encapsulation and data security. This differentiation supports the creation of well-defined interfaces, ensuring that internal data are altered only through specific, controlled methods .

An effective testing strategy for a mobile application involves emulator-based testing, physical device testing across different OS versions and hardware configurations, and automated testing for regression and performance. Testers should validate app performance and UI consistency on various screen sizes, resolutions, and versions to ensure compatibility. Including network conditions, battery usage, and integration testing would further ensure robustness and reliability .

You might also like