Course detail

Internet Applications

FIT-WAPAcad. year: 2020/2021

Internet standards and protocols. Markup languages such as HTML and XML. Technology used for HTML pages building including dynamic pages and JavaScript. Security and vulnerabilities of web applications.

Language of instruction

Czech

Number of ECTS credits

5

Mode of study

Not applicable.

Learning outcomes of the course unit

Basic knowledge of all kinds of internet applications. Advanced knowledge of their design and implementation. Advanced knowledge of the JavaScript language and its application in the frontend and backend development.

Prerequisites

computer networks, Internet and network protocols, HTML basics

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Not applicable.

Assesment methods and criteria linked to learning outcomes

Project on JavaScript objects and their practical deployment. Development of a web application.
Exam prerequisites:
At least half of points obtainable during the semester (projects), i.e. 20 points.

Course curriculum

Not applicable.

Work placements

Not applicable.

Aims

There are several goals: (1) To obtain the knowledge necessary for development of internet applications. (2) Improve understanding of script (mainly JavaScript) and markup languages and their suitability for internet pages development and data exchange.

Specification of controlled education, way of implementation and compensation for absences

Not applicable.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Not applicable.

Recommended reading

Alcorn, W., Frichot, C., Orru, M.: The Browser Hacker's Handbook. John Wiley & Sons, 2014. ISBN 978-1118662090.
Ambler, T., Cloud, N.: JavaScript Frameworks for Modern Web Dev. Berkeley, CA: Apress, 2015.
Biehl, M.: RESTful API Design (API-University Series) (Volume 3). CreateSpace Independent Publishing Platform, 2016. ISBN 978-1514735169.
Casciaro, M., Luciano M.: Node. js Design Patterns. Packt Publishing Ltd, 2016. ISBN 978-1785885587.
Flanagan, D.: JavaScript: The Definitive Guide: Activate Your Web Pages (Definitive Guides), O'Reilly Media; 6th edition, 2011. ISBN 978-0596805524.
Grigorik, I: High-performance browser networking. Beijing: O'Reilly, 2013. ISBN 978-1-4493-4476-4.
Kereki, F.: Mastering JavaScript Functional Programming: In-depth guide for writing robust and maintainable JavaScript code in ES8 and beyond, Packt Publishing, 2017. ISBN 978-1787287440.
Kurose, J.F., Ross, K.W.: Computer Networking - A top-Down Approach, Pearson Education Limited, 7th edition, 2017. ISBN 978-1-292-15359-9.
Lombardi, A.: WebSocket: Lightweight Client-Server Communications, O'Reilly Media, Inc, 2015. ISBN 978-1449369279.
Meyer, E.A., Weil, E.: CSS: The Definitive Guide: Visual Presentation for the Web, O'Reilly Media; 4 edition, 2017. ISBN 978-1449393199.
Myers, G.J., aj.: The art of software testing, John Wiley and Sons, New Jersey, U.S.A., 3th edition, 2012. ISBN 978-1-118-03196-4.
Pasquali, S.: Mastering Node. js. Packt Publishing Ltd, 2nd edition, 2017. ISBN 978-1785888960.
Pilgrim, M.: HTML5: Up and Running: Dive into the Future of Web Development, O'Reilly Media, 2010. ISBN 978-0596806026.
Rauschmayer, A.: Speaking JavaScript: An In-Depth Guide for Programmers, OReilly Media, http://speakingjs.com/es5/index.html.
Richardson, L., Amundsen, M.,Ruby, S.: RESTful Web APIs: Services for a Changing World, O'Reilly Media, Inc., 2013. ISBN 978-1514735169.
Rozentals, N.: Mastering TypeScript. Packt Publishing Ltd, 2017. ISBN 978-1786468710.
Simpson, K.: Série You Don't Know JS, O'Reilly Media, 2014-2016. https://github.com/getify/You-Dont-Know-JS.
Stefanov, S.: JavaScript patterns, O'Reilly Media, 2010. ISBN 978-0-596-80675-0.
Tal, L.: Essential Node. js Security. 2017. ISBN 978-1365698552.
Tidwell, D.: XSLT, O'Reilly Media; Second edition, 2008. ISBN 978-0596527211.
Vlist, E.: RELAX NG A Simpler Schema Language for XML, O'Reilly Media, 2011. ISBN 978-0596004217.
Walmsley, P.: Definitive XML Schema, 2nd Edition, Prentice Hall, 2012. ISBN 978-0132886727.

Classification of course in study plans

  • Programme IT-MSC-2 Master's

    branch MGM , 0 year of study, summer semester, compulsory-optional
    branch MBI , 0 year of study, summer semester, elective
    branch MBS , 0 year of study, summer semester, compulsory-optional
    branch MIN , 0 year of study, summer semester, compulsory-optional
    branch MIS , 0 year of study, summer semester, compulsory-optional
    branch MMI , 0 year of study, summer semester, compulsory-optional
    branch MMM , 0 year of study, summer semester, elective
    branch MPV , 0 year of study, summer semester, compulsory-optional
    branch MSK , 0 year of study, summer semester, elective

  • Programme MITAI Master's

    specialization NISY , 0 year of study, summer semester, elective
    specialization NADE , 0 year of study, summer semester, compulsory
    specialization NBIO , 0 year of study, summer semester, elective
    specialization NCPS , 0 year of study, summer semester, elective
    specialization NEMB , 0 year of study, summer semester, elective
    specialization NHPC , 0 year of study, summer semester, elective
    specialization NGRI , 0 year of study, summer semester, elective
    specialization NIDE , 0 year of study, summer semester, elective
    specialization NISD , 0 year of study, summer semester, elective
    specialization NMAL , 0 year of study, summer semester, elective
    specialization NMAT , 0 year of study, summer semester, elective
    specialization NNET , 0 year of study, summer semester, compulsory
    specialization NSEC , 0 year of study, summer semester, elective
    specialization NSEN , 0 year of study, summer semester, elective
    specialization NSPE , 0 year of study, summer semester, elective
    specialization NVER , 0 year of study, summer semester, elective
    specialization NVIZ , 0 year of study, summer semester, elective

Type of course unit

 

Lecture

39 hod., optionally

Teacher / Lecturer

Syllabus

  1. Introduction into internet applications.
  2. JavaScript introduction.
  3. Advanced development in JavaScript, TypeScript.
  4. Markup languages and data serialization.
  5. Internet and web (TCP/IP, DNS, URI, MIME, HTTP).
  6. Frontend development (HTML, DOM, CSS, client-side JavaScript, frameworks).
  7. Web APIs and web services (XMLRPC, WS, REST).
  8. Backend development (server-side rendering, Node.js, Express).
  9. Single page web applications (Ajax, client-side rendering, frameworks).
  10. XML processing (XPath, XSLT).
  11. Web application security.

Project

13 hod., compulsory

Teacher / Lecturer

Syllabus

  • Project 1 aims at JavaScript objects and their practical deployment.
  • Project 2 aims at solving secific web-related challenge. Students can solve their own problem.