A-Z Popular Blog Encyclopedia Search »
Coding
 Advertisements
Related Guides

7 Examples of Software Components

 , updated on
Software components are parts of a system or application. Components are a means of breaking the complexity of software into manageable parts. Each component hides the complexity of its implementation behind an interface. Components can be swapped in and out like the interchangeable parts of a machine. This reduces the complexity of software development, maintenance, operations and support and allows the same code to be reused in many places. The following are illustrative examples of a component.

Views

User interface components for different requests, views and scenarios. For example, difficult components can be used to display the same information in a web page and mobile app.

Models

Components that handle requests or events including business rules and data processing. For example, a model might handle a bill payment request for an internet banking website.

Controllers

A controller is a component that decides what components to call for a particular request or event. For example, a controller might dynamically load different views for a bill payment based on factors such as language, transaction status or channel.

Data Access Objects

A data access object provides an abstract interface for databases. In theory, this allows you to switch to a different database without the application needing to know. This shows the power of a component based approach as dramatic changes can be confined to a relatively small section of a code base.

Services

A service is a component that is deployed independently. For example, a bank might deploy a market data service to cloud infrastructure. This service would provide stock market data to a variety of stock trading systems and applications. Services allow for extremely resilient applications. For example, if an application doesn't get a response from a service, it can try again and be directed to a completely different instance.

Plugins

Components designed to extend the functionality of an application or system. For example, a plugin for a media player to visualize music.

APIs

A component that can be reused across multiple systems and applications can be packaged and distributed as an API. For example, an open source API to connect to a particular database.
Overview: Software Components
Type
Definition
Software that is divided into parts that implement functionality and hide complexity.
Related Concepts
Next: Interchangeable Parts
More about software design:
Bootstrapping
Bulkhead
Code Refactoring
Complexity Hiding
Design Abstraction
Design For Scale
Future-Proofing
Microservices
Overengineering
Push Technology
Service Architecture
Soft Computing
Software Architecture
Software Components
Systems Analysis
Systems Design
Worse Is Better
More ...
If you enjoyed this page, please consider bookmarking Simplicable.
 

Software Design

A list of software design terms.

Separation Of Concerns

A definition of separation of concerns.

Backward vs Forward Compatibility

The difference between backward and forward compatibility.

Push Technology

A definition of push technology with examples.

Systems Design

The common elements of a systems design.

Software Design vs Software Architecture

The difference between software design and software architecture explained.

Software Bloat

The common types of software bloat.

Future-Proofing

A definition of future-proofing with examples.

Systems Analysis

The common types of systems analysis.

Bit Rot

The basic types of bit rot.

Software Architecture

A reasonably comprehensive guide to software architecture.

Event Driven Architecture

A definition of event-driven architecture with examples.

Services vs Components

The difference between a service and component architecture.

Architecture Layers

A definition of architecture layers with examples.

Conceptual Architecture vs Physical Architecture

The difference between conceptual and physical architecture.

IT Architecture

The definition of IT Architecture with examples.

Solution Architecture

Examples of common solution architecture diagrams.

System Architecture Definition

The definition of system architecture with examples.

Service Architecture

The definition of service architecture with examples.
The most popular articles on Simplicable in the past day.

New Articles

Recent posts or updates on Simplicable.
Site Map