expo logo
Symbian Expo Seminars
Expo training sessions offer the most comprehensive training offering for Symbian OS and associated technologies in one location. You can book into a training session on the day by going to the training desk at the expo.

These sessions have been formulated to expose attendees to the essential idioms of Symbian OS and many serve as pre-requisite to more specialized courses available outside the show, like Symbian OS Internals, Application Engines, Application UI and UI System Creation courses.

Delegates will learn how to use Symbian OS products, and understand the necessary conventions, terms and expressions with which to build world-class software for the world's fastest growing software market.

The following sessions are available:
»
Symbian OS kitbag
» Active objects
» Client/server
» Java kitbag
» Device drivers
» EKA1 and EKA2 compared
» Drawing your UI's view
» MultiMedia Framework (MMF)
» Masterclass: Enterprise development with OPL

Symbian OS kitbag
Overview:
A C++ developer introduction to Symbian OS, associated tools and programming paradigms. The workshop will pay special attention to building programs, descriptors, client/server, active objects and heap usage.

To get the most from this course you'll need:
Some proficiency with C++ and some experience using the CodeWarrior IDE.

In detail:
This workshop provides experienced C++ programmers with an orientation for software development using Symbian OS. There is an emphasis is on the early stages of development, where we show you how to prepare your 'code, test and debug' environment - and also how to navigate a typical kit installation. The workshop will also provide newcomers with insights that are considered essential to any Symbian OS application development. The workshop will take the form of a presentation, interspersed with 'follow-me-through' demonstrations.

Active Objects
Overview:
A look at how the active objects and the active scheduler work together to provide 'co-operative multitasking' with a thread. The workshop will look at practical applications of active objects and highlight the benefits of using them.

To get the most from this course you'll need:
It would be advantageous to have a basic understanding of Symbian OS coding conventions and build tools.

In detail:
The active object framework is used throughout the whole of Symbian OS, from lower level system components all the way up to applications. Active objects encapsulate requests to and responses from asynchronous services whether from the user, from system servers or from the Symbian OS kernel.

You will learn you already understand how to program the active object framework, if you are familiar with the concept of a wait loop. Symbian OS uses re-uses extensively and the active object framework is an adaptable and reuseable form of wait loop. In this workshop you will also have the opportunity to implement two active objects and configure the active object framework to run them.

Client/server
Overview:
Server design and implementation is one of the most complex feats that Symbian OS developers undertake. This workshop presents a practical overview of server development. The impact on EKA2 Link to (see What is EKA2?) on server implementation is also considered.

To get the most from this course you'll need:
Basic understanding of Symbian OS C++ and client server architectures.

In detail:
Server design and implementation is one of the most complex development feats that Symbian OS developers undertake. Symbian's client server architecture is introduced and some of its strengths and weaknesses investigated. A typical server implementation will then be developed: the client API, client server communication, launching a server and finally implementing the server itself. The impact on EKA2 Link to (see What is EKA2?) on server implementation will be considered. Development exercises exploring some of the key implementation issues will be undertaken.

Java kitbag
Overview:
After introducing J2ME and its profiles and configurations we will show how to get started programming MIDP on Symbian OS, including a look at suitable tools and IDEs. The remainder of the workshop is devoted to a more detailed look at programming MIDP 2.0 and additional J2ME APIs supported on Symbian OS.

To get the most from this course you'll need:
Competency in Java programming

In detail:
After briefly reviewing the evolution of Java on Symbian, the workshop examines how to get started programming J2ME on Symbian OS phones, including useful tools and IDEs. It then moves on to a more detailed look at MIDP 2.0, concentrating on the new features added to the MIDP specification in Version 2.0, followed by a brief review of the optional J2ME packages available on Symbian OS phones, explaining the additional functionality they bring to J2ME. After exploring what Java on Symbian OS offers for the enterprise developer, we will finish the workshop with a preview of the future. Technical topics are illustrated with hands-on sessions, allowing attendees to experience some of the excitement of programming Java on Symbian OS.

