Giter Site home page Giter Site logo

project_internetengineering's Introduction

Projekt realizowany na przedmiocie Inżynieria Internetu

Na przedmiocie Inżynieria Internetu zrealizowany został projekt dwuosobowy oparty na architekturze REST.

Nazwisko i imię Wydział Kierunek Semestr Grupa Rok akademicki
Urszula Piątek WIMiIP IS 2 3 2020/2021
Julia Matuła WIMiIP IS 2 3 2020/2021

Projekt

Tematem naszego projektu był Sklep z grami komputerowymi . W celu zobrazowania funkcjonalności bazy stworzony został diagram za pomocą programu Visual Paradigm.

Sklep_z_grami_komputerowymi_diagram

Aplikacja została napisana w języku JavaScript w środowisku programistycznym WebStorm. Do stworzenia bazy wykorzystaliśmy SQLite. Testowanie aplikacji wykonywane było za pomocą Postman.

Implementacja

  • poprawnie skonfigurowany routing
  • utworzenie relacyjnej bazy danych
static relationMappings={
     ratingGame: {
        relation: Model.BelongsToOneRelation,
        modelClass: require('./game.model'),
         join:{
                from: 'Rating.gameId',
                to: 'Game.id'
         }
     }
    };
  • stworzenie walidacji danych
function checkGameParams(gameName, price, ageRange, languageVersion, mode) {
    if (gameName === "") throw new EmptyInputException("Game name");
    if (price < 0) throw new IncorrectInputException("Price cannot be a negative number");
    if (ageRange < 0) throw new IncorrectInputException("Age range cannot be a negative number");
    if (languageVersion === "") throw new EmptyInputException("Language version");
    if  (mode !== "singleplayer") {
        if (mode !== "multiplayer") throw new IncorrectInputException("Game mode can only be single- or multi- player");
    }
}
  • możliwość rejestracji z uwierzytelnieniem za pomocą JWT
  • obsługa wyjątków
class GenreNotFoundException extends Error {
     constructor(message) {
         super(message || "Genre not found");
         this.status = 404
     }
 }
module.exports = GenreNotFoundException;

Przykładowe funkcjonalności

  1. Games
  • wyświetlenie wszystkich gier
  • dodanie gry
  • usunięcie gry
  1. Genre
  • wyświetlenie wszystkich gatunków
  • dodanie nowego gatunku
  • aktualizacja gatunku o konkretnym id
  1. Producer
  • dodanie nowego producenta gry
  • aktualizacja nazwy producenta o konkretnym id
  • usunięcie producenta
  1. Rating
  • aktualizacja oceny
  • dodanie oceny do istniejącej gry
  • usunięcie oceny
  1. User
  • możliwość rejestracji i logowania
  • aktualizacja nazwy użytkonwnika bądź maila
  • wyświetlenie wszystich informacji o użytkowniku

project_internetengineering's People

Contributors

jmatulaa avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.