diff --git a/README.md b/README.md index 500df1c..f780724 100644 --- a/README.md +++ b/README.md @@ -112,4 +112,5 @@ The patterns can be structured in roughly three different categories. Please cli | es | Spanish | [Docs :notebook:](https://designpatternsphp.readthedocs.io/es/latest/README.html) | | es_MX | Spanish-Mexican | [Docs :notebook:](https://designpatternsphp.readthedocs.io/es_MX/latest/README.html) | | tr | Turkish | [Docs :notebook:](https://designpatternsphp.readthedocs.io/tr/latest/README.html) | -| bg | Bulgarian | [Docs :notebook:](https://designpatternsphp.readthedocs.io/bg/latest/README.html) | \ No newline at end of file +| bg | Bulgarian | [Docs :notebook:](https://designpatternsphp.readthedocs.io/bg/latest/README.html) | +| fr | French | [Docs :notebook:](https://designpatternsphp.readthedocs.io/fr/latest/README.html) | \ No newline at end of file diff --git a/locale/fr/LC_MESSAGES/Behavioral/ChainOfResponsibilities/README.po b/locale/fr/LC_MESSAGES/Behavioral/ChainOfResponsibilities/README.po new file mode 100644 index 0000000..4750ab9 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/ChainOfResponsibilities/README.po @@ -0,0 +1,71 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:2 +msgid "`Chain Of Responsibilities`__" +msgstr "`Chain Of Responsibilities`__" + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:5 +msgid "Purpose:" +msgstr "Rôle" + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:7 +msgid "" +"To build a chain of objects to handle a call in sequential order. If one " +"object cannot handle a call, it delegates the call to the next in the chain " +"and so forth." +msgstr "" +"Construire une chaîne d'objets pour traiter un appel dans un ordre séquentiel. " +"Si un objet ne peut pas traiter un appel, il délègue l'appel au suivant dans " +"la chaîne et ainsi de suite." + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:12 +msgid "Examples:" +msgstr "Exemples" + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:14 +msgid "" +"logging framework, where each chain element decides autonomously what to do " +"with a log message" +msgstr "" +"Logging Framework, dans lequel chaque élément de la chaîne décide lui-même " +"de ce qu'il faut faire avec un message de journalisation." + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:16 +msgid "a Spam filter" +msgstr "Filtre anti-spam" + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:17 +msgid "" +"Caching: first object is an instance of e.g. a Memcached Interface, if that " +"\"misses\" it delegates the call to the database interface" +msgstr "" +"Mise en cache : le premier objet est, par exemple, une instance d'une interface Memcached, " +"s'il \"manque\", il délègue l'appel à l'interface de base de données." + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/ChainOfResponsibilities/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Behavioral/Command/README.po b/locale/fr/LC_MESSAGES/Behavioral/Command/README.po new file mode 100644 index 0000000..6300553 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/Command/README.po @@ -0,0 +1,88 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/Command/README.rst:2 +msgid "`Command`__" +msgstr "`Command`__" + +#: ../../Behavioral/Command/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/Command/README.rst:7 +msgid "To encapsulate invocation and decoupling." +msgstr "Encapsuler l'invocation et le découplage." + +#: ../../Behavioral/Command/README.rst:9 +msgid "" +"We have an Invoker and a Receiver. This pattern uses a \"Command\" to " +"delegate the method call against the Receiver and presents the same method " +"\"execute\". Therefore, the Invoker just knows to call \"execute\" to " +"process the Command of the client. The Receiver is decoupled from the " +"Invoker." +msgstr "" +"Nous avons un Invoker (exécuteur) et un Receiver (récepteur). Ce modèle " +"utilise une \"commande\" pour déléguer l'exécution d'une méthode à un récepteur " +"et fournir une méthode \"execute\" unifiée. De cette façon, l'exécuteur ne connaît " +"que la méthode \"execute\" pour exécuter la commande. Le récepteur est donc " +"découplé de l'appelant." + +#: ../../Behavioral/Command/README.rst:15 +msgid "" +"The second aspect of this pattern is the undo(), which undoes the method " +"execute(). Command can also be aggregated to combine more complex commands " +"with minimum copy-paste and relying on composition over inheritance." +msgstr "" +"Le deuxième aspect de ce modèle est la méthode ``undo()``, qui permet d'annuler " +"l'exécution de la méthode ``execute()``. Les commandes peuvent également être " +"agrégées pour créer des commandes complexes avec une surcharge minimale et " +"par composition (plutôt que par héritage)." + +#: ../../Behavioral/Command/README.rst:21 +msgid "Examples" +msgstr "Exemples" + +#: ../../Behavioral/Command/README.rst:23 +msgid "" +"A text editor : all events are Command which can be undone, stacked and " +"saved." +msgstr "" +"Un éditeur de texte : tous les événements sont des commandes qui peuvent " +"être annulées, empilées et enregistrées." + +#: ../../Behavioral/Command/README.rst:27 +msgid "" +"big CLI tools use subcommands to distribute various tasks and pack them in " +"\"modules\", each of these can be implemented with the Command pattern (e.g." +" vagrant)" +msgstr "" +"Les outils complexes de la console sont composés de sous-commandes afin de mieux " +"modulariser les tâches. Chacune de ces commandes peut être implémentée comme " +"un modèle de commande (par exemple vagrant)." + +#: ../../Behavioral/Command/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/Command/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/Command/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/Command/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Behavioral/Iterator/README.po b/locale/fr/LC_MESSAGES/Behavioral/Iterator/README.po new file mode 100644 index 0000000..91c3389 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/Iterator/README.po @@ -0,0 +1,68 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/Iterator/README.rst:2 +msgid "`Iterator`__" +msgstr "`Iterator`__" + +#: ../../Behavioral/Iterator/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/Iterator/README.rst:7 +msgid "To make an object iterable and to make it appear like a collection of objects." +msgstr "Rendre un objet itérable et le faire apparaître comme une collection d'objets." + +#: ../../Behavioral/Iterator/README.rst:11 +msgid "Examples" +msgstr "Exemples" + +#: ../../Behavioral/Iterator/README.rst:13 +msgid "" +"to process a file line by line by just running over all lines (which have an" +" object representation) for a file (which of course is an object, too)" +msgstr "" +"Si un fichier et chacune de ses lignes sont représentées sous form d'objet, " +"Iterator permet de parcourir le fichier." + +#: ../../Behavioral/Iterator/README.rst:18 +msgid "Note" +msgstr "Note" + +#: ../../Behavioral/Iterator/README.rst:20 +msgid "" +"Standard PHP Library (SPL) defines an interface Iterator which is best " +"suited for this! Often you would want to implement the Countable interface " +"too, to allow ``count($object)`` on your iterable object" +msgstr "" +"La bibliothèque standard de PHP (SPL) définit une interface Iterator qui est " +"la mieux adaptée pour cela ! Souvent vous voudrez implémenter l'interface " +"Countable aussi, pour permettre count($object) sur votre objet itérable." + +#: ../../Behavioral/Iterator/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/Iterator/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/Iterator/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/Iterator/README.rst:85 +msgid "Test" +msgstr "Test" + diff --git a/locale/fr/LC_MESSAGES/Behavioral/Mediator/README.po b/locale/fr/LC_MESSAGES/Behavioral/Mediator/README.po new file mode 100644 index 0000000..769b950 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/Mediator/README.po @@ -0,0 +1,57 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/Mediator/README.rst:2 +msgid "`Mediator`__" +msgstr "`Mediator`__" + +#: ../../Behavioral/Mediator/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/Mediator/README.rst:7 +msgid "" +"This pattern provides an easy way to decouple many components working " +"together. It is a good alternative to Observer IF you have a \"central " +"intelligence\", like a controller (but not in the sense of the MVC)." +msgstr "" +"Ce pattern fournit un moyen facile de découpler de nombreux composants " +"travaillant ensemble. C'est une bonne alternative à Observer SI vous " +"avez une \"intelligence centrale\", comme un contrôleur (mais pas au sens du MVC)." + +#: ../../Behavioral/Mediator/README.rst:11 +msgid "" +"All components (called Colleague) are only coupled to the Mediator interface " +"and it is a good thing because in OOP, one good friend is better than many. " +"This is the key-feature of this pattern." +msgstr "" +"Tous les composants (appelés Colleague) sont uniquement couplés à l'interface du " +"Médiateur et c'est une bonne chose car en POO, un bon ami vaut mieux que plusieurs. " +"C'est la caractéristique clé de ce modèle." + +#: ../../Behavioral/Mediator/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/Mediator/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/Mediator/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/Mediator/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Behavioral/Memento/README.po b/locale/fr/LC_MESSAGES/Behavioral/Memento/README.po new file mode 100644 index 0000000..e70ec0b --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/Memento/README.po @@ -0,0 +1,124 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/Memento/README.rst:2 +msgid "`Memento`__" +msgstr "`Memento`__" + +#: ../../Behavioral/Memento/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/Memento/README.rst:7 +msgid "" +"It provides the ability to restore an object to it's previous state (undo" +" via rollback) or to gain access to state of the object, without " +"revealing it's implementation (i.e., the object is not required to have a" +" functional for return the current state)." +msgstr "" +"Il permet de rétablir l'état précédent d'un objet (annulation par retour en arrière) " +"ou d'accéder à l'état de l'objet, sans révéler son implémentation " +"(c'est-à-dire que l'objet n'est pas obligé d'avoir une fonction pour retourner l'état actuel)." + +#: ../../Behavioral/Memento/README.rst:12 +msgid "" +"The memento pattern is implemented with three objects: the Originator, a " +"Caretaker and a Memento." +msgstr "" +"Le pattern Memento est mis en œuvre avec trois objets : Originator, Caretaker et un Memento." + +#: ../../Behavioral/Memento/README.rst:15 +msgid "" +"Memento – an object that *contains a concrete unique snapshot of state* " +"of any object or resource: string, number, array, an instance of class " +"and so on. The uniqueness in this case does not imply the prohibition " +"existence of similar states in different snapshots. That means the state " +"can be extracted as the independent clone. Any object stored in the " +"Memento should be *a full copy of the original object rather than a " +"reference* to the original object. The Memento object is a \"opaque " +"object\" (the object that no one can or should change)." +msgstr "" +"Memento - Objet contenant *un instantané concret et unique de l'état* de " +"tout objet ou ressource : chaîne de caractères, nombre, tableau, instance de classe, etc. " +"L'unicité dans ce cas n'implique pas l'interdiction de l'existence d'états similaires dans " +"différents instantanés. Cela signifie que l'état peut être extrait en tant que clone indépendant. " +"Tout objet stocké dans le Memento doit être une copie complète de l'objet original plutôt qu'une " +"référence à l'objet original. L'objet Mémento est un \"objet opaque\" " +"(l'objet que personne ne peut ou ne doit modifier)." + +#: ../../Behavioral/Memento/README.rst:24 +msgid "" +"Originator – it is an object that contains the *actual state of an " +"external object is strictly specified type*. Originator is able to create" +" a unique copy of this state and return it wrapped in a Memento. The " +"Originator does not know the history of changes. You can set a concrete " +"state to Originator from the outside, which will be considered as actual." +" The Originator must make sure that given state corresponds the allowed " +"type of object. Originator may (but not should) have any methods, but " +"they *they can't make changes to the saved object state*." +msgstr "" +"Originator - Objet contenant l'état réel d'un objet externe de type strictement spécifié. " +"L'Originator est capable de créer une copie unique de cet état et de la renvoyer enveloppée " +"dans un Memento. L'Originator ne connaît pas l'historique des changements. Vous pouvez définir " +"un état concret pour l'Originator depuis l'extérieur, qui sera considéré comme réel. " +"L'Originator doit s'assurer que l'état donné correspond au type d'objet autorisé. L'Originator peut " +"(mais ne doit pas) avoir des méthodes, mais elles ne peuvent pas modifier l'état de l'objet sauvegardé." + +#: ../../Behavioral/Memento/README.rst:33 +msgid "" +"Caretaker *controls the states history*. He may make changes to an " +"object; take a decision to save the state of an external object in the " +"Originator; ask from the Originator snapshot of the current state; or set" +" the Originator state to equivalence with some snapshot from history." +msgstr "" +"Caretaker - Objet contrôlant l'historique des états. Il peut apporter des " +"modifications à un objet, prendre la décision de sauvegarder l'état d'un objet " +"externe dans l'Originator, demander à l'Originator un instantané de l'état actuel, " +"ou mettre l'état de l'Originator en équivalence avec un instantané de l'histoire." + +#: ../../Behavioral/Memento/README.rst:39 +msgid "Examples" +msgstr "Exemples" + +#: ../../Behavioral/Memento/README.rst:41 +msgid "The seed of a pseudorandom number generator" +msgstr "La source d'un générateur de nombres pseudo-aléatoires" + +#: ../../Behavioral/Memento/README.rst:42 +msgid "The state in a finite state machine" +msgstr "L'état dans une machine à états finis" + +#: ../../Behavioral/Memento/README.rst:43 +msgid "" +"Control for intermediate states of `ORM Model " +"`_ before saving" +msgstr "" +"Contrôle des états intermédiaires du `modèle ORM " +"` avant la sauvegarde" + +#: ../../Behavioral/Memento/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/Memento/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/Memento/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/Memento/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Behavioral/NullObject/README.po b/locale/fr/LC_MESSAGES/Behavioral/NullObject/README.po new file mode 100644 index 0000000..64e0d1f --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/NullObject/README.po @@ -0,0 +1,86 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/NullObject/README.rst:2 +msgid "`Null Object`__" +msgstr "`Null Object`__" + +#: ../../Behavioral/NullObject/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/NullObject/README.rst:7 +msgid "" +"NullObject is not a GoF design pattern but a schema which appears frequently" +" enough to be considered a pattern. It has the following benefits:" +msgstr "" +"NullObject n'est pas un patron de conception du GoF mais un schéma qui apparaît " +"suffisamment fréquemment pour être considéré comme un patron. Il présente les avantages suivants :" + +#: ../../Behavioral/NullObject/README.rst:11 +msgid "Client code is simplified" +msgstr "Le code client est simplifié" + +#: ../../Behavioral/NullObject/README.rst:12 +msgid "Reduces the chance of null pointer exceptions" +msgstr "Réduit le risque d'exceptions de pointeur ``null``" + +#: ../../Behavioral/NullObject/README.rst:13 +msgid "Fewer conditionals require less test cases" +msgstr "Moins de conditions exigent moins de cas de test" + +#: ../../Behavioral/NullObject/README.rst:15 +msgid "" +"Methods that return an object or null should instead return an object or " +"``NullObject``. ``NullObject``\\ s simplify boilerplate code such as ``if " +"(!is_null($obj)) { $obj->callSomething(); }`` to just " +"``$obj->callSomething();`` by eliminating the conditional check in client " +"code." +msgstr "" +"Les méthodes renvoyant un objet ou null devraient plutôt renvoyer un objet ou " +"``NullObject``. Les ``NullObjects`` simplifient le code passe-partout tel que " +"``if (!is_null($obj)) { $obj->callSomething() ; }`` en le remplaçant par ``$obj->callSomething() ; ``" +"en éliminant la vérification conditionnelle dans le code client." + +#: ../../Behavioral/NullObject/README.rst:22 +msgid "Examples" +msgstr "Exemples" + +#: ../../Behavioral/NullObject/README.rst:24 +msgid "null logger or null output to preserve a standard way of interaction between objects, even if the shouldn't do anything" +msgstr "Null logger ou null output pour préserver un mode d'interaction standard entre les objets, même s'ils ne devraient rien faire." + +#: ../../Behavioral/NullObject/README.rst:26 +msgid "null handler in a Chain of Responsibilities pattern" +msgstr "Null handler dans un modèle de chaîne de responsabilités" + +#: ../../Behavioral/NullObject/README.rst:27 +msgid "null command in a Command pattern" +msgstr "Null command dans un patron Command" + +#: ../../Behavioral/NullObject/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/NullObject/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/NullObject/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/NullObject/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Behavioral/Observer/README.po b/locale/fr/LC_MESSAGES/Behavioral/Observer/README.po new file mode 100644 index 0000000..271a24a --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/Observer/README.po @@ -0,0 +1,69 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/Observer/README.rst:2 +msgid "`Observer`__" +msgstr "`Observer`__" + +#: ../../Behavioral/Observer/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/Observer/README.rst:7 +msgid "" +"To implement a publish/subscribe behaviour to an object, whenever a " +"\"Subject\" object changes its state, the attached \"Observers\" will be " +"notified. It is used to shorten the amount of coupled objects and uses loose" +" coupling instead." +msgstr "" +"Implémenter un comportement de publication/abonnement à un objet, chaque fois qu'un " +"objet \"Sujet\" change d'état, les \"Observateurs\" attachés seront notifiés. Il est " +"utilisé pour réduire le nombre d'objets couplés et utilise plutôt un couplage souple." + +#: ../../Behavioral/Observer/README.rst:13 +msgid "Examples" +msgstr "Exemples" + +#: ../../Behavioral/Observer/README.rst:15 +msgid "" +"a message queue system is observed to show the progress of a job in a GUI" +msgstr "" +"Un système de file d'attente de messages est observé pour montrer la progression d'un travail dans une interface graphique." + +#: ../../Behavioral/Observer/README.rst:19 +msgid "Note" +msgstr "Note" + +#: ../../Behavioral/Observer/README.rst:21 +msgid "" +"PHP already defines two interfaces that can help to implement this pattern: " +"SplObserver and SplSubject." +msgstr "" +"PHP définit déjà deux interfaces qui peuvent aider à implémenter ce modèle : SplObserver et SplSubject." + +#: ../../Behavioral/Observer/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/Observer/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/Observer/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/Observer/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Behavioral/README.po b/locale/fr/LC_MESSAGES/Behavioral/README.po new file mode 100644 index 0000000..77a7ac4 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/README.po @@ -0,0 +1,28 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Language-Team: \n" + +#: ../../Behavioral/README.rst:2 +msgid "`Behavioral`__" +msgstr "Comportementaux" + +#: ../../Behavioral/README.rst:4 +msgid "" +"In software engineering, behavioral design patterns are design patterns that" +" identify common communication patterns between objects and realize these " +"patterns. By doing so, these patterns increase flexibility in carrying out " +"this communication." +msgstr "" +"En ingénierie logicielle, les patrons de conception comportementaux identifient " +"les modèles de communication communs entre les objets et réalisent ces modèles. " +"Ce faisant, ces patrons augmentent la flexibilité dans la réalisation de cette communication." diff --git a/locale/fr/LC_MESSAGES/Behavioral/Specification/README.po b/locale/fr/LC_MESSAGES/Behavioral/Specification/README.po new file mode 100644 index 0000000..e215b9f --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/Specification/README.po @@ -0,0 +1,57 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/Specification/README.rst:2 +msgid "`Specification`__" +msgstr "`Specification`__" + +#: ../../Behavioral/Specification/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/Specification/README.rst:7 +msgid "" +"Builds a clear specification of business rules, where objects can be checked" +" against. The composite specification class has one method called " +"``isSatisfiedBy`` that returns either true or false depending on whether the" +" given object satisfies the specification." +msgstr "" +"Construire une spécification claire des règles de gestion, à laquelle les objets peuvent être comparés. " +"La classe de spécification composite possède une méthode appelée ``isSatisfiedBy`` qui renvoie soit vrai " +"soit faux selon que l'objet soit conforme ou non aux règles de gestion." + +#: ../../Behavioral/Specification/README.rst:13 +msgid "Examples" +msgstr "Exemples" + +#: ../../Behavioral/Specification/README.rst:15 +msgid "`RulerZ `__" +msgstr "`RulerZ `__" + +#: ../../Behavioral/Specification/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/Specification/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/Specification/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/Specification/README.rst:85 +msgid "Test" +msgstr "Test" + diff --git a/locale/fr/LC_MESSAGES/Behavioral/State/README.po b/locale/fr/LC_MESSAGES/Behavioral/State/README.po new file mode 100644 index 0000000..5a4b4b6 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/State/README.po @@ -0,0 +1,47 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/State/README.rst:2 +msgid "`State`__" +msgstr "`State`__" + +#: ../../Behavioral/State/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/State/README.rst:7 +msgid "" +"Encapsulate varying behavior for the same routine based on an object's " +"state. This can be a cleaner way for an object to change its behavior at " +"runtime without resorting to large monolithic conditional statements." +msgstr "" +"Encapsule des comportements différents pour la même routine en fonction de l'état de " +"l'objet. Cela peut être un moyen plus propre pour un objet de changer son comportement " +"au moment de l'exécution sans avoir recours à de grandes déclarations conditionnelles monolithiques." + +#: ../../Behavioral/State/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/State/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/State/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/State/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Behavioral/Strategy/README.po b/locale/fr/LC_MESSAGES/Behavioral/Strategy/README.po new file mode 100644 index 0000000..b8b4616 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/Strategy/README.po @@ -0,0 +1,77 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/Strategy/README.rst:2 +msgid "`Strategy`__" +msgstr "`Strategy`__" + +#: ../../Behavioral/Strategy/README.rst:5 +msgid "Terminology:" +msgstr "Terminologie" + +#: ../../Behavioral/Strategy/README.rst:7 +msgid "Context" +msgstr "Context" + +#: ../../Behavioral/Strategy/README.rst:8 +msgid "Strategy" +msgstr "Strategy" + +#: ../../Behavioral/Strategy/README.rst:9 +msgid "Concrete Strategy" +msgstr "Concrete Strategy" + +#: ../../Behavioral/Strategy/README.rst:12 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/Strategy/README.rst:14 +msgid "" +"To separate strategies and to enable fast switching between them. Also this " +"pattern is a good alternative to inheritance (instead of having an abstract " +"class that is extended)." +msgstr "" +"Pour séparer les stratégies et permettre un passage rapide de l'une à l'autre. " +"Ce modèle est également une bonne alternative à l'héritage " +"(au lieu d'avoir une classe abstraite qui est dérivée)." + +#: ../../Behavioral/Strategy/README.rst:19 +msgid "Examples" +msgstr "Exemples" + +#: ../../Behavioral/Strategy/README.rst:21 +msgid "sorting a list of objects, one strategy by date, the other by id" +msgstr "Trier une liste d'objets, une stratégie par date, l'autre par identifiant" + +#: ../../Behavioral/Strategy/README.rst:22 +msgid "" +"simplify unit testing: e.g. switching between file and in-memory storage" +msgstr "" +"Simplifier les tests unitaires : par exemple, passer du stockage en fichier au stockage en RAM" + +#: ../../Behavioral/Strategy/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/Strategy/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/Strategy/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/Strategy/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Behavioral/TemplateMethod/README.po b/locale/fr/LC_MESSAGES/Behavioral/TemplateMethod/README.po new file mode 100644 index 0000000..f7d40f6 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/TemplateMethod/README.po @@ -0,0 +1,78 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/TemplateMethod/README.rst:2 +msgid "`Template Method`__" +msgstr "`Template Method`__" + +#: ../../Behavioral/TemplateMethod/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/TemplateMethod/README.rst:7 +msgid "Template Method is a behavioral design pattern." +msgstr "Template Method est un patron de conception comportemental." + +#: ../../Behavioral/TemplateMethod/README.rst:9 +msgid "" +"Perhaps you have encountered it many times already. The idea is to let " +"subclasses of this abstract template \"finish\" the behavior of an " +"algorithm." +msgstr "" +"Vous l'avez peut-être déjà rencontré à plusieurs reprises. L'idée est de " +"laisser les classes dérivées de ce template abstrait \"finaliser\" le " +"comportement d'un algorithme." + +#: ../../Behavioral/TemplateMethod/README.rst:13 +msgid "" +"A.k.a the \"Hollywood principle\": \"Don't call us, we call you.\" This " +"class is not called by subclasses but the inverse. How? With abstraction of " +"course." +msgstr "" +"Par exemple, le \"Hollywood principle\" : \"Ne nous appelez pas, nous vous appelons.\" " +"Cette classe n'est pas appelée par la classe dérivée, mais au contraire. Cela se fait " +"par le biais d'une abstraction." + +#: ../../Behavioral/TemplateMethod/README.rst:17 +msgid "" +"In other words, this is a skeleton of algorithm, well-suited for framework " +"libraries. The user has just to implement one method and the superclass do " +"the job." +msgstr "" +"En d'autres termes, il s'agit d'un squelette d'algorithme, bien adapté aux librairies " +"de frameworks. L'utilisateur n'a qu'à implémenter une méthode et la classe parente fait le travail." + +#: ../../Behavioral/TemplateMethod/README.rst:21 +msgid "" +"It is an easy way to decouple concrete classes and reduce copy-paste, that's" +" why you'll find it everywhere." +msgstr "" +"C'est un moyen facile de découpler les classes concrètes et de réduire le copier-coller, " +"c'est pourquoi vous le trouverez partout." + +#: ../../Behavioral/TemplateMethod/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/TemplateMethod/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/TemplateMethod/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/TemplateMethod/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Behavioral/Visitor/README.po b/locale/fr/LC_MESSAGES/Behavioral/Visitor/README.po new file mode 100644 index 0000000..31c3938 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Behavioral/Visitor/README.po @@ -0,0 +1,59 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Behavioral/Visitor/README.rst:2 +msgid "`Visitor`__" +msgstr "`Visitor`__" + +#: ../../Behavioral/Visitor/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Behavioral/Visitor/README.rst:7 +msgid "" +"The Visitor Pattern lets you outsource operations on objects to other " +"objects. The main reason to do this is to keep a separation of concerns. But" +" classes have to define a contract to allow visitors (the ``Role::accept`` " +"method in the example)." +msgstr "" +"Le pattern Visitor vous permet de sous-traiter des opérations sur des objets à " +"d'autres objets. La principale raison de faire cela est de maintenir une séparation " +"des préoccupations. Mais les classes doivent définir un contrat pour autoriser " +"les visiteurs (la méthode ``Role::accept`` dans l'exemple)." + +#: ../../Behavioral/Visitor/README.rst:12 +msgid "" +"The contract is an abstract class but you can have also a clean interface. " +"In that case, each Visitor has to choose itself which method to invoke on " +"the visitor." +msgstr "" +"Le contrat est une classe abstraite mais vous pouvez aussi avoir une interface " +"propre. Dans ce cas, chaque visiteur doit choisir lui-même la méthode à invoquer " +"sur le visiteur." + +#: ../../Behavioral/Visitor/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Behavioral/Visitor/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Behavioral/Visitor/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Behavioral/Visitor/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Creational/AbstractFactory/README.po b/locale/fr/LC_MESSAGES/Creational/AbstractFactory/README.po new file mode 100644 index 0000000..0db2a9d --- /dev/null +++ b/locale/fr/LC_MESSAGES/Creational/AbstractFactory/README.po @@ -0,0 +1,49 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Creational/AbstractFactory/README.rst:2 +msgid "`Abstract Factory`__" +msgstr "`Abstract Factory`__" + +#: ../../Creational/AbstractFactory/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Creational/AbstractFactory/README.rst:7 +msgid "" +"To create series of related or dependent objects without specifying their " +"concrete classes. Usually the created classes all implement the same " +"interface. The client of the abstract factory does not care about how these " +"objects are created, he just knows how they go together." +msgstr "" +"Créer des séries d'objets liés ou dépendants sans spécifier leurs classes concrètes. " +"Généralement, les classes créées implémentent toutes la même interface. " +"Le client de Abstract Factory ne se soucie pas de la façon dont ces objets sont créés, " +"il sait juste comment ils fonctionnent ensemble." + +#: ../../Creational/AbstractFactory/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Creational/AbstractFactory/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Creational/AbstractFactory/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Creational/AbstractFactory/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Creational/Builder/README.po b/locale/fr/LC_MESSAGES/Creational/Builder/README.po new file mode 100644 index 0000000..a99d2f4 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Creational/Builder/README.po @@ -0,0 +1,73 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Creational/Builder/README.rst:2 +msgid "`Builder`__" +msgstr "`Builder`__" + +#: ../../Creational/Builder/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Creational/Builder/README.rst:7 +msgid "Builder is an interface that build parts of a complex object." +msgstr "Un builder est une interface permettant de construire certaines parties d'un objet complexe." + +#: ../../Creational/Builder/README.rst:9 +msgid "" +"Sometimes, if the builder has a better knowledge of what it builds, this " +"interface could be an abstract class with default methods (aka adapter)." +msgstr "" +"Parfois, lorsque le builder \"sait\" plus précisément ce qu'il construit, cette " +"interface pourrait être une classe abstraite avec des méthodes par défaut (alias adapter)." + +#: ../../Creational/Builder/README.rst:12 +msgid "" +"If you have a complex inheritance tree for objects, it is logical to have a " +"complex inheritance tree for builders too." +msgstr "" +"Si vous avez un arbre d'héritage complexe pour les objets, il est logique d'avoir " +"un arbre d'héritage complexe pour les builders." + +#: ../../Creational/Builder/README.rst:15 +msgid "" +"Note: Builders have often a fluent interface, see the mock builder of " +"PHPUnit for example." +msgstr "" +"Note : Les builders ont souvent une désignation chaînée ou chaînage de méthodes (fluent interface), voir le " +"Mock Builder de PHPUnit par exemple." + +#: ../../Creational/Builder/README.rst:19 +msgid "Examples" +msgstr "Exemples" + +#: ../../Creational/Builder/README.rst:21 +msgid "PHPUnit: Mock Builder" +msgstr "PHPUnit: Mock Builder" + +#: ../../Creational/Builder/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Creational/Builder/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Creational/Builder/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Creational/Builder/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Creational/FactoryMethod/README.po b/locale/fr/LC_MESSAGES/Creational/FactoryMethod/README.po new file mode 100644 index 0000000..6d5ec42 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Creational/FactoryMethod/README.po @@ -0,0 +1,67 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Creational/FactoryMethod/README.rst:2 +msgid "`Factory Method`__" +msgstr "`Factory Method`__" + +#: ../../Creational/FactoryMethod/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Creational/FactoryMethod/README.rst:7 +msgid "" +"The good point over the SimpleFactory is you can subclass it to implement " +"different ways to create objects" +msgstr "" +"L'avantage de FactoryMethod sur SimpleFactory est que le factory " +"peut être dérivée afin de mettre oeuvres différentes façons de créer un objet." + +#: ../../Creational/FactoryMethod/README.rst:10 +msgid "For simple case, this abstract class could be just an interface" +msgstr "Pour les cas simples, cette classe abstraite peut être une simple interface." + +#: ../../Creational/FactoryMethod/README.rst:12 +msgid "" +"This pattern is a \"real\" Design Pattern because it achieves the " +"Dependency Inversion principle a.k.a the \"D\" in SOLID principles." +msgstr "" +"Ce modèle est un \"vrai\" patron de conception car il applique le principe " +"d'inversion des dépendances (Dependency Inversion principle) alias " +"\"D\" dans SOLID (voir principes SOLID)." + +#: ../../Creational/FactoryMethod/README.rst:15 +msgid "" +"It means the FactoryMethod class depends on abstractions, not concrete " +"classes. This is the real trick compared to SimpleFactory or StaticFactory." +msgstr "" +"Cela signifie que FactoryMethod dépend d'abstractions et non de " +"classes concrètes. C'est son principal avantage par rapport à SimpleFactory ou " +"StaticFactory." + +#: ../../Creational/FactoryMethod/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Creational/FactoryMethod/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Creational/FactoryMethod/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Creational/FactoryMethod/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Creational/Pool/README.po b/locale/fr/LC_MESSAGES/Creational/Pool/README.po new file mode 100644 index 0000000..d501d38 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Creational/Pool/README.po @@ -0,0 +1,78 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Creational/Pool/README.rst:2 +msgid "`Pool`__" +msgstr "`Pool`__" + +#: ../../Creational/Pool/README.rst:4 +msgid "" +"The **object pool pattern** is a software creational design pattern that " +"uses a set of initialized objects kept ready to use – a \"pool\" – rather " +"than allocating and destroying them on demand. A client of the pool will " +"request an object from the pool and perform operations on the returned " +"object. When the client has finished, it returns the object, which is a " +"specific type of factory object, to the pool rather than destroying it." +msgstr "" +"**Object pool pattern** utilise un ensemble d'objets initialisés et prêts à " +"être utilisés - un \"pool\" - plutôt que de les allouer et de les détruire à la " +"demande. Un client du pool demandera un objet du pool et effectuera des opérations " +"sur l'objet retourné. Lorsque le client a terminé, il renvoie l'objet, qui est " +"au pool plutôt que de le détruire." + + +#: ../../Creational/Pool/README.rst:11 +msgid "" +"Object pooling can offer a significant performance boost in situations where " +"the cost of initializing a class instance is high, the rate of instantiation " +"of a class is high, and the number of instances in use at any one time is " +"low. The pooled object is obtained in predictable time when creation of the " +"new objects (especially over network) may take variable time." +msgstr "" +"La mise en commun d'objets peut offrir un gain de performance significatif dans les " +"situations où le coût d'initialisation d'une instance de classe est élevé, le " +"taux d'instanciation d'une classe est élevé et le nombre d'instances utilisées à " +"un moment donné est faible. L'objet mis en commun est obtenu en un temps prévisible " +"alors que la création des nouveaux objets (notamment sur le réseau) peut prendre un temps variable." + +#: ../../Creational/Pool/README.rst:18 +msgid "" +"However these benefits are mostly true for objects that are expensive with " +"respect to time, such as database connections, socket connections, threads " +"and large graphic objects like fonts or bitmaps. In certain situations, " +"simple object pooling (that hold no external resources, but only occupy " +"memory) may not be efficient and could decrease performance." +msgstr "" +"Toutefois, ces avantages s'appliquent surtout aux objets qui sont coûteux " +"en temps, tels que les connexions aux bases de données, les connexions aux sockets, " +"les threads et les gros objets graphiques comme les polices ou les bitmaps. " +"Dans certaines situations, la mise en commun d'objets simples (qui ne détiennent " +"aucune ressource externe, mais occupent seulement la mémoire) peut ne pas être efficace " +"et pourrait diminuer les performances." + +#: ../../Creational/Pool/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Creational/Pool/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Creational/Pool/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Creational/Pool/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Creational/Prototype/README.po b/locale/fr/LC_MESSAGES/Creational/Prototype/README.po new file mode 100644 index 0000000..d08c910 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Creational/Prototype/README.po @@ -0,0 +1,56 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Creational/Prototype/README.rst:2 +msgid "`Prototype`__" +msgstr "`Prototype`__" + +#: ../../Creational/Prototype/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Creational/Prototype/README.rst:7 +msgid "" +"To avoid the cost of creating objects the standard way (new Foo()) and " +"instead create a prototype and clone it." +msgstr "" +"Minimise le coût de création de nouveaux objets en clonant un objet prototype" + +#: ../../Creational/Prototype/README.rst:11 +msgid "Examples" +msgstr "Exemples" + +#: ../../Creational/Prototype/README.rst:13 +msgid "" +"Large amounts of data (e.g. create 1,000,000 rows in a database at once via " +"a ORM)." +msgstr "" +"Grandes quantités de données (par exemple, créer 1 000 000 de lignes dans une " +"base de données en une seule fois via un ORM)." + +#: ../../Creational/Prototype/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Creational/Prototype/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Creational/Prototype/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Creational/Prototype/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Creational/README.po b/locale/fr/LC_MESSAGES/Creational/README.po new file mode 100644 index 0000000..16b04ee --- /dev/null +++ b/locale/fr/LC_MESSAGES/Creational/README.po @@ -0,0 +1,31 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Language-Team: \n" + +#: ../../Creational/README.rst:2 +msgid "`Creational`__" +msgstr "`Créateurs`__" + +#: ../../Creational/README.rst:4 +msgid "" +"In software engineering, creational design patterns are design patterns that " +"deal with object creation mechanisms, trying to create objects in a manner " +"suitable to the situation. The basic form of object creation could result in " +"design problems or added complexity to the design. Creational design " +"patterns solve this problem by somehow controlling this object creation." +msgstr "" +"En ingénierie logicielle, les patrons de conception créateurs traitent des mécanismes de " +"création d'objets d'une manière adaptée à la situation. La forme de base de la création " +"d'objets pourrait entraîner des problèmes de conception ou ajouter de la complexité à " +"la conception. Les patrons de conception créateurs résolvent cette problématique en " +"contrôlant d'une manière ou d'une autre cette création d'objets." diff --git a/locale/fr/LC_MESSAGES/Creational/SimpleFactory/README.po b/locale/fr/LC_MESSAGES/Creational/SimpleFactory/README.po new file mode 100644 index 0000000..bd22a19 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Creational/SimpleFactory/README.po @@ -0,0 +1,57 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Creational/SimpleFactory/README.rst:2 +msgid "Simple Factory" +msgstr "Simple Factory" + +#: ../../Creational/SimpleFactory/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Creational/SimpleFactory/README.rst:7 +msgid "SimpleFactory is a simple factory pattern." +msgstr "SimpleFactory est un pattern Factory simple." + +#: ../../Creational/SimpleFactory/README.rst:9 +msgid "" +"It differs from the static factory because it is NOT static and as you know:" +" static => global => evil!" +msgstr "" +"SimpleFactory diffère de StaticFactory car ne possède pas de méthodes statiques." + +#: ../../Creational/SimpleFactory/README.rst:12 +msgid "" +"Therefore, you can have multiple factories, differently parametrized, you " +"can subclass it and you can mock-up it." +msgstr "" +"Par conséquent, vous pouvez avoir plusieurs factory paramétrés différemment, vous " +"pouvez les dériver et vous pouvez les mocker. " +"SimpleFactory doit toujours être préférée à StaticFactory !" + +#: ../../Creational/SimpleFactory/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Creational/SimpleFactory/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Creational/SimpleFactory/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Creational/SimpleFactory/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Creational/Singleton/README.po b/locale/fr/LC_MESSAGES/Creational/Singleton/README.po new file mode 100644 index 0000000..cc92887 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Creational/Singleton/README.po @@ -0,0 +1,70 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Creational/Singleton/README.rst:2 +msgid "`Singleton`__" +msgstr "`Singleton`__" + +#: ../../Creational/Singleton/README.rst:4 +msgid "" +"**THIS IS CONSIDERED TO BE AN ANTI-PATTERN! FOR BETTER TESTABILITY AND " +"MAINTAINABILITY USE DEPENDENCY INJECTION!**" +msgstr "" +"**SINGLETON EST CONSIDÉRÉ COMME UN ANTI-PATTERN ! POUR UNE MEILLEURE TESTABILITÉ " +"ET MAINTENABILITÉ, UTILISEZ L'INJECTION DE DÉPENDANCES !**" + +#: ../../Creational/Singleton/README.rst:8 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Creational/Singleton/README.rst:10 +msgid "" +"To have only one instance of this object in the application that will handle " +"all calls." +msgstr "" +"Limite l'instanciation d'une classe à une seule instance." + +#: ../../Creational/Singleton/README.rst:14 +msgid "Examples" +msgstr "Exemples" + +#: ../../Creational/Singleton/README.rst:16 +msgid "DB Connector" +msgstr "Connexion à la base de données" + +#: ../../Creational/Singleton/README.rst:17 +msgid "" +"Logger" +msgstr "" +"Logger" + +#: ../../Creational/Singleton/README.rst:19 +msgid "Lock file for the application (there is only one in the filesystem ...)" +msgstr "Fichier de verrouillage pour l'application (il n'y en a qu'un seul dans le système de fichiers...)" + +#: ../../Creational/Singleton/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Creational/Singleton/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Creational/Singleton/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Creational/Singleton/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Creational/StaticFactory/README.po b/locale/fr/LC_MESSAGES/Creational/StaticFactory/README.po new file mode 100644 index 0000000..1b5745b --- /dev/null +++ b/locale/fr/LC_MESSAGES/Creational/StaticFactory/README.po @@ -0,0 +1,51 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Creational/StaticFactory/README.rst:2 +msgid "Static Factory" +msgstr "Static Factory" + +#: ../../Creational/StaticFactory/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Creational/StaticFactory/README.rst:7 +msgid "" +"Similar to the AbstractFactory, this pattern is used to create series of " +"related or dependent objects. The difference between this and the abstract " +"factory pattern is that the static factory pattern uses just one static " +"method to create all types of objects it can create. It is usually named " +"``factory`` or ``build``." +msgstr "" +"Similaire à AbstractFactory, ce pattern est utilisé pour créer des séries d'objets " +"liés ou dépendants. La différence entre ce modèle et le modèle AbstractFactory " +"est que StaticFactory utilise une seule méthode statique pour créer tous les " +"types d'objets qu'il peut créer. " +"Cette méthode est généralement nommée ``factory`` ou ``build``." + +#: ../../Creational/StaticFactory/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Creational/StaticFactory/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Creational/StaticFactory/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Creational/StaticFactory/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/More/EAV/README.po b/locale/fr/LC_MESSAGES/More/EAV/README.po new file mode 100644 index 0000000..fb05d4b --- /dev/null +++ b/locale/fr/LC_MESSAGES/More/EAV/README.po @@ -0,0 +1,65 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../More/EAV/README.rst:2 +msgid "`Entity-Attribute-Value (EAV)`__" +msgstr "`Entity-Attribute-Value (EAV)`__" + +#: ../../More/EAV/README.rst:4 +msgid "" +"The Entity–attribute–value (EAV) pattern in order to implement EAV model " +"with PHP." +msgstr "" +"Le pattern Entité-attribut-valeur (EAV) afin d'implémenter le modèle EAV avec PHP." + +#: ../../More/EAV/README.rst:7 +msgid "Purpose" +msgstr "Rôle" + +#: ../../More/EAV/README.rst:9 +msgid "" +"The Entity–attribute–value (EAV) model is a data model to describe " +"entities where the number of attributes (properties, parameters) that can" +" be used to describe them is potentially vast, but the number that will " +"actually apply to a given entity is relatively modest." +msgstr "" +"Le modèle Entité-attribut-valeur (EAV) est un modèle de données permettant " +"de décrire des entités pour lesquelles le nombre d'attributs (propriétés, paramètres) " +"pouvant être utilisés pour les décrire est potentiellement vaste, mais le nombre qui " +"s'appliquera réellement à une entité donnée est relativement modeste." + +#: ../../More/EAV/README.rst:15 +msgid "Examples" +msgstr "Exemples" + +#: ../../More/EAV/README.rst:17 +msgid "Check full work example in `example.php`_ file." +msgstr "" + +#: ../../More/EAV/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../More/EAV/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../More/EAV/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../More/EAV/README.rst:85 +msgid "Test" +msgstr "Test" + diff --git a/locale/fr/LC_MESSAGES/More/README.po b/locale/fr/LC_MESSAGES/More/README.po new file mode 100644 index 0000000..93f84c6 --- /dev/null +++ b/locale/fr/LC_MESSAGES/More/README.po @@ -0,0 +1,17 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"Last-Translator: TTC_ \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.5.4\n" +"Language: fr\n" +"Language-Team: \n" + +#: ../../More/README.rst:2 +msgid "More" +msgstr "En savoir plus" diff --git a/locale/fr/LC_MESSAGES/More/Repository/README.po b/locale/fr/LC_MESSAGES/More/Repository/README.po new file mode 100644 index 0000000..57da008 --- /dev/null +++ b/locale/fr/LC_MESSAGES/More/Repository/README.po @@ -0,0 +1,68 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-05-29 12:18+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../More/Repository/README.rst:2 +msgid "`Repository`__" +msgstr "`Repository`__" + +#: ../../More/Repository/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../More/Repository/README.rst:7 +msgid "" +"Mediates between the domain and data mapping layers using a collection-like " +"interface for accessing domain objects. Repository encapsulates the set of " +"objects persisted in a data store and the operations performed over them, " +"providing a more object-oriented view of the persistence layer. Repository " +"also supports the objective of achieving a clean separation and one-way " +"dependency between the domain and data mapping layers." +msgstr "" +"Assure la médiation entre les couches de domaine et de mappage de données en " +"utilisant une interface de type collection pour accéder aux objets de domaine. " +"Repository encapsule l'ensemble des objets persistés dans un stockage de données " +"et les opérations effectuées sur eux, fournissant une vue orientée objet de la " +"couche de persistance. Repository permet également de réaliser une séparation nette " +"et une dépendance unidirectionnelle entre les couches de domaine et de mappage de données." + +#: ../../More/Repository/README.rst:16 +msgid "Examples" +msgstr "Exemples" + +#: ../../More/Repository/README.rst:18 +msgid "" +"Doctrine 2 ORM: there is Repository that mediates between Entity and DBAL " +"and contains methods to retrieve objects" +msgstr "" +"Doctrine 2 ORM : Le Repository sert de médiateur entre Entity et DBAL et " +"contient des méthodes pour récupérer les objets." + +#: ../../More/Repository/README.rst:20 +msgid "Laravel Framework" +msgstr "Laravel Framework" + +#: ../../More/Repository/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../More/Repository/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../More/Repository/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../More/Repository/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/More/ServiceLocator/README.po b/locale/fr/LC_MESSAGES/More/ServiceLocator/README.po new file mode 100644 index 0000000..905ee0f --- /dev/null +++ b/locale/fr/LC_MESSAGES/More/ServiceLocator/README.po @@ -0,0 +1,82 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-05-29 12:18+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../More/ServiceLocator/README.rst:2 +msgid "`Service Locator`__" +msgstr "`Service Locator`__" + +#: ../../More/ServiceLocator/README.rst:4 +msgid "**THIS IS CONSIDERED TO BE AN ANTI-PATTERN!**" +msgstr "**CECI EST CONSIDÉRÉ COMME UN ANTI-PATTERN !**" + +#: ../../More/ServiceLocator/README.rst:4 +msgid "" +"Service Locator is considered for some people an anti-pattern. " +"It violates the Dependency Inversion principle. Service Locator " +"hides class' dependencies instead of exposing them as you would " +"do using the Dependency Injection. In case of changes of those " +"dependencies you risk to break the functionality of classes which " +"are using them, making your system difficult to maintain." +msgstr "" +"Le Service Locator est considéré par certains comme un anti-pattern. " +"Il viole le principe d'inversion des dépendances. Le Service Locator " +"cache les dépendances des classes au lieu de les exposer comme vous le " +"feriez en utilisant l'injection de dépendances. En cas de modification " +"de ces dépendances, vous risquez de casser la fonctionnalité des classes " +"qui les utilisent, ce qui rend votre système difficile à maintenir." + +#: ../../More/ServiceLocator/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../More/ServiceLocator/README.rst:9 +msgid "" +"To implement a loosely coupled architecture in order to get better testable," +" maintainable and extendable code. DI pattern and Service Locator pattern " +"are an implementation of the Inverse of Control pattern." +msgstr "" +"Mettre en œuvre une architecture faiblement couplée afin d'obtenir un code " +"plus facile à tester, à maintenir et à étendre. Le modèle DI et le modèle " +"Service Locator sont une mise en œuvre du modèle Inverse of Control." + +#: ../../More/ServiceLocator/README.rst:12 +msgid "Usage" +msgstr "Rôle" + +#: ../../More/ServiceLocator/README.rst:14 +msgid "" +"With ``ServiceLocator`` you can register a service for a given interface. By" +" using the interface you can retrieve the service and use it in the classes " +"of the application without knowing its implementation. You can configure and" +" inject the Service Locator object on bootstrap." +msgstr "" +"Avec ServiceLocator, vous pouvez enregistrer un service pour une interface donnée. " +"En utilisant l'interface, vous pouvez récupérer le service et l'utiliser dans les " +"classes de l'application sans connaître son implémentation. Vous pouvez configurer " +"et injecter l'objet Service Locator au démarrage." + +#: ../../More/ServiceLocator/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../More/ServiceLocator/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../More/ServiceLocator/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../More/ServiceLocator/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/README.po b/locale/fr/LC_MESSAGES/README.po new file mode 100644 index 0000000..235378a --- /dev/null +++ b/locale/fr/LC_MESSAGES/README.po @@ -0,0 +1,117 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"Last-Translator: TTC_ \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.5.4\n" +"Language: fr\n" +"Language-Team: \n" + +#: ../../README.rst:5 +msgid "DesignPatternsPHP" +msgstr "Patrons de conception PHP" + +#: ../../README.rst:11 +msgid "" +"This is a collection of known `design patterns`_ and some sample code how to " +"implement them in PHP. Every pattern has a small list of examples." +msgstr "" +"Voici une collection de `design patterns`_ connus et d'exemples de code pour " +"les implémenter en PHP. Chaque modèle est accompagné d'une petite liste d'exemples." + +#: ../../README.rst:16 +msgid "" +"I think the problem with patterns is that often people do know them but " +"don't know when to apply which." +msgstr "" +"Je pense que le problème avec les patrons de conception provient du fait que, si souvent les gens les connaissent, ils " +"ne savent pas quand les implémenter." + +#: ../../README.rst:20 +msgid "Patterns" +msgstr "Patterns" + +#: ../../README.rst:22 +msgid "" +"The patterns can be structured in roughly three different categories. Please " +"click on **the title of every pattern's page** for a full explanation of the " +"pattern on Wikipedia." +msgstr "" +"Les patrons de conception peuvent être structurés en trois catégories différentes. Veuillez " +"cliquer sur **le titre de la page de chaque patron** pour une explication complète " +"sur Wikipedia." + +#: ../../README.rst:35 +msgid "Contribute" +msgstr "Contribuer" + +#: ../../README.rst:37 +msgid "" +"Please feel free to fork and extend existing or add your own examples and " +"send a pull request with your changes! To establish a consistent code " +"quality, please check your code using `PHP CodeSniffer`_ against `PSR2 " +"standard`_ using ``./vendor/bin/phpcs -p --standard=PSR2 --ignore=vendor .``." +msgstr "" +"N'hésitez pas à forker et enrichir les exemples existants ou bien ajouter vos propres exemples et " +"créer une pull request avec vos changements ! Pour établir une qualité de code cohérente, " +"veuillez vérifier votre code en utilisant `PHP CodeSniffer`_ avec `PSR2 " +"standard`_ en utilisant ``./vendor/bin/phpcs -p --standard=PSR2 --ignore=vendor .``." + +#: ../../README.rst:44 +msgid "License" +msgstr "License" + +#: ../../README.rst:46 +msgid "(The MIT License)" +msgstr "(The MIT License)" + +#: ../../README.rst:48 +msgid "Copyright (c) 2011 - 2016 `Dominik Liebler`_ and `contributors`_" +msgstr "Copyright (c) 2011 - 2016 `Dominik Liebler`_ and `contributors`_" + +#: ../../README.rst:50 +msgid "" +"Permission is hereby granted, free of charge, to any person obtaining a copy " +"of this software and associated documentation files (the 'Software'), to " +"deal in the Software without restriction, including without limitation the " +"rights to use, copy, modify, merge, publish, distribute, sublicense, and/or " +"sell copies of the Software, and to permit persons to whom the Software is " +"furnished to do so, subject to the following conditions:" +msgstr "" +"Permission is hereby granted, free of charge, to any person obtaining a copy " +"of this software and associated documentation files (the 'Software'), to " +"deal in the Software without restriction, including without limitation the " +"rights to use, copy, modify, merge, publish, distribute, sublicense, and/or " +"sell copies of the Software, and to permit persons to whom the Software is " +"furnished to do so, subject to the following conditions:" + +#: ../../README.rst:58 +msgid "" +"The above copyright notice and this permission notice shall be included in " +"all copies or substantial portions of the Software." +msgstr "" +"The above copyright notice and this permission notice shall be included in " +"all copies or substantial portions of the Software." + +#: ../../README.rst:61 +msgid "" +"THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR " +"IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, " +"FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE " +"AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER " +"LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING " +"FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS " +"IN THE SOFTWARE." +msgstr "" +"THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR " +"IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, " +"FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE " +"AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER " +"LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING " +"FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS " +"IN THE SOFTWARE." diff --git a/locale/fr/LC_MESSAGES/Structural/Adapter/README.po b/locale/fr/LC_MESSAGES/Structural/Adapter/README.po new file mode 100644 index 0000000..af0bd8b --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/Adapter/README.po @@ -0,0 +1,64 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/Adapter/README.rst:2 +msgid "`Adapter / Wrapper`__" +msgstr "`Adapter / Wrapper`__" + +#: ../../Structural/Adapter/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/Adapter/README.rst:7 +msgid "" +"To translate one interface for a class into a compatible interface. An " +"adapter allows classes to work together that normally could not because of " +"incompatible interfaces by providing its interface to clients while using " +"the original interface." +msgstr "" +"Adapter permet de convertir l'interface d'une classe en une autre interface attendue. " +"Il fait fonctionner ensemble des classes qui n'auraient pas pu fonctionner sans lui, à cause d'une " +"incompatibilité d'interfaces" + +#: ../../Structural/Adapter/README.rst:13 +msgid "Examples" +msgstr "Exemples" + +#: ../../Structural/Adapter/README.rst:15 +msgid "DB Client libraries adapter" +msgstr "" + +#: ../../Structural/Adapter/README.rst:16 +msgid "" +"using multiple different webservices and adapters normalize data so that the" +" outcome is the same for all" +msgstr "" +"Lors de l'utilisation de plusieurs services Web, les adaptateurs permettent de " +"normaliser les données afin que le résultat soit le même pour tous." + +#: ../../Structural/Adapter/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/Adapter/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/Adapter/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/Adapter/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Structural/Bridge/README.po b/locale/fr/LC_MESSAGES/Structural/Bridge/README.po new file mode 100644 index 0000000..b55ca82 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/Bridge/README.po @@ -0,0 +1,44 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/Bridge/README.rst:2 +msgid "`Bridge`__" +msgstr "`Bridge`__" + +#: ../../Structural/Bridge/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/Bridge/README.rst:7 +msgid "" +"Decouple an abstraction from its implementation so that the two can vary " +"independently." +msgstr "" +"Découpler une abstraction de son implémentation afin que les deux puissent varier indépendamment." + +#: ../../Structural/Bridge/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/Bridge/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/Bridge/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/Bridge/README.rst:85 +msgid "Test" +msgstr "Test" \ No newline at end of file diff --git a/locale/fr/LC_MESSAGES/Structural/Composite/README.po b/locale/fr/LC_MESSAGES/Structural/Composite/README.po new file mode 100644 index 0000000..5c59970 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/Composite/README.po @@ -0,0 +1,57 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/Composite/README.rst:2 +msgid "`Composite`__" +msgstr "`Composite`__" + +#: ../../Structural/Composite/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/Composite/README.rst:7 +msgid "" +"To treat a group of objects the same way as a single instance of the object." +msgstr "" +"Traiter un groupe d'objets de la même manière qu'une seule instance." + +#: ../../Structural/Composite/README.rst:11 +msgid "Examples" +msgstr "Exemples" + +#: ../../Structural/Composite/README.rst:13 +msgid "" +"a form class instance handles all its form elements like a single instance " +"of the form, when ``render()`` is called, it subsequently runs through all " +"its child elements and calls ``render()`` on them" +msgstr "" +"Une instance de classe de formulaire traitant tous ses éléments de formulaire " +"comme une seule instance du formulaire. Lorsque ``render()`` est appelé, il passe " +"ensuite par tous ses éléments enfants et appelle ``render()`` sur eux." + +#: ../../Structural/Composite/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/Composite/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/Composite/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/Composite/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Structural/DataMapper/README.po b/locale/fr/LC_MESSAGES/Structural/DataMapper/README.po new file mode 100644 index 0000000..70dc6f5 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/DataMapper/README.po @@ -0,0 +1,77 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/DataMapper/README.rst:2 +msgid "`Data Mapper`__" +msgstr "`Data Mapper`__" + +#: ../../Structural/DataMapper/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/DataMapper/README.rst:7 +msgid "" +"A Data Mapper, is a Data Access Layer that performs bidirectional transfer " +"of data between a persistent data store (often a relational database) and an" +" in memory data representation (the domain layer). The goal of the pattern " +"is to keep the in memory representation and the persistent data store " +"independent of each other and the data mapper itself. The layer is composed " +"of one or more mappers (or Data Access Objects), performing the data " +"transfer. Mapper implementations vary in scope. Generic mappers will handle " +"many different domain entity types, dedicated mappers will handle one or a " +"few." +msgstr "" +"Un Data Mapper est une couche d'accès aux données qui effectue un transfert bidirectionnel " +"de données entre un stockage de données permanent (souvent une base de données relationnelle) et " +"une représentation de données en mémoire (la couche de domaine). L'objectif de ce modèle est de " +"faire en sorte que la représentation en mémoire et le stock de données permanent soient indépendants " +"l'un de l'autre et du Data Mapper lui-même. La couche est composée d'un ou plusieurs mappeurs " +"(ou objets d'accès aux données), qui effectuent le transfert de données. Les mappeurs génériques " +"traiteront de nombreux types d'entités de domaine différents, les mappeurs spécialisés " +"n'en traiteront qu'un ou quelques-uns." + +#: ../../Structural/DataMapper/README.rst:17 +msgid "" +"The key point of this pattern is, unlike Active Record pattern, the data " +"model follows Single Responsibility Principle." +msgstr "" +"Le point clé de ce modèle est que, contrairement au pattern [Active Record](https://en.wikipedia.org/wiki/Active_record_pattern), " +"le modèle de données suit le principe de responsabilité unique." + +#: ../../Structural/DataMapper/README.rst:21 +msgid "Examples" +msgstr "Examples" + +#: ../../Structural/DataMapper/README.rst:23 +msgid "" +"DB Object Relational Mapper (ORM) : Doctrine2 uses DAO named as " +"\"EntityRepository\"" +msgstr "" +"DB Object Relational Mapper (ORM) : Doctrine2 utilise un DAO nommé \"EntityRepository\"." + +#: ../../Structural/DataMapper/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/DataMapper/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/DataMapper/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/DataMapper/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Structural/Decorator/README.po b/locale/fr/LC_MESSAGES/Structural/Decorator/README.po new file mode 100644 index 0000000..822dcb7 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/Decorator/README.po @@ -0,0 +1,53 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/Decorator/README.rst:2 +msgid "`Decorator`__" +msgstr "`Decorator`__" + +#: ../../Structural/Decorator/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/Decorator/README.rst:7 +msgid "To dynamically add new functionality to class instances." +msgstr "Ajoute dynamiquement de nouvelles fonctionnalités aux instances de classe." + +#: ../../Structural/Decorator/README.rst:10 +msgid "Examples" +msgstr "Exemples" + +#: ../../Structural/Decorator/README.rst:13 +msgid "" +"Web Service Layer: Decorators JSON and XML for a REST service (in this case," +" only one of these should be allowed of course)" +msgstr "" +"Couche de service web : Décorateurs JSON et XML pour un service REST " +"(dans ce cas, un seul d'entre eux doit être autorisé bien sûr)" + +#: ../../Structural/Decorator/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/Decorator/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/Decorator/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/Decorator/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Structural/DependencyInjection/README.po b/locale/fr/LC_MESSAGES/Structural/DependencyInjection/README.po new file mode 100644 index 0000000..ea62aba --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/DependencyInjection/README.po @@ -0,0 +1,84 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/DependencyInjection/README.rst:2 +msgid "`Dependency Injection`__" +msgstr "`Dependency Injection`__" + +#: ../../Structural/DependencyInjection/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/DependencyInjection/README.rst:7 +msgid "" +"To implement a loosely coupled architecture in order to get better testable," +" maintainable and extendable code." +msgstr "" +"Implémenter une architecture faiblement couplée afin d'obtenir une meilleur " +"testabilité, maintenabilité et extensibilité du code." + +#: ../../Structural/DependencyInjection/README.rst:11 +msgid "Usage" +msgstr "Usage" + +#: ../../Structural/DependencyInjection/README.rst:13 +msgid "" +"``DatabaseConfiguration`` gets injected and ``DatabaseConnection`` will get all that it " +"needs from ``$config``. Without DI, the configuration would be created " +"directly in ``DatabaseConnection``, which is not very good for testing and " +"extending it." +msgstr "" +"``DatabaseConfiguration`` est injectée et ``DatabaseConnexion`` obtiendra tout ce dont " +"elle a besoin à partir de ``$config``. Sans DI, la configuration serait créée directement " +"dans ``DatabaseConnexion``, ce qui n'est pas très bon pour les tests et les extensions." + +#: ../../Structural/DependencyInjection/README.rst:26 +msgid "Examples" +msgstr "Exemples" + +#: ../../Structural/DependencyInjection/README.rst:28 +msgid "" +"The Doctrine2 ORM uses dependency injection e.g. for configuration that is " +"injected into a ``Connection`` object. For testing purposes, one can easily " +"create a mock object of the configuration and inject that into the " +"``Connection`` object" +msgstr "" +"L'ORM Doctrine2 utilise l'injection de dépendances, par exemple pour la configuration " +"qui est injectée dans un objet ``Connexion``. À des fins de test, on peut facilement " +"créer un objet fantaisie de la configuration et l'injecter dans l'objet ``Connexion``." + +#: ../../Structural/DependencyInjection/README.rst:32 +msgid "" +"many frameworks already have containers for DI that create " +"objects via a configuration array and inject them where needed (i.e. in " +"Controllers)" +msgstr "" +"De nombreux frameworks disposent déjà de conteneurs pour DI qui créent des objets via un " +"tableau de configuration et les injectent là où c'est nécessaire (c'est-à-dire dans les contrôleurs)." + +#: ../../Structural/DependencyInjection/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/DependencyInjection/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/DependencyInjection/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/DependencyInjection/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Structural/Facade/README.po b/locale/fr/LC_MESSAGES/Structural/Facade/README.po new file mode 100644 index 0000000..ec2730c --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/Facade/README.po @@ -0,0 +1,83 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/Facade/README.rst:2 +msgid "`Facade`__" +msgstr "`Facade`__" + +#: ../../Structural/Facade/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/Facade/README.rst:7 +msgid "" +"The primary goal of a Facade Pattern is not to avoid you having to read the" +"manual of a complex API. It's only a side-effect. The first goal is to" +"reduce coupling and follow the Law of Demeter." +msgstr "" +"L'objectif premier d'un modèle de façade n'est pas de vous éviter de devoir lire " +"le manuel d'une API complexe. Ce n'est qu'un effet secondaire. Le premier objectif " +"est de réduire le couplage et de suivre la loi de Déméter." + +#: ../../Structural/Facade/README.rst:11 +msgid "" +"A Facade is meant to decouple a client and a sub-system by embedding many " +"(but sometimes just one) interface, and of course to reduce complexity." +msgstr "" +"Une façade est destinée à découpler un client et un système secondaire en intégrant " +"plusieurs (ou parfois une seule) interfaces, et bien sûr à réduire la complexité." + +#: ../../Structural/Facade/README.rst:15 +msgid "A facade does not forbid you the access to the sub-system" +msgstr "Une façade ne vous interdit pas l'accès au sous-système." + +#: ../../Structural/Facade/README.rst:16 +msgid "You can (you should) have multiple facades for one sub-system" +msgstr "Vous pouvez (vous devriez) avoir plusieurs façades pour un seul sous-système." + +#: ../../Structural/Facade/README.rst:18 +msgid "" +"That's why a good facade has no ``new`` in it. If there are multiple " +"creations for each method, it is not a Facade, it's a Builder or a " +"[Abstract\\|Static\\|Simple] Factory [Method]." +msgstr "" +"C'est pourquoi une bonne façade n'a pas de ``new``. S'il y a plusieurs créations " +"pour chaque méthode, ce n'est pas une façade, c'est un Builder ou une [méthode] " +"d'usine [abstraite|statique|simple]." + +#: ../../Structural/Facade/README.rst:22 +msgid "" +"The best facade has no ``new`` and a constructor with interface-type-hinted " +"parameters. If you need creation of new instances, use a Factory as " +"argument." +msgstr "" +"La meilleure façade n'a pas de ``new`` et un constructeur avec des paramètres indiquant " +"le type d'interface. Si vous avez besoin de créer de nouvelles instances, utilisez un " +"Factory comme argument." + +#: ../../Structural/Facade/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/Facade/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/Facade/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/Facade/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Structural/FluentInterface/README.po b/locale/fr/LC_MESSAGES/Structural/FluentInterface/README.po new file mode 100644 index 0000000..2785a11 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/FluentInterface/README.po @@ -0,0 +1,57 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/FluentInterface/README.rst:2 +msgid "`Fluent Interface`__" +msgstr "`Fluent Interface`__" + +#: ../../Structural/FluentInterface/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/FluentInterface/README.rst:7 +msgid "" +"To write code that is easy readable just like sentences in a natural " +"language (like English)." +msgstr "" +"Écrire du code qui soit facilement lisible, tout comme les phrases d'une " +"langue naturelle (comme l'anglais)." + +#: ../../Structural/FluentInterface/README.rst:11 +msgid "Examples" +msgstr "Exemples" + +#: ../../Structural/FluentInterface/README.rst:13 +msgid "Doctrine2's QueryBuilder works something like that example class below" +msgstr "Le QueryBuilder de Doctrine2 fonctionne comme la classe d'exemple ci-dessous." + +#: ../../Structural/FluentInterface/README.rst:15 +msgid "PHPUnit uses fluent interfaces to build mock objects" +msgstr "PHPUnit utilise Fluent Interface pour construire des mocks." + +#: ../../Structural/FluentInterface/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/FluentInterface/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/FluentInterface/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/FluentInterface/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Structural/Flyweight/README.po b/locale/fr/LC_MESSAGES/Structural/Flyweight/README.po new file mode 100644 index 0000000..4a8a161 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/Flyweight/README.po @@ -0,0 +1,52 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/Flyweight/README.rst:2 +msgid "`Flyweight`__" +msgstr "`Flyweight`__" + +#: ../../Structural/Flyweight/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/Flyweight/README.rst:7 +msgid "" +"To minimise memory usage, a Flyweight shares as much as possible memory " +"with similar objects. It is needed when a large amount of objects is used" +" that don't differ much in state. A common practice is to hold state in " +"external data structures and pass them to the flyweight object when " +"needed." +msgstr "" +"Pour minimiser l'utilisation de la mémoire, un Flyweight partage autant que possible " +"la mémoire avec des objets similaires. Cela est nécessaire lorsqu'on utilise un grand " +"nombre d'objets dont l'état ne diffère pas beaucoup. Une pratique courante consiste à " +"conserver l'état dans des structures de données externes et à les transmettre à l'objet " +"Flyweight en cas de besoin." + +#: ../../Structural/Flyweight/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/Flyweight/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/Flyweight/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/Flyweight/README.rst:85 +msgid "Test" +msgstr "Test" + diff --git a/locale/fr/LC_MESSAGES/Structural/Proxy/README.po b/locale/fr/LC_MESSAGES/Structural/Proxy/README.po new file mode 100644 index 0000000..bd3bfae --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/Proxy/README.po @@ -0,0 +1,57 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/Proxy/README.rst:2 +msgid "`Proxy`__" +msgstr "`Proxy`__" + +#: ../../Structural/Proxy/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/Proxy/README.rst:7 +msgid "To interface to anything that is expensive or impossible to duplicate." +msgstr "" +"Créer une interface pour interagir avec toute classe qu'il est difficile " +"ou impossible d'utiliser dans sa forme originale." + +#: ../../Structural/Proxy/README.rst:10 +msgid "Examples" +msgstr "Exemples" + +#: ../../Structural/Proxy/README.rst:12 +msgid "" +"Doctrine2 uses proxies to implement framework magic (e.g. lazy " +"initialization) in them, while the user still works with his own entity " +"classes and will never use nor touch the proxies" +msgstr "" +"Doctrine2 utilise des proxies pour y implémenter la magie du framework " +"(e.g. lazy initialization), tandis que l'utilisateur travaille toujours avec " +"ses propres entités et n'utilisera ni ne touchera jamais les proxies" + +#: ../../Structural/Proxy/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/Proxy/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/Proxy/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/Proxy/README.rst:85 +msgid "Test" +msgstr "Test" diff --git a/locale/fr/LC_MESSAGES/Structural/README.po b/locale/fr/LC_MESSAGES/Structural/README.po new file mode 100644 index 0000000..17cb07f --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/README.po @@ -0,0 +1,26 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Language-Team: \n" + +#: ../../Structural/README.rst:2 +msgid "`Structural`__" +msgstr "`Structuraux`__" + +#: ../../Structural/README.rst:4 +msgid "" +"In Software Engineering, Structural Design Patterns are Design Patterns that" +" ease the design by identifying a simple way to realize relationships " +"between entities." +msgstr "" +"En ingénierie logicielle, les patrons de conception structuraux facilitent la conception " +"en identifiant une manière simple de réaliser des relations entre les entités." diff --git a/locale/fr/LC_MESSAGES/Structural/Registry/README.po b/locale/fr/LC_MESSAGES/Structural/Registry/README.po new file mode 100644 index 0000000..2349a55 --- /dev/null +++ b/locale/fr/LC_MESSAGES/Structural/Registry/README.po @@ -0,0 +1,49 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: DesignPatternsPHP 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-03-13 12:18+0200\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Last-Translator: TTC_ \n" +"Language-Team: \n" +"X-Generator: Poedit 1.5.4\n" + +#: ../../Structural/Registry/README.rst:2 +msgid "`Registry`__" +msgstr "`Registry`__" + +#: ../../Structural/Registry/README.rst:5 +msgid "Purpose" +msgstr "Rôle" + +#: ../../Structural/Registry/README.rst:7 +msgid "" +"To implement a central storage for objects often used throughout the " +"application, is typically implemented using an abstract class with only " +"static methods (or using the Singleton pattern)" +msgstr "" +"Mettre en œuvre un stockage central pour les objets souvent utilisés dans " +"l'application, on utilise généralement une classe abstraite avec uniquement " +"des méthodes statiques (ou en utilisant le modèle Singleton). N'oubliez pas " +"que cela introduit un état global, ce qui doit être évité à tout moment ! " +"Implémentez-le plutôt en utilisant l'injection de dépendances !" + +#: ../../Structural/Proxy/README.rst:13 +msgid "UML Diagram" +msgstr "Diagramme UML" + +#: ../../Structural/Proxy/README.rst:20 +msgid "Code" +msgstr "Code" + +#: ../../Structural/Proxy/README.rst:22 +msgid "You can also find this code on `GitHub`_" +msgstr "Vous pouvez également trouver ce code sur `GitHub`_" + +#: ../../Structural/Proxy/README.rst:85 +msgid "Test" +msgstr "Test"