Subject: Web Development - Back-End
Scientific Area:
Computer Science
Workload:
80 Hours
Number of ECTS:
6,5 ECTS
Language:
Portuguese
Overall objectives:
1 - Provide the student with a global view of existing technologies for Web development for servers (Back-End).
2 - Acquire skills in the development of a WEB application.
3 - Provide students with theoretical, methodological and practical knowledge on the development of programs for Web servers in the context of scripting languages.
Syllabus:
1 - Introduction to programming with scripting languages.
1.1 - Types of data
1.2 - Expressions
1.3 - Decision and Repetition Structures
1.4 - Defining roles
1.5 - Lists definition
1.6 - Object Oriented
2 - Data Access
2.1 - Database connection and management
2.2 - OBDC and ORM (mysql & Sequelize)
2.3 - Reading and writing files
3 - REST and RESTful API
4 - Implementation of CRUD in Web forms and treatment of results on the server
5 - MVC - layer-based architecture (model-view-controller)
6 - Access Control, Sessions and Tokens (Passport & JWT)
7 - Asynchronous data processing
7.1 - Streams - Reading, Writing and Piping
7.2 - Events - Listening, Reading and Broadcast4Implementation of a Web server
8 - Sockets - Building applications with bidirectional communication in real time
9 - Docker - Creation of container execution
10 - Development (deployment) of a server in a production environment (Heroku)
Literature/Sources:
Damas, L. , 1999 , Linguagem C , Editora FCA
Kernighan, B.W., and Ritchie, D.M. , 1988 , The C Programming Language , Prentice-Hall
Stroustroup, B. , 2000 , The C++ Programming Language, Special Edition , Addison-Wesley
Wirth, N. , 1986 , Algorithms and Data Structures , Prentice-Hall
Sedgewick, R. , 1998 , Algorithms in C , Addison-Wesley
Sedgewick, R. , 2002 , Algorithms in C , Addison-Wesley
Assesssment methods and criteria:
Classification Type: Quantitativa (0-20)
Evaluation Methodology:
In accordance with the expected for the Professional Higher Technical Courses.