cmponent oriented programming .ppt
Post on 14-Oct-2014
147 Views
Preview:
TRANSCRIPT
Component Oriented Component Oriented ProgrammingProgramming
Submitted by –Submitted by – Mohit sabooMohit saboo Narendra maraviNarendra maravi Neha singhNeha singh Neha singh thakurNeha singh thakur
IntroductionIntroduction
Programming is an activity of constructing computer programs that are a sequence of instructions describing how to perform certain tasks with computers. The Pascal’s machine built in 1642 by Blaise Pascal
(1623–1662), for instance, could only be programmed by operating gears and
cranks. For all modern electronic computers, however, certain programming languages have to be used to program the computers.
Component orientedComponent orientedprogrammingprogramming
Component-oriented programming enables programs to be constructed from prebuilt software components, which are reusable, self-contained blocks of computer code.
These components have to follow certain predefined standards including interface,
connections, versioning, and deployment.
COP is to develop software by assembling components.
OOP emphasizes classes and objects, while COP emphasizes interfaces and composition.
Hence COP is an interface-based programming
PRINCIPLES OF COP
Components Represent Decomposition and Abstraction
When we decompose a system, we factor it into separable components in such a way that
Each component is at the same level of detail; Each component can be solved independently; and The implementations of these components can be
integrated to satisfy the original system requirements.
Abstraction is a way to do decomposition productively by changing the level of detail to be considered. Software components hide certain details in an effort to provide only necessary information to the clients through their interface.
Reusability Should Be Achieved at Various Levels
The requirements specification is seen as a
form of software. In the design phase, architectural design and detail design documents are part of the software. Source code in the implementation phase and executable code deployed to the customer site are certainly software. Therefore, software reusability includes the reuse of any software artifacts in various formats.
Component-Based Software Development Increases the Software Dependability
Component-based software development and component-oriented programming provide a systematical way to achieve dependable systems. Owing to the abstraction of components and systematic
integration of components, it is much easier to validate critical requirements and verify safety for component-based systems.
Component-Based Software Development Could Increase the
Software Productivity Component-based software is constructed
by assembling existing reusable components rather than developing from scratch every time – reuse instead of reinventing the wheel.
This process is much faster than developing an application from scratch in most cases.
Component-Based Software Development Promotes Software
Standardization For component markets to develop,
component standards must be in place. Standards can be used for creating an agreement on concrete interface specifications, enabling effective composition, and ensuring COP to be a new programming paradigm in which “plug-and-play” becomes a reality in software development just like the hardware counterpart.
Comparison of COP with OOP and SP
Capabilities SP OOPOOP COPCOPDivide and Conquer•Manage complexity•Break a large problem down into smaller pieces
YESYES YESYES YESYES
Unification of Data and Function•A software entity combines data and the functions processing those data•Improves cohesion
YESYES YESYES
Encapsulation•The client of a software entity is insulated from how that software entity’s data is stored or how its functions are implemented•Reduces coupling
YESYES YESYES
Identity•Each software entity has a unique identity
YESYES YESYES
Interface•Represents specification dependency•Divides a component specification into interfaces•Restricts inter-component dependency
YESYES
Deployment• The abstraction unit can be deployed independently
YESYES
WHY IS COP IMPORTANT?
There are a number of important reasons why COP is important.
it provides a higher level of abstraction.
Goals of cop:-Goals of cop:-
There are three major goals of COP: conquering complexity, managing change,and reuse.
CONCLUSIONCONCLUSION
With the advances of technology in computer hardware and software, the field of computer programming has grown from machine-code programming, via object oriented programming, to component-oriented programming.
Software components support black-box reuse.
The JavaBeans specification defines a component infrastructure to build, customize, assemble, and deploy Java software components. It brings the advantages of component oriented programming to the ever-growing Java development platform .
THE ENDTHE END
top related