انتقل إلى المحتوى
أمين أبوزيد
منشورBEG-002-L02

أنواع البرمجيات مع أمثلة من الحياة اليومية

  • الدرس 2 من 5
  • 16 دقيقة قراءة
  • مبتدئ
في هذا الدرس 11 موضوعات

هذا الدرس متاح حاليًا باللغة الإنجليزية فقط، ولم تُنشر نسخته العربية بعد.

Lesson Overview

You now know that software is instructions plus data. But software comes in very different shapes. The program that runs inside a washing machine, the page you read in a browser, and the system that stores a shop's orders are all software, yet they live in very different places.

In this lesson you will learn five kinds of software and one question that sorts any software into the right kind: where does it run? The five kinds are desktop, mobile, web frontend, backend, and embedded.

In the restaurant picture, the first four are different ways of serving customers in the dining room or the kitchen, and the fifth is like a vending machine with its own tiny kitchen inside.

Why this matters: the very word "backend" in your learning path means one of these five kinds. If you cannot tell a backend from a frontend, you will mix up what you are learning to build. This lesson prepares the ground for the next one, where you will see what makes a backend special.

This lesson builds on "What software is" in this module and on Module 1 (operating system, process).

Learning Objectives

By the end of this lesson you will be able to:

  • Name the five kinds of software: desktop, mobile, web frontend, backend, and embedded.
  • Say where each kind runs and give an everyday example of each.
  • Classify a piece of software by asking where it runs and who installs it.
  • Explain why one product, such as a food-ordering service, often includes several kinds at once.
  • Explain why a website and its backend are different things.
  • Recognize a few gray cases (for example a smart TV or a smartwatch) and explain how to decide.

Written Explanation

The sorting question: where does it run?

To classify software, ask: on which computer do these instructions run, and how did they get there?

Remember from Module 1 that software runs as a process on some machine, managed by an operating system. Different kinds of software simply run on different machines or in different places.

Here is the overview. We will take each kind in turn.

KindWhere it runsHow it gets thereEveryday example
DesktopOn a personal computer (PC, laptop)You install itA text editor, a photo editor
MobileOn a phone or tabletYou install it from an app storeA ride-hailing app, a messaging app
Web frontendIn your browserYour browser downloads it when you open a pageThe page of an online newspaper
BackendOn a server computer you do not seeThe company puts it thereThe system that stores orders
EmbeddedInside a device, built into itIt comes with the deviceThe controller of a washing machine

Desktop software

Desktop software (also called a desktop application) is installed on and runs on a personal computer: a PC or a laptop. It uses that computer's CPU, RAM, and storage directly, and it is managed by the computer's operating system.

Examples: a word processor, a code editor, a video editor, a calculator program on your PC.

Key properties:

  • It is installed once and then can be started from the computer.
  • Much of it can work without an internet connection, though some do need one.
  • It runs as a process on your machine, which is the idea from Module 1.

Mobile software

Mobile software (a mobile app) is software installed on a phone or tablet. It is much like desktop software, but built for a different kind of device: a touch screen, a battery to save, and sensors such as a camera, GPS receiver, and microphone.

Examples: a camera app, a messaging app, a ride-hailing app, a banking app.

Key properties:

  • Usually installed from an app store, a service run by the maker of the phone's operating system.
  • Can use phone hardware such as the camera or GPS, with the user's permission.
  • Many mobile apps need a connection to work fully. A ride app, for instance, needs to talk to other computers to find drivers.

A mobile app is in some ways only the "dining room" of a bigger product: the part you hold. We will return to that.

Web frontend

Now we come to the web. A website is shown inside a browser (such as Chrome, Firefox, Safari, or Edge). The part that runs in your browser is called the web frontend, or client side.

When you open a web page, your browser downloads files from a computer somewhere else. These typically include text and structure, pictures, styling (how it looks), and often small programs written in a language called JavaScript. The browser then shows the page and runs those programs on your own computer. MDN, the web documentation from Mozilla, describes this split: code that runs in the browser is client-side, and code that runs on a server is server-side.

Key properties:

  • Nothing is installed: you just visit an address.
  • It runs inside the browser's controlled space, with limited access to your computer.
  • It is what you see and click: the page, the menus, the buttons.

