SLO | EN

Objectives and competences

The objective of this course is for students to demonstrate understanding of theoretical basis of web technologies, to demonstrate knowledge about challenges and best practices in modern web solutions development, to analyze, evaluate and use the most up-to-date web technologies for the developing innovative web solutions.

Content (Syllabus outline)

• History of the internet and the web, high level architecture, reach, economical and social implications. • Standard groups and standardization bodies governing the internet and the web. • Selected internet and web protocols for transfer of files, messages, web content and other data. • Web servers; function, market, architecture, technologies, programming languages and frameworks, hosting and resource sharing. • Web technologies for efficient client-server integration and communication. • Contemporary markup languages and related technologies. • Modern Web technologies and frameworks for development of mobile, 'offline' and 'progressive' web applications. • Platforms and corresponding technologies for dynamic web applications development. • Web services in web solutions: function and usage on the server side, client side, security and scalability. • Development of ECMAScript standard and scripting programming languages for implementing web solutions. • JavaScript and TypeScript environments and platforms for modern web solutions (Node.js, Deno, Bun, and others). • JavaScript and TypeScript programming frameworks for implementing full-stack web solutions. • Quality assurance in web solutions. • Progressive Web Apps (PWA): PWA features and capabilities, PWA components, manifest, service worker, and caching strategies for optimal offline performance. • Standards and technologies for the development of modern interactive user interfaces in online solutions: gaze tracking, recognition of facial expressions and gestures, voice interfaces, WebXR, development of assistive web tools for enabling accessibility. • Digitally accessible online solutions: the importance of digital accessibility, different types of disabilities and user needs, standards and legislation in the field of digital accessibility, WCAG guidelines. • Development of accessible web solutions: accessible web page structure, accessible web navigation and orientation, CSS for accessible web pages, accessible images and multimedia content, accessible HTML tables, and accessible web forms.

Learning and teaching methods

• lectures, • case studies and examples, • lab work, • project.

Intended learning outcomes - knowledge and understanding

On completion of this course the student will be able to • explain benefits of internet and the world wide web, • explain challenges and best practices for developing modern web solutions • analyze, evaluate and select most appropriate approaches, technologies and tools for development of web information systems, • select and use appropriate web architecture, • to implement selected segments of the web solution according to the technical skills and problem domain, to analyze and evaluate different solutions and/or web technologies.

Intended learning outcomes - transferable/key skills and other attributes

Communication skills: reporting results. Use of information technology: use of software development tools for developing web information systems. Organisation skills: preparing for e-business projects. Problem solving: systematic approach to problem solving with appropriate methods. Working in groups: collaboration in a project team.

Readings

• B. Šumak: Učno gradivo in primeri dosegljivi na E-študij UM: https://estudij.um.si/ (potrebna je prijava v portal) / B. Šumak: Up to date learning materials and examples available on E-študij UM: https://estudij.um.si (login is required). • J.D. Gauchat: HTML5 for Masterminds: How to take advantage of HTML5 to create responsive websites and revolutionary applications, CreateSpace Independent Publishing Platform, 3rd Edition, 2017. • T. Felke-Morris: Web Development and Design Foundations with HTML5 (What’s New in Computer Science), Pearson, 9th Edition, 2018. • V. Subramaniam: Rediscovering JavaScript: Master ES6, ES7, and ES8, Pragmatic Bookshelf, 2018. • N. Bevacqua: Practical Modern JavaScript: Dive into ES6 and the Future of JavaScript, O'Reilly Media, 2017. • T. Ater: Building Progressive Web Apps: Bringing the Power of Native to the Browser, O'Reilly Media, 2017. • J. Wexler: Get Programming with Node.js, Manning Publications, 2019. • A. Mead: Learning Node.js Development: Learn the fundamentals of Node.js, and deploy and test Node.js applications on the web, Packt Publishing, 2018. • E. Bush: Node.js, MongoDB, React, React Native Full-Stack Fundamentals and Beyond, Blue Sky Productions Inc., 2018. • M. Casciaro: Node.js Design Patterns: Master best practices to build modular and scalable server-side web applications, Packt Publishing, 2nd edition2016. • M. Papazoglou: Web Services: Principles and Technology, Prentice Hall, 2007. • C. Henderson: Building Scalable Web Sites: Building, scaling, and optimizing the next generation of web applications, O'Reilly Media, 2006.

Prerequisits

Basic knowledge of web technologies, programming language JavaScript and web services development is recommended.

  • izr. prof. dr. BOŠTJAN ŠUMAK, univ. dipl. inž. rač. in inf.

  • Written examination: 50
  • Project: 30
  • Laboratory work: 20

  • : 30
  • : 30
  • : 120

  • Slovenian
  • Slovenian

  • INFORMATICS AND DATA TECHNOLOGIES - 1st