NSWI153: Advanced Programming of Web Applications
The web application technologies are in constant development. Hence, some information on the slides may become outdated despite our best efforts. If you have any questions or suggestions, please contact us.
Lectures
Please note that the Power Point slides have notes below which are not visible during regular presentation. These notes typically contain useful remarks and links to related work so do not overlook them.
| Date | Content |
|---|---|
| Introduction , PHP language , Materials | |
| Sharing is caring | |
| JavaScript eco-system | |
| Cancelled, Simplified JavaScript eco-system , Recording | |
| JavaScript and User Interface | |
| JavaScript and User Interface | |
| Server | |
| Deployment | |
| Invited lecture : Kubernetes | |
| API | |
| Rendering from Server | |
| Server Architecture | |
| Write once, run anywhere | |
| Browser APIs |
Recordings
There is a YouTube playlist with lecture recordings. Unfortunately duo to technical difficulties, and human error, some recordings are missing. Keep in mind these are not replacements of the lectures.
Seminars
There are seminars currently scheduled in SIS + one virtual seminar (not scheduled). Make sure you are enrolled on one of them. The virtual seminar is designated for students who repeat the course and actually did some nontrivial work in the labs last year and students with special needs.
Students are expected to attend all seminars. In addition, students must finish all given assignments within the given time, usually one week. Additional absence(s), and deadline extensions, can be allowed on individual terms. Notify your teacher as soon as possible to discuss them.
You will be given a GitLab repository where all finished assignments must be uploaded within the given time. In addition, you will be given an account on our server Webik, where you can deploy and debug your assignments.
Below you can find materials used in seminars. For seminars marked as "remote" there are no physical seminar happening. You are supposed to implement assignments in time our your choosing before the given deadline.
| Week | Tuesday | Friday |
|---|---|---|
| 1 |
Cancelled |
Cancelled |
| 2 |
PHP: Composer, Dependency Injection, PHPUnit, GitLab |
PHP: Composer, Dependency Injection, PHPUnit, GitLab |
| 3 |
PHP: Monolog, Slim Framework |
PHP: Monolog, Slim Framework |
| 4 |
Remote : PHP: ORM |
Remote : PHP: ORM |
| 5 |
JavaScript project |
JavaScript project |
| 6 |
Remote : JavaScript user interface |
Remote : JavaScript user interface |
| 7 |
Cancelled |
Velký pátek |
| 8 |
Cancelled |
Cancelled |
| 9 |
Docker |
Docker |
| 10 |
Docker compose |
Docker compose |
| 11 |
Remote : Testing |
Remote : Testing |
| 12 |
Cancelled |
Den vítězství |
| 13 |
TBA |
TBA |
| 14 |
TBA |
TBA |
Grading
You receive credit for active participation in seminars, finishing all given assignments, and consulting/presenting/finishing the semestral work.
The final exam is a written test, with optional oral part. The final exam solely determines your final grade.
Semestral project
Your objective is to implement the semestral project according to the specification. All development must take place in your team's gitlab repository inside the NSWI153 group. Please do commit on a regular basis.
It is expected that you split the responsibilities in the team. At the same time, every team member must be able to explain arbitrary part of the project.
Contact
- Petr Škoda
- Unofficial/Immediate Feedback Form