Important: the web frontend is the visible part of a website. It is not the whole website, and it is certainly not the backend.

Backend software

Backend software runs on a server: a computer that is set up to answer requests from other computers. Servers are usually kept in data centers or rented from a cloud company, and their screens are rarely used. You never see this software directly.

The backend does the work that should not happen on your device:

  • Stores data that must be kept permanently and shared (accounts, orders, messages).
  • Applies the rules (checks a password, calculates the price, decides who may see what).
  • Answers requests from frontends and apps.

Example: when you place an order in a food app, the order is sent from your phone to a backend. The backend checks it, saves it, and replies "order received". Your phone only displays the reply.

Why not do all of this on your own phone or in your own browser? Three reasons:

  1. Shared data. Many users need to see the same data. A restaurant needs to see your order, which only exists on your phone otherwise.
  2. Trust. Anything on your device can be changed by you. Rules such as prices and permissions must be enforced somewhere that users cannot tamper with.
  3. Always on. Your phone sleeps and loses signal. A server is meant to be available all the time. The next lesson goes deep into this.

Embedded software

Embedded software lives inside a device that is not usually thought of as "a computer". The device contains a small computer (a processor, memory, and input and output parts) dedicated to a single job. The software that runs on it is often called firmware.

Examples: the controller of a washing machine, a microwave oven, a digital thermometer, a car's anti-lock braking system, the remote of your TV.

Key properties:

  • It is shipped with the device. You do not install it like an app, and often you cannot see it.
  • It does one specific job and often has limited memory and processing power.
  • It talks directly to the hardware: motors, buttons, sensors, displays.

When you press "Start" on a washing machine, embedded software reads the button, turns on the motor, watches the water level, and stops at the right time.

One product, many kinds

Real products combine kinds. Take a food-ordering service:

  • A mobile app for customers.
  • A web frontend: the website of the same service, in a browser.
  • A backend that holds restaurants, menus, and orders, used by both the app and the website.
  • Perhaps embedded software in a tablet or printer in the restaurant that shows new orders.

All of these are separate pieces of software running in different places. They cooperate by sending messages to each other, and the backend is the shared center.

text
   Phone app ----\
                   >----  Backend (server)  ---- stores data, applies rules
   Website   ----/
   (browser)

This is why "a website" and "its backend" are not the same thing. The website you see in the browser is a frontend. The backend is a separate piece that you cannot see in the browser, which both the website and the app depend on.

How to decide: three questions

When you meet a new piece of software, ask in order:

  1. Is it built into a device and shipped with it? If yes, it is likely embedded.
  2. Does it run on my own device, which I installed, or in my browser? If installed on a PC, desktop. If installed on a phone or tablet, mobile. If it runs in the browser after I open a page, web frontend.
  3. Does it run on a server that I do not see, answering requests? Then it is backend.

Gray cases

Boundaries are not always sharp. Be ready for these:

  • A smart TV menu. The menu software runs on the TV itself, built into the device, so it is embedded. Streaming apps on the TV may also exist, installed like mobile apps, and the movies they show come from a backend.
  • A smartwatch. Its basic functions are embedded, and apps you install behave like mobile apps. It also usually needs a backend.
  • A web app installed on a phone. Some websites can be saved to a phone's home screen, but the code still comes from a web page. We keep it simple and call it a web frontend unless it is a normal installed mobile app.
  • A desktop app that is really a web page inside a window. From the user's side it is installed and starts on its own, so we count it as desktop, though a web-style frontend runs inside it. When the exact answer is unclear, say which part is which instead of forcing one label.

The five kinds are tools for thinking. In an assessment, pick the kind that answers "where does it run?" for the main piece of software in question.

Examples

Example 1: classifying five everyday items (simple)

SoftwareWhere does it run?Kind
Text editor on your laptopOn the laptop, installedDesktop
Messaging app on your phoneOn the phone, installed from a storeMobile
The page of an online newspaperIn the browserWeb frontend
The system that stores the newspaper's articles and accountsOn the company's serversBackend
The software inside a digital kitchen scaleInside the scaleEmbedded

Notice that each answer came from asking where the software runs, not from how it looks.

