You are on page 1of 31

S ASSIGNMENT 1 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing

Unit number and title 10: Website Design & Development

Submission date Date Received 1st submission

Re-submission Date Date Received 2nd submission

Student Name Mai Tran Phuoc Linh Student ID GCD201386

Class GCD1002 Assessor name

Student declaration

I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.

Student’s signature

Grading grid

P1 P2 P3 P4 M1 M2 M3 D1
 Summative Feedback:  Resubmission Feedback:

Grade: Assessor Signature: Date:


Signature & Date:
Contents
1. Identify the purpose and types of DNS, including explanations on how domain names are organised and managed. (P1) .................................... 5

DNS .................................................................................................................................................................................................................. 5

Main DNS server types ...................................................................................................................................................................................... 5

Resolver ........................................................................................................................................................................................................ 5

Iterative ......................................................................................................................................................................................................... 6

Root servers ................................................................................................................................................................................................... 6

TLD (Top Level Domain) nameserver ........................................................................................................................................................... 6

Authoritative nameservers ............................................................................................................................................................................. 7

URLs ............................................................................................................................................................................................................. 7

Explain the purpose of: (P2) .................................................................................................................................................................................15

• Communication protocols ...............................................................................................................................................................................15

• Server hardware .............................................................................................................................................................................................15

• Operating systems ..........................................................................................................................................................................................15

An operating system is what? ........................................................................................................................................................................15

the duty of the operating system ....................................................................................................................................................................16

Types of operating systems ...........................................................................................................................................................................16

Operating systems for mobile devices ...............................................................................................................................................................19

• Software for web servers ............................................................................................................................................................................20

• Explain the relationship between technologies above with regards to designing, publishing and accessing a website. ..................................21
V. WEBSITE TECHNOLOGIES (P3) ..................................................................................................................................................................21

Frontend vs Backend ........................................................................................................................................................................................21

Front End Development ...............................................................................................................................................................................22

Front End .........................................................................................................................................................................................................23

Depending on the framework, one can perform front-end development using a variety of additional languages, such as Dart for Flutter,
JavaScript for React, and Python for Django, among others...........................................................................................................................24

Front End Frameworks and Libraries: ..........................................................................................................................................................24

Back End: .........................................................................................................................................................................................................25

Back End Languages ....................................................................................................................................................................................25

Back End Frameworks: .................................................................................................................................................................................27

Difference between Frontend and Backend: ......................................................................................................................................................27

Differences between online website creation tools and custom-built sites with regards to different factors(P4): .....................................................28

Flexibility .........................................................................................................................................................................................................28

Performance .....................................................................................................................................................................................................29

Functionality ....................................................................................................................................................................................................30

User Experience (UX) ......................................................................................................................................................................................30


Identify the purpose and types of DNS, including explanations
on how domain names are organised and managed. (P1)

DNS
The IP addresses that computers use to connect to each other are represented by the numbers in the Domain Name System
(DNS), which is a directory of names that match with those numbers. The TCP/IP protocol suite is used by the DNS
protocol. It is a system that connects names with numbers like a phonebook does, converting URLs into IP addresses that
computers use to identify one another on a network. You connect to a DNS, which maintains a sizable database of domain
names and converts them to IP addresses, so that you do not need to know everyone's IP address. As a result, when you type
in a website address, such as www.bbc.co.uk, for instance, your internet service provider will ask for the DNS associated
with the domain name and translate it into an IP address that a computer can understand, which will then point you in the
right direction when you click on the desired website. If you've been to the website before, the computer will first check its
cache to determine if you've been there before; if not, it will perform a DNS query to locate the page.

Main DNS server types

Resolver
Once a DNS query has been sent from the client, a recursive resolver will either return cached data if it is found in the cache
or it will send requests to a root nameserver, a TLD (Top Level Domain) nameserver, and finally a last request to an
authoritative nameserver. A resolver is the first stop in a DNS query and serves as the middle link between the client and a
DNS nameserver. The method of obtaining the requested website's IP address will be followed if the recursive resolver does
not already have it in its cache when the request is made. It will then save this IP address for a while in its memory. The
time to live2 parameter, which controls how long the website stays in the cache's memory, is used by the domain owner to
determine how long it will be stored in memory.

