Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Modular Software/ Component Software 2 Modular Software Code developed in modules. Modules can then be linked together to produce finished product/program.

Similar presentations


Presentation on theme: "1 Modular Software/ Component Software 2 Modular Software Code developed in modules. Modules can then be linked together to produce finished product/program."— Presentation transcript:

1

2 1 Modular Software/ Component Software

3 2 Modular Software Code developed in modules. Modules can then be linked together to produce finished product/program. Can be inserted into conventional programming languages.

4 3 Modular Software - Advantages Faster development More efficient process Increased functionality Lower cost development Autonomous development Upgrading software and maintenance are more straightforward

5 4 Modular Software - Disadvantages Need to develop clearly defined interfaces. Have to develop modules. Modules may be less efficient that specific code.

6 5 Modular Software Issues Identification of Modules Design of Modules Design with Modules Example PC design Modular components Well defined interfaces

7 6 Modular Software - Interfaces Interfaces need to be strictly defined Can use Conventional record File (Type Library.TLB for ActiveX, BeanInfo classes for JavaBeans) Naming Conventions (JavaBeans)

8 7 JavaBeans Modular Java components. Still being developed. Must be written in Java (although bridging mechanisms are possible).

9 8 Introduction to ActiveX

10 9 ActiveX Formerly known as OLE controls or OCX controls. Components that you can insert into a Web page or other application. The use of ActiveX components enables you to reuse code developed by another in a packaged form.

11 10 ActiveX ActiveX controls are included with MS IE 3.0 and higher. Also developed by third parties Has been subject to much controversy (see readings). Security Proprietary nature Can be very powerful

12 11 COM (Component Object Model) ActiveX is based on this. COM consists of: object bus and object services. COM Object Bus Object storage Automation & Scripting Licensing/ Registration ……..

13 12 COM COM has two elements: Object Bus which used for communication Object services such as object storage, automation and scripting. COM aims to allow different objects to communicate with each other (even if written in different languages). Example of modular approach. COM object defined in terms of interface.

14 13 COM Objects and Interfaces Real object written in a programming language Interface A Interface B Interface C COM Interface COM Object

15 14 COM Objects and Interfaces COM model is limited to objects within a single computer.The interaction between objects across a network is handled by DCOM (Distributed Component Object Model). The binding to the interface of a COM object is a lower-level binary API that uses a table of pointers.

16 15 COM Objects and Interfaces In the COM model, the convention is to give interfaces names beginning with a capital “I” such as IUNknown interface that is used to query COM objects. COM class is identified by a unique 128 bit identifier called the Class Identifier (CLSID)

17 16 COM server COM object that responds to a request from another COM object is called a COM server. Usually in an.EXE or.DLL file COM server can create an instance of a class (on request) Does this using special factory class interfaces IClassFactory, IClassFactory2 (includes licensing functions)

18 17 COM Server Three types: In-process servers. Single process. Local servers. Separate process on same computer. Remote servers. Separate process on different computers.

19 18 Encapsulating Objects in COM In COM components can encapsulate each other and control the set of interfaces that are visible to the client.

20 19 Using ActiveX Controls Microsoft’s ActiveX Controls How ActiveX Controls are made secure What ActiveX Controls can do in a Web page

21 20 What are ActiveX Controls? Reusable components Integrate with Windows products Allows developers to integrate their products into the Web via Internet Explorer

22 21 What ActiveX Controls Mean for End Users Embedded Full-screen Hidden

23 22 ActiveX and Developers Can create add-on products that add to MSIE and to other Windows products (note the proprietary nature). Can use ActiveX components in: HTML MS Office, Visio and other products Visual C++, J++ Can wrap code around ActiveX components.

24 23 ActiveX Control Security ActiveX Controls are unlike Java applets (see later in course), which run in an environment designed to ensure the safety of the client and can usually cause trouble only by exploiting bugs or flaws in the Java run-time security systems. ActiveX can do anything on the client computer!

25 24 ActiveX Control Security To address this concern, IE > 3.0 Web Browser supports Authenticate code- signing technology When ActiveX Controls are downloaded and the digital signature is recognized, a code signature certificate is displayed on the screen. The user now can choose if they want to install the component.

26 25

27 26 HTML Implementation of ActiveX Controls The Tag ID CLASSID CODEBASE The tag Example

28 27 Example ActiveX in HTML <OBJECT ID="Label1" WIDTH=292 HEIGHT=57 CLASSID="CLSID:978C9E23-D4B0-11CE-BF2D- 00AA003F40D0">

29 28 Exploring ActiveX Controls Animated Button Control Chart Control Gradient Control Label Control Marquee Control Menu Control Popup menu Control ….

30 29 Control Pad Allows for easy insertion of ActiveX components on HTML pages. Also has script wizard to help write Java or VB script. Demo ?

31 30


Download ppt "1 Modular Software/ Component Software 2 Modular Software Code developed in modules. Modules can then be linked together to produce finished product/program."

Similar presentations


Ads by Google