top of page

By contrast, software is the set of instructions that can be stored and run by hardware. Hardware is so-termed because it is "hard" or rigid with respect to changes, whereas software is "soft" because it is easy to change.

Hardware is typically directed by the software to execute any command or instruction. A combination of hardware and software forms a usable computing system, although other systems exist with only hardware.

What is software?

Software is an application on an electronic device that serves one or more functions for users. Commonly, software allows a user to simplify tasks in their system. These programs usually include a graphic user interface that enables users to access the software and its functions, even if they don't know or use computer programming. A piece of software may run automated tasks or require direct interaction for all tasks it completes.

5 types of systems software

Systems software are the programs that allow a computer system to operate. Here are five common types of systems software:

1. Operating systems

An operating system is the primary computer system that allows a computerized device to function. The operating system allows the device to boot up and includes protocols for installing and operating applications on the device to provide functionality. Operating systems may specialize in a particular device, such as a computer or mobile operating system. They often are proprietary systems a manufacturer creates for use on its projects or as a publicly available or licensable operating system multiple manufacturers use.

Video: Types of Operating Systems: OS Functions and Examples

Understanding operating systems or OS is essential to working in IT. OS types vary depending on the device and its function. This video reviews what operating systems are, why they're important, and the different types of operating systems in use today.

2. Device driver

A device driver is a computer program that enables communication between the operating system and a hardware device. The driver is part of the operating system and tells the system how to interact with hardware. Some devices that require a driver to work with an operating system include printers, scanners, card readers and modems. New hardware attachments often install and update drivers automatically, but you may download drivers online when installing a new piece of hardware or updating to the most recent driver edition.

3. Firmware

Firmware is a type of systems software that operates a hardware device by telling it how to perform. It works with device drivers to make hardware work as expected, but unlike a driver, which is part of the operating system, firmware exists in the hardware. Firmware is part of most hardware devices related to the computer, such as hard drives, routers, monitors and peripherals.

4. Programming language translator

A programming language translator, or a compiler, is a type of systems software that translates code from one programming language to another. It converts programs in source code, a high-level language like Java or C++ that programmers use, into machine code, a low-level language the computer can interpret. The translator also detects and reports any errors during the conversion.

5. Utilities

This is a type of systems software that supports the computer infrastructure. Utilities help the operating system perform tasks, such as data security, to keep the computer running effectively. Many utilities are third-party tools, such as antivirus and file compression software, that users install separately to help keep a computer functioning optimally.

11 types of application software

There are many types of application software available. Here are 11 of the most common types:

1. Word processing

Word processing software is a program that creates text-based documents. This application software has many features that allow users to write, edit and format documents. Some basic features of word processing software include the ability to format text, such as bolding or underlining, and tools to create tables, headers and footers. Many of these programs also have the option to edit the document for spelling and grammar.

2. Database

This type of application software allows users to create and manage a database, which is a set of data. Database application software helps a user structure the database so they can organize the data effectively. Some common features of database software include sorting, filtering and defining criteria for the data. This software can also allow users to perform queries, which are questions or requests, to analyze or change data and access data in the database.

3. Spreadsheet

Spreadsheet software is an application that can create electronic documents and arrange them in rows and columns. These spreadsheets can perform many mathematical calculations, such as adding a column of numbers to determine a total. You also can use spreadsheet software to organize and analyze numerical data. Common features of this software include preset formulas for calculations and tools to create graphs and charts. Spreadsheets are also often ideal for storing data in visual tables, with formatting allowing you to customize their appearance.

4. Web browsers

Web browsers are application software that users can access to search for information on the internet. You can use various web browsers to find data online. When you use a web browser to go to a website, the browser retrieves the information from a web server, translates the web code into a visual representation and displays it on your device. Many web browsers allow users to search their browsing history, set bookmarks of webpages and install extensions to customize the browser.

5. Multimedia

Multimedia applications allow users to create or modify multimedia, including images, audio and video. This software lets you combine these formats to create interactive content. You can use multimedia applications to play or record audio and video, edit files and improve sound quality by applying effects, such as noise reduction. Typically, multimedia software also allows users to convert the formats of files to make them compatible with different programs.

6. Presentation

This application software creates visual documents as presentation slides. Users can add photos, graphics, videos or text to the slides to present information. Common features of this type of application software include the ability to format text, insert multimedia files and display the slides in a slideshow format.

7. Enterprise

