diff --git a/mvc.rb b/mvc.rb new file mode 100644 index 0000000..3f63995 --- /dev/null +++ b/mvc.rb @@ -0,0 +1,61 @@ +#!/usr/bin/env ruby + +class PeopleDirectory + def initialize(people) + @people = people + end + + def find_people(name) + @people.select { |person| person[:name] == name } + end +end + +class UserInput + def ask_name + print "De quelle personne souhaites-tu connaître l'âge ? " + gets.chomp + end +end + +class PeopleView + def hello_everybody(people) + people.each do |person| + puts "Hello #{person[:name]}!" + end + end + + def show_people(people) + if people.empty? + puts "Aucune personne trouvée." + else + people.each do |person| + puts "#{person[:name]} qui a #{person[:age]} ans" + end + end + end +end + +# Données +people = [ + { name: "Alice", age: 30}, + { name: "Bob", age: 27}, + { name: "Alice", age: 22} +] + +# Instancier les classes +directory = PeopleDirectory.new(people) +input = UserInput.new +view = PeopleView.new + +# Saluer tout le monde +view.hello_everybody(people) + +# Demander un nom +name = input.ask_name + +# Rechercher +matches = directory.find_people(name) + +# Afficher +view.show_people(matches) +