Iterative
The user enters the URL of the website they are trying to discover, and the resolver checks its cached memory for an answer
or asks another DNS server if they have the information by returning the address of that DNS server. If it cannot provide a
conclusive response, it moves on to the next server. Depending on the referrals it receives, the query will descend through
the levels starting at the root server.

Root servers
The root name server for DNS records responds to queries made in the root zone of the DNS and plays a significant role in
converting a domain name into an IP address for a computer. Records that have been cached in the root zone on the servers
can respond to requests. They have the ability to redirect other requests to the TLD server.

TLD (Top Level Domain) nameserver


The portion of a domain name that comes after the dot is what the TLD nameserver is referring to. TLDs are divided into
two groups: industry TLDs and nation TLDs. For illustration. FR stands for France, and.GOV stands for official websites.
In the root zone of the DNS for the internet, the TLD is the highest level of domain names. It is the final part of the domain
name 1 for the other domains in lower levels. The IANA (Internet Assigned Numbers Authority), a division of the company
ICANN, is in charge of managing the TLD nameservers.
Authoritative nameservers
Answers to an initial DNS request are given by an authoritative nameserver. It doesn't offer web page answers from the
cached memory 3. With an IP mapping of the website (or other server) sought after, the authoritative nameserver responds
to recursive DNS nameserver queries. Records for domain names are kept by the authoritative name server; these records
can be A, CNAME, MX, NS, SOA, or TXT records. Using www.example.co.uk as an example, if a DNS server in a
network has a record for this website, it means the DNS server is the authoritative server for the example.co.uk domain.

URLs
When you type a website's address into a browser's address bar, you create a URL. The same way that each person's
fingerprint is unique to them and different from everyone else's, a URL is also unique and cannot be shared between other
websites. A URL is organized using the structure of its many elements; the example URL https://moodle.nptcgroup.ac.uk
illustrates the various parts of a URL and how they are organized. The protocol used to transport data between your browser
and the website you want to connect to is called HTTPS. The web servers where it can be accessible are known as "moodle"
or as the host. The second level domain is then the.ac, which indicates that it is an academic second level domain and is
used by UK universities and colleges. The top level domain is the.uk, which is the highest level and indicates that the
website is located in the UK by virtue of its top level domain. This is the URL's final segment, which is typically a
government (.gov), a country (.fr), or a firm (.com) (.gov)

Maintaining the DNS is part of domain name management, which is managed by a third party organization through a portal.
The personal or company website can manage DNS records through this gateway, allowing access to the website, your blog,
email, and other online assets. Many online businesses provide domain name management services, keeping your domain
name from expiring by including an auto renewal feature with their service. Once your domain name is operational, you
may utilize the portal to manage it conveniently from a single location. From there, you can quickly and easily alter the
DNS records for several domains.

The capabilities and relationships between front-end and back-end website


technologies and how these relate to presentation and application layers.
In web applications, the terms front end and back end refer to the code running in the browser and the web server,
respectively. Back end is frequently referred to as server side and front end as client side. JavaScript code that uses HTML
for presentation and CSS for styling can be run by browsers. Since it can be coded in many different languages—the most
popular of which are PHP, Ruby, ASP.NET, and JavaScript—the back-end is significantly more flexible (Node). The
application, the database, and the data required to host a website will be stored on servers by the back-end development. A
server-side language is used to enable the server, application, and database to work and communicate with one another. A
website's database is crucial since it saves data and is required for website development. MySQL 8 is a popular database
that is utilized by many of the well-known global brands and corporations, like Google, Facebook, and PayPal. In order for
MySQL to function, a database must first be created for storing and modifying data. Clients can then submit requests by
typing specific SQL queries into MySQL, and the server's application will reply by displaying the desired data on the
client's browser.

