Front-end Web Development


Learning Intentions

  • Students will understand the purpose and benefits of using front-end frameworks in web development.
  • Students will explore different popular frameworks, such as Angular, React, and Vue.js, and understand their unique features and applications.
  • Students will learn how frameworks streamline development by offering reusable components, improving functionality, and ensuring scalability​ .

Syllabus Outcome

SE-12-02: Applies structural elements to develop programming code​​

Lesson Activity

Learn HTML | Codecademy

A front-end developer is a software professional who focuses on designing and building the visual and interactive elements of websites and web applications. Their role is to ensure that the user interface (UI) is both visually appealing and easy to navigate, creating a positive user experience (UX). Front-end developers work with a range of technologies, including HTML, which structures web content, and CSS, which controls the visual styling such as colours and layouts. They also use JavaScript to add dynamic features and interactivity to web pages. Additionally, front-end developers often rely on frameworks like React, Angular, or Vue.js to simplify their work and build more advanced user interfaces. They frequently collaborate with back-end developers to ensure smooth integration between the front-end design and the back-end systems that handle server-side logic and data.

Source: What Is a Front-End Developer? · Front-End Developer Handbook 2018

Front-end Developer Career

To help you gain a clear understanding of the skills and knowledge required to pursue a career as a front-end developer, below is an exported image from Frontend Developer Roadmap. It outlines a comprehensive roadmap, covering essential topics like HTML, CSS, JavaScript, and various frameworks such as React, Angular, and Vue.js. In addition to these core technologies, the document highlights other critical areas of front-end development, including version control systems, testing tools, and web security practices. By following this guide, you’ll get a well-rounded view of what is expected in the role of a front-end developer, providing insight into the skills you’ll need to master for a successful career in this field​.

Before we get to today’s focus, which is HTML, let’s get an understanding of what are front-end frameworks (Python modules) and what is available out there.

In modern web development, front-end frameworks are essential tools that streamline and enhance the process of building user interfaces for websites and applications. These frameworks are collections of pre-written code in HTML, CSS, and JavaScript that provide developers with a scalable and maintainable structure to develop interactive web applications. Using a framework helps ensure that the code is organised, consistent, and efficient, enabling developers to focus on building complex features without having to start from scratch each time​.

Why Are Frameworks Useful?

Front-end frameworks simplify repetitive tasks such as creating user interface components, managing and updating code, and optimising website performance. They also make it easier to implement responsive design, ensuring that websites look good and function well on different devices, from desktops to mobile phones. For instance, frameworks offer pre-built templates and components that handle the layout, style, and interactivity, which developers can reuse across different projects​.

Some additional key benefits include:

  • Faster Development: Frameworks reduce the amount of manual coding needed, helping developers complete projects more quickly.
  • Improved Functionality: Built-in features, such as form validation and routing, simplify complex tasks.
  • Scalability: Many frameworks are designed to handle both small websites and large, complex web applications.

While students are not required to code with any specific framework, it is helpful to understand some of the leading frameworks used by professional developers. Each has unique features and benefits that make them suitable for different types of projects.

Angular

Angular is a widely adopted front-end framework developed and maintained by Google. It is based on TypeScript and is known for its two-way data binding, which keeps the user interface and the underlying data in sync automatically. This makes Angular particularly useful for creating dynamic applications that update as the data changes. Another feature of Angular is server-side rendering, which ensures faster page load times and improves SEO performance. With detailed documentation and a large developer community, Angular is a solid choice for building enterprise-level applications​.

React

Released by Facebook in 2011, React is a popular front-end library (often referred to as a framework) that focuses on building user interfaces, particularly for single-page applications (SPAs). React’s key feature is its use of a virtual DOM (Document Object Model), which makes rendering updates to the user interface much faster. React’s component-based architecture allows developers to create reusable UI components, making development more efficient. React is also lightweight and flexible, allowing developers to choose the tools and libraries they need for tasks like state management and routing​.

Vue.js

Vue.js is a relatively new framework, gaining popularity for its simplicity and ease of use. Like React and Angular, Vue.js allows developers to build dynamic web applications, but with a gentle learning curve that makes it beginner-friendly. Vue.js also features two-way data binding, helping keep the user interface in sync with data changes. It’s often used in developing single-page applications (SPAs) and is known for its high performance and server-side rendering capabilities​.

Other Frameworks

  • jQuery: While not a framework in the modern sense, jQuery was once the go-to tool for adding dynamic elements to websites. It provides a lightweight library of JavaScript functions that simplify tasks like manipulating HTML elements and creating animations. Although its popularity has waned with the rise of more advanced frameworks, it’s still used for smaller projects due to its ease of use and cross-browser compatibility​.
  • Backbone.js: A lightweight JavaScript library that helps developers organise their code using the MVC (Model-View-Controller) pattern. It is minimalistic, relying on a library of plugins to add features, which makes it highly customisable. Backbone.js is a good choice for developers who need a lightweight framework to create maintainable code​.

Source: Front End Frameworks: What are the Best Options and Benefits?

Client-side programming, often referred to as front-end development, focuses on everything the user directly interacts with in their browser. This includes the layout, design, and interactivity of a website. Technologies like HTML, CSS, and JavaScript are key components of front-end development.

HTML (HyperText Markup Language)

Source: Txon

HTML, or HyperText Markup Language, was first introduced by Tim Berners-Lee in 1991 as the foundational language for the World Wide Web. It was designed to allow researchers to share documents that were readable by anyone with a computer, regardless of the type of machine they were using. HTML provided a simple way to structure content with elements like headings, paragraphs, and links, making it possible to create the first web pages that could be accessed via a web browser.

Over the years, HTML has evolved significantly. Early versions were quite basic, but as the web grew in complexity, so too did the capabilities of HTML. The introduction of HTML5 in 2014 marked a significant leap forward, bringing new elements and APIs that supported multimedia, more interactive content, and better integration with modern web technologies. HTML5 also played a crucial role in the development of responsive web design, enabling websites to adapt to different screen sizes and devices, which became increasingly important with the rise of smartphones and tablets.

The importance of HTML cannot be overstated. It remains the core language of the web, the bedrock upon which all web pages are built. While technologies like CSS and JavaScript have taken on roles in styling and functionality, HTML continues to be essential for structuring content in a way that is accessible and understandable by both humans and machines. Without HTML, the web as we know it would not exist, making it a fundamental skill for anyone interested in web development or digital content creation.

HTML, or Hypertext Markup Language, forms the foundation of all websites and web applications. In front-end development, HTML provides the basic structure or framework that web browsers use to display content. Think of HTML as the skeleton of a website; it defines the elements that make up a page, such as headings, paragraphs, links, and images. However, HTML itself is not interactive or visually appealing—it simply establishes the layout that can later be enhanced with other technologies​.

Source: Intro to Front End Technologies: HTML, CSS, & JavaScript » Recruiting Innovation

While today’s focus is on learning HTML, it’s essential to briefly touch on two other key components of front-end development: CSS and JavaScript. CSS (Cascading Style Sheets) is responsible for the visual styling of a webpage, controlling elements like colours, fonts, and layouts. It makes the content created with HTML look attractive and professional. JavaScript, on the other hand, adds interactivity and functionality, allowing users to engage with dynamic features like forms, menus, or animations. These technologies will be explored in detail in later lessons, but for now, our focus is to understand the crucial role of HTML in shaping web content​.