1. Programming for the web#

1.1. Data transmission using the web#

  • Explore the applications of web programming

    Including:

    • interactive website/webpages

    • e-commerce

    • progressive web apps (PWAs)

  • Investigate and practise how data is transferred on the internet

    Including:

    • data packets

    • internet protocol (IP) addresses, including IPv4

    • domain name systems (DNS)

  • Investigate and describe the function of web protocols and their ports

    Including:

    • HTTP, HTTPS

    • TCP/IP

    • DNS

    • FTP, SFTP

    • SSL, TLS

    • SMTP, POP 3, IMAP

  • Explain the processes for securing the web

    Including:

    • Secure Sockets Layer (SSL) certificates

    • encryption algorithms

    • encryption keys

    • plain text and cipher text

    • authentication and authorisation

    • hash values

    • digital signatures

  • Investigate the effect of big data on web architecture

    Including:

    • data mining

    • metadata

    • streaming service management

1.2. Designing web applications#

  • Investigate and explain the role of the World Wide Web Consortium (W3C) in the development of applications for the web

    Including:

    • Web Accessibility Initiative (WAI)

    • internationalisation

    • web security

    • privacy

    • machine-readable data

  • Model elements that form a web development system

    Including:

    • client-side (front-end) web programming

    • server-side (back-end) web programming

    • interfacing with databases that are based on Structured Query Language (SQL) or non-SQL

  • Explore and explain the influence of a web browser on web development, including the use of developer (dev) tools

  • Investigate cascading style sheets (CSS) and its impact on the design of a web application

    Including:

    • consistency of appearance

    • flexibility with browsers or display devices

    • CSS maintenance tools

  • Investigate the reasons for version control and apply it when developing web application

  • Explore the types and significance of code libraries for front-end web development

    Including:

    • frameworks that control complex web applications

    • template engines

    • predesigned CSS classes

  • Explain the use and development of open-source software in relation to web development

  • Investigate methods to support and manage the load times of web pages/applications

  • Research, experiment with and evaluate the prevalence and use of web content management systems (CMS)

  • Assess the contribution of back-end web development to the success of a web application

  • Observe and describe the back-end process used to manage a web request

    Including:

    • role of webserver software

    • web framework

    • objects

    • libraries

    • databases

  • Develop a web application using an appropriate scripting language with shell scripts to make files and directories, and searching for text in a text file

  • Apply a web-based database and construct script that executes SQL

    Including:

    • selecting fields

    • incorporating ‘group by’

    • common SQL queries

    • constraints using WHERE keyword

    • table joins

  • Compare Object-Relational Mapping (ORM) to SQL

  • Describe how collaborative work practices between front-end and back-end developers improve the development of a web solution

  • Design, develop and implement a progressive web app (PWA)

    Including:

    • the application of design and user interface (UI) and user experience (UX) principles of font, colour, audio, video and navigation

    • a UI that considers accessibility and inclusivity