A website's back end development will take care of the language, database, security, and backup aspects. When someone
searches for a hotel, for instance, inside a particular town, the database of a website is utilized. The database is in charge of
accepting the query made by someone, then it will discover the needed data in the database and return it to the person who
sought for it on a website.
Data and sensitive information must be kept safe, hence the back-end development's security component is essential. When
performing any development, it is crucial that users log in via the HTTPS protocol because this will encrypt the data and
prevent hackers from intercepting it. Additionally, it is crucial that websites that accept credit card information use HTTPS
as this will protect the data from hackers and give users confidence to use websites that comply with this protocol. For
instance, a study7 found that 84% of users would abandon a purchase if they could not tell that a website was using HTTPS.
In order to increase the visibility of your website in the search results, Google will rank sites that employ the HTTPS
protocol higher in their search results.

The front end of a website is what you see; for instance, a browser will display the results of a search query. HTML is a part
of front-end development, and when combined with CSS and JavaScript, it may be used to create a website's front end.
These coding standards are used to generate the website pages, which the developer then styles according to the preferences
of the customer. A web developer is the individual or group who creates the pages of a website that we see on the screen.
They are able to construct static websites, which are websites without any back-end code or databases. These static websites
are used to display data for a website that does not require continual updating, such as a restaurant that may have one to
display only the menus and location. Since the website might not require updated for a while, they don't need the data to be
kept in a database.

Data translation, data compression, and application-to-application encryption are all tasks of the presentation layer in the
OSI model. Data is encrypted when it is passed through the HTTPS protocol on a browser in order to protect it from hackers
trying to intercept and hack it while it is being transmitted over the internet. When this happens, the HTTPS protocol is
utilized to protect credit card information between the two communicating devices, such as when someone makes an online
purchase. When this occurs, the buyer and the seller will exchange keys to encrypt the data that is being transferred, which
means that only these two can encode the data and subsequently decode it in to a readable format, keeping it secure even if
it is intercepted by a hacker who lacks the key to decode it. When creating a website, the presentation layer is also utilized.
HTML, CSS, and JavaScript are used to link the user interface and website back end.

When uploading files to a web server to host a website, for example, the FTP protocol is used in the application layer to
transmit files between the server and the client over a network. The application layer, which is the sole layer that interacts
with computer users, offers the interface between applications and the network. There are numerous other protocols used at
the application layer, including SMTP, Telnet, and TFTP. The DNS protocol is also used here. Applications that operate on
computers need this layer since it hosts those programs, and those programs are used while accessing the internet. The mail
protocol, which is part of the application layer, employs the SMTP protocol to send emails over the internet, and the POP3
protocol to receive them. The Telnet protocol, which is used to access a device remotely, is also on the application layer.

Explain the purpose and relationships between communication protocols, server


hardware, operating systems and web server software with regards to designing,
publishing and accessing a website

Both the front end and the back end of websites require certain protocols. These protocols are located in the OSI 7-layer
model's application layer.
Resources are exchanged via the internet according to the HTTP (Hyper Text Transfer Protocol) protocol. On the internet,
HTTP is used to deliver data and gives computers a controlled way to connect with one another. An application protocol
called HTTP operates on top of TCP/IP. Use port 80 for the HTTP protocol.

A secure protocol called HTTPS (Hyper Text Transfer Protocol Secure) encrypts the data before it is transferred over the
website it is on. By exchanging keys with the client and the website, it encrypts the data, making it impossible for thieves to
access or decrypt it without the owner's and customer's private keys.

FTP (File Move Protocol) is primarily a network standard protocol that uses a client-server architecture to transfer data from
client to host from one server to another server. When building a website, you'll use the FTP protocol to upload your
finished web pages to the web server. Typically, you'll use an application like FileZilla to do this through the FTP protocol.
This uses port numbers 20 for data and 21 for control.

The mail protocol employs the SMTP (Simple Mail Transfer Protocol) protocol to send emails across the internet, but
exclusively between users. The POP3 protocol is then utilized to gather the mail from the recipient in order to receive the
emails. To ensure that your message reaches the appropriate computer and email inbox, this protocol integrates with the
Mail Transfer Agent (MTA) protocol. SMTP makes use of port number 25, which is.

The most popular web server software available is called Apache. Apache is open source software that is supported by the
Apache Software Foundation and is updated by a community of developers. Given that it is available for free download and
usage on Linux servers, Apache is a useful program to employ on a web server. IIS (Internet Information Services) is a
proprietary web server program developed by Microsoft that only runs on its Windows operating systems. Unlike Apache,
IIS is not free software. It takes some time to get used to the neat GUI that comes with the Microsoft applications. It has a
panel to control the linked servers, but since everything is in one location, managing it is relatively simple.