Example 2: following a ride request (practical)

You open a ride-hailing app and tap "Request ride".

  1. The mobile app on your phone reads your location from the GPS receiver and shows the map. This is software on your device that uses phone hardware.
  2. The app sends your request over the internet to a backend server. The backend checks who you are, finds nearby drivers, and records the ride.
  3. The backend sends a reply: "driver found, arriving in 4 minutes". The app displays it.
  4. The driver's own mobile app receives a notification of the new ride from the same backend.

Two mobile apps (yours and the driver's) and one backend. The backend is the piece that connects them and keeps the record. Without it, your phone would not know that any driver exists.

Example 3: a bakery that sells online (realistic)

A small bakery wants customers to order cakes online. Think through the pieces it needs:

  • A web frontend: a page with the cake catalog and an order form, which customers open in a browser.
  • A backend: software on a server that stores the orders, checks that the pickup date is free, and tells the baker.
  • An embedded component: the card reader at the shop counter has its own built-in software, which the bakery never changes.
  • Optionally a mobile app for the baker to see the day's orders. It would read the same data from the same backend.

Now answer: is the order form the backend? No. It is part of the web frontend. It collects data and sends it to the backend, which does the checking and the saving. If the shop wants to change a rule, such as "no orders for tomorrow after 6 pm", that rule belongs in the backend, because a customer with a modified browser could skip a rule that lives only in the page.

Backend Insight

Your learning path is aimed at the backend, so it is worth being precise about the role.

  • The backend is the shared center of a product. Phone apps, websites, and even other companies' systems all talk to it.
  • It owns the data and the rules. Users and frontends ask; the backend decides.
  • It is not visible. When it works, nobody notices. When it fails, everyone does: the app shows errors, the website cannot load orders, the driver gets no rides.
  • Because there can be many frontends (a phone app, a website, a partner's system), a good backend is built to serve any of them in the same way. Backend engineers design these conversations and are responsible for data being correct and safe.

The word "backend" does not mean "old" or "hidden for secrecy". It means the part behind the front, where the work is done. In the restaurant picture, it is the kitchen.

Common Mistakes

Mistake 1: Believing a website and its backend are the same thing

  • Incorrect: "The website is the backend of the shop."
  • Correct: "The website you see in the browser is a frontend. The backend is a separate program on a server that the website talks to."

The website you see and the backend it depends on run in different places, usually on different computers. Open the page and you see the dining room; you never see the kitchen.

Mistake 2: Classifying by appearance instead of location

  • Incorrect: "It has buttons and a screen, so it is a frontend."
  • Correct: "Where does it run? If it is installed on a phone, it is a mobile app, even though it has buttons."

A mobile app and a web page can look alike. What differs is where they run and how they arrive.

Mistake 3: Thinking embedded software is only for tiny gadgets

Embedded software is in washing machines, but also in cars, medical devices, and factory machines. Size does not decide the kind; being built into a device and made for its single job does.

Mistake 4: Thinking every app is just on the device

Many apps that look self-contained depend on a backend. Test: switch off the network and see what stops working. A calculator keeps working; a ride-hailing app cannot find drivers.

Exercises

Try each exercise yourself before opening the solutions.

Level A: Foundation

A1. Name the five kinds of software from memory.

أظهر الحل A1

A1. Desktop, mobile, web frontend, backend, embedded.

A2. Classify each: (a) a game installed on your phone, (b) the controller in an electric kettle, (c) the code that runs in your browser when an online store loads, (d) the program on a server that keeps customer accounts.

أظهر الحل A2

A2. (a) Mobile. (b) Embedded. (c) Web frontend. (d) Backend.

A3. What single question helps you sort most software into its kind?

أظهر الحل A3

A3. Where does it run (and how did it get there)?

Level B: Application

B1. A travel company has a mobile app, a website, and a system on its servers with all bookings. List the kinds involved and say which one stores the bookings.

أظهر الحل B1

B1. Mobile app, web frontend (the website in the browser), and backend (the server system). The backend stores the bookings, and both the app and the website talk to it.

B2. Explain in two sentences why a shop's price rules should live in the backend and not only in the web page.

أظهر الحل B2

B2. The page runs on the customer's device, where a user can change it or send requests that skip it, so rules that only live there can be bypassed. The backend runs on a computer that the company controls, so it can enforce the rules for every request.

B3. A friend says: "I use the website, so I use the backend directly." Explain what is correct and what is not in this statement.

أظهر الحل B3

B3. Correct: the website depends on a backend and shows data that the backend provides. Not correct: you use the website, which is the frontend, and the browser talks to the backend for you. You do not use the backend directly, and the two are different pieces running in different places.

Level C: Challenge

C1. A smart speaker plays music from an online service when you ask it. Identify the embedded part, the backend part, and say how you would decide whether the "voice assistant" counts as one or both. Hedge where the answer depends on details you do not know.

أظهر الحل C1

C1. The software built into the speaker (microphone handling, wake word detection, playing sound) is embedded. The online music service that holds songs, accounts, and recommendations is a backend. The voice assistant may be partly in the device and partly on servers, depending on how the maker designed it; without that information, say so rather than guess. It is fine to say "likely both".

C2. A note-taking tool exists as a desktop application, a phone app, and a website, and your notes appear in all three. Draw a diagram in words showing the pieces, and say which piece makes sharing the notes between devices possible.

أظهر الحل C2

C2. Desktop app, phone app, and website (web frontend) each talk to one backend:

text
  Desktop app ---\
  Phone app   ----> Backend (stores the notes) 
  Website     ---/

The backend makes sharing possible because it holds the single copy of the notes, which every client reads and updates.

Mini Challenge

Choose a product you use (a banking app, a streaming service, an online shop). Draw its pieces:

  1. List every piece of software you can think of, from what you use directly to what might sit behind it.
  2. Label each: desktop, mobile, web frontend, backend, or embedded.
  3. Draw arrows from each frontend or app to the backend.
  4. Write one sentence on what the backend stores or decides for this product. If you do not know for sure, write "probably" and explain your reasoning.

Check your work: every piece has exactly one label, the backend is a separate box from the website or app, and you said where each piece runs.

Summary & Next Lesson

Key takeaways

  • Sort software by where it runs: desktop (installed on a PC), mobile (installed on a phone), web frontend (in the browser), backend (on a server), embedded (inside a device).
  • The web frontend is the visible part of a website and runs in your browser. The backend runs on a server you do not see.
  • A website and its backend are different pieces, usually on different computers.
  • One product often contains several kinds of software that talk to each other.
  • The backend holds the shared data and enforces the rules, and many frontends can use it.
  • Some cases are gray; explain the parts instead of forcing a label.

Next lesson

You have met the backend as "software on a server that answers requests". The next lesson, "Programs vs services: why a backend never finishes", explains what is special about the way it runs: it does not do a job and exit, it keeps running and waits.

Self-check

  1. Which kind of software is built into a washing machine?
  2. Where does a web frontend run?
  3. Why is a website not the same as its backend?
  4. Name two jobs a backend does.
  5. A smart TV's own menu is which kind?
أظهر الإجابات
  1. Embedded.
  2. In the user's browser.
  3. The website you see runs in your browser as a frontend, while the backend runs separately on a server and the website talks to it.
  4. For example: store data, apply rules (such as checking a password or computing a price), and answer requests.
  5. Embedded, because it runs on the TV itself and ships with it.

References

  • MDN Web Docs, What is JavaScript?. Supports the distinction between code that runs in the browser (client side) and code that runs on a server, and the fact that JavaScript code can run in the browser.
  • MDN Web Docs, What is a web server?. Supports the description of a server as a computer with software that waits for requests from clients such as browsers and answers them.
  • Wikipedia, Embedded system. Supports the definition of an embedded system as a dedicated computer inside a larger device, with examples such as washing machines, microwave ovens, and cars, and firmware as its software. A general reference, so read it as an overview.
  • The five-way classification, the restaurant picture, and the three sorting questions are this course's own teaching framing. The smart TV, smartwatch, and smart speaker cases are hedged because the exact design varies by product, and I did not verify any particular product.

التطبيق

طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.

المختبر والتمارين الاختبار

تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.

اكتب للبحث في المستويات والمراحل والوحدات والدروس.