PB138 Modern Markup Languages and Their Applications

Faculty of Informatics
Spring 2021
Extent and Intensity
2/2. 3 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: z (credit).
Taught online.
Teacher(s)
prof. RNDr. Tomáš Pitner, Ph.D. (lecturer)
Mgr. Luděk Bártek, Ph.D. (lecturer)
RNDr. Adam Rambousek, Ph.D. (lecturer)
Ing. Lukáš Grolig (lecturer)
Bruno Rossi, PhD (seminar tutor)
Ing. Jakub Oršula (seminar tutor)
Bc. Daniel Plakinger (seminar tutor)
Radmila Čermáková (assistant)
Bc. Milan Kubík (assistant)
Bc. Katarína Pitoňáková (assistant)
Guaranteed by
prof. RNDr. Tomáš Pitner, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Contact Person: prof. RNDr. Tomáš Pitner, Ph.D.
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Tue 12:00–13:50 Virtuální místnost
  • Timetable of Seminar Groups:
PB138/01: Thu 10:00–11:50 Virtuální místnost, L. Bártek
PB138/02: Thu 12:00–13:50 Virtuální místnost, L. Bártek
PB138/03: Thu 18:00–19:50 Virtuální místnost, J. Oršula
PB138/04: Fri 10:00–11:50 Virtuální místnost, J. Oršula
PB138/05: Tue 16:00–17:50 Virtuální místnost, L. Grolig
PB138/06: Thu 16:00–17:50 Virtuální místnost, L. Grolig
PB138/07: Tue 18:00–19:50 Virtuální místnost, L. Grolig
PB138/08: Thu 18:00–19:50 Virtuální místnost, L. Grolig
PB138/09: Tue 16:00–17:50 Virtuální místnost, D. Plakinger
PB138/10: Tue 18:00–19:50 Virtuální místnost, D. Plakinger
Prerequisites
Basic knowledge of formal languages, as well as some experience in OO programming, such as in Java, C++, C# or ECMAScript, and databases is required. Moreover, basic orientation in a markup language (HTML) and Internet services is needed, too.
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
The capacity limit for the course is 200 student(s).
Current registration and enrolment status: enrolled: 9/200, only registered: 0/200, only registered with preference (fields directly associated with the programme): 0/200
fields of study / plans the course is directly associated with
there are 59 fields of study the course is directly associated with, display
Course objectives
The subject acquaints with basic standards and principles of working with technologies of modern markup languages mainly based on XML, JSON and Yaml. Upon successful completion of this course, students will create modern applications written in TypeScript using React and modern markup languages that retrieve data from the backend using REST interfaces or GraphQL query language, or using hybrid persistence, such as XML extensions of RDBMS or NoSQL databases.
Learning outcomes
Students will be able to:
Explain the advantages, disadvantages and purpose of tagged data and documents
Actively use terminology of markup languages
Choose the appropriate markup language for the application
Actively use XML
Describe the characteristics of Internet technologies such as HTML 5, JavaScript, React, JSON, GraphQL and other modern web standards and use them in real applications
Describe principles of Single Page applications
Syllabus
  • Structure and terminology of marked documents.
  • XML: standards of the XML family, analysis and processing of XML data.
  • Document object model, event-driven processing.
  • Navigation and querying in XML data. XPath, XML databases and extensions.
  • YAML: syntax and application
  • HTML documents
  • Basics of modern javascript applications, Node.js ecosystem, dependency management using NPM
  • Introduction to React, JSX/TSX language
  • Definition of components and their composition, life cycle of components, application status, work with lists, forms
  • Validation of web applications using Lighthouse JSON: syntax, data types, arrays, objects
  • Principles of the REST interface
  • GraphQL: schemas, queries, mutations, types, validation
Teaching methods
Teaching takes the form of lectures and independent consulted work on projects with the possibility of consultation at seminars, where are also solved projects. Theoretical preparation takes the form of lectures explaining the concepts and principles of markup languages with demonstrations of suitable procedures and tools for application development. Practical exercises in computer labs aimed at solving tasks (with completion and outside the exercises) and later in the semester to solve homework.
Assessment methods
The subject is based on continuous scoring of four individually solved practical homeworks (together max. 12 points), a team project, where the ongoing work and the final result of the defense are scored (together max. 48 points) and the final written test (max. 40 points). Out of the total 100 points, for the successful completion of the course with an exam, one must obtain at least 70 points. For a completion as "credit", 60 points must be reached.
Language of instruction
Czech
Follow-Up Courses
Further comments (probably available only in Czech)
Study Materials
The course is taught annually.
Listed among pre-requisites of other courses
The course is also listed under the following terms Spring 2003, Spring 2004, Spring 2005, Spring 2006, Spring 2007, Spring 2008, Spring 2009, Spring 2010, Spring 2011, Spring 2012, Spring 2013, Spring 2014, Spring 2015, Spring 2016, Spring 2017, Spring 2018, Spring 2019, Spring 2020, Spring 2022, Spring 2023, Spring 2024.
  • Enrolment Statistics (Spring 2021, recent)
  • Permalink: https://is.muni.cz/course/fi/spring2021/PB138