Additionally, it has good security capabilities like binding for enabling HTTPS and SFTP on your websites and managing
TLS certificates. Additionally, it features software updates that are released frequently to stay current with global security
concerns. The security measures in Microsoft's software help to keep websites on the servers operational and downtime to
an absolute minimum, which will aid businesses in limiting their financial losses in the event that their website is attacked.

The majority of businesses will employ servers to host their websites; while this is not required, it is advised because
servers must be operational 24/7/365. In a business, a server needs to be more dependable than desktops because they are
always on. A web server's primary responsibility is to transmit to the client the content of websites that are hosted online.
The most popular web server program is Apache, which must be installed on all machines that host websites. Any machine
that has an internet connection and the required software installed on it can be used as a web server. Most web servers host a
large number of websites, whereas some only host a few. Shared hosts refer to servers that host several websites, whereas
dedicated hosts refer to servers that host a single firm or individual's website. Dedicated hosts are suitable for websites with
significant traffic volumes and websites that require specialized server upgrades.
Discuss the differences between online website creation tools and custom-built sites
with regards to design flexibility Performance, functionality, User Experience (UX)
and User Interface (UI).
Online website creation tools and custom-built websites

There are many various websites that will offer many different templates that will help in giving a beginning point to
producing a website. Using a template is a simpler approach to create your own website than building from scratch. The
websites that are specifically designed for you have themes and layouts, giving you additional options while building your
website. There are advantages to employing this strategy over starting from scratch for constructing websites, but there are
also disadvantages. One disadvantage is that many businesses might utilize this strategy, and if numerous businesses in the
same industry do this, you run the danger of having websites that seem extremely similar to yours. On the other hand, since
everything is available to you in the construction tools, it is a more quicker and simpler method than starting from scratch.

When a website is developed online, the user experience can not be as nice as when a site is constructed from scratch
because you are limited in how you can design your website using their tools. If you wanted a user to navigate your website
from one page to another in your preferred fashion but were unable to do so using the online creation tools, this would have
a negative effect on the user's experience. You may want to alter the flow of your website using the tools but be constrained
in what you can do by the service itself. However, when a website is developed specifically for a user, they may configure it
to work the way they want it to, which results in a user experience that is optimal for them.

Using a custom-built website is more effective in terms of performance because it will only have the code necessary to run
the website and nothing additional, unlike online creation services that include a lot of extra code to aid in the user's website
construction while still making it simple to use. This will result in the addition of extra code and have an impact on the
website's performance. The flexibility of a custom-built website is significantly greater than that of online services since you
may add and move everything you want. Online creation services place restrictions on users' website flexibility, which can
be highly annoying.

A custom-built website will always be accessible and perfectly functioning on all platforms, including computers, phones,
and tablets. This is crucial in today's world where many people use their phones and tablets to access the internet while on
the go. A custom-built website will guarantee that it is optimized for use on both of these devices and that the user interface
is exactly as the website's developers intended when they created it. The ability to see in mobile format may not always be
included as part of the standard service when using an online creation service and may incur additional expenses. They will
typically appear higher in Google search results since the site has been optimized to appear higher in the search; this is
accomplished by using the right key words and website structure.

A user will benefit from using an online service in that once their website is operational, they won't need to worry about the
security aspect of things because the service you have selected will take care of this. Additionally, the organization handles
data maintenance and storage, freeing the customer to focus on other tasks. This is a problem that needs to be addressed
when utilizing a custom-built website since additional expenditures for the data storage will be incurred because hard drives
will be required to store the data. A website's supporting elements are as important; with a custom-built site, your chosen
company will always be there for assistance. However, employing an internet service will result in less helpful customer
care than using a custom-built supplier, who can offer more individualized support.
Explain the purpose of: (P2)

• Communication protocols
A communication protocol is a set of guidelines that enables the transmission of information between two or more entities
of a communications system using any modification in a physical quantity. The protocol specifies the guidelines, syntax,
semantics, synchronization, and potential mechanisms for error correction.

