Tortila est un projet qui facilite l'encapsulation des API web.
1. Structure du Projet et Description
Voici la structure de répertoire du projet Tortilla :
tortilla/
├── bin/
│ └── tortilla
├── lib/
│ ├── tortilla.rb
│ └── tortilla/
│ ├── interface_cli.rb
│ ├── configuration.rb
│ └── version.rb
├── spec/
│ ├── interface_cli_spec.rb
│ ├── configuration_spec.rb
│ └── spec_helper.rb
├── .gitignore
├── .rspec
├── Gemfile
├── Gemfile.lock
├── LICENSE
├── README.md
└── tortilla.gemspec
Description de la Structure
bin/: Contient les fichiers exécutables, commetortilla.lib/: Comprend les fichiers principaux du code.tortilla.rb: Point d'entrée principal.tortilla/: Modules du projet.interface_cli.rb: Module pour l'interface en ligne de commande.configuration.rb: Gestion des fichiers de configuration.version.rb: Informations sur la version.spec/: Tests unitaires.interface_cli_spec.rb: Tests pour l'interface CLI.configuration_spec.rb: Tests pour le gestionnaire de configuration.spec_helper.rb: Fichier d'aide pour les tests..gitignore: Configuration des fichiers ignorés par Git..rspec: Configuration de RSpec.Gemfile: Dépendances du projet.Gemfile.lock: Verrouillage des dépendances.LICENSE: Licence du projet.README.md: Documentation du projet.tortilla.gemspec: Configuration du gem.
2. Présentation du Fichier de Démarrage
Le fichier de démarrage est bin/tortilla. Il charge lib/tortilla.rb et initialise l'interface CLI.
#!/usr/bin/env ruby
require_relative '../lib/tortilla'
Tortilla::CLI.start(ARGV)
Explication du Fichier de Démarrage
#!/usr/bin/env ruby: Utilisation de l'interpréteur Ruby.require_relative '../lib/tortilla': Importe le fichier principal.Tortilla::CLI.start(ARGV): Lance l'interface CLI avec les arguments passés.
3. Présentation du Fichier de Configuration
Le module de gestion des configurations se trouve dans lib/tortilla/configuration.rb.
Explication du Fichier de Configuration
lib/tortilla/configuration.rb: Module pour gérer les configurations.- Classe
Configuration: Charge et analyse les fichiers de configuration. - Méthode
load: Charge et analyse les paramètres de configuration. - Méthode
[]: Accès aux paramètres de configuration.
module Tortilla
class Configuration
def initialize(fichier_config)
@config = load(fichier_config)
end
def load(fichier_config)
# Charger et analyser le fichier de configuration
end
def [](cle)
@config[cle]
end
end
end
Exemple de Fichier de Configuration
Supposons que le fichier de configuration s'appelle config.yml avec le contenu suivant :
base_de_donnees:
hote: localhost
port: 3306
utilisateur: root
mot_de_passe: secret
Après avoir chargé et enalysé ce fichier avec la classe Configuration, vous pouvez accéder aux paramètres de configuration :
config = Tortilla::Configuration.new('config.yml')
puts config['base_de_donnees']['hote'] # Affiche : localhost
Cela couvre la structure du projet, le fichier de démarrage et celui de configuration de Tortilla.