Download Understanding Web Dev Technologies: DNS, Server Hardware, Web Server Software and more Assignments Programming Languages in PDF only on Docsity!
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 Nguyễn Đình Hoàng Long Student ID GCH Class GCH1033 Assessor name Lai Manh Dung 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 Long Hoang Grading grid P1 P2 P3 P4 M1 M2 M3 D
Summative Feedback: Resubmission Feedback:
Grade: Assessor Signature: Date: Signature & Date:
- Table of Figures
- Introduction
- Identification of the purpose and types of DNS
- 1.2 Technologies in web development
- 2.Website technologies, tools and software
- 2.1 The capabilities and relationships between front-end and back-end website technologies
- 2.2 Explanation of how these relate to presentation and application layers
- 2.3 Review Front End technologies..........................................................................................................................................................................
- 2.4 Review Back End technologies
- 2.5 Review Databases..........................................................................................................................................................................................
- 2.6 Review IDEs
- 2.7 Review CMS........................................................................................................................................................................................................
- 2.8 Review Website Builders
- Conclusion
- References
- Figure 1 Website illustration Table of Figures
- Figure 2 DNS Illustration
- Figure 3 DNS Types Illustration
- Figure 4 Domain Name System
- Figure 5 Communication Protocol
- Figure 6 Operating System
- Figure 7 Front-End, Back-End Illustration
- Figure 8 HTML Illustration............................................................................................................................................................................................
- Figure 9 CSS Illustration
- Figure 10 JavaScript Illustration
- Figure 11 Python Illustration........................................................................................................................................................................................
- Figure 12 JavaScript Illustration
- Figure 13 Database Illustration
- Figure 14 IDE
- Figure 15 CMS
- Figure 16 Website Builder Illustration
Introduction
Before the presenting part, we should all have fundamental understandings about a website first. A website is made up of multiple web pages, and web pages are digital files written in HTML (HyperText Markup Language). To make your website accessible to everyone on the planet, it must be saved or hosted on a computer that is always connected to the Internet and those machines are referred to as Web Servers. (GeeksforGeeks, 2021)
- The website's web pages are linked with hyperlinks and hypertext and share a common interface as well as design. (GeeksforGeeks, 2021)
- The website might also contain some additional documents and files such as images, videos, or other digital assets. (GeeksforGeeks, 2021)
- With the Internet invading every sphere, we see websites for all kinds of causes and purposes. (GeeksforGeeks,
- So, we can also say that a website can also be thought of as a digital environment capable of delivering information and solutions and promoting interaction between people, places, and things to support the goals of the organization it was created for. (GeeksforGeeks, 2021)
Identification of the purpose and types of DNS
Figure 2 DNS Illustration What is DNS:
- DNS stands for the phrase Domain Name System, which has the full meaning of the domain name resolution system. In the most succinct way, DNS is basically a system of converting the website domain names we are using, in the form of www.tenmien.com to a digital IP address corresponding to that domain name and vice versa. (cloudflare, n.d) The purpose of DNS:
- Each website has a unique name (domain name or URL: Universal Resource Locator) as well as an IP address. IP addresses are made up of four groups of numbers separated by dots (Ipv4). When you start a Web browser and type in the website's name, the browser will go directly to the website, bypassing the IP address. So the DNS
server main job is to "translate" the domain name into an IP address that the browser can comprehend and use to access the website. Users simply need to know the "name" and not the IP address (IP addresses are numbers that are difficult to remember). (cloudflare, n.d) DNS Types: (cloudflare, n.d) o A DNS Resolver: Acts as a middleman between a client and a DNS nameserver. After receiving a DNS query from a web client, a recursive resolver will either respond with cached data, or send a request to a root nameserver, followed by requests to a TLD nameserver and then one last request to an authoritative nameserver. o A DNS Root Server: If the recursive server does not have the response cached, it sends the query to this server first. The root name server is a list of all the servers that will contain the information requested. The Internet Corporation for Assigned Names and Numbers (ICANN), specifically the Internet Assigned Numbers Authority, is in charge of these servers. o A TLD Name Server : A TLD nameserver manages all domain names that share a similar domain extension, such as.com,.net, or whatever comes after the last dot in a URL. A.com TLD nameserver, for example, includes information for every website that ends in '.com'. After getting a response from a root nameserver, the recursive resolver would submit a query to a.com TLD nameserver, which would answer by pointing to the authoritative nameserver for that domain. The Internet Assigned Numbers Authority (IANA), a division of ICANN, manages TLD nameservers. o A DNS Authoritative Server: The authoritative name server is the final checkpoint for the DNS query. These servers know everything about a given domain and deal with the subdomain part of the domain name. These servers contain DNS resource records with specific information about a domain, such as the A record. They return the necessary record to the recursive server to send back to the client and cache it closer to the client for future lookups.
Figure 4 Domain Name System
1. 2 Technologies in web development
- Communication protocols : are formal descriptions of digital message formats and rules. They are required to exchange messages in or between computing systems. Communication protocols are important in telecommunications systems and other systems because they create consistency and universality for the sending and receiving of messages. (Techopedia , 2020) o Some typical protocols: (Techopedia , 2020) ▪ TCP ( Transmission Control Protocol ): creates a link between computers in order to send data - It divides data into packets and guarantees that data is sent successfully. ▪ IP ( Internet Protocol ): this protocol guarantee that data packets are routed as they are transferred over the network Internet, ensuring that data arrives at the correct location to be received.
▪ HTTP ( HyperText Transfer Protocol ): enables information to be exchanged (mostly in the form of hypertext) across the Internet. ▪ FTP ( File Transfer Protocol ): permits file to be transferred over the Internet. Figure 5 Communication Protocol
- Server Hardware: It is often a huge, powerful computer that is used to store files, databases, or web pages and is linked to other computers through a network or the Internet. o Some types of Server Hardware: (Taylor, 2020) ▪ Rack Server: A rack server is a server mounted inside a rack. Rack servers are typically general- purpose servers that support a broad range of applications and computing infrastructure. The racks stack servers vertically to save data center floor space. The more equipment that admins can stack vertically, the more equipment they can house.
o Purpose: It is an interface for distributed computing system such as cloud.( Distributed computing (or distributed processing) is the technique of linking together multiple computer servers over a network into a cluster, to share data and to coordinate processing power ). (GeeksforGeeks, 2021)
- Web Server Software: A web server is a server that installs web application servers. A web server may take requests from web browsers and respond to clients using various HTTP protocols. There are several web servers available, including Apache, Nginx, IIS, and others. (TopDev, n.d) o How it works: ▪ 1. Web Server will convert the domain name of the website to IP addresses ▪ 2. Webserver resends client Requested page ▪ 3. The browser displays the web page o Its purpose: ▪ The web server's primary goal is to store, process, and distribute web pages to users. The relationship between technologies above with regards to designing, publishing and accessing a website: Firstly, “Communication Protocols” permit the communication between devices from places, the existence of it enables computers to transmit data, exchange messages, files. Beside that, “Server Hardware” also plays a quite a big role in the web server as it saves, handles and shares data to other computers. Then comes the most important part of a computer, is the “Operating System”, it handles the memory and operations of the computer, as well as all of its software and hardware, without it, you wouldn’t be able to use your computer properly create your website. Finally is the “Web Server”, if it isn’t available, other computers can not enter your website as well as store information and process operations on your website. In Conclusion, all the discussed technology above strongly depend on one another that only one of them works mistakenly is not available, designing, publishing and accessing a website is impossible.
2.Website technologies, tools and software
2.1 The capabilities and relationships between front-end and back-end website
technologies
- Front End and Back End: The two most commonly used terms in web development are frontend and backend. These terms are important for web development, however they are not equal. To improve the operation of a website, each side must interact and operate as a single unit. (GeeksforGeeks, 2021) Figure 7 Front-End, Back-End Illustration
interactions. The presentation layer provides necessary data to the client’s side. It receives input data, processes users’ requests, sends them to data services and puts results to the browser. (Kvartalnyi, 2020)
- Application Layer: The Application provides several ways for manipulating the data (information) which actually enables any type of user to access network with ease. This layer also makes a request to its beneath layer, which is presentation layer for receiving various types of information from it. The Application Layer interface directly interacts with application and provides common web application services. This layer is basically highest level of open system, which provides services directly for application process. (GeeksforGeeks, 2022) So, how do they relate to Front-End and Back-End in software engineering?
- How they relate: Similar to Presentation Layer, which is the layer that displays the user interface and facilitiates user interaction, with the main purpose is to display information to and collect information from the user, the front-end is also the component with which the user interacts, it includes everything that the user sees and interact. Furthermore, the Application Layer provides services to the user, return results to the user, send and receive information as well as handling network transparency, resource allocation which are the very much alike jobs of the back-end of a website.
2.3 Review Front End technologies
- HTML (Brewster, n.d) o Along with JavaScript and CSS, HyperText Markup Language (HTML) is a core web technology. o Its primary function is to organise content by preparing documents for display on a web page. o HTML5, which was published in 2014, enabled HTML to natively integrate multimedia components such as video and audio.
Figure 8 HTML Illustration
- CSS (Brewster, n.d) o CSS (Cascading Style Sheets) refers to the styling and presentation of a document, it is in charge of layouts, colors, and fonts. CSS, for example, is used to govern the visual details of a web page in any HTML text
Figure 10 JavaScript Illustration
2.4 Review Back End technologies
- Python: (Clark, n.d) o Python is a popular all-purpose programming language with its primary strength of concise and legible code, assists backend programmers in writing logical and explicit programs. o According to Stack Overflow's 2020 Developer Survey, it is the most desired back-end technology for developers to learn. Yes, that's the fourth year in a row that developers prioritize learning Python. o It is also ranked third among the most popular programming technologies.
Figure 11 Python Illustration
- JavaScript: o Next one is JavaScript, which was initially designed as a front-end development language that I mentioned before but with the introduction of Node.js in 2009, JavaScript became full stack. JavaScript is extensively used by the web developers to create various web applications and to add interactive features to them. Most of the internet browsers support JavaScript, which allows dynamic content to get displayed beautifully on web pages.