• Server hardware
In terms of hardware

A web server is a computer that stores the component files that make up a website (for example, HTML, images, CSS, and
javascript files...) and transmits them to the end user. The web server is connected to the internet and accessed through a
domain like mozilla.org.

• Operating systems

An operating system is what?


The most crucial piece of software that runs on a computer is the operating system. It controls the memory, operations, software, and hardware of
the computer. You can converse with the computer using this method even if you don't understand its language. A computer cannot function
without an operating system.
the duty of the operating system

The operating system (OS) on your computer controls all of the hardware and software. The majority of the time, multiple
computer programs are active at once, all of which require access to the CPU, RAM, and storage of your computer. To ensure that
each software receives the resources it need, the operating system orchestrates all of this.

Types of operating systems

Any computer you buy often comes pre-loaded with an operating system. The default operating system that comes with
computers is used by the majority of users, however it is possible to update or even switch operating systems. Microsoft
Windows, macOS, and Linux are the three most popular operating systems for personal computers.

A graphical user interface, or GUI, is used by contemporary operating systems (pronounced gooey). Using a combination of
visuals and text, a GUI makes it possible for you to use your mouse to click on icons, buttons, and menu items that are all
clearly shown on the screen.

Since the GUI of each operating system differs in appearance and feel, switching to a new operating system may at first
seem strange. However, most of the fundamental concepts are the same in modern operating systems, which are created to
be simple to use.

Microsoft Windows
In the middle of the 1980s, Microsoft developed the Windows operating system. Windows has been issued in a variety of
versions over the years, with Windows 10 (which was introduced in 2015), Windows 8 (2012), Windows 7 (2009), and
Windows Vista being the most recent (2007). Windows is the most widely used operating system in the world since it
comes pre-installed on the majority of new PCs.

macOS
Apple produces a series of operating systems under the name macOS (formerly known as OS X). All Mac computers,
sometimes known as Macs, already have it installed. Mojave (launched in 2018), High Sierra (issued in 2017), and Sierra
are a few of the specific versions (2016).

Less than 10% of operating systems worldwide are Mac-based, according to StatCounter Global Stats—a far lower
percentage than Windows users (more than 80 percent ). This is due, in part, to Apple computers' inclination toward higher
prices. However, many individuals do choose macOS's interface over Windows'.
Linux

The Linux operating system family is an example of an open-source software, which allows for worldwide distribution and
modification. Unlike proprietary software like Windows, which can only be changed by the corporation that owns it, this
can be modified by anybody. The fact that Linux is free and that there are numerous Linux distributions—or versions—to
choose from is one of its benefits.

Less than 2% of operating systems used globally are Linux-based, according to StatCounter Global Stats. Linux is used by
the majority of servers, nevertheless, because it can be customized easily.

Operating systems for mobile devices


So far, we've been discussing operating systems that can be used on both laptops and desktop computers. Mobile operating
systems are used by mobile devices like phones, tablets, and MP3 players since they differ from desktop and laptop
computers in many ways. Apple iOS and Google Android are a couple of examples of mobile operating systems. You can
see iOS running on an iPad in the screenshot down below.
Mobile operating systems typically aren't as feature-rich and can't run as much software as those designed for desktop and
laptop computers. They still allow you to do a number of activities, including playing games, browsing the web, watching
movies, and managing your schedule.

• Software for web servers


Regarding software

The hosts file at at least one HTTP server is accessed by web users through a number of sections on the web server. A piece
of software that comprehends URLs (web addresses) and HTTP is known as an HTTP server (the way your browser
displays web pages) Any browser needs a host file on a web server at the most fundamental level, and it will use HTTP to
request that file. The HTTP server responds with an HTTP request after receiving a request made to the appropriate web
server address.
• Explain the relationship between technologies above with regards to designing, publishing and accessing a
website.
- Devices can communicate with one another thanks to communication protocols. As a result, gadgets are able to send and
receive signals as well as converse with one another. Server hardware is used to store, process, retrieve, and share data
across computers, but it must be connected to the same network and carry out workflow-related operations. smooth and
increase output. However, you require a secure and reliable server operating system if you want to have good server
hardware. The heart of the computer is its operating system. Without this software, other programs could not function and
other server components could not be assigned jobs. In a nutshell, the software controls the server's internal data and the
hardware that runs the operating system.

