Embed
Email

COM

Document Sample

Shared by: huanghengdong
Categories
Tags
Stats
views:
0
posted:
1/17/2012
language:
pages:
17
Component Technology

Challenges Facing the Software Industry

 Today’s applications are large & complex –

time consuming to develop, difficult and

costly to maintain and risky to extend with

additional functionality

 Applications are monolithic – consisting of a

single binary file – prepackaged with wide

range of features, most of which cannot be

upgraded independently

Challenges Facing the Software Industry

 Applications are not easily integrated – data

& functionality of one application are not

easily available to other applications, even if

the applications are written in the same

language and running on the same computer

Solution – Component Architecture

 Solution lies in breaking the software into

reusable “Components”

 A Component is like a mini application, which

comes as a binary bundle of code, that is

compiled, linked and ready to use

 Monolithic application is replaced with custom

components that connect with each other at

run-time to form an application

Solution – Component Architecture

 For example, a component might be a spell

checking feature sold by one vendor that can

be plugged into several different word

processing applications

 Modifying or enhancing the application is a

simple matter of replacing one of these

constituent components with a new version

 Application remain no more static entity,

instead it evolves gracefully over time as new

components replace older ones

Component Benefits

 Application Customisation

 Component architecture lends itself to

customisation as each component can be replaced

with a different component that better meets the

needs of the user

 Helps evolution of application as new

components replace the older ones

Component Benefits

 Rapid Application Development

 Component architecture facilitates rapid

application development, by choosing components

from a component library and snap them together

to build application

Component Benefits

 Distributed Components

 With increasing bandwidth, the need for

applications composed of parts spread over a

network is going to increase

 Component architecture simplifies the process of

developing such distributed applications

Component Benefits

 Client/Server applications have already

taken first step towards a component

architecture by splitting into two parts –

client part and server part

 Making a distributed application out of an

existing application is easier, if it is made

of components, as the application is

already divided into functional parts that

can be located remotely

Component Benefits

 The distributed application can contain a

component that has a sole purpose of

communicating with a remotely located

component, thereby rendering the

application completely independent of

where actual components are located

What makes Components so useful?

 The advantages of using components result

directly from their ability to dynamically plug

into and unplug from an application

 In order to achieve this capability,

components must meet two requirements

 First, components must link dynamically

 Second, components must hide (or encapsulate)

the details of how they are implemented

What makes Components so useful?

 Dynamic Linking

 The ultimate goal is to provide the facility to

replace the components in our application while

the application is still running. Support for

changing components at run time requires the

ability to dynamically link components together

What makes Components so useful?

 Encapsulation

 Encapsulation is a crucial condition for dynamic

linking

 To replace an old component in a system with a

new component, it is necessary that the new

component must connect in the same manner as

the old component or else atleast a recompile, if

not a rewrite will have to be done

What makes Components so useful?

 To achieve encapsulation, Components

connect to each other through interfaces

 Interface isolate implementation details of

the component, thus changing a

component has no effect on the rest of the

application

How Things are Achieved?

 The Component Object Model (COM), which

is the underlying specification, meets all the

requirements for component architecture



 COM is a standard which specifies how to

build components and how components talk

to each other

COM Components

 Components written to COM specifications are

refered to as COM components



 COM Components consist of executable code

distributed either as dynamic linked libraries (DLLs)

or as executables (EXEs)

COM Components

 COM components meet all the requirements

for a component architecture

 COM Component are fully language independent

 Can be shipped in binary form

 Can be upgraded without breaking old clients

 Can be transparently relocated on a network

 Announce their existence in a standard way using

COM’s publication scheme



Related docs
Other docs by huanghengdong
6th-syllabus-Threet-2011-2012
Views: 0  |  Downloads: 0
Gina Cillo rd
Views: 0  |  Downloads: 0
szoftverfejlesztok.xls
Views: 1  |  Downloads: 0
cv-notes-exemple
Views: 0  |  Downloads: 0
Damascus Steel_seth Willouhby
Views: 0  |  Downloads: 0
UP_HolderReportingManual
Views: 0  |  Downloads: 0
4
Views: 0  |  Downloads: 0
ScienceFairLesson2
Views: 0  |  Downloads: 0
By registering with docstoc.com you agree to our
privacy policy

You are almost ready to download!

You are almost ready to download!