In database terminology primary key refers to the column in a table that's intended to be the primary way of identifying rows. Each table must have exactly one, and it needs to be unique. This is usually some kind of a unique identifier associated with objects presented by the table, or if such an identifier doesn't exist simply a running ID number (which is incremented automatically).
Exercises¶
There are 4 mandatory exercises of 3 hours each. During, exercises we present to the students some software tools, frameworks and libraries that are going to be useful for their project work. We also teach some concepts of design, documentation and testing of the Web APIs and clients.
Exercise 0: Introduction to project work. Introduction to GIT¶
This is not a proper exercise. During this session we will explain the requirements of the project work that can be found in Project Work Assignment. In addition, we will give a short introduction to GIT.
- No deadlines
Exercise 1: Introduction to Web Development¶
During this exercise students will learn how to create simple web applications with Flask Python microframework. In addition, the exercise will teach basics principles of database and Object Relational Mapping. As a Tutorial, students will learn how to make proper Unit Tests.
- Link to the exercise
- Recommended deadline for local students following the multiple deadlines option : 10.02.2019
- As a recommendation, this exercise should be completed before starting to work with Deadline 1 and Deadline 2.
Exercise 2: API design¶
During this exercise students will learn how to design and document an hypermedia API. Students will learn how to use APIary to generate professional documentation.
- Link to the exercise
- Recommended deadline for local students following the multiple deadlines option : 24.02.2019
- As a recommendation, this exercise should be completed before starting to work with Deadline 3.
- APPENDIX Hypermedia provides a good collection of hypermedia formats
Exercise 3: API implementation¶
During this exercise students will learn how to implement a RESTful API utilizing Flask Web Framework. Students will learn also how to test the API by reading the testing tutorial
- Link to the exercise
- In this exercise, for sake of simplicity, we place all the code in the same python module. However, this is not the recommended version for structuring a project. Instead, we recommend structure projects as defined in this tutorial
- Recommended deadline for local students following the multiple deadlines option : 17.03.2019
- As a recommendation, this exercise should be completed before starting to work with Deadline 4.
Exercise 4: Hypermedia client¶
During this exercise students will learn how to implement a RESTful client using either Python or embedding the client in a website
- Recommended deadline for local students following the multiple deadlines option : 07.04.2019
- As a recommendation, this exercise should be completed before starting to work with Deadline 5.