DLL
Article Metadata
DLL is a Dymamic-Link Library that contains code and data that can be used by more than one program at the same time. The concept of DLL helps to promote code reuse and efficient memory usage, and also eases code deployment and installation.
The DLL may be loaded into the memory when it is actually needed, so the memory usage becomes optimized. Since many applications may use the same DLL at the same time, the amount of required memory will be decreased dramatically which is an important issue on mobile devices.
The Symbian OS and S60 are keeping most of binaries in form of DLLs (more specifically, in form of polymorphic DLLs), which are loaded into the memory upon requests from the applications.
Static Interface DLL
A static interface DLL export functions that can be called by other code that builds against its header files and links against its import library. Static interface DLLs are also known as shared library DLLs. As well as providing Symbian OS APIs, they also have a place in applications programming. In a complex project, abstraction and modularisation can be achieved by designing a system as a collection of separate units, each of which encapsulates a piece of the logical design and provides it as a black box to the rest of the system. Each unit is known to others only by its API, and is built as a library DLL.
Polymorphic Interface DLL
A polymorphic interface DLL exports a single factory function only at a well known location, usually at ordinal #1. Calling this function creates an instance of the newly derived framework class.
Alternative to Polymorphic Interface DLLs
From Symbian OS v7.0 onwards, the ECom plug-in architecture can be used as an alternative to polymorphic DLLs.
References


09 Sep
2009
Dynamic Link Library (DLL) is a very useful feature in Symbian C++ as it provides to us its code and data to used in one or more programs at the same time. It provides us a shared library whose methods can be used in our applications by importing and help us by not making us to create those classes from scratch. It accomplishes the task of reusability. The libraries generally have file extention like .DLL, .OCX, .DRV.
This article has abstractly presented us the concept of DLL and various types of DLLS in Symbian OS (i.e. Static interface DLL and Polymorphic interface DLL). The article is help to beginners only.
26 Sep
2009
A basic explanation of DLL (static and polymorphic) is very useful to understand the concept of DLL. How DLL is loaded in memory and how it promote code reuse is explained in efficient way. Although beginners may find it hard to digest, this article is very useful to learn about DLLs in symbian.
Also note that one line paragraph "Alternative to Polymorphic Interface DLLs" is really important. I will prefer to use ECOM Plugin instead of polymorphic dll, as writing an ECOM Plugin is far more simple than writing a polymorphic dll.