Skip to content

lapadulamichael/kover1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Travail pratique 1: Mise en place de l'application kover

Description

Cette application nommée kover permet de créer une scene qui comprend des buildings et des antennes dans une zone donnée. Elle utilise l'entrée standard pour prendre les informations nécéssaires a la creation de cette scene et ensuite affiche sur la sortie standart différentes informations sur celle-ci. Le programme comprend des subcommandes. help permet d'afficher le manuel d'utilisation. bounding-box permet d'afficher les dimensions du plus petit rectangle qui contient tous les elements de la scene. summarize permet d'afficher un résumé des éléments qui composent la scene. describe affiche le résumé mais aussi les détailles de ces éléments.

Cette application est développée dans le cadre du cours INF3135 (Construction et maintenance de logiciels) donné par le professeur Alexandre Blondin Massé a l'UQAM.

Pour plus d'information, voir le sujet du travail.

Auteur

Michael Lapadula (LAPM67010405)

Fonctionnement

D'abord, il faut compiler le fichier kover.c, celui-ci contient le code du projet. Cela peut etre fait semi-automatiquement en utilisant Makefile. Voici un exemple d'utilisation:

$ make build

Ensuite, si vous souhaitez saisir une serie de commandes specifique pour executer le programme, alors il faut il faut le faire en utilisant l'executable kover dans le bin. Il faut d'abord savoir que le programme s'execute avec 2 arguments. Le premier est l'executable (kover) et le deuxieme est une subcommande (help, bounding-box, describe ou summarize). Voici un exemple si l'utilisateur souhaite lancer le programme avec la subcommande help.

$ bin/kover help

Pour que le programme s'execute correctement avec les subcommandes bounding-box, describe et/ou summarize, il aura besoin d'une entree standard. L'utilisateur peut techniquement rentrer manuellement sa propre entree standard mais nous recommendons fortement d'utiliser < pour rediriger le contenu d'un fichier vers l'entree standard. Voici un exemple d'utilisation:

$ bin/kover describe < examples/3b2a.scene

Voici quelques brèves explications sur ce que fait exactement chaque commande:

La subcommande help sert à afficher le manuel d'utilisation à la sortie standart.

La subcommande summarize affiche un résumé (nombre de buildings et d'antennes) des éléments qui composent la scène.

La subcommande describe affiche le résumé en plus des détails de chaque élément qui compose la scène.

Pour finir, la subcommande bounding-box affiche les dimensions du plus petit rectangle qui contient tous les éléments de la scène, incluant la portée des antennes.

Pour plus de détail au niveau du fonctionnement du programme et des subcommandes, se référer au manuel ou au sujet.

Tests

Pour lancer la suite de tests automatique, simplement utiliser la commande 'make test' dans le répertoire principal du projet (celui avec le fichier Makefile) de cette facon:

$ make test

Les 78 tests automatiques se lancent et s'exécutent tous avec succes.

Dépendances

Voici la liste des dépendances du projet:

-GCC (GNU Compiler Collection), lien vers le site.
Utilisé pour compiler le code C.

-Bats, lien vers le site.
Utilisé pour exécuter les tests de facon automatique.

-Make (GNU Make), lien vers le site.
Utilisé pour automatisé les taches de build et de tests via Makefile.

Références

Voici les références auquelles j'ai pu avoir recours:

-Les notes de cours

-Master Pointers in C: 10x Your C Coding, Youtube

-Il a pu aussi m'arriver de poser des questions sur le fonctionnement du language C à ChatGPT pour obtenir des explications, du contexte ou de l'aide sur certaines de mes incomprehensions. Aucun code ne fut copier ou retranscrit directement de ChatGPT, c'était uniquement pour améliorer ma compréhension.

État du projet

Indiquez toutes les tâches qui ont été complétés en insérant un X entre les crochets. Si une tâche n'a pas été complétée, expliquez pourquoi.

  • Le nom du dépôt GitLab est exactement inf3135-251-tp1
  • L'URL du dépôt GitLab est exactement (remplacer utilisateur par votre nom identifiant GitLab) https://gitlab.info.uqam.ca/utilisateur/inf3135-ete2020-tp1
  • Les utilisateurs blondin_al et guite-vinet.julien on accès au projet en mode Maintainer
  • Le dépôt GitLab est un fork du gabarit fourni
  • Le dépôt GitLab est privé
  • Le dépôt contient au moins un fichier .gitignore
  • Les sections incomplètes de ce fichier (README.md) ont été complétées
  • Toutes les fonctions du fichier kover.c sont documentées (docstring)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors