Course intended for:

The course is intended for programmers having the basic knowledge in HTML and JavaScript, who want to develop their skills in the field of development of interactive Web applications.

Course objective:

The training objective is to get the participants familiar with the theoretical and practical issues of HTML 5, JavaScript and the AngularJS network, allowing for effective development of Web applications.

The training participants will learn how to:

  1. Create pages and forms in HTML 5, also in the manner ensuring portability,

  2. Use the CSS 3 style to format pages and create graphic effects,

  3. Use the advanced HTML 5 functionalities, such as file operations, drag & drop, server communication or embedding of multimedia,

  4. Create any graphic effects thanks to the new HTML 5 components,

  5. Use JavaScript language to solve frequently encountered problems,

  6. Implement the Model-View-Controller architecture in the Web application thanks to AngularJS.

This knowledge will allow the participants to create advanced Web application interfaces, using the popular standards.


The participants are required to be familiar with HTML, XML, HTML DOM standards and with basics of Web application development. Basic ability to program in JavaScript or a different script language will make it easier to grasp the training material.

Course parameters:

5*8 hours (5*7 net hours) of lectures and workshops (with a visible emphasis on workshops).

Group size: no more than 10 participants.

Course curriculum

  1. HTML 5
    1. Basics of HTML 5, CSS and JavaScript
      1. Page development and application of basic styles
      2. The strengths of HTML 5. Comparison with HTML 4
      3. Browser support for HTML 5
      4. A review of the most important new structural tags in HTML 5
      5. Introduction to JavaScript and a review of syntax
      6. Introducing JavaScript in the structure of HTML DOM
      7. Management of input events
      8. Creation of form and validation of input data using HTML 5 or JavaScript attributes
      9. Exercises with data validation and forms
    2. JavaScript programming
      1. JavaScript code structure
      2. Development and expansion of objects
      3. Selected best practices
      4. Exercises: inheritance from objects and code refactoring
    3. Programming interfaces in HTML 5
      1. Access to the file system, file operations
      2. Drag & Drop
      3. Multimedia embedding
      4. Basics of Web Audio API
      5. Relocation API
      6. Debugging and profiling of Web applications
      7. Exercises in API HTML 5
    4. Offline applications in HTML5
      1. Local data management
      2. Local application buffering
      3. Exercises: application and offline data
    5. Customization of the application
      1. Development of a portable interface
      2. Device detection and selection of the appropriate representation. CSS 3 Media Queries
      3. Exercise: preparation of a page to be printed and displayed on a mobile device
    6. Advanced graphic operations
      1. Interactive vector graphics using Scalable Vector Graphics
      2. Drawing: Canvas
      3. Exercises
    7. Use of CSS 3 in HTML 5 pages
      1. Using text styles
      2. Application of styles to block components
      3. CSS3 selectors
      4. Enhancement of graphic effects using CSS3
      5. Exercise: header styling
    8. Animations
      1. Fade-in effects in CSS3
      2. Component transformation
      3. Use of CSS Key-Frame animations
    9. Network communication between the application and the server
      1. Sending and receiving data using XMLHTTPRequest
      2. Exercises: Marshalling and data exchange in a Web application
      3. Introduction to Web Sockets
      4. Sending and receiving data using Web Sockets
      5. xercises: Web Sockets
    10. Web Messaging API
      1. Message exchange between documents
      2. Domain authentication
      3. Channels and ports
      4. Exercises
    11. Web Worker Process
      1. Asynchronous operations and obtaining fast response of the application
      2. Web Worker types
      3. Browser support
      4. Displaying of messages during processing of time-consuming operations
    12. Extra (optional)
      1. Native Web applications in Google Chrome: structure, development and portability (requires familiarity with C/C++ languages)
  2. CSS 3: selected issues and exercises
    1. Use of fonts in Web applications using CSS3
    2. Text effects
    3. Document layout with many columns
    4. Edge effect
    5. Color, transparency and gradient
    6. 2D and 3D transformations
    7. Fade-in effects and animations
    8. Box Layout – a flexible layout
    9. Document background
  3. JavaScript
    1. Selected language issues
      1. Tables and other data structures
      2. Functions as objects
      3. Transmission of a variable list of arguments to the function
      4. Function prototypes
      5. In-built prototypes
      6. Function closure
      7. Regular expressions
    2. Selected problems and applications of JavaScript with Exercises
      1. JavaScript code launching from external locations
      2. Mouse position interception
      3. "Forward" and "Back" buttons
      4. Development of alerts in JavaScript
      5. Browser recognition. Document type detection
      6. Forwarding
      7. Opening of new window
      8. Date and time
      9. Performance with a delay
      10. Image loading before displaying
      11. Change of the button image after moving mouse over the button
      12. Random number generator
      13. Operations on literals
      14. Formatting numbers to currencies
      15. Memory leaks in JavaScript
  4. Angular JS: MVVW in JavaScript
    1. What is MVVW and MVW pattern
      • Development of applications based on Angular JS
      • Angular Seed / Twitter Bootstrap
    2. Models in Angular JS
      • Explanation of functioning of models in Angular JS
      • Linking of models in two and in one direction
      • Isolated $scope and its application
    3. Views and templates
      • Discussing of the principle of functioning of views in Angular JS
      • Repeaters
      • CSS class switches, logic expressions
      • Attaching of HTML codes of various templates
      • Form validators:
        1. Use of in-built validators
        2. Attaching of non-standard validators
        3. Form and component error styles
      • Event management
      • Attaching of external libraries of Angular UI
    4. Directives
      • What is a directive and what it is used for
      • Attaching of external directives
      • Use in practice –directives with isolated controller
    5. Services
      • What are services and what they are used for
      • Injection of services to many controllers, use of $inject
      • Discussion of Angular $http methods as a service
      • Use of service module in a different module
      • REST interface as the Angular Web Service
    6. Routers
      • Template loading after URL change
      • Use of many views for one and many controllers
    7. Angular UI
      • Use of external UI libraries
      • Development of lists using ready libraries (ng-grid)
    8. Unit tests in Angular JS
    9. Exercises: development of RIA type applications with Angular JS

Any questions?

* Required.

Phone +48 22 2035600
Fax +48 22 2035601