V. WEBSITE TECHNOLOGIES (P3)

Frontend vs Backend
The two most common terminology used in web development are frontend and backend. Although they are extremely
distinct from one another, these phrases are incredibly important for web development. To increase the functioning of the
website, each side must cooperate and interact with the other as a single entity.

Front End Development

The front end of a website refers to the area that users interact with directly. It is sometimes referred to as the application's
"client side." It covers everything that users see and interact with immediately, such as button colors, text styles, photos,
graphs, and tables. For front-end development, three languages are used: HTML, CSS, and JavaScript. Front end developers
put into practice the structure, design, behavior, and content of everything seen on browser displays when websites, web
applications, or mobile apps are opened. The Front End's primary goals are responsiveness and performance. The website's
developer must make sure that it is responsive, meaning that it displays properly on all types of devices and shouldn't act
strangely depending on the size of the screen.
Front End

The languages listed below are used to build the front end portion:

 HTML: Hypertext Markup Language is what HTML is called. It is used to create web pages' front ends using a
markup language. The acronym HTML stands for Hypertext Markup Language. The link between web pages is
defined by hypertext. The written documentation contained within the tag that specifies the structure of web pages
is defined using markup language. With the help of Geeksforgeeks' Advanced HTML - Self-Paced course, you
may learn this language and become an expert in advanced HTML.
 CSS: Cascading Style Sheets, sometimes known as CSS, is a straightforwardly written language used to make web
page presentation easier. Applying styles to web pages is possible with CSS. More crucially, CSS makes it possible
for you to do this without relying on the HTML that each web page is composed of. Additionally, if you want to
improve your abilities, sign up for the Geeksforgeeks CSS Foundation - Self-Paced course and study all the latest
CSS ideas.
 JavaScript: A well-known scripting language, JavaScript works its magic on websites to make them interactive for
users. It is used to improve a website's functionality so that enjoyable games and web-based applications can run on
it. Javascript, which may be used in the front-end and the back-end, is essential to becoming a skilled developer. So
enroll in the Geeksforgeeks JavaScript Foundation - Self-Paced course right away to begin your web development
career.
Depending on the framework, one can perform front-end development using a variety of additional languages, such as Dart
for Flutter, JavaScript for React, and Python for Django, among others.

Front End Frameworks and Libraries:

• AngularJS: This open-source front-end framework for JavaScript is mostly used to create single-page web apps
(SPAs). It is a framework that is always developing and expanding and offers improved ways to create online apps.
The static HTML is converted to dynamic HTML. A free version of the open-source project is available. Data is
associated with HTML, and Directives extend HTML attributes.

 React.js: For creating user interfaces, React is a declarative, effective, and flexible JavaScript library. ReactJS is a
free, component-based front-end library that is exclusively in charge of the application's view layer. Facebook looks
after it. React Js also makes front-end development incredibly simple. By joining Geeksforgeeks, you may now
create Web Applications that are suitable 4 the industry. JS Bootstrap for React: A suite of free and open-source
tools called Bootstrap is used to build websites and online apps that are responsive. The framework is the most
well-liked combination of HTML, CSS, and JavaScript for creating responsive, mobile-first websites
 jQuery: jQuery is a free JavaScript library that streamlines interactions between JavaScript and the Document
Object Model (DOM) of an HTML/CSS document. To elaborate, jQuery makes JavaScript programming for cross-
browser use and the traversal and manipulation of HTML documents, as well as DOM animations and Ajax
interactions, easier.
 SASS: The most dependable, established, and durable CSS extension language. It is used to easily add everything
from variables, inheritance, and nesting to an existing CSS style sheet on a website.
 Flutter: Google is the manager of the open-source Flutter UI development SDK. Dart is the programming language
that powers it. It creates efficient and aesthetically pleasing natively compiled applications from a single code base
for desktop, web, and mobile (IOS, Android). Flutter's primary selling point is the ease, expressiveness, and
adaptability of flat development thanks to native performance and UI. Flutter will deliver Flutter 2 in March 2021,
an upgrade that would allow developers to create and release web applications while still in development for
desktop applications.
 Additional libraries and frameworks include Foundation, Materialize, Backbone.js, Ember.js, Semantic-UI, and
