
Evaluates the basic understanding of writing a C++ program, the language structure, syntax and semantics.
Measures the understanding of C++ object-oriented programming support and class semantics.
Tests the understanding of more advanced C++ properties including design considerations when using inheritance and both dynamic and static polymorphism.
Ensures that the candidate understands the fundamental Symbian OS types, naming conventions and coding style, and the usage paradigms of each basic type of Symbian OS class.
Demonstrates practical knowledge of the Cleanup Stack and the difference between standard C++ and Symbian OS in handling leaks and exceptions.
Evaluates knowledge of 2-phase construction in Symbian OS, safely creating objects and avoiding memory leaks.
Test the understanding of the motivation for using descriptors, how to use buffer and pointer descriptors and when to use package descriptor classes.
Measures proficiency in the use of Symbian OS dynamic arrays in preference to standard C++ arrays, and the choice of dynamic array class depending on desired usage and characteristics of array elements.
Tests understanding of why Active Objects are preferred over Threads and under what conditions, and the use and implementation of simple Active Objects and their relation to the Active Scheduler.
Tests knowledge of the underlying structure of the Symbian OS, including threads, processes, DLLs and memory management. Also assesses the candidate’s understanding of common system components.
Recognizes the use cases of the Client / Server model within a handset, system components utilizing the model and applies knowledge to simple Server implementations.
Identifies an understanding of the use of files, stores and streams for storing persistent and temporary data. Also measures whether the candidate has knowledge of the conditions and intended usage which determine the different classes to use for storing data.
Evaluates the ability to add communication services to an application and handling asynchronous communication events with the socket server architecture.
Measures that the candidate has a practical working knowledge of the Symbian OS tool chain and development environment.
Assesses the understanding of the three core concepts of Platform Security: The Trust Model, Capabilities and Data Caging. Evaluates the candidate’s practical knowledge of designing, developing and distributing software on Symbian OS v9.
Assesses the candidate’s understanding of binary compatibility and the programming and design techniques which are required to maintain binary compatibility in code modules and APIs.