Device drivers
Overview:
An exploration of kernel-side programming for device driver writers. In particular the workshop will examine the logical/physical driver model and look at the implications for driver writers as they move to EKA2.

To get the most from this course you'll need:
A thorough knowledge of Symbian OS C++.

In detail:
A general introduction to the EKA1 kernel environment and the various types of drivers will set the scene for a more in depth look at Symbian's logical/physical driver model. The key APIs will be explored and demonstrated with a practical example. Interrupt handling and use of delayed function calls will be discussed as will changes to the logical/physical model for EKA2 (the new Symbian OS kernel).

EKA1 and EKA2 compared
Overview:
What is EKA2? A second kernel was introduced to Symbian OS in v8, known as EKA2. This workshop explores the differences between it and EKA1 (the current phone kernel architecture).

To get the most from this course you'll need:
A general knowledge of the EKA1 architecture.

In detail:
Symbian has introduced a new kernel architecture (EKA2) which will be the kernel for many of Symbian's future products. There are many differences between it and the current architecture, this workshop aims to highlight some of the most important. Kernel components, layering, the driver model and key class changes will all be covered.

Drawing your UI's view
Overview:
This hands-on practical session will look first at the APIs provided by Symbian Generic Technologies for drawing to graphics contexts. Then it will look at a suggested architecture for drawing device independent views including support for zooming.

To get the most from this course you'll need:
Knowledge of Symbian OS C++ and GUI application architecture

In detail:
The workshop will provide practical experience on porting between UI systems so that people can test how their code stands up to 'independence' from the different UI systems' APIs. Contents include:

* GDI's graphics context, its content and services, co-ordinate classes, pens, brushes, fonts The Window Server, RWindow, the client-side buffer
* CONE, basic event routing.
* Using control and data views - physical architecture of application, relationships
* Writing re-usable drawing code - MGraphicsDeviceMap, Twips and Pixels
* Zooming - TzoomFactor
MultiMedia Framework (MMF)
Overview:
A tour of Symbian OS Multimedia features, this workshop will cover Application APIs, the MMF for system solution providers, and the MDF framework used by codec and hardware vendors. It will include the APIs involved in audio and video on Symbian OS, and where to look for further assistance.

To get the most from this course you'll need:
Knowledge of Symbian OS C++ required. Knowledge of the Client-Server communication and development and the MMF would be beneficial but is not mandatory.

In detail:
This workshop first gives an introduction to the current state of multimedia on Symbian OS and then presents an overview of three key areas of multimedia development:

* The first section, 'Multimedia for Applications' provides an overview of the client APIs available to the independent developer and gives an idea of the kind of functionality these allow the user to incorporate into their applications.
* For those developers wishing to add to and extend the multimedia format support provided by the OS, the second section 'Extending the MultiMedia Framework [MMF]' provides an insight into the world of MMF controllers, giving a breakdown of a typical controller and a step-by-step guide to its development.
* The final section 'Multimedia Phone Development' provides a brief overview of some of the integration tasks required when putting together a multimedia-capable phone, including an overview of parts of the Media Device Framework [MDF] and the camera subsystem.

Use cases are presented for several common multimedia tasks and these are discussed with reference to the building blocks required to provide such functionality.
Masterclass: Enterprise development with OPL
Overview:
A masterclass in this fast-to-learn programming language that allows enterprise and IT professionals rapidly deploy enterprise class applications to the workforce.

To get the most from this course you'll need:
To be there!

In detail:
‘From empty notepad to fully-functioning application in a single session’ is promised by every coding tool under the sun. OPL, with its clear syntax, simple structures, and multi-platform approach can help your company move forward with their mobile device application deployment. Join the Author of "Rapid Mobile Application Development" as you really are taken through the whole development process from start to finish in a single session.