more.

Back End:
The server-side of a website is called the backend. It also ensures that everything on the client side of the website functions
properly while storing and organizing data. It is the portion of the website that you are unable to view and use. It is the part
of the program that users do not directly interact with. Users indirectly access the components and features created by
backend designers through a front-end application. The backend also includes tasks like writing APIs, building libraries,
and interacting with system elements devoid of user interfaces or even systems of scientific programming.

Back End Languages

The following list of languages is used to build the back-end portion:


 PHP: PHP is a scripting language used on servers that was created primarily for building websites. PHP is referred to
as a server-side scripting language since PHP code is executed on the server.
 C++ is a general-purpose programming language that is frequently used nowadays for programming in a
competitive environment. In addition, it serves as a backend language. Therefore, if you are interested in studying
Java, you can use the Geeksforgeeks C++ Programming Foundation - Self-Paced course to your advantage and
quickly master all the fundamentals of the language.
 Java: One of the most well-known and often used platforms and programming languages is Java. It can scale up very
well. Java components are readily available, and you can check out the Geeksforgeeks Java Programming Foundation
- Self-Paced course to study this one of the most popular languages. You will learn more about the appropriate
framework, concepts, and other things as a result.
 Python: Python is a programming language that enables quick work and more effective system integration. It is also a
crucial language for the back end, and Python Programming Foundation -Self-Paced course can help you learn it. This
course is suitable for beginners and will assist you in laying a solid foundation for Python.
 Node.js: Node.js is a free, open-source runtime environment that can be used on any platform to run JavaScript code
outside of a browser. You must keep in mind that NodeJS is not a programming language or a framework. The majority
of folks are perplexed and realize it's a computer language or framework. For creating back-end services like APIs for
web apps or mobile apps, we frequently employ Node.js. Large corporations like Paypal, Uber, Netflix, Walmart, and
others use it during production.
Back End Frameworks:

 Express - For backend/server-side programming, Express is a Nodejs framework. Single-page, multi-page, and
hybrid web apps can all be created with it. You can manage a variety of various HTTP requests with its assistance.

 Django: Django is a Python web framework that employs the model-template-views design principle. It is utilized to
create expansive and intricate web applications. It has the qualities of being quick, secure, and scalable.

 Ruby on Rails: Ruby on Rails is a model-view-controller architecture-based server-side framework. It offers pre-built
structures including databases, online services, and web pages.

 Laravel - Laravel is a dependable PHP web application framework. Reusing the components of many frameworks
when building a web application is its best feature.

 Spring - This server-side framework supports Java applications' infrastructure. It supports a variety of frameworks,
including Hibernate, Struts, EJB, etc. Additionally, it offers add-ons that make it simple and rapid to create Java
apps.
C#, Ruby, GO, and other back-end programming and scripting languages are also available.

Difference between Frontend and Backend:


 Although frontend and backend development are very distinct from one another, they are still two sides of the same
coin. The backend controls how everything functions, whereas the front end is what users see and interact with.
 The front-end of a website is the portion that visitors can see and interact with, including the graphical user interface
(GUI) and command line, as well as the design, menus for navigation, texts, photographs, and videos, among other
things. Contrarily, the backend is the portion of the website that visitors cannot access or interact with.
 The frontend of a website is what users view and interact with visually. On the other side, the backend is
responsible for everything that takes place in the background.
 The front end is written in HTML, CSS, and JavaScript, and the back end is written in Java, Ruby, Python,
and.Net.

Differences between online website creation tools and custom-


built sites with regards to different factors(P4):

Flexibility
First of all, when it comes to website flexibility, online website creation tools have pre-made templates that enable users to
see their sites at the time of purchase. However, the functions available in pre-made templates are constrained, so users must
be content with what they receive from the online templates, and there are few options for customization. Additionally,
some websites lack complete user-friendliness in terms of SEO and marketing tools as well as the user's inability to make
any changes to the website. Web hosting companies also offer hosting and domain names that assist users without coding
experience and online websites with good design but limited functionality and services.
However, compared to internet websites, custom-built websites are more flexible since they are created based on the needs
of the client, which encourages greater client-web designer flexibility. Additionally, before the site is deployed to the server
and FTP, design, features, colors, fonts, and appearance are developed in accordance with the client's requirements.

