‫Revenez et cette conférence, nous allons créer nos propres délégués pour filtrer une liste de personnes, et cela nous donnera une
‫meilleure compréhension de la façon dont les délégués travaillent sous le capot.
‫Considérons donc la classe suivante que nous avons ici.
‫C'est donc une personne de classe très simple avec une propriété name ainsi qu'une propriété age.
‫Juste deux propriétés ici.
‫Nous voulons donc créer nos propres délégués pour filtrer les personnes en fonction de l'âge, nos délégués de filtrage
‫prendront une personne comme paramètre et renverront un bool si la condition concernant l'âge est remplie.
‫Quel est l'état exactement ?
‫Eh bien, nous ne nous en soucions pas, car le code pourrait être utilisé pour filtrer une liste sur une page Web, par
‫exemple, et la fonction de filtrage pourrait changer rapidement et.
‫Eh bien, c'est exactement la beauté des délégués.
‫Quel luxe.
‫D'accord.
‫Définissons donc notre type de délégué.
‫Et par conséquent, je vais simplement aller de l'avant et dire que ce sera un délégué de type booléen.
‫Je vais l'appeler filtre délégué et il faudra une personne.
‫Donc un objet personne appelé Pete.
‫Maintenant, allons de l'avant et créons simplement une petite liste de personnes ou d'objets personne, pour ainsi dire, nous
‫avons ici quatre objets personne.
‫Un, deux, trois et quatre.
‫Et puis nous les ajoutons tous à une liste.
‫Ils ont donc des noms différents ainsi que des âges différents ici.
‫Nous voulons donc maintenant filtrer ces personnes en fonction de leur âge, par exemple, afficher les adultes uniquement
‫âgés de 18 ans et plus ou les mineurs uniquement âgés de moins de 18 ans.
‫Puisque vous souhaitez appliquer différents filtres, créons en fait une méthode appelée afficher les personnes.
‫Cette méthode prendra la liste des personnes et un filtre en tant que délégué, puis filtrera la liste des personnes
‫en fonction de ce filtre.
‫Nous voulons donc également ajouter une chaîne appelée titre pour que les choses semblent plus organisées au sein du conseil.
‫Alors tout d'abord, permettez-moi de configurer l'en-tête de ma méthode ici.
‫Nous avons donc ici la méthode display people et il faudra une chaîne, la liste des personnes et le délégué
‫de filtre que j'appellerai filter.
‫Maintenant, qu'est-ce que je veux faire ici ?
‫Eh bien, tout d'abord, je vais juste écrire le titre.
‫Et puis je vais passer en revue toutes les personnes qui sont à l'intérieur de ma liste personnelle ici.
‫Et je vais vérifier si le filtre fonctionne avec la personne que nous avons croisé.
‫Ici, nous allons simplement dire le nom de la personne ainsi que son âge.
‫Et maintenant, nous pouvons aller de l'avant et définir simplement quelques méthodes que nous utiliserons comme filtres.
‫OK, donc un sera pour les mineurs.
‫Voici donc mineur.
‫Nous accueillons donc la personne et nous vérifions son âge par rapport à 18 ans.
‫Et s'il est inférieur, alors nous savons que nous devons revenir.
‫Vrai.
‫Ce qui veut dire que la personne est un mineur, sinon on retournera faux.
‫OK, ce sera donc le seul filtre.
‫Créons ensuite un autre filtre pour les adultes comme le savon et maintenant un autre filtre pour les personnes âgées,
‫disons les personnes de plus de 65 ans.
‫Comme, alors maintenant la méthode principale, appelons la méthode display people plusieurs fois, celle que nous venons de
‫créer, celle-ci ici.
‫Passons donc à notre méthode principale.
‫Et ici je vais afficher des personnes et ici je vais juste passer le titre.
‫Je vais juste dire les enfants, par exemple, je passe dans la liste des personnes ainsi que mon filtre.
‫Donc, voici mon filtre mineur et je l'appelle mineur comme ça.
‫Et maintenant, vérifions-le.
‫Exécutons ceci et voyons s'il affichera nos enfants et seulement cet endroit, Walter, qui a 12 ans.
‫OK, donc ce filtre a fonctionné.
‫Vous voyez, nous avons transmis une méthode que nous n'avons pas eu à transmettre de paramètres à cette méthode car nous
‫l'avons transmise à la position d'un délégué afin qu'il puisse simplement filtrer le délégué.
‫Permettez-moi de faire défiler un peu pour que vous puissiez voir que c'est un peu mieux.
‫Ici, nous devons donc transmettre et filtrer les délégués, ce qui signifie que nous pouvons transmettre une
‫méthode qui suit simplement la description des délégués du filtre, ce qui signifie qu'elle doit simplement transmettre un booléen et qu'elle doit
‫avoir un paramètre de type personne.
‫Et c'est exactement ce que font nos méthodes de filtrage de la façon dont je les ai appelées ici.
‫Ils renvoient un booléen et nécessitent la personne P, donc si est mineur ne suivait pas la structure, cela ne fonctionnerait
‫pas.
‫Donc, si je devais me débarrasser de cela et retourner true ici, par exemple, cela ne fonctionnerait pas.
‫Vous voyez ici, c'est que Mörner peut bien convertir le groupe de méthodes en programme qui filtre les délégués afin qu'il
‫ne suive pas les instructions de nos délégués.
‫Très bien, faisons maintenant la même chose avec nos autres types de filtres.
‫Donc d'abord avec les adultes et ensuite avec les seniors, alors regardons ça.
‫Nous voyons des enfants, Walter, des adultes, Aiden et Anatoliy, puis les personnes âgées ne s'assoient que et il a soixante-neuf ans.
‫Voilà pour une petite introduction pour les délégués.
‫Mais vous remarquerez peut-être un modèle ennuyeux que nous avons ici et nous allons l'éliminer dans la prochaine
‫conférence, qui est le modèle de méthode anonyme.
‫Alors Ségou là-bas.