Enterprise software is a type of application that addresses an organization's needs, rather than an individual. For example, a business with many customers may use a customer relationship management system, a type of enterprise software, to manage customer information, such as their purchase history. This software works to improve the efficiency of an organization. Other examples of enterprise software include online payment systems and project management programs.

8. Graphics

Graphics software is a program you can use to create or edit images and illustrations, such as logos or web graphics. You can use graphics software to add text to a photo, crop images and adjust a photo's sharpness. Other common features of this software include options to add layers to images, resize photos and combine files.

9. Communication

Communication software is an application that exchanges messages in one or more formats, including text, audio or video. You can use this software to correspond with others using remote systems transmitting information between computers. Communication also may provide additional security features, such as encryption, to protect the data users send.

10. Education

This type of application software is a program that provides instruction on a particular topic. Often, this software integrates multimedia content, such as videos, to create more engaging lessons. Many schools and educational institutions use education software as learning tools for students. Some education software programs can also help schools manage and organize student data, such as their parents' contact information. Some examples of education software include language learning programs or reference tools, such as digital encyclopedias.

11. Application suites

Application suites are collections of different software programs that serve related functions. Each software program in the suite often has a similar user interface, which is the way users interact with the software. These suites typically include programs people frequently use. For example, a business application suite may include word processing, spreadsheet and presentation software. This makes the suite a convenient, all-encompassing business tool.

2 views0 comments

Four programming level concepts:


Object:

An Object can be defined as an instance of a class. An object contains an address and takes up some space in memory. Objects can communicate without knowing the details of each other's data or code. The only necessary thing is the type of message accepted and the type of response returned by the objects.

Example: A dog is an object because it has states like color, name, breed, etc. as well as behaviors like wagging the tail, barking, eating, etc.


Class:

Collection of objects is called class. It is a logical entity.

A class can also be defined as a blueprint from which you can create an individual object. Class doesn't consume any space.


Method:

method is a way to perform some task. Similarly, the method in Java is a collection of instructions that performs a specific task. It provides the reusability of code. We can also easily modify code using methods.


Message Passing:

Message Passing in terms of computers is communication between processes. It is a form of communication used in object-oriented programming as well as parallel programming. Message passing in Java is like sending an object.


Abstraction:

Hiding internal details and showing functionality is known as abstraction. For example phone call, we don't know the internal processing.

In Java, we use abstract class and interface to achieve abstraction.


Polymorphism:

If one task is performed in different ways, it is known as polymorphism. For example: to convince the customer differently, to draw something, for example, shape, triangle, rectangle, etc.

In Java, we use method overloading and method overriding to achieve polymorphism.

Another example can be to speak something; for example, a cat speaks meow, dog barks woof, etc.


Inheritance:

When one object acquires all the properties and behaviors of a parent object, it is known as inheritance. It provides code reusability. It is used to achieve runtime polymorphism.


Encapsulation:

Encapsulation process of wrapping code and data together into a single unit, for example, a capsule which is mixed of several medicines.


Coupling:

Coupling refers to the knowledge or information or dependency of another class. It arises when classes are aware of each other. If a class has the details information of another class, there is strong coupling. In Java, we use private, protected, and public modifiers to display the visibility level of a class, method, and field. You can use interfaces for the weaker coupling because there is no concrete implementation.


Cohesion:

Cohesion refers to the level of a component which performs a single well-defined task. A single well-defined task is done by a highly cohesive method. The weakly cohesive method will split the task into separate parts. The java.io package is a highly cohesive package because it has I/O related classes and interface. However, the java.util package is a weakly cohesive package because it has unrelated classes and interfaces.


Association:

Association represents the relationship between the objects. Here, one object can be associated with one object or many objects. There can be four types of association between the objects:

  • One to One

  • One to Many

  • Many to One, and

  • Many to Many

Let's understand the relationship with real-time examples. For example, One country can have one prime minister (one to one), and a prime minister can have many ministers (one to many). Also, many MP's can have one prime minister (many to one), and many ministers can have many departments (many to many).

Association can be undirectional or bidirectional.


Aggregation:

Aggregation is a way to achieve Association. Aggregation represents the relationship where one object contains other objects as a part of its state. It represents the weak relationship between objects. It is also termed as a has-a relationship in Java. Like, inheritance represents the is-a relationship. It is another way to reuse objects.


Composition:

The composition is also a way to achieve Association. The composition represents the relationship where one object contains other objects as a part of its state. There is a strong relationship between the containing object and the dependent object. It is the state where containing objects do not have an independent existence. If you delete the parent object, all the child objects will be deleted automatically.


17 views0 comments
1
2
bottom of page