Skip to Content
Common Design Patterns for Symbian OS: The Foundations of Smartphone Software
book

Common Design Patterns for Symbian OS: The Foundations of Smartphone Software

by Adrian A. I. Issott
December 2008
Intermediate to advanced
443 pages
10h 24m
English
Wiley
Content preview from Common Design Patterns for Symbian OS: The Foundations of Smartphone Software

6.1. Client-Thread Service

Intent

Enable the re-use of code by rapidly developing a service that executes independently within the thread of each client.

AKA

Shared Library[]

[] en.wikipedia.org/wiki/Shared_library.

6.1.1. Problem

6.1.1.1. Context

You wish to develop a service that can be re-used by a number of components, with clients of the service able to operate independently of each other.

6.1.1.2. Summary
  • It is expensive to create stand-alone code for each application that needs it.

  • Maintenance of multiple copies of such code usually doesn't scale well and is defect-prone.

  • Duplication of common code is memory inefficient in terms of both code size and RAM usage.

6.1.1.3. Description

Novice software developers often re-write similar code for each application – code that essentially performs the same actions and which may even be copied and pasted between projects.

This is a problem, and not just because re-writing code is expensive (and boring). Simplistic solutions such as copying and pasting do not scale well, because each new copy increases the cost of maintenance. In addition, the resources consumed across the system due to the additional code size, resulting from all the duplicated code, is unacceptable on constrained Symbian OS devices.

This problem occurs in all software problem domains, ranging from device creation to third-party application development.

6.1.1.4. Example

Calendar and contacts databases, and indeed any database, usually store their data using the ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Cocoa Programming for OS X: The Big Nerd Ranch Guide

Cocoa Programming for OS X: The Big Nerd Ranch Guide

Aaron Hillegass, Adam Preble, Nate Chandler

Publisher Resources

ISBN: 9780470516355Purchase book