PB138 Modern Markup Languages and Their Applications

Faculty of Informatics
Spring 2020
Extent and Intensity
2/1. 3 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: z (credit).
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)
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
Mon 17. 2. to Fri 15. 5. Tue 10:00–11:50 D2
  • Timetable of Seminar Groups:
PB138/01: Mon 17. 2. to Fri 15. 5. Wed 12:00–12:50 A215, L. Bártek
PB138/02: Mon 17. 2. to Fri 15. 5. Wed 13:00–13:50 A215, L. Bártek
PB138/03: Mon 17. 2. to Fri 15. 5. Tue 8:00–8:50 B130, L. Grolig
PB138/04: Mon 17. 2. to Fri 15. 5. Tue 9:00–9:50 B130, L. Bártek
PB138/05: Mon 17. 2. to Fri 15. 5. Tue 14:00–14:50 A215, L. Grolig
PB138/06: Mon 17. 2. to Fri 15. 5. Tue 15:00–15:50 A215, L. Grolig
PB138/07: Mon 17. 2. to Fri 15. 5. Mon 12:00–12:50 B130, B. Rossi
Prerequisites
Basic knowledge of formal languages, as well as some experience in OO programming (preferably in Java) 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: 3/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. At the same time, it can deploy its applications in the cloud using Kubernetes containers.
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
- Describe the principle of Single Page applications
- describe the meaning of containers, their use in developing and hosting applications in the cloud
Syllabus
  • XML Structure and terminology of tagged documents. Standard family XML standards; Standards of XML data analysis and processing. Document object model, event-driven processing; Navigation and querying in XML data. XPath
  • Yaml Syntax Yaml; Yaml application for CII configuration; Work with Docker containers and Kubernetes
  • Basics of modern Javascript applications; HTML document; Node ecosystem, NPM dependency management
  • Introduction to React, JSX / TSX language; Definition of components and their composition; Life cycle of components; Application status; Work with lists; Forms
  • JSON Syntax; Data types in JSON; Field and object representation; REST interface principles
  • GraphQL Introduction to GraphQL; Schemes; Queries; Mutation; Type system; 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 2021, Spring 2022, Spring 2023, Spring 2024, Spring 2025.
  • Enrolment Statistics (Spring 2020, recent)
  • Permalink: https://is.muni.cz/course/fi/spring2020/PB138