Web folders can be accessed from the website that is directly hosted thanks to the server's greater flexibility. Finally, the
customer can purchase their own domain name and hosting package.

Performance
The performance of an online website creation tool is much better than that of a custom-built website because a custom-
built website is created through coding, where mistakes can be made by the designer, whereas an online website creation
tool is created by an expert designer who makes fewer mistakes, increasing the performance of the site relative to a custom-
built website. However, some websites perform poorly due to improper coding. Furthermore, we cannot completely rely on
an online page to run quickly because site speed also depends on the coding style used and the number of plugins and
animations present. Additionally, the server that is used affects how quickly the site loads because some servers have poor
response times and slow down overall site performance. However, the speed of a custom-built website can be either poor or
excellent depending on how the designer writes the code, whether or not plugins are constrained, and the server that the site
is hosted on. However, only a small number of websites have higher performance compared to online sites, so when
building a site, the client must choose an appropriate designer who can make the site faster and made the site according to
their desires. Similar to how expert designers can make the site perform better than online website creation tools, if the
designer has used high range servers and hosting sites it will also help to increase the performance of the site. Additionally,
fewer plugins and animations help websites load faster, and dynamic content also improves website performance.
Functionality
Online templates feature limited functionality that is already provided, and users are required to use the site's accessible
functions rather than altering the templates in any way. Additionally, the user is unable to add or remove any of the
website's functions or services, and the functionality of the online template is restricted. Because e-commerce sites require
greater functionality, users who want to launch them cannot use online templates. However, in a custom-built website, the
designer can increase or decrease the number of functions based on consumer demand. The majority of websites, like
Facebook, Twitter, and YouTube, employ custom-built websites because they require ever-increasing functionality that can
be later extended or removed in response to demand.

User Experience (UX)


Customer satisfaction must be raised in order to increase user experience, however most website templates' designs and
layouts leave users unsatisfied and are unable to create an effective UX for them. Similar to this, the primary goal of user
experience is to offer a satisfying experience that will draw visitors to the website, yet most websites already have excellent
user experience. In addition, user cannot change the User experience to attract the visitors and user have to satisfied with the
design that provided for User Experience However, custom build website has different User Interface and it can be designed
by the designer to attract the visitors as well as UX can be designed in different pages of the same website so that visitor
will be attractive toward the site and will visit your site continuously to get the information available in your site. There are
different tools to increase UX and it can be build as per client's requirements. Moreover, online templates can't design
experiences but in custom build website designer can design experiences for the user. Additionally, the user cannot alter the
user experience to draw in more customers, and they must be happy with the design's User Experience provisions. However,
a custom-built website has a unique User Interface that can be made by the designer to draw visitors as well as UX that can
be designed in other pages of the same website to attract people and keep them coming back to your site to get the
information it has to offer. To improve UX, a variety of tools are available, and it can be customized to the needs of the
customer. Additionally, user experiences cannot be designed using online templates; instead, user experiences can be
designed using custom-built websites.

REFERENCES LIST

mv-organizing (n.d.). What is the purpose of communication protocols? – MV-organizing.com. [online] Available at:
https://mv-organizing.com/what-is-the-purpose-of-communication-protocols/ [Accessed 8 Aug. 2022].

GCFGlobal (2016). Computer Basics: Understanding Operating Systems. [online] GCFGlobal.org. Available at:
https://edu.gcfglobal.org/en/computerbasics/understanding-operating-systems/1/

GeeksforGeeks (2019). Frontend vs Backend - GeeksforGeeks. [online] GeeksforGeeks. Available at:


https://www.geeksforgeeks.org/frontend-vs-backend/

Scribd. (n.d.). Differences Between Online Website Creation Tools and Custom | PDF | Websites | Software Development.
[online] Available at: https://www.scribd.com/document/534929954/Differences-between-online-website-creation-tools-
and-custom [Accessed 8 Aug. 2022].

You might also like