1. Introductory lecture, motivation for the course
2. Introduction to the Linux operating system – basic features, filesystem structure, working with the console, remote access (SSH, SFTP)
3. The HTTP communication protocol – architecture, headers, methods, REST principles
4. Web applications on the React.js platform – MVC architecture, code obfuscation
5. Libraries for React.js – Bootstrap, Fetch API, Redux
6. ASP.NET 1 – middleware, CORS, authentication, automatic documentation (Swagger)
7. ASP.NET 2 – AutoMapper, WebSocket, application hosting on Linux, Apache 2, reverse proxy
8. Hardware platform Raspberry Pi + Sense HAT – sensors, display, joystick
9. Cryptography – hash functions, asymmetric and symmetric encryption, digital signatures, HTTPS, certificates
10. GIT – source code management and version control systems
11. Design patterns – Singleton, Iterator, Observer, Dependency Injection
12. Platforms for developing applications for embedded systems – single-board computers
13. Modern trends in component technologies
Exercises will be carried out in the following areas:
• Programming on a small embedded device with the Linux operating system
• Access to basic available peripherals
• Communication with a supervisory device
• Development of back-end and front-end applications
2. Introduction to the Linux operating system – basic features, filesystem structure, working with the console, remote access (SSH, SFTP)
3. The HTTP communication protocol – architecture, headers, methods, REST principles
4. Web applications on the React.js platform – MVC architecture, code obfuscation
5. Libraries for React.js – Bootstrap, Fetch API, Redux
6. ASP.NET 1 – middleware, CORS, authentication, automatic documentation (Swagger)
7. ASP.NET 2 – AutoMapper, WebSocket, application hosting on Linux, Apache 2, reverse proxy
8. Hardware platform Raspberry Pi + Sense HAT – sensors, display, joystick
9. Cryptography – hash functions, asymmetric and symmetric encryption, digital signatures, HTTPS, certificates
10. GIT – source code management and version control systems
11. Design patterns – Singleton, Iterator, Observer, Dependency Injection
12. Platforms for developing applications for embedded systems – single-board computers
13. Modern trends in component technologies
Exercises will be carried out in the following areas:
• Programming on a small embedded device with the Linux operating system
• Access to basic available peripherals
• Communication with a supervisory device
• Development of back-end and front-end applications