commit f302545ac36b66e30effe1f056c6328b839710c6 Author: machaonix Date: Thu Jan 13 21:54:50 2022 +0100 Initial commit diff --git a/documentation/IHM.pdf b/documentation/IHM.pdf new file mode 100644 index 0000000..90fdcc5 Binary files /dev/null and b/documentation/IHM.pdf differ diff --git a/documentation/Presentation.flv b/documentation/Presentation.flv new file mode 100644 index 0000000..8d3780d Binary files /dev/null and b/documentation/Presentation.flv differ diff --git a/documentation/Projet_Tutoré.pdf b/documentation/Projet_Tutoré.pdf new file mode 100644 index 0000000..f17daa1 Binary files /dev/null and b/documentation/Projet_Tutoré.pdf differ diff --git a/documentation/csharp.pdf b/documentation/csharp.pdf new file mode 100644 index 0000000..dead5cd Binary files /dev/null and b/documentation/csharp.pdf differ diff --git a/preuves/preuves.pdf b/preuves/preuves.pdf new file mode 100644 index 0000000..f53e0d4 Binary files /dev/null and b/preuves/preuves.pdf differ diff --git a/source/repos/notre_solution/Données/Chargeur.cs b/source/repos/notre_solution/Données/Chargeur.cs new file mode 100644 index 0000000..6b493fa --- /dev/null +++ b/source/repos/notre_solution/Données/Chargeur.cs @@ -0,0 +1,22 @@ +using notre_bibliotheque; +using System; +using System.Collections.Generic; +using System.Text; + +namespace données +{ + public abstract class Chargeur : IChargeurDeCompte, IChargeurDeLangage, IChargeurDItems, IChargeurDeGestionaire + + { + public Chargeur(string path) + { + + } + + public abstract Gestionaire ChargerGestionaireDeCompte(); + public abstract Gestionaire ChargerGestionaireDeLangage(); + public abstract IList ChargerLesComptes(); + public abstract IList ChargerLesItems(); + public abstract IList ChargerLesLangages(); + } +} diff --git a/source/repos/notre_solution/Données/Data.cs b/source/repos/notre_solution/Données/Data.cs new file mode 100644 index 0000000..e001c75 --- /dev/null +++ b/source/repos/notre_solution/Données/Data.cs @@ -0,0 +1,102 @@ +using notre_bibliotheque; +using System; +using System.Collections.Generic; +using System.Text; + +namespace données +{ + /// + /// cette classe sert à instancier tous les langages et les comptes + /// ce sont les données qui seront utilisées dans l'application + /// + public class Data + { + //toutes les listes d'auteurs + public static IList LesAuteurs { get; set; } = new List() { "inconnue", }; + public static IList KotlinAuteurs { get; set; } = new List() { "JetBrains", }; + public static IList JavaAuteurs { get; set; } = new List() { "Sun Microsystems", }; + public static IList DartAuteurs { get; set; } = new List() { "Lars Bak", "Kasper Lund", }; + public static IList CAuteurs { get; set; } = new List() { "Dennis Ritchie", "Brian Kernighan", }; + public static IList BashAuteurs { get; set; } = new List() { "Brian Fox", }; + public static IList GoAuteurs { get; set; } = new List() { "Robert Griesemer", "Rob Pike", "Ken Thompson", }; + public static IList FsharpAuteurs { get; set; } = new List() { "Don Syme", "Microsoft Research", }; + public static IList PythonAuteurs { get; set; } = new List() { "Guido Van Rossum", }; + public static IList CPlusPlusAuteurs { get; set; } = new List() { "Bjarne Stroustrup", }; + public static IList JavaScriptAuteurs { get; set; } = new List() { "Brenden Eich", }; + public static IList CsharpAuteurs { get; set; } = new List() { "Microsoft", }; + public static IList RubyAuteurs { get; set; } = new List() { "Yukihiro Matsumoto", }; + public static IList PhpAuteurs { get; set; } = new List() { "Ramus Lerdorf", }; + + //toutes les listes de logiciels + public static IList LesLogiciels { get; set; } = new List() { "inconnue",}; + public static IList JavaLogiciels { get; set; } = new List() { "Eclipse", "Azureus","OpenOffice (couplé à du C++)","Tout l'environnement Android et BlackBerry",}; + public static IList GoLogiciels { get; set; } = new List() { "Google Map", "Google Music", "Youtube", }; + public static IList PythonLogiciels { get; set; } = new List() { "Instagram", "Spotify", "Raspberry Pi", }; + public static IList CPlusPlusLogiciels { get; set; } = new List() { "Interface Utilisateur IPod", "Microsoft Windows OS", "OpenOffice (couplé à du Java)", "Microsoft Office", "Dobe Photoshop", "Mozilla Firefox", }; + public static IList RubyLogiciels { get; set; } = new List() { "Rubygems", }; + + + + //toutes les listes de paradigmes + public static IList LesParadigmes { get; set; } = new List(){"Imperatif" ,"Procédural","Objet","Fonctionel",}; + public static IList KotlinParadigmes { get; set; } = new List() { "Objet", "Fonctionel", }; + public static IList DartParadigmes { get; set; } = new List() { "Objet", }; + public static IList CParadigmes { get; set; } = new List() { "Impératif", "Procédural", "Structuré", }; + public static IList JavaParadigmes { get; set; } = new List() { "Objet", "Structuré", "Impératif", "Fonctionel", }; + public static IList GoParadigmes { get; set; } = new List() { "Langage Compilé", "Programmation Concurrente", "Imprératif", "Structuré", }; + public static IList FsharpParadigmes { get; set; } = new List() { "Fonctionnel", "Impératif", "Objet", }; + public static IList PythonParadigmes { get; set; } = new List() { "Fonctionnel", "Impératif", "Objet", }; + public static IList CPlusPlusParadigmes { get; set; } = new List() { "Générique", "Objet", "Procédural", }; + public static IList JavaScriptParadigmes { get; set; } = new List() { "Script", "Objet", "Impératif", "Fonctionnel", "Orienté Prototype", }; + public static IList CsharpParadigmes { get; set; } = new List() { "Structuré", "Impératif", "Objet", }; + public static IList RubyParadigmes { get; set; } = new List() { "Interpreté", "Objet", "Impératif", "Concurrent", "Fonctionnel", }; + public static IList PhpParadigmes { get; set; } = new List() { "Procédural", "Objet", "Impératif", "Reflexif", "Fonctionnel", "Interpreté", }; + + //tous les exemples + public static string javaExemple = "class HelloWorld {\npublic static void main(String[] args){\nSystem.out.println(\"Hello, World!\");\n}\n}"; + public static string dartExemple = "void main() {\nprint('Hello World!');\n}"; + public static string bashExemple = "#!/bin/bash\nvar=\"Hello World\"\necho \"$var\""; + public static string cExemple = "#include \nint main(void){\nprintf(\"hello, world\\n\");\nreturn 0;\n}"; + public static string kotlinExemple = "class Greeter(val name: String) {\nfun greet() {\nprintln(\"Hello, $name\")\n}\n}\n\nfun main(args: Array) {\nGreeter(args[0]).greet()\n}"; + public static string goExemple = "package main\nimport \"fmt\"\nfunc main(){\nfmt.Printf(\"Hello, world\\n\")\n}"; + public static string cPlusPlusExemple = "#include\nint main()\n{\nstd::cout << \"Hello, new world!\\n\";\n}"; + public static string rubyExemple = "# The Greeter class\nclass Greeter\ndef initialize(name)\n@name = name.capitalize\nend\n\ndef salute\nputs \"Hello #{@name}!\"\nend\nend\n# Create a new object\ng = Greeter.new(\"world\")\n# Output \"Hello World!\"\ng.salute"; + public static string phpExemple = "\n\n ou \n\n"; + public static string fsharpExemple = "printfn \"Hello World!\""; + public static string pythonExemple = "# src/hello.py\nprint(\"Hello world!\")"; + public static string javaScriptExemple = "console.log('Hello world');"; + public static string csharpExemple = "Console.WriteLine(\"Hello World!\");"; + + //les instances des langages dans la liste LesLangages + public static IList LesLangages { get; set; } = new List() { + new Langage("Kotlin", 2010, KotlinAuteurs, "https://kotlinlang.org/docs/home.html", "kotlin.png", kotlinExemple, LesLogiciels, "permet de coder lol", KotlinParadigmes, 4), + new Langage("Dart", 2011, DartAuteurs, "https://dart.dev/", "dart.png", dartExemple, LesLogiciels, "Ce langage est utilisé pour créer des applications mobiles,\nde bureau, de serveur et web.", DartParadigmes, 1), + new Langage("C", 1972, CAuteurs, "https://devdocs.io/c/", "c.png", cExemple, LesLogiciels, "Ce langage est utilisé pour les systèmes d’exploitation,\nle développement de logiciel, et le hardware.", CParadigmes, 1), + new Langage("Bash", 1989, BashAuteurs, "https://www.gnu.org/software/bash/manual/", "bash.png", bashExemple, LesLogiciels, "Ce langage permet d'écrire des scripts", LesParadigmes, 5), + new Langage("Go", 2009, GoAuteurs, "https://golang.org/", "go.png", goExemple, GoLogiciels, "Ce langage est utiliser aussi bien pour écrire des applications,\ndes scripts ou de grands systèmes.", GoParadigmes, 1), + new Langage("F#", 2002, FsharpAuteurs, "https://fsharp.org/", "fsharp.png", fsharpExemple, LesLogiciels, "Ce langage vous permet de développer ce que vous voulez.", FsharpParadigmes, 1), + new Langage("Java",1995, JavaAuteurs, "https://docs.oracle.com/en/java/javase/11/docs/api/index.html", "java.svg.png",javaExemple,JavaLogiciels,"Ce langage permet de créer et faire fonctionner\ndes applications pour ordinateurs, également utilisé sur la plupart des autres\nsupports numériques (smartphones, consoles, logiciels).",JavaParadigmes,1), + new Langage("Python", 1991,PythonAuteurs,"https://www.python.org/doc/","python.png",pythonExemple,PythonLogiciels,"Ce langage est utilisé pour le developpement web,\nde jeux videos, de logiciels, des interfaces utilisateurs\ngraphiques, ainsi en tant que langage de script.",PythonParadigmes,1), + new Langage("C++", 1983,CPlusPlusAuteurs,"https://isocpp.org/","c++.png",cPlusPlusExemple,CPlusPlusLogiciels,"Ce langage est utilisé pour développer des logiciels,\ndes systèmes d’exploitation, des jeux vidéos et des moteurs de recherche.",CPlusPlusParadigmes,1), + new Langage("JavaScript", 1996,JavaScriptAuteurs,"https://developer.mozilla.org/fr/docs/Web/JavaScript","javascript.svg.png",javaScriptExemple,LesLogiciels,"Ce langage est souvent utilisé dans les devantures de sites,\nles outils analytiques, les widgets et les interactions web",JavaScriptParadigmes,1), + new Langage("C#",2001,CsharpAuteurs,"https://isocpp.org/","csharp.png",csharpExemple,LesLogiciels,"Ce langage vous permet de développer ce que vous voulez.",CsharpParadigmes,1), + new Langage("Ruby",1995,RubyAuteurs,"https://www.ruby-lang.org/en/","ruby.svg.png",rubyExemple,RubyLogiciels,"Ce langage est utilisé pour les interfaces utilisateurs graphiques,\nles applications web et le développement web.",RubyParadigmes,1), + new Langage("PHP",1994,PhpAuteurs,"https://www.php.net/","php.svg.png",phpExemple,LesLogiciels,"Ce langage est utilisé pour le développement web, mais également\ncomme langage de programmation d’usage général.",PhpParadigmes,1), + }; + + //les instances des comptes dans la liste LesComptes + public static IList LesComptes { get; set; } = new List() { + new Compte("id1", "mdp1",true), + new Compte("id2", "mdp1"), + new Compte("id3", "mdp1"), + new Compte("id4", "mdp1"), + new Compte("id5", "mdp1"), + new Compte("id6", "mdp1"), + new Compte("id7", "mdp1"), + new Compte("id8", "mdp1"), + new Compte("id9", "mdp1"), + new Compte("id10", "mdp1"), + new Compte("id12", "mdp1"), + }; + } +} diff --git a/source/repos/notre_solution/Données/Données.csproj b/source/repos/notre_solution/Données/Données.csproj new file mode 100644 index 0000000..ce738e3 --- /dev/null +++ b/source/repos/notre_solution/Données/Données.csproj @@ -0,0 +1,19 @@ + + + + netstandard2.0 + + + + + + + + + + + + + + + diff --git a/source/repos/notre_solution/Données/IChargeurDItems.cs b/source/repos/notre_solution/Données/IChargeurDItems.cs new file mode 100644 index 0000000..0ba2521 --- /dev/null +++ b/source/repos/notre_solution/Données/IChargeurDItems.cs @@ -0,0 +1,12 @@ +using notre_bibliotheque; +using System; +using System.Collections.Generic; +using System.Text; + +namespace données +{ + interface IChargeurDItems + { + IList ChargerLesItems(); + } +} diff --git a/source/repos/notre_solution/Données/IChargeurDeCompte.cs b/source/repos/notre_solution/Données/IChargeurDeCompte.cs new file mode 100644 index 0000000..c9c5947 --- /dev/null +++ b/source/repos/notre_solution/Données/IChargeurDeCompte.cs @@ -0,0 +1,12 @@ +using notre_bibliotheque; +using System; +using System.Collections.Generic; +using System.Text; + +namespace données +{ + public interface IChargeurDeCompte + { + IList ChargerLesComptes(); + } +} diff --git a/source/repos/notre_solution/Données/IChargeurDeGestionaire.cs b/source/repos/notre_solution/Données/IChargeurDeGestionaire.cs new file mode 100644 index 0000000..cbdf223 --- /dev/null +++ b/source/repos/notre_solution/Données/IChargeurDeGestionaire.cs @@ -0,0 +1,13 @@ +using notre_bibliotheque; +using System; +using System.Collections.Generic; +using System.Text; + +namespace données +{ + public interface IChargeurDeGestionaire + { + Gestionaire ChargerGestionaireDeLangage(); + Gestionaire ChargerGestionaireDeCompte(); + } +} diff --git a/source/repos/notre_solution/Données/IChargeurDeLangage.cs b/source/repos/notre_solution/Données/IChargeurDeLangage.cs new file mode 100644 index 0000000..d1f7e91 --- /dev/null +++ b/source/repos/notre_solution/Données/IChargeurDeLangage.cs @@ -0,0 +1,12 @@ +using notre_bibliotheque; +using System; +using System.Collections.Generic; +using System.Text; + +namespace données +{ + public interface IChargeurDeLangage + { + IList ChargerLesLangages(); + } +} diff --git a/source/repos/notre_solution/Données/Stub.cs b/source/repos/notre_solution/Données/Stub.cs new file mode 100644 index 0000000..1291240 --- /dev/null +++ b/source/repos/notre_solution/Données/Stub.cs @@ -0,0 +1,44 @@ +using notre_bibliotheque; +using System; +using System.Collections.Generic; + + +namespace données +{ + /// + /// cette classe sert à charger et sauvegarder les instances de toutes les données (langages et comptes) + /// elle implemente l'interface IPercistance + /// + public class Stub : IPercistance + { + //le constructeur de la classe prend un string en parametre + public Stub(string path) {} + + /// + /// cette methode sert à charger les données; + /// elle crée un dictionnaire avec une clé de type string et une valeur de type IEnumerable, + /// elle ajoute deux éléments dans le dictionnaire : une clé Langages avec en valeur la liste LesLangages de Data, + /// et une clé Comptes avec en valeur la liste LesComptes de Data + /// + /// elle retourne le dictionnaire + public Dictionary> ChargerLesDonnées() + { + Dictionary> tmp = new Dictionary>(); + tmp.Add("Langages", Data.LesLangages); + tmp.Add("Comptes", Data.LesComptes); + return tmp; + } + + /// + /// cette méthode sert à sauvegarder les données; + /// elle prend deux parametres, une collection IEnumérable et une collection IEnumerable + /// ces collections sont les listes de langages et comptes à sauvegarder + /// + /// + /// + public void SauvegarderLesDonnées(IEnumerable langagesÀSauvegarder , IEnumerable comptesÀSauvegarder) + { + return; + } + } +} diff --git a/source/repos/notre_solution/PersDataContract/DonnésÀSerialiser.cs b/source/repos/notre_solution/PersDataContract/DonnésÀSerialiser.cs new file mode 100644 index 0000000..5ea81a9 --- /dev/null +++ b/source/repos/notre_solution/PersDataContract/DonnésÀSerialiser.cs @@ -0,0 +1,27 @@ +using notre_bibliotheque; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace PersDataContract +{ + /// + /// Permet de réunir les données à sérializer pour les écrire dans un seul fichier et ne pas avoir de pproblème de référence + /// + [DataContract] + class DonnésÀSerialiser + { + [DataMember] + public IEnumerable LangagesASauvegarder { get; private set; } + + [DataMember] + public IEnumerable ComptesASauvegarder { get; private set; } + + public DonnésÀSerialiser(IEnumerable lesLangages, IEnumerable lesComptes) + { + LangagesASauvegarder = lesLangages; + ComptesASauvegarder = lesComptes; + } + } +} diff --git a/source/repos/notre_solution/PersDataContract/MyDataContract.cs b/source/repos/notre_solution/PersDataContract/MyDataContract.cs new file mode 100644 index 0000000..6f8343e --- /dev/null +++ b/source/repos/notre_solution/PersDataContract/MyDataContract.cs @@ -0,0 +1,72 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Runtime.Serialization; +using notre_bibliotheque; + +namespace PersDataContract +{ + /// + /// Permet de sauvegarder/charger dans/depuis un fichier xml grâce au DataContract + /// + public class MyDataContract : IPercistance + { + public string FilePath { get; set; } = Path.Combine(Directory.GetCurrentDirectory(), "Pers"); + private string fileName; + private string FileNameComplet => Path.Combine(FilePath, fileName); + + /// + /// Constructeur de MyDataContract + /// + /// Nom de fichier de sauvegarde/chargement + /// Lors ce que le fichier n'existe pas, une excepetion est lancée + public MyDataContract(string fileName) + { + this.fileName = fileName; + } + /// + /// Permet de charger les donner depuis un fichier xml + /// + /// Un dictionaire avec une clef "Langages" et "Comptes" qui contiennent réspectivement des la liste des langages chargés et la liste des comptes chargés + public Dictionary> ChargerLesDonnées() + { + if (!File.Exists(FileNameComplet)) + { + throw new ArgumentException("Le fichier spécifié n'existe pas"); + } + Dictionary> DictionaireÀRetourner = new Dictionary>(); + DonnésÀSerialiser tmp; + + // Ce DataContractSerializer permet de lire un objet de type DonnésÀSerialiser + DataContractSerializer serializer = new DataContractSerializer(typeof(DonnésÀSerialiser)); + using(Stream fichierDeChargement = File.OpenRead(FileNameComplet)) + { + tmp = serializer.ReadObject(fichierDeChargement) as DonnésÀSerialiser; + } + DictionaireÀRetourner.Add("Langages", tmp.LangagesASauvegarder); + DictionaireÀRetourner.Add("Comptes", tmp.ComptesASauvegarder); + return DictionaireÀRetourner; + } + + /// + /// Permet de sauvegarder les données de l'application + /// + /// Liste des langages disponible dans l'application + /// Liste des comptes de l'application + public void SauvegarderLesDonnées(IEnumerable langagesASauvgarder, IEnumerable comptesÀSauvegarder) + { + if (!Directory.Exists(FilePath)) + { + Directory.CreateDirectory(FilePath); + } + + //Ce DataContractSerializer permet d'ecire les données de l'application dans un fichier xml tout en préservant les référances + DataContractSerializer serializer = new DataContractSerializer(typeof(DonnésÀSerialiser), new DataContractSerializerSettings() { PreserveObjectReferences = true }); + DonnésÀSerialiser tmp = new DonnésÀSerialiser(langagesASauvgarder, comptesÀSauvegarder); + using (Stream fichierDeSauvgarde = File.Create(FileNameComplet)) + { + serializer.WriteObject(fichierDeSauvgarde, tmp); + } + } + } +} diff --git a/source/repos/notre_solution/PersDataContract/PersDataContract.csproj b/source/repos/notre_solution/PersDataContract/PersDataContract.csproj new file mode 100644 index 0000000..eb94797 --- /dev/null +++ b/source/repos/notre_solution/PersDataContract/PersDataContract.csproj @@ -0,0 +1,11 @@ + + + + netstandard2.0 + + + + + + + diff --git a/source/repos/notre_solution/ProLangBin/Pers/Persist.xml b/source/repos/notre_solution/ProLangBin/Pers/Persist.xml new file mode 100644 index 0000000..d2a4540 --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/Pers/Persist.xml @@ -0,0 +1,60 @@ +trueLua.png1993https://www.lua.org/docs.htmlprint('Hello World!')5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celes procédural orienté objet à prototype fonctionnel Garry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.id1mdp1falseid2falseid3falseid4falseid5falseid6falseid7falseid8falseid9falseid10falseid12bash.png1989https://www.gnu.org/software/bash/manual/#!/bin/bash +var="Hello World" +echo "$var"5Brian FoxImperatifProcéduralObjetFonctionelinconnueBashCe langage permet d'écrire des scriptsc.png1972https://devdocs.io/c/#include <stdio.h> +int main(void){ +printf("hello, world\n"); +return 0; +}1Dennis RitchieBrian KernighanImpératifStructuréCCe langage est utilisé pour les systèmes d’exploitation, +le développement de logiciel, et le hardware.csharp.png2001https://isocpp.org/Console.WriteLine("Hello World!");1MicrosoftC#Ce langage vous permet de développer ce que vous voulez.c++.png1983#include<iostream> +int main() +{ +std::cout << "Hello, new world!\n"; +}1Bjarne StroustrupGénériqueInterface Utilisateur IPodMicrosoft Windows OSOpenOffice (couplé à du Java)Microsoft OfficeDobe PhotoshopMozilla FirefoxC++Ce langage est utilisé pour développer des logiciels, +des systèmes d’exploitation, des jeux vidéos et des moteurs de recherche.dart.png2011https://dart.dev/void main() { +print('Hello World!'); +}1Lars BakKasper LundDartCe langage est utilisé pour créer des applications mobiles, +de bureau, de serveur et web.fsharp.png2002https://fsharp.org/printfn "Hello World!"1Don SymeMicrosoft ResearchFonctionnelF#go.png2009https://golang.org/package main +import "fmt" +func main(){ +fmt.Printf("Hello, world\n") +}1Robert GriesemerRob PikeKen ThompsonLangage CompiléProgrammation ConcurrenteImprératifGoogle MapGoogle MusicYoutubeGoCe langage est utiliser aussi bien pour écrire des applications, +des scripts ou de grands systèmes.java.svg.png1995https://docs.oracle.com/en/java/javase/11/docs/api/index.htmlclass HelloWorld { +public static void main(String[] args){ +System.out.println("Hello, World!"); +} +}1Sun MicrosystemsEclipseAzureusOpenOffice (couplé à du C++)Tout l'environnement Android et BlackBerryJavaCe langage permet de créer et faire fonctionner +des applications pour ordinateurs, également utilisé sur la plupart des autres +supports numériques (smartphones, consoles, logiciels).javascript.svg.png1996https://developer.mozilla.org/fr/docs/Web/JavaScriptconsole.log('Hello world');1Brenden EichScriptOrienté PrototypeJavaScriptCe langage est souvent utilisé dans les devantures de sites, +les outils analytiques, les widgets et les interactions webkotlin.png2010https://kotlinlang.org/docs/home.htmlclass Greeter(val name: String) { +fun greet() { +println("Hello, $name") +} +} + +fun main(args: Array<String>) { +Greeter(args[0]).greet() +}4JetBrainsKotlinpermet de coder lolphp.svg.png1994https://www.php.net/<?php +echo 'Hello World'; +?> + + ou + +<?= 'Hello World' ?>1Ramus LerdorfReflexifInterpretéPHPCe langage est utilisé pour le développement web, mais également +comme langage de programmation d’usage général.python.png1991https://www.python.org/doc/# src/hello.py +print("Hello world!")1Guido Van RossumInstagramSpotifyRaspberry PiPythonCe langage est utilisé pour le developpement web, +de jeux videos, de logiciels, des interfaces utilisateurs +graphiques, ainsi en tant que langage de script.ruby.svg.png1995https://www.ruby-lang.org/en/# The Greeter class +class Greeter +def initialize(name) +@name = name.capitalize +end + +def salute +puts "Hello #{@name}!" +end +end +# Create a new object +g = Greeter.new("world") +# Output "Hello World!" +g.salute1Yukihiro MatsumotoConcurrentRubygemsRubyCe langage est utilisé pour les interfaces utilisateurs graphiques, +les applications web et le développement web. \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/Pers/Persistance.xml b/source/repos/notre_solution/ProLangBin/Pers/Persistance.xml new file mode 100644 index 0000000..6a10d18 --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/Pers/Persistance.xml @@ -0,0 +1,84 @@ +trueLua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.bash.png1989https://www.gnu.org/software/bash/manual/#!/bin/bash +var="Hello World" +echo "$var"5Brian FoxImperatifProcéduralObjetFonctionelinconnueBashCe langage permet d'écrire des scriptsc.png1972https://devdocs.io/c/#include <stdio.h> +int main(void){ +printf("hello, world\n"); +return 0; +}1Dennis RitchieBrian KernighanImpératifProcéduralStructuréinconnueCCe langage est utilisé pour les systèmes d’exploitation, +le développement de logiciel, et le hardware.c++.png1983https://isocpp.org/#include<iostream> +int main() +{ +std::cout << "Hello, new world!\n"; +}1Bjarne StroustrupGénériqueObjetInterface Utilisateur IPodMicrosoft Windows OSOpenOffice (couplé à du Java)Microsoft OfficeDobe PhotoshopMozilla FirefoxC++Ce langage est utilisé pour développer des logiciels, +des systèmes d’exploitation, des jeux vidéos et des moteurs de recherche.931081.jpg2021doc.htmlHello World5POINTLABUISSIEREobjet imperatiflogiciel1logiciel2TestUtilité inconnucsharp.png2001Console.WriteLine("Hello World!");1MicrosoftC#Ce langage vous permet de développer ce que vous voulez.id1mdp1falseid2falseid3falseid4falseid5falseid6falseid7falseid8falseid9falseid10falseid12falseAllanAllantruebash.png1989https://www.gnu.org/software/bash/manual/#!/bin/bash +var="Hello World" +echo "$var"5Brian FoxImperatifProcéduralObjetFonctionelinconnueBashCe langage permet d'écrire des scriptsc.png1972https://devdocs.io/c/#include <stdio.h> +int main(void){ +printf("hello, world\n"); +return 0; +}1Dennis RitchieBrian KernighanImpératifStructuréCCe langage est utilisé pour les systèmes d’exploitation, +le développement de logiciel, et le hardware.csharp.png2001https://isocpp.org/Console.WriteLine("Hello World!");1MicrosoftC#Ce langage vous permet de développer ce que vous voulez.c++.png1983#include<iostream> +int main() +{ +std::cout << "Hello, new world!\n"; +}1Bjarne StroustrupGénériqueInterface Utilisateur IPodMicrosoft Windows OSOpenOffice (couplé à du Java)Microsoft OfficeDobe PhotoshopMozilla FirefoxC++Ce langage est utilisé pour développer des logiciels, +des systèmes d’exploitation, des jeux vidéos et des moteurs de recherche.931081.jpg2021documentation inconnuHello World5POINTLABUISSIEREobjet imperatiflog1log2TestUtilité inconnuLua.png20215testtesttestTest2Allan2Allanbash.png1989https://www.gnu.org/software/bash/manual/#!/bin/bash +var="Hello World" +echo "$var"5Brian FoxImperatifProcéduralObjetFonctionelinconnueBashCe langage permet d'écrire des scriptsc.png1972https://devdocs.io/c/#include <stdio.h> +int main(void){ +printf("hello, world\n"); +return 0; +}1Dennis RitchieBrian KernighanImpératifStructuréCCe langage est utilisé pour les systèmes d’exploitation, +le développement de logiciel, et le hardware.csharp.png2001https://isocpp.org/Console.WriteLine("Hello World!");1MicrosoftC#Ce langage vous permet de développer ce que vous voulez.c++.png1983#include<iostream> +int main() +{ +std::cout << "Hello, new world!\n"; +}1Bjarne StroustrupGénériqueInterface Utilisateur IPodMicrosoft Windows OSOpenOffice (couplé à du Java)Microsoft OfficeDobe PhotoshopMozilla FirefoxC++Ce langage est utilisé pour développer des logiciels, +des systèmes d’exploitation, des jeux vidéos et des moteurs de recherche.dart.png2011https://dart.dev/void main() { +print('Hello World!'); +}1Lars BakKasper LundDartCe langage est utilisé pour créer des applications mobiles, +de bureau, de serveur et web.fsharp.png2002https://fsharp.org/printfn "Hello World!"1Don SymeMicrosoft ResearchFonctionnelF#go.png2009https://golang.org/package main +import "fmt" +func main(){ +fmt.Printf("Hello, world\n") +}1Robert GriesemerRob PikeKen ThompsonLangage CompiléProgrammation ConcurrenteImprératifGoogle MapGoogle MusicYoutubeGoCe langage est utiliser aussi bien pour écrire des applications, +des scripts ou de grands systèmes.java.svg.png1995https://docs.oracle.com/en/java/javase/11/docs/api/index.htmlclass HelloWorld { +public static void main(String[] args){ +System.out.println("Hello, World!"); +} +}1Sun MicrosystemsEclipseAzureusOpenOffice (couplé à du C++)Tout l'environnement Android et BlackBerryJavaCe langage permet de créer et faire fonctionner +des applications pour ordinateurs, également utilisé sur la plupart des autres +supports numériques (smartphones, consoles, logiciels).javascript.svg.png1996https://developer.mozilla.org/fr/docs/Web/JavaScriptconsole.log('Hello world');1Brenden EichScriptOrienté PrototypeJavaScriptCe langage est souvent utilisé dans les devantures de sites, +les outils analytiques, les widgets et les interactions webkotlin.png2010https://kotlinlang.org/docs/home.htmlclass Greeter(val name: String) { +fun greet() { +println("Hello, $name") +} +} + +fun main(args: Array<String>) { +Greeter(args[0]).greet() +}4JetBrainsKotlinpermet de coder lolLua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.php.svg.png1994https://www.php.net/<?php +echo 'Hello World'; +?> + + ou + +<?= 'Hello World' ?>1Ramus LerdorfReflexifInterpretéPHPCe langage est utilisé pour le développement web, mais également +comme langage de programmation d’usage général.python.png1991https://www.python.org/doc/# src/hello.py +print("Hello world!")1Guido Van RossumInstagramSpotifyRaspberry PiPythonCe langage est utilisé pour le developpement web, +de jeux videos, de logiciels, des interfaces utilisateurs +graphiques, ainsi en tant que langage de script.ruby.svg.png1995https://www.ruby-lang.org/en/# The Greeter class +class Greeter +def initialize(name) +@name = name.capitalize +end + +def salute +puts "Hello #{@name}!" +end +end +# Create a new object +g = Greeter.new("world") +# Output "Hello World!" +g.salute1Yukihiro MatsumotoConcurrentRubygemsRubyCe langage est utilisé pour les interfaces utilisateurs graphiques, +les applications web et le développement web.Lua.png2021documentation inconnuHello World5testtesttestTest2Utilité inconnu \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/images_logo/Lua.png b/source/repos/notre_solution/ProLangBin/images_logo/Lua.png new file mode 100644 index 0000000..10a509a Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/Lua.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/bash.png b/source/repos/notre_solution/ProLangBin/images_logo/bash.png new file mode 100644 index 0000000..55e8d72 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/bash.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/c++.png b/source/repos/notre_solution/ProLangBin/images_logo/c++.png new file mode 100644 index 0000000..936741a Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/c++.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/c.png b/source/repos/notre_solution/ProLangBin/images_logo/c.png new file mode 100644 index 0000000..8a39246 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/c.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/csharp.png b/source/repos/notre_solution/ProLangBin/images_logo/csharp.png new file mode 100644 index 0000000..0f98d04 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/csharp.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/dart.png b/source/repos/notre_solution/ProLangBin/images_logo/dart.png new file mode 100644 index 0000000..8a6a283 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/dart.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/fsharp.png b/source/repos/notre_solution/ProLangBin/images_logo/fsharp.png new file mode 100644 index 0000000..2dcecfb Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/fsharp.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/go.png b/source/repos/notre_solution/ProLangBin/images_logo/go.png new file mode 100644 index 0000000..8cc4d1f Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/go.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/java.svg.png b/source/repos/notre_solution/ProLangBin/images_logo/java.svg.png new file mode 100644 index 0000000..78049d9 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/java.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/javascript.svg.png b/source/repos/notre_solution/ProLangBin/images_logo/javascript.svg.png new file mode 100644 index 0000000..660323f Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/javascript.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/kotlin.png b/source/repos/notre_solution/ProLangBin/images_logo/kotlin.png new file mode 100644 index 0000000..063b9c6 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/kotlin.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/php.svg.png b/source/repos/notre_solution/ProLangBin/images_logo/php.svg.png new file mode 100644 index 0000000..7cfcbfe Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/php.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/python.png b/source/repos/notre_solution/ProLangBin/images_logo/python.png new file mode 100644 index 0000000..7f484ee Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/python.png differ diff --git a/source/repos/notre_solution/ProLangBin/images_logo/ruby.svg.png b/source/repos/notre_solution/ProLangBin/images_logo/ruby.svg.png new file mode 100644 index 0000000..cfcf13d Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/images_logo/ruby.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/Pers/Persist.xml b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/Pers/Persist.xml new file mode 100644 index 0000000..00fa419 --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/Pers/Persist.xml @@ -0,0 +1,60 @@ +trueLua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.id1mdp1falseid2falseid3falseid4falseid5falseid6falseid7falseid8falseid9falseid10falseid12bash.png1989https://www.gnu.org/software/bash/manual/#!/bin/bash +var="Hello World" +echo "$var"5Brian FoxImperatifProcéduralObjetFonctionelinconnueBashCe langage permet d'écrire des scriptsc.png1972https://devdocs.io/c/#include <stdio.h> +int main(void){ +printf("hello, world\n"); +return 0; +}1Dennis RitchieBrian KernighanImpératifStructuréCCe langage est utilisé pour les systèmes d’exploitation, +le développement de logiciel, et le hardware.csharp.png2001https://isocpp.org/Console.WriteLine("Hello World!");1MicrosoftC#Ce langage vous permet de développer ce que vous voulez.c++.png1983#include<iostream> +int main() +{ +std::cout << "Hello, new world!\n"; +}1Bjarne StroustrupGénériqueInterface Utilisateur IPodMicrosoft Windows OSOpenOffice (couplé à du Java)Microsoft OfficeDobe PhotoshopMozilla FirefoxC++Ce langage est utilisé pour développer des logiciels, +des systèmes d’exploitation, des jeux vidéos et des moteurs de recherche.dart.png2011https://dart.dev/void main() { +print('Hello World!'); +}1Lars BakKasper LundDartCe langage est utilisé pour créer des applications mobiles, +de bureau, de serveur et web.fsharp.png2002https://fsharp.org/printfn "Hello World!"1Don SymeMicrosoft ResearchFonctionnelF#go.png2009https://golang.org/package main +import "fmt" +func main(){ +fmt.Printf("Hello, world\n") +}1Robert GriesemerRob PikeKen ThompsonLangage CompiléProgrammation ConcurrenteImprératifGoogle MapGoogle MusicYoutubeGoCe langage est utiliser aussi bien pour écrire des applications, +des scripts ou de grands systèmes.java.svg.png1995https://docs.oracle.com/en/java/javase/11/docs/api/index.htmlclass HelloWorld { +public static void main(String[] args){ +System.out.println("Hello, World!"); +} +}1Sun MicrosystemsEclipseAzureusOpenOffice (couplé à du C++)Tout l'environnement Android et BlackBerryJavaCe langage permet de créer et faire fonctionner +des applications pour ordinateurs, également utilisé sur la plupart des autres +supports numériques (smartphones, consoles, logiciels).javascript.svg.png1996https://developer.mozilla.org/fr/docs/Web/JavaScriptconsole.log('Hello world');1Brenden EichScriptOrienté PrototypeJavaScriptCe langage est souvent utilisé dans les devantures de sites, +les outils analytiques, les widgets et les interactions webkotlin.png2010https://kotlinlang.org/docs/home.htmlclass Greeter(val name: String) { +fun greet() { +println("Hello, $name") +} +} + +fun main(args: Array<String>) { +Greeter(args[0]).greet() +}4JetBrainsKotlinpermet de coder lolLua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.php.svg.png1994https://www.php.net/<?php +echo 'Hello World'; +?> + + ou + +<?= 'Hello World' ?>1Ramus LerdorfReflexifInterpretéPHPCe langage est utilisé pour le développement web, mais également +comme langage de programmation d’usage général.python.png1991https://www.python.org/doc/# src/hello.py +print("Hello world!")1Guido Van RossumInstagramSpotifyRaspberry PiPythonCe langage est utilisé pour le developpement web, +de jeux videos, de logiciels, des interfaces utilisateurs +graphiques, ainsi en tant que langage de script.ruby.svg.png1995https://www.ruby-lang.org/en/# The Greeter class +class Greeter +def initialize(name) +@name = name.capitalize +end + +def salute +puts "Hello #{@name}!" +end +end +# Create a new object +g = Greeter.new("world") +# Output "Hello World!" +g.salute1Yukihiro MatsumotoConcurrentRubygemsRubyCe langage est utilisé pour les interfaces utilisateurs graphiques, +les applications web et le développement web. \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/Pers/Persistance.xml b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/Pers/Persistance.xml new file mode 100644 index 0000000..00fa419 --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/Pers/Persistance.xml @@ -0,0 +1,60 @@ +trueLua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.id1mdp1falseid2falseid3falseid4falseid5falseid6falseid7falseid8falseid9falseid10falseid12bash.png1989https://www.gnu.org/software/bash/manual/#!/bin/bash +var="Hello World" +echo "$var"5Brian FoxImperatifProcéduralObjetFonctionelinconnueBashCe langage permet d'écrire des scriptsc.png1972https://devdocs.io/c/#include <stdio.h> +int main(void){ +printf("hello, world\n"); +return 0; +}1Dennis RitchieBrian KernighanImpératifStructuréCCe langage est utilisé pour les systèmes d’exploitation, +le développement de logiciel, et le hardware.csharp.png2001https://isocpp.org/Console.WriteLine("Hello World!");1MicrosoftC#Ce langage vous permet de développer ce que vous voulez.c++.png1983#include<iostream> +int main() +{ +std::cout << "Hello, new world!\n"; +}1Bjarne StroustrupGénériqueInterface Utilisateur IPodMicrosoft Windows OSOpenOffice (couplé à du Java)Microsoft OfficeDobe PhotoshopMozilla FirefoxC++Ce langage est utilisé pour développer des logiciels, +des systèmes d’exploitation, des jeux vidéos et des moteurs de recherche.dart.png2011https://dart.dev/void main() { +print('Hello World!'); +}1Lars BakKasper LundDartCe langage est utilisé pour créer des applications mobiles, +de bureau, de serveur et web.fsharp.png2002https://fsharp.org/printfn "Hello World!"1Don SymeMicrosoft ResearchFonctionnelF#go.png2009https://golang.org/package main +import "fmt" +func main(){ +fmt.Printf("Hello, world\n") +}1Robert GriesemerRob PikeKen ThompsonLangage CompiléProgrammation ConcurrenteImprératifGoogle MapGoogle MusicYoutubeGoCe langage est utiliser aussi bien pour écrire des applications, +des scripts ou de grands systèmes.java.svg.png1995https://docs.oracle.com/en/java/javase/11/docs/api/index.htmlclass HelloWorld { +public static void main(String[] args){ +System.out.println("Hello, World!"); +} +}1Sun MicrosystemsEclipseAzureusOpenOffice (couplé à du C++)Tout l'environnement Android et BlackBerryJavaCe langage permet de créer et faire fonctionner +des applications pour ordinateurs, également utilisé sur la plupart des autres +supports numériques (smartphones, consoles, logiciels).javascript.svg.png1996https://developer.mozilla.org/fr/docs/Web/JavaScriptconsole.log('Hello world');1Brenden EichScriptOrienté PrototypeJavaScriptCe langage est souvent utilisé dans les devantures de sites, +les outils analytiques, les widgets et les interactions webkotlin.png2010https://kotlinlang.org/docs/home.htmlclass Greeter(val name: String) { +fun greet() { +println("Hello, $name") +} +} + +fun main(args: Array<String>) { +Greeter(args[0]).greet() +}4JetBrainsKotlinpermet de coder lolLua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.php.svg.png1994https://www.php.net/<?php +echo 'Hello World'; +?> + + ou + +<?= 'Hello World' ?>1Ramus LerdorfReflexifInterpretéPHPCe langage est utilisé pour le développement web, mais également +comme langage de programmation d’usage général.python.png1991https://www.python.org/doc/# src/hello.py +print("Hello world!")1Guido Van RossumInstagramSpotifyRaspberry PiPythonCe langage est utilisé pour le developpement web, +de jeux videos, de logiciels, des interfaces utilisateurs +graphiques, ainsi en tant que langage de script.ruby.svg.png1995https://www.ruby-lang.org/en/# The Greeter class +class Greeter +def initialize(name) +@name = name.capitalize +end + +def salute +puts "Hello #{@name}!" +end +end +# Create a new object +g = Greeter.new("world") +# Output "Hello World!" +g.salute1Yukihiro MatsumotoConcurrentRubygemsRubyCe langage est utilisé pour les interfaces utilisateurs graphiques, +les applications web et le développement web. \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/PersDataContract.dll b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/PersDataContract.dll new file mode 100644 index 0000000..35f2caf Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/PersDataContract.dll differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/PersDataContract.pdb b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/PersDataContract.pdb new file mode 100644 index 0000000..3324385 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/PersDataContract.pdb differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/données.dll b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/données.dll new file mode 100644 index 0000000..ee4db69 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/données.dll differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/données.pdb b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/données.pdb new file mode 100644 index 0000000..d054c3d Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/données.pdb differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/Lua.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/Lua.png new file mode 100644 index 0000000..10a509a Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/Lua.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/bash.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/bash.png new file mode 100644 index 0000000..55e8d72 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/bash.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/c++.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/c++.png new file mode 100644 index 0000000..936741a Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/c++.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/c.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/c.png new file mode 100644 index 0000000..8a39246 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/c.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/csharp.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/csharp.png new file mode 100644 index 0000000..0f98d04 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/csharp.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/dart.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/dart.png new file mode 100644 index 0000000..8a6a283 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/dart.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/fsharp.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/fsharp.png new file mode 100644 index 0000000..2dcecfb Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/fsharp.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/go.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/go.png new file mode 100644 index 0000000..8cc4d1f Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/go.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/java.svg.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/java.svg.png new file mode 100644 index 0000000..78049d9 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/java.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/javascript.svg.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/javascript.svg.png new file mode 100644 index 0000000..660323f Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/javascript.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/kotlin.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/kotlin.png new file mode 100644 index 0000000..063b9c6 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/kotlin.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/php.svg.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/php.svg.png new file mode 100644 index 0000000..7cfcbfe Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/php.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/python.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/python.png new file mode 100644 index 0000000..7f484ee Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/python.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/ruby.svg.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/ruby.svg.png new file mode 100644 index 0000000..cfcf13d Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/images_logo/ruby.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/notre_bibliotheque.dll b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/notre_bibliotheque.dll new file mode 100644 index 0000000..201caf6 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/notre_bibliotheque.dll differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/notre_bibliotheque.pdb b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/notre_bibliotheque.pdb new file mode 100644 index 0000000..75c1030 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/notre_bibliotheque.pdb differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/Pers/Persist.xml b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/Pers/Persist.xml new file mode 100644 index 0000000..00fa419 --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/Pers/Persist.xml @@ -0,0 +1,60 @@ +trueLua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.id1mdp1falseid2falseid3falseid4falseid5falseid6falseid7falseid8falseid9falseid10falseid12bash.png1989https://www.gnu.org/software/bash/manual/#!/bin/bash +var="Hello World" +echo "$var"5Brian FoxImperatifProcéduralObjetFonctionelinconnueBashCe langage permet d'écrire des scriptsc.png1972https://devdocs.io/c/#include <stdio.h> +int main(void){ +printf("hello, world\n"); +return 0; +}1Dennis RitchieBrian KernighanImpératifStructuréCCe langage est utilisé pour les systèmes d’exploitation, +le développement de logiciel, et le hardware.csharp.png2001https://isocpp.org/Console.WriteLine("Hello World!");1MicrosoftC#Ce langage vous permet de développer ce que vous voulez.c++.png1983#include<iostream> +int main() +{ +std::cout << "Hello, new world!\n"; +}1Bjarne StroustrupGénériqueInterface Utilisateur IPodMicrosoft Windows OSOpenOffice (couplé à du Java)Microsoft OfficeDobe PhotoshopMozilla FirefoxC++Ce langage est utilisé pour développer des logiciels, +des systèmes d’exploitation, des jeux vidéos et des moteurs de recherche.dart.png2011https://dart.dev/void main() { +print('Hello World!'); +}1Lars BakKasper LundDartCe langage est utilisé pour créer des applications mobiles, +de bureau, de serveur et web.fsharp.png2002https://fsharp.org/printfn "Hello World!"1Don SymeMicrosoft ResearchFonctionnelF#go.png2009https://golang.org/package main +import "fmt" +func main(){ +fmt.Printf("Hello, world\n") +}1Robert GriesemerRob PikeKen ThompsonLangage CompiléProgrammation ConcurrenteImprératifGoogle MapGoogle MusicYoutubeGoCe langage est utiliser aussi bien pour écrire des applications, +des scripts ou de grands systèmes.java.svg.png1995https://docs.oracle.com/en/java/javase/11/docs/api/index.htmlclass HelloWorld { +public static void main(String[] args){ +System.out.println("Hello, World!"); +} +}1Sun MicrosystemsEclipseAzureusOpenOffice (couplé à du C++)Tout l'environnement Android et BlackBerryJavaCe langage permet de créer et faire fonctionner +des applications pour ordinateurs, également utilisé sur la plupart des autres +supports numériques (smartphones, consoles, logiciels).javascript.svg.png1996https://developer.mozilla.org/fr/docs/Web/JavaScriptconsole.log('Hello world');1Brenden EichScriptOrienté PrototypeJavaScriptCe langage est souvent utilisé dans les devantures de sites, +les outils analytiques, les widgets et les interactions webkotlin.png2010https://kotlinlang.org/docs/home.htmlclass Greeter(val name: String) { +fun greet() { +println("Hello, $name") +} +} + +fun main(args: Array<String>) { +Greeter(args[0]).greet() +}4JetBrainsKotlinpermet de coder lolLua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.php.svg.png1994https://www.php.net/<?php +echo 'Hello World'; +?> + + ou + +<?= 'Hello World' ?>1Ramus LerdorfReflexifInterpretéPHPCe langage est utilisé pour le développement web, mais également +comme langage de programmation d’usage général.python.png1991https://www.python.org/doc/# src/hello.py +print("Hello world!")1Guido Van RossumInstagramSpotifyRaspberry PiPythonCe langage est utilisé pour le developpement web, +de jeux videos, de logiciels, des interfaces utilisateurs +graphiques, ainsi en tant que langage de script.ruby.svg.png1995https://www.ruby-lang.org/en/# The Greeter class +class Greeter +def initialize(name) +@name = name.capitalize +end + +def salute +puts "Hello #{@name}!" +end +end +# Create a new object +g = Greeter.new("world") +# Output "Hello World!" +g.salute1Yukihiro MatsumotoConcurrentRubygemsRubyCe langage est utilisé pour les interfaces utilisateurs graphiques, +les applications web et le développement web. \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/Pers/Persistance.xml b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/Pers/Persistance.xml new file mode 100644 index 0000000..1f91627 --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/Pers/Persistance.xml @@ -0,0 +1,60 @@ +trueLua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.bash.png1989https://www.gnu.org/software/bash/manual/#!/bin/bash +var="Hello World" +echo "$var"5Brian FoxImperatifProcéduralObjetFonctionelinconnueBashCe langage permet d'écrire des scriptsc.png1972https://devdocs.io/c/#include <stdio.h> +int main(void){ +printf("hello, world\n"); +return 0; +}1Dennis RitchieBrian KernighanImpératifStructuréCCe langage est utilisé pour les systèmes d’exploitation, +le développement de logiciel, et le hardware.csharp.png2001https://isocpp.org/Console.WriteLine("Hello World!");1MicrosoftC#Ce langage vous permet de développer ce que vous voulez.c++.png1983#include<iostream> +int main() +{ +std::cout << "Hello, new world!\n"; +}1Bjarne StroustrupGénériqueInterface Utilisateur IPodMicrosoft Windows OSOpenOffice (couplé à du Java)Microsoft OfficeDobe PhotoshopMozilla FirefoxC++Ce langage est utilisé pour développer des logiciels, +des systèmes d’exploitation, des jeux vidéos et des moteurs de recherche.dart.png2011https://dart.dev/void main() { +print('Hello World!'); +}1Lars BakKasper LundDartCe langage est utilisé pour créer des applications mobiles, +de bureau, de serveur et web.fsharp.png2002https://fsharp.org/printfn "Hello World!"1Don SymeMicrosoft ResearchFonctionnelF#go.png2009https://golang.org/package main +import "fmt" +func main(){ +fmt.Printf("Hello, world\n") +}1Robert GriesemerRob PikeKen ThompsonLangage CompiléProgrammation ConcurrenteImprératifGoogle MapGoogle MusicYoutubeGoCe langage est utiliser aussi bien pour écrire des applications, +des scripts ou de grands systèmes.java.svg.png1995https://docs.oracle.com/en/java/javase/11/docs/api/index.htmlclass HelloWorld { +public static void main(String[] args){ +System.out.println("Hello, World!"); +} +}1Sun MicrosystemsEclipseAzureusOpenOffice (couplé à du C++)Tout l'environnement Android et BlackBerryJavaCe langage permet de créer et faire fonctionner +des applications pour ordinateurs, également utilisé sur la plupart des autres +supports numériques (smartphones, consoles, logiciels).javascript.svg.png1996https://developer.mozilla.org/fr/docs/Web/JavaScriptconsole.log('Hello world');1Brenden EichScriptOrienté PrototypeJavaScriptCe langage est souvent utilisé dans les devantures de sites, +les outils analytiques, les widgets et les interactions webkotlin.png2010https://kotlinlang.org/docs/home.htmlclass Greeter(val name: String) { +fun greet() { +println("Hello, $name") +} +} + +fun main(args: Array<String>) { +Greeter(args[0]).greet() +}4JetBrainsKotlinpermet de coder lolid1mdp1falseid2falseid3falseid4falseid5falseid6falseid7falseid8falseid9falseid10falseid12Lua.png1993https://www.lua.org/docs.htmlprint('Hello world!');5Luiz Henrique de Figueiredo Roberto Ierusalimschy Waldemar Celesprocédural orienté objet à prototype fonctionnelGarry's Mod Roblox StormworksLuaLua est conçu de manière à pouvoir être embarqué au sein d'autres applications afin d'étendre celles-ci.php.svg.png1994https://www.php.net/<?php +echo 'Hello World'; +?> + + ou + +<?= 'Hello World' ?>1Ramus LerdorfReflexifInterpretéPHPCe langage est utilisé pour le développement web, mais également +comme langage de programmation d’usage général.python.png1991https://www.python.org/doc/# src/hello.py +print("Hello world!")1Guido Van RossumInstagramSpotifyRaspberry PiPythonCe langage est utilisé pour le developpement web, +de jeux videos, de logiciels, des interfaces utilisateurs +graphiques, ainsi en tant que langage de script.ruby.svg.png1995https://www.ruby-lang.org/en/# The Greeter class +class Greeter +def initialize(name) +@name = name.capitalize +end + +def salute +puts "Hello #{@name}!" +end +end +# Create a new object +g = Greeter.new("world") +# Output "Hello World!" +g.salute1Yukihiro MatsumotoConcurrentRubygemsRubyCe langage est utilisé pour les interfaces utilisateurs graphiques, +les applications web et le développement web. \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/PersDataContract.dll b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/PersDataContract.dll new file mode 100644 index 0000000..35f2caf Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/PersDataContract.dll differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/PersDataContract.pdb b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/PersDataContract.pdb new file mode 100644 index 0000000..3324385 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/PersDataContract.pdb differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/données.dll b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/données.dll new file mode 100644 index 0000000..ee4db69 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/données.dll differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/données.pdb b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/données.pdb new file mode 100644 index 0000000..d054c3d Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/données.pdb differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/Lua.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/Lua.png new file mode 100644 index 0000000..10a509a Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/Lua.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/bash.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/bash.png new file mode 100644 index 0000000..55e8d72 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/bash.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/c++.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/c++.png new file mode 100644 index 0000000..936741a Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/c++.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/c.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/c.png new file mode 100644 index 0000000..8a39246 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/c.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/csharp.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/csharp.png new file mode 100644 index 0000000..0f98d04 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/csharp.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/dart.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/dart.png new file mode 100644 index 0000000..8a6a283 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/dart.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/fsharp.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/fsharp.png new file mode 100644 index 0000000..2dcecfb Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/fsharp.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/go.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/go.png new file mode 100644 index 0000000..8cc4d1f Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/go.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/java.svg.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/java.svg.png new file mode 100644 index 0000000..78049d9 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/java.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/javascript.svg.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/javascript.svg.png new file mode 100644 index 0000000..660323f Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/javascript.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/kotlin.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/kotlin.png new file mode 100644 index 0000000..063b9c6 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/kotlin.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/php.svg.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/php.svg.png new file mode 100644 index 0000000..7cfcbfe Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/php.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/python.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/python.png new file mode 100644 index 0000000..7f484ee Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/python.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/ruby.svg.png b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/ruby.svg.png new file mode 100644 index 0000000..cfcf13d Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/images_logo/ruby.svg.png differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/notre_bibliotheque.dll b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/notre_bibliotheque.dll new file mode 100644 index 0000000..201caf6 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/notre_bibliotheque.dll differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/notre_bibliotheque.pdb b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/notre_bibliotheque.pdb new file mode 100644 index 0000000..75c1030 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/notre_bibliotheque.pdb differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.deps.json b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.deps.json new file mode 100644 index 0000000..831bd3d --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.deps.json @@ -0,0 +1,64 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v3.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v3.0": { + "vues/1.0.0": { + "dependencies": { + "PersDataContract": "1.0.0", + "données": "1.0.0", + "notre_bibliotheque": "1.0.0" + }, + "runtime": { + "vues.dll": {} + } + }, + "données/1.0.0": { + "dependencies": { + "notre_bibliotheque": "1.0.0" + }, + "runtime": { + "données.dll": {} + } + }, + "notre_bibliotheque/1.0.0": { + "runtime": { + "notre_bibliotheque.dll": {} + } + }, + "PersDataContract/1.0.0": { + "dependencies": { + "notre_bibliotheque": "1.0.0" + }, + "runtime": { + "PersDataContract.dll": {} + } + } + } + }, + "libraries": { + "vues/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "données/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "notre_bibliotheque/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "PersDataContract/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + } + } +} \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.dll b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.dll new file mode 100644 index 0000000..64618b6 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.dll differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.exe b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.exe new file mode 100644 index 0000000..c2faca7 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.exe differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.pdb b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.pdb new file mode 100644 index 0000000..1305786 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.pdb differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.runtimeconfig.json b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.runtimeconfig.json new file mode 100644 index 0000000..b39d7cf --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/publish/vues.runtimeconfig.json @@ -0,0 +1,9 @@ +{ + "runtimeOptions": { + "tfm": "netcoreapp3.0", + "framework": { + "name": "Microsoft.WindowsDesktop.App", + "version": "3.0.0" + } + } +} \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.deps.json b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.deps.json new file mode 100644 index 0000000..831bd3d --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.deps.json @@ -0,0 +1,64 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v3.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v3.0": { + "vues/1.0.0": { + "dependencies": { + "PersDataContract": "1.0.0", + "données": "1.0.0", + "notre_bibliotheque": "1.0.0" + }, + "runtime": { + "vues.dll": {} + } + }, + "données/1.0.0": { + "dependencies": { + "notre_bibliotheque": "1.0.0" + }, + "runtime": { + "données.dll": {} + } + }, + "notre_bibliotheque/1.0.0": { + "runtime": { + "notre_bibliotheque.dll": {} + } + }, + "PersDataContract/1.0.0": { + "dependencies": { + "notre_bibliotheque": "1.0.0" + }, + "runtime": { + "PersDataContract.dll": {} + } + } + } + }, + "libraries": { + "vues/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "données/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "notre_bibliotheque/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "PersDataContract/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + } + } +} \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.dll b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.dll new file mode 100644 index 0000000..64618b6 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.dll differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.exe b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.exe new file mode 100644 index 0000000..c2faca7 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.exe differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.pdb b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.pdb new file mode 100644 index 0000000..1305786 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.pdb differ diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.runtimeconfig.dev.json b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.runtimeconfig.dev.json new file mode 100644 index 0000000..009faab --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.runtimeconfig.dev.json @@ -0,0 +1,10 @@ +{ + "runtimeOptions": { + "additionalProbingPaths": [ + "C:\\Users\\Administrateur.NB01-M350-28206\\.dotnet\\store\\|arch|\\|tfm|", + "C:\\Users\\Administrateur.NB01-M350-28206\\.nuget\\packages", + "C:\\Program Files\\Microsoft Visual Studio\\Shared\\NuGetPackages", + "C:\\Program Files\\Microsoft\\Xamarin\\NuGet" + ] + } +} \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.runtimeconfig.json b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.runtimeconfig.json new file mode 100644 index 0000000..b39d7cf --- /dev/null +++ b/source/repos/notre_solution/ProLangBin/netcoreapp3.0/vues.runtimeconfig.json @@ -0,0 +1,9 @@ +{ + "runtimeOptions": { + "tfm": "netcoreapp3.0", + "framework": { + "name": "Microsoft.WindowsDesktop.App", + "version": "3.0.0" + } + } +} \ No newline at end of file diff --git a/source/repos/notre_solution/ProLangBin/setup/ProLang_SetUp.msi b/source/repos/notre_solution/ProLangBin/setup/ProLang_SetUp.msi new file mode 100644 index 0000000..666d5e0 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/setup/ProLang_SetUp.msi differ diff --git a/source/repos/notre_solution/ProLangBin/setup/setup.exe b/source/repos/notre_solution/ProLangBin/setup/setup.exe new file mode 100644 index 0000000..ec6a655 Binary files /dev/null and b/source/repos/notre_solution/ProLangBin/setup/setup.exe differ diff --git a/source/repos/notre_solution/ProLang_SetUp/ProLang_SetUp.vdproj b/source/repos/notre_solution/ProLang_SetUp/ProLang_SetUp.vdproj new file mode 100644 index 0000000..4a743d5 --- /dev/null +++ b/source/repos/notre_solution/ProLang_SetUp/ProLang_SetUp.vdproj @@ -0,0 +1,1269 @@ +"DeployProject" +{ +"VSVersion" = "3:800" +"ProjectType" = "8:{978C614F-708E-4E1A-B201-565925725DBA}" +"IsWebType" = "8:FALSE" +"ProjectName" = "8:ProLang_SetUp" +"LanguageId" = "3:1036" +"CodePage" = "3:1252" +"UILanguageId" = "3:1036" +"SccProjectName" = "8:" +"SccLocalPath" = "8:" +"SccAuxPath" = "8:" +"SccProvider" = "8:" + "Hierarchy" + { + "Entry" + { + "MsmKey" = "8:_09EE699FF5A14C13AD4AA7B59542E8D4" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_10F3889324AE405798E8C744C859219A" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_140994F3EEFD4B648C05F0F704F82EC7" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_1554434D411D464B8B5CCFD0D857A033" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_1FB33C50F9B340288F580EC91236EA66" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_2D8E5E6D199A48BBB5D231CFF6C3E346" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_32526FBCE7814291916A25C9D868D94D" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_32AA9650DF8F402E81401EA2E7A483FA" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_368D860087C04D7982CA59A54473AABC" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_587951C53CB34E30B03194FB3EFE0E9D" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5880E92482D74D26814A773C08B8BB78" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_5D1E3E19C82D43759030D641B00BDF3D" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_80B022FFA1294749A07FF5365EF87425" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_9058E973772446EC84B3C7104E7BBAD7" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_947C7974211F43C5A0B5581E75D23FB5" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_9CD44473EC124DCAAC9CD3050FB4F023" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_A8CA541AD59642AB917C2BC14B3E5E5D" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_AD778995B6784BBEBED5AC39ABCF4C7B" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C35338185D15429B934CD5B99A219E25" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_C41AAA3FB933470E9CB6F81511D0B8FE" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + } + "Configurations" + { + "Debug" + { + "DisplayName" = "8:Debug" + "IsDebugOnly" = "11:TRUE" + "IsReleaseOnly" = "11:FALSE" + "OutputFilename" = "8:..\\ProLangBin\\setup\\ProLang_SetUp.msi" + "PackageFilesAs" = "3:2" + "PackageFileSize" = "3:-2147483648" + "CabType" = "3:1" + "Compression" = "3:2" + "SignOutput" = "11:FALSE" + "CertificateFile" = "8:" + "PrivateKeyFile" = "8:" + "TimeStampServer" = "8:" + "InstallerBootstrapper" = "3:2" + "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}" + { + "Enabled" = "11:TRUE" + "PromptEnabled" = "11:TRUE" + "PrerequisitesLocation" = "2:1" + "Url" = "8:" + "ComponentsUrl" = "8:" + "Items" + { + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.NetCore.CoreRuntime.3.1.x64" + { + "Name" = "8:Runtime .NET Core 3.1.16 (x64)" + "ProductCode" = "8:Microsoft.NetCore.CoreRuntime.3.1.x64" + } + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.NetCore.CoreRuntime.3.1.x86" + { + "Name" = "8:Runtime .NET Core 3.1.16 (x86)" + "ProductCode" = "8:Microsoft.NetCore.CoreRuntime.3.1.x86" + } + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.NetCore.DesktopRuntime.3.1.x64" + { + "Name" = "8:Runtime .NET Core Desktop 3.1.16 (x64)" + "ProductCode" = "8:Microsoft.NetCore.DesktopRuntime.3.1.x64" + } + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.NetCore.DesktopRuntime.3.1.x86" + { + "Name" = "8:Runtime .NET Core Desktop 3.1.16 (x86)" + "ProductCode" = "8:Microsoft.NetCore.DesktopRuntime.3.1.x86" + } + } + } + } + "Release" + { + "DisplayName" = "8:Release" + "IsDebugOnly" = "11:FALSE" + "IsReleaseOnly" = "11:TRUE" + "OutputFilename" = "8:..\\ProLangBin\\setup\\ProLang_SetUp.msi" + "PackageFilesAs" = "3:2" + "PackageFileSize" = "3:-2147483648" + "CabType" = "3:1" + "Compression" = "3:2" + "SignOutput" = "11:FALSE" + "CertificateFile" = "8:" + "PrivateKeyFile" = "8:" + "TimeStampServer" = "8:" + "InstallerBootstrapper" = "3:2" + } + } + "Deployable" + { + "CustomAction" + { + } + "DefaultFeature" + { + "Name" = "8:DefaultFeature" + "Title" = "8:" + "Description" = "8:" + } + "ExternalPersistence" + { + "LaunchCondition" + { + "{A06ECF26-33A3-4562-8140-9B0E340D4F24}:_EF54E061555E40B9905BACEB5471D6B4" + { + "Name" = "8:.NET Core" + "Message" = "8:[VSDNETCOREMSG]" + "AllowLaterVersions" = "11:FALSE" + "InstallUrl" = "8:https://dotnet.microsoft.com/download/dotnet-core/[NetCoreVerMajorDotMinor]" + "IsNETCore" = "11:TRUE" + "Architecture" = "2:0" + "Runtime" = "2:0" + } + } + } + "File" + { + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_10F3889324AE405798E8C744C859219A" + { + "SourcePath" = "8:..\\..\\..\\..\\..\\..\\..\\..\\Pictures\\ProLang.ico" + "TargetName" = "8:ProLang.ico" + "Tag" = "8:" + "Folder" = "8:_EEA50297CDC544528F6D74E8CB7387D1" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_140994F3EEFD4B648C05F0F704F82EC7" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\python.png" + "TargetName" = "8:python.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1554434D411D464B8B5CCFD0D857A033" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\javascript.svg.png" + "TargetName" = "8:javascript.svg.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1FB33C50F9B340288F580EC91236EA66" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\c++.png" + "TargetName" = "8:c++.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_2D8E5E6D199A48BBB5D231CFF6C3E346" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\bash.png" + "TargetName" = "8:bash.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_32526FBCE7814291916A25C9D868D94D" + { + "SourcePath" = "8:..\\notre_projet\\images\\connecter.png" + "TargetName" = "8:connecter.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_32AA9650DF8F402E81401EA2E7A483FA" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\Lua.png" + "TargetName" = "8:Lua.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_368D860087C04D7982CA59A54473AABC" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\kotlin.png" + "TargetName" = "8:kotlin.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_587951C53CB34E30B03194FB3EFE0E9D" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\csharp.png" + "TargetName" = "8:csharp.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_5880E92482D74D26814A773C08B8BB78" + { + "SourcePath" = "8:..\\notre_projet\\images\\étoile_noire.png" + "TargetName" = "8:étoile_noire.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_5D1E3E19C82D43759030D641B00BDF3D" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\java.svg.png" + "TargetName" = "8:java.svg.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_80B022FFA1294749A07FF5365EF87425" + { + "SourcePath" = "8:..\\notre_projet\\images\\étoile_jaune.png" + "TargetName" = "8:étoile_jaune.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_9058E973772446EC84B3C7104E7BBAD7" + { + "SourcePath" = "8:..\\ProLangBin\\Pers\\Persistance.xml" + "TargetName" = "8:Persistance.xml" + "Tag" = "8:" + "Folder" = "8:_157893580AE449E6B5711BE5B35F63AE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_947C7974211F43C5A0B5581E75D23FB5" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\php.svg.png" + "TargetName" = "8:php.svg.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_9CD44473EC124DCAAC9CD3050FB4F023" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\go.png" + "TargetName" = "8:go.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_A8CA541AD59642AB917C2BC14B3E5E5D" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\dart.png" + "TargetName" = "8:dart.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_AD778995B6784BBEBED5AC39ABCF4C7B" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\ruby.svg.png" + "TargetName" = "8:ruby.svg.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_C35338185D15429B934CD5B99A219E25" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\c.png" + "TargetName" = "8:c.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_C41AAA3FB933470E9CB6F81511D0B8FE" + { + "SourcePath" = "8:..\\ProLangBin\\images_logo\\fsharp.png" + "TargetName" = "8:fsharp.png" + "Tag" = "8:" + "Folder" = "8:_D79A709A8EB640669E5EE2D0A1C1642B" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + } + "FileType" + { + } + "Folder" + { + "{1525181F-901A-416C-8A58-119130FE478E}:_221A1DF59513414989F9AE72E81F42CD" + { + "Name" = "8:#1919" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:ProgramMenuFolder" + "Folders" + { + } + } + "{1525181F-901A-416C-8A58-119130FE478E}:_75C31EACB46B41588A909F7DD7823758" + { + "Name" = "8:#1916" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:DesktopFolder" + "Folders" + { + } + } + "{3C67513D-01DD-4637-8A68-80971EB9504F}:_EEA50297CDC544528F6D74E8CB7387D1" + { + "DefaultLocation" = "8:[ProgramFiles64Folder][Manufacturer]\\[ProductName]" + "Name" = "8:#1925" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:TARGETDIR" + "Folders" + { + "{9EF0B969-E518-4E46-987F-47570745A589}:_157893580AE449E6B5711BE5B35F63AE" + { + "Name" = "8:Pers" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:_A04F9AC0B7474AC79A814989E3AB1B72" + "Folders" + { + } + } + "{9EF0B969-E518-4E46-987F-47570745A589}:_D79A709A8EB640669E5EE2D0A1C1642B" + { + "Name" = "8:images" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:_EE5490CDD6754E72947A9A5EAF558722" + "Folders" + { + } + } + } + } + } + "LaunchCondition" + { + } + "Locator" + { + } + "MsiBootstrapper" + { + "LangId" = "3:1036" + "RequiresElevation" = "11:FALSE" + } + "Product" + { + "Name" = "8:Microsoft Visual Studio" + "ProductName" = "8:ProLang" + "ProductCode" = "8:{B800E3C9-5921-4663-A7CC-59732625E964}" + "PackageCode" = "8:{964495EE-B2E4-4872-B028-367635C36F04}" + "UpgradeCode" = "8:{C8639EF9-5AA2-4D7F-A16C-4A447CB799E5}" + "AspNetVersion" = "8:4.0.30319.0" + "RestartWWWService" = "11:FALSE" + "RemovePreviousVersions" = "11:TRUE" + "DetectNewerInstalledVersion" = "11:TRUE" + "InstallAllUsers" = "11:TRUE" + "ProductVersion" = "8:1.0.0" + "Manufacturer" = "8:DUT info" + "ARPHELPTELEPHONE" = "8:" + "ARPHELPLINK" = "8:" + "Title" = "8:ProLang" + "Subject" = "8:" + "ARPCONTACT" = "8:Allan Point Lou Labussiere" + "Keywords" = "8:" + "ARPCOMMENTS" = "8:application semestre 2 DUT" + "ARPURLINFOABOUT" = "8:" + "ARPPRODUCTICON" = "8:" + "ARPIconIndex" = "3:0" + "SearchPath" = "8:" + "UseSystemSearchPath" = "11:TRUE" + "TargetPlatform" = "3:1" + "PreBuildEvent" = "8:" + "PostBuildEvent" = "8:" + "RunPostBuildEvent" = "3:0" + } + "Registry" + { + "HKLM" + { + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_98AF475CA93343319AB17183588196E0" + { + "Name" = "8:Software" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_DB3FDD2BAE2F41A49FAF1ACBC465557C" + { + "Name" = "8:[Manufacturer]" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + } + "Values" + { + } + } + } + "Values" + { + } + } + } + } + "HKCU" + { + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_C1229D4F019B48A19A312F621B62AD76" + { + "Name" = "8:Software" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_72B1A50F3EF44C6EB47ECA74707FD7CE" + { + "Name" = "8:[Manufacturer]" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + } + "Values" + { + } + } + } + "Values" + { + } + } + } + } + "HKCR" + { + "Keys" + { + } + } + "HKU" + { + "Keys" + { + } + } + "HKPU" + { + "Keys" + { + } + } + } + "Sequences" + { + } + "Shortcut" + { + "{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_3E1FE0E2EC0347B7A3FCBEB6D15CA38A" + { + "Name" = "8:ProLang" + "Arguments" = "8:" + "Description" = "8:" + "ShowCmd" = "3:1" + "IconIndex" = "3:0" + "Transitive" = "11:FALSE" + "Target" = "8:_09EE699FF5A14C13AD4AA7B59542E8D4" + "Folder" = "8:_221A1DF59513414989F9AE72E81F42CD" + "WorkingFolder" = "8:_EEA50297CDC544528F6D74E8CB7387D1" + "Icon" = "8:_10F3889324AE405798E8C744C859219A" + "Feature" = "8:" + } + "{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_A4A97F3883A440488111550A6489B525" + { + "Name" = "8:ProLang" + "Arguments" = "8:" + "Description" = "8:" + "ShowCmd" = "3:1" + "IconIndex" = "3:0" + "Transitive" = "11:FALSE" + "Target" = "8:_09EE699FF5A14C13AD4AA7B59542E8D4" + "Folder" = "8:_75C31EACB46B41588A909F7DD7823758" + "WorkingFolder" = "8:_EEA50297CDC544528F6D74E8CB7387D1" + "Icon" = "8:_10F3889324AE405798E8C744C859219A" + "Feature" = "8:" + } + } + "UserInterface" + { + "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_00D8D4E8104A4880B5C9600CF586C233" + { + "UseDynamicProperties" = "11:FALSE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdUserInterface.wim" + } + "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_3AF8B4E1FD254999B0B99974C27E95E3" + { + "UseDynamicProperties" = "11:FALSE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdBasicDialogs.wim" + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_7EC77627CE9041A79CE2D64EDC0B7F5D" + { + "Name" = "8:#1901" + "Sequence" = "3:2" + "Attributes" = "3:2" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_4943E5E361AB4AF3AB2B9C499A507661" + { + "Sequence" = "3:100" + "DisplayName" = "8:Progression" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminProgressDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "ShowProgress" + { + "Name" = "8:ShowProgress" + "DisplayName" = "8:#1009" + "Description" = "8:#1109" + "Type" = "3:5" + "ContextData" = "8:1;True=1;False=0" + "Attributes" = "3:0" + "Setting" = "3:0" + "Value" = "3:1" + "DefaultValue" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_8426C4E7376146F8AAA0D2560FFA138B" + { + "Name" = "8:#1900" + "Sequence" = "3:2" + "Attributes" = "3:1" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_2896D6BD0ADE4CA2AFE3FB1D6B33C473" + { + "Sequence" = "3:100" + "DisplayName" = "8:Bienvenue" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminWelcomeDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "CopyrightWarning" + { + "Name" = "8:CopyrightWarning" + "DisplayName" = "8:#1002" + "Description" = "8:#1102" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1202" + "DefaultValue" = "8:#1202" + "UsePlugInResources" = "11:TRUE" + } + "Welcome" + { + "Name" = "8:Welcome" + "DisplayName" = "8:#1003" + "Description" = "8:#1103" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1203" + "DefaultValue" = "8:#1203" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_3562E9EA08704EB6BBFAFAE98B9F51F6" + { + "Sequence" = "3:300" + "DisplayName" = "8:Confirmer l'installation" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminConfirmDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_51E218F06CDA4E59B15C144F78B337C7" + { + "Sequence" = "3:200" + "DisplayName" = "8:Dossier d'installation" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminFolderDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_C048306F272F4D17B5F15EDAA1A394BF" + { + "Name" = "8:#1902" + "Sequence" = "3:2" + "Attributes" = "3:3" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_3C4407AF04364882A24085CBB846D6CE" + { + "Sequence" = "3:100" + "DisplayName" = "8:Terminé" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminFinishedDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_C14AE46C0BF3441F85E37D6E63A99AB8" + { + "Name" = "8:#1900" + "Sequence" = "3:1" + "Attributes" = "3:1" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_5037B90674034EBDAEF1B617132EB7E8" + { + "Sequence" = "3:100" + "DisplayName" = "8:Bienvenue" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdWelcomeDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "CopyrightWarning" + { + "Name" = "8:CopyrightWarning" + "DisplayName" = "8:#1002" + "Description" = "8:#1102" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1202" + "DefaultValue" = "8:#1202" + "UsePlugInResources" = "11:TRUE" + } + "Welcome" + { + "Name" = "8:Welcome" + "DisplayName" = "8:#1003" + "Description" = "8:#1103" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1203" + "DefaultValue" = "8:#1203" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_90EC6BF569684A048A257AFA9F5F1A96" + { + "Sequence" = "3:200" + "DisplayName" = "8:Dossier d'installation" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdFolderDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "InstallAllUsersVisible" + { + "Name" = "8:InstallAllUsersVisible" + "DisplayName" = "8:#1059" + "Description" = "8:#1159" + "Type" = "3:5" + "ContextData" = "8:1;True=1;False=0" + "Attributes" = "3:0" + "Setting" = "3:0" + "Value" = "3:1" + "DefaultValue" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_F709A7C33DA34700B9B673FD23915221" + { + "Sequence" = "3:300" + "DisplayName" = "8:Confirmer l'installation" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdConfirmDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_DF0E0B1C23EA4F4FBA89787769F5A60C" + { + "Name" = "8:#1901" + "Sequence" = "3:1" + "Attributes" = "3:2" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_4063C2B9F23144399D362AB3FC46F3D4" + { + "Sequence" = "3:100" + "DisplayName" = "8:Progression" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdProgressDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "ShowProgress" + { + "Name" = "8:ShowProgress" + "DisplayName" = "8:#1009" + "Description" = "8:#1109" + "Type" = "3:5" + "ContextData" = "8:1;True=1;False=0" + "Attributes" = "3:0" + "Setting" = "3:0" + "Value" = "3:1" + "DefaultValue" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_ED59D2EA39A4497CA3025385015AB567" + { + "Name" = "8:#1902" + "Sequence" = "3:1" + "Attributes" = "3:3" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_C6D5C426D85C4266B8896E2F5B585B2B" + { + "Sequence" = "3:100" + "DisplayName" = "8:Terminé" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdFinishedDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "UpdateText" + { + "Name" = "8:UpdateText" + "DisplayName" = "8:#1058" + "Description" = "8:#1158" + "Type" = "3:15" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1258" + "DefaultValue" = "8:#1258" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + } + "MergeModule" + { + } + "ProjectOutput" + { + "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_09EE699FF5A14C13AD4AA7B59542E8D4" + { + "SourcePath" = "8:..\\notre_projet\\obj\\Debug\\netcoreapp3.0\\apphost.exe" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_EEA50297CDC544528F6D74E8CB7387D1" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + "ProjectOutputGroupRegister" = "3:1" + "OutputConfiguration" = "8:" + "OutputGroupCanonicalName" = "8:PublishItems" + "OutputProjectGuid" = "8:{515D3CBF-FDF8-4215-B09D-1360710E188E}" + "ShowKeyOutput" = "11:TRUE" + "PublishProfilePath" = "8:Properties\\PublishProfiles\\FolderProfile.pubxml" + "ExcludeFilters" + { + } + } + } + } +} diff --git a/source/repos/notre_solution/logiqueDeLApp/Compte.cs b/source/repos/notre_solution/logiqueDeLApp/Compte.cs new file mode 100644 index 0000000..a75d00b --- /dev/null +++ b/source/repos/notre_solution/logiqueDeLApp/Compte.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace logiqueDeLApp +{ + public class Compte + { + public string Identifiant { get; private set; } + private string MotDePasse { get; set; } + public bool EstAdmin { get; private set; } + public bool EstConnecter { get; set; } + } +} diff --git a/source/repos/notre_solution/logiqueDeLApp/Gestionaire.cs b/source/repos/notre_solution/logiqueDeLApp/Gestionaire.cs new file mode 100644 index 0000000..d19bcf8 --- /dev/null +++ b/source/repos/notre_solution/logiqueDeLApp/Gestionaire.cs @@ -0,0 +1,10 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace logiqueDeLApp +{ + public abstract class Gestionaire + { + } +} diff --git a/source/repos/notre_solution/logiqueDeLApp/Item.cs b/source/repos/notre_solution/logiqueDeLApp/Item.cs new file mode 100644 index 0000000..8e56259 --- /dev/null +++ b/source/repos/notre_solution/logiqueDeLApp/Item.cs @@ -0,0 +1,6 @@ +namespace notre_bibliotheque +{ + public interface Item + { + } +} \ No newline at end of file diff --git a/source/repos/notre_solution/logiqueDeLApp/Items.cs b/source/repos/notre_solution/logiqueDeLApp/Items.cs new file mode 100644 index 0000000..5cf536f --- /dev/null +++ b/source/repos/notre_solution/logiqueDeLApp/Items.cs @@ -0,0 +1,46 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace logiqueDeLApp +{ + public class Items + { + public Item ItemCourant { get; private set; } + public IList LesItems { get; private set; } + + public Items(IList items) + { + LesItems = items; + } + + public Items(Item itemCourant, IList lesItems) + { + ItemCourant = itemCourant; + LesItems = lesItems; + } + public Items() + { + LesItems = new List(); + } + + public void Supprimer(Item it) + { + if(LesItems.Remove(it) == false) + { + // lever une exception qui dit que it n'existe pas + } + } + + public void Ajouter(Item it) + { + if (LesItems.Contains(it) == true) + { + // lever un exeption qui dit que lesItems contien it + return; + } + LesItems.Add(it); + } + + } +} diff --git a/source/repos/notre_solution/logiqueDeLApp/Langage.cs b/source/repos/notre_solution/logiqueDeLApp/Langage.cs new file mode 100644 index 0000000..e2d73e7 --- /dev/null +++ b/source/repos/notre_solution/logiqueDeLApp/Langage.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace logiqueDeLApp +{ + public class Langage : Item + { + public string Nom { get; private set; } + public DateTime DateDuLangage { get; private set; } + public IList LesAuteurs { get; private set; } + public string Doucumentation { get; private set; } + public string chemainDuLogo { get; private set; } + public IList logicielsConus { get; private set; } + public string utilitéDuLangage { get; private set; } + + } +} diff --git a/source/repos/notre_solution/logiqueDeLApp/Paradigme.cs b/source/repos/notre_solution/logiqueDeLApp/Paradigme.cs new file mode 100644 index 0000000..13528c6 --- /dev/null +++ b/source/repos/notre_solution/logiqueDeLApp/Paradigme.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; + +namespace logiqueDeLApp +{ + class Paradigme + { + public string Nom { get; private set; } + public IList LesParadigmes { get; private set; } + + public Paradigme(string nom, List lesParadigmes) + { + Nom = nom; + LesParadigmes = lesParadigmes; + } + + public bool IsParadigmeExists(Paradigme p) + { + return LesParadigmes.Contains(p); + } + } +} diff --git a/source/repos/notre_solution/logiqueDeLApp/logiqueDeLApp.csproj b/source/repos/notre_solution/logiqueDeLApp/logiqueDeLApp.csproj new file mode 100644 index 0000000..7322fb3 --- /dev/null +++ b/source/repos/notre_solution/logiqueDeLApp/logiqueDeLApp.csproj @@ -0,0 +1,8 @@ + + + + Exe + netcoreapp3.0 + + + diff --git a/source/repos/notre_solution/notre_bibliotheque/Compte.cs b/source/repos/notre_solution/notre_bibliotheque/Compte.cs new file mode 100644 index 0000000..b891ff7 --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/Compte.cs @@ -0,0 +1,183 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Runtime.Serialization; +using System.Text; + +namespace notre_bibliotheque +{ + /// + /// cette classe va permettre à l'utilisateur de se connecter pour avoir acces à des fonctions suplémentaires + /// elle implémente l'interface Item ainsi que IEquatable (pour le protocole d'égalité) + /// + + [DataContract] + public class Compte : Item, IEquatable + { + //un compte a un identifiant de type string + [DataMember] + public string Identifiant { get; private set; } + + //un compte a un mot de passe de type string + private string motDePasse; + + + [DataMember] + public string MotDePasse { + get + { + return motDePasse; + } + set + { + motDePasse = value; + } + } + + //la propriété EstAdmin de type bool indique si l'utilisateur à le droit d'accès au mode administrateur + [DataMember] + public bool EstAdmin { get; private set; } + + //un compte a une collection LesLangagesFavoris de type IList ; cette propriété regroupe + //tous les langages que l'utilisateur a ajouté en tant que favoris + [DataMember] + public IList LesLangagesFavoris { get; private set; } + + //un compte a une collection HistoriqueDuCompte de type IList ; cette propriété regroupe + //tous les langages que l'utilisateur a consulté + [DataMember] + public IList HistoriqueDuCompte { get; private set; } + + //cette classe a deux constructeurs + + /// + /// ce premier constructeur prend en parametre un identifiant et un mot de passe de type string, + /// ainsi qu'un bool pour indiquer si le compte à le droit d'acces au mode administrateur + /// + /// + /// + /// + public Compte(string id, string mp, bool admin) + { + Identifiant = id; + motDePasse = mp; + EstAdmin = admin; + LesLangagesFavoris = new List(); + HistoriqueDuCompte = new List(); + } + + /// + /// ce second constructeur prend en parametre seulement un identifiant et un mot de passe de type string + /// ce constructeur sert à creer un compte sans specifier l'acces au mode amdinistrateur ; cette propriété sera + /// alors set à false (ce constructeur a surtout été utile pour les tests) + /// + /// + /// + public Compte(string id, string mp): this(id, mp, false){} + + /// + /// la methode ToString permet d'afficher les différentes informations d'un compte + /// + /// + public override string ToString() + { + string admin; + if (EstAdmin == false) + { + admin = "ce compte n'a pas l'acces au mode administrateur"; + } + else + { + admin = "ce compte a l'acces au mode administrateur"; + } + + return $"Identifiant = {Identifiant} \n Mot de passe = {MotDePasse} \n Mode Administrateur = {admin}"; + } + + /// + /// ces trois methodes servent a redéfinir protocole d'égalité + /// deux comptes sont les mêmes si ils ont le même identifiant et mot de passe + /// + /// + /// + public override bool Equals(object obj) + { + if (obj == this) return true; + if (obj == null) return false; + if (obj.GetType() != this.GetType()) return false; + return Equals(obj as Compte); + } + + public bool Equals(Compte other) + { + return (other.Identifiant == this.Identifiant) && (other.MotDePasse == this.MotDePasse); + } + + public override int GetHashCode() + { + return ((Identifiant.Length + MotDePasse.Length) * HistoriqueDuCompte.Count) / 3 ; + } + + /// + /// cette méthode sert à ajouter un langage à une liste de langage + /// elle va être utilisé par les methodes AjouterUnLangageALHistorique et AjouterUnLangageAuxFavoirs + /// elle prend alors en parametre la liste de Langage correspondante et le Langage à ajouter + /// + /// + /// + private IList AjouterUnLangageAUneListeDeLangages(IList tmp ,Langage l) + { + try + { + tmp.Add(l); + } + catch (NotSupportedException) + { + tmp = new List(tmp); + tmp.Add(l); + } + return tmp; + } + + private IList RetirerUnLangageAUneListeDeLangage(IList tmp, Langage l) + { + try + { + tmp.Remove(l); + } + catch(NotSupportedException) + { + tmp = new List(tmp); + tmp.Remove(l); + } + return tmp; + } + + /// + /// cette méthode sert à ajouter un langage à l'historique du compte + /// elle prend un langage en parametre, et appelle la methode AjouterUnLangageAUneListeDeLangages en lui donnant + /// la liste HistoriqueDuCompte ainsi que le langage à ajouter à la liste + /// + /// + public void AjouterUnLangageALHistorique(Langage l) + { + HistoriqueDuCompte = AjouterUnLangageAUneListeDeLangages(HistoriqueDuCompte, l); + } + + /// + /// cette méthode sert à ajouter un langage aux favoris du compte + /// elle prend un langage en parametre, et appelle la methode AjouterUnLangageAUneListeDeLangages en lui donnant + /// la liste LesLangagesFavoris ainsi que le langage à ajouter à la liste + /// + /// + public void AjouterUnLangageAuxFavoirs(Langage l) + { + LesLangagesFavoris = AjouterUnLangageAUneListeDeLangages(LesLangagesFavoris, l); + } + + public void RetirerUnLangageDesFavoris(Langage l) + { + LesLangagesFavoris = RetirerUnLangageAUneListeDeLangage(LesLangagesFavoris, l); + } + } +} diff --git a/source/repos/notre_solution/notre_bibliotheque/Gestionaire.cs b/source/repos/notre_solution/notre_bibliotheque/Gestionaire.cs new file mode 100644 index 0000000..54365b6 --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/Gestionaire.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Runtime.CompilerServices; +using System.Text; + +namespace notre_bibliotheque +{ + /// + /// La classe Gestionnaire permet de creer des gestionnaire qui pouront implémenter une persistance. + /// + public abstract class Gestionaire + { + public static IPercistance Persistance { get; set; } + } +} diff --git a/source/repos/notre_solution/notre_bibliotheque/GestionaireDeComptes.cs b/source/repos/notre_solution/notre_bibliotheque/GestionaireDeComptes.cs new file mode 100644 index 0000000..9ae8866 --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/GestionaireDeComptes.cs @@ -0,0 +1,79 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.IO; +using System.Runtime.CompilerServices; +using System.Runtime.Serialization; +using System.Text; + +namespace notre_bibliotheque +{ + /// + /// Le gestionaire de comptes permet de gerrer les comptes, il sert d'interface entre le model et l'application + /// + public class GestionaireDeComptes : Gestionaire, INotifyPropertyChanged + { + public bool IsSomeoneConnected => !(ItemsComptes.ItemCourant == null); + + // ItemsComptes contien, entre autre, la liste des comptes + public Items ItemsComptes { get; set;} + public GestionaireDeComptes() + { + ItemsComptes = new Items(); + } + public GestionaireDeComptes(Items its) + { + ItemsComptes = its; + } + + public event PropertyChangedEventHandler PropertyChanged; + + /// + /// Permet de verrifier si un nouveau compte est acceptable + /// + /// Identrifiant du nouveau compte + /// Mot de passe du nouveau compte + /// Verrification du mot de passe + /// Autorise l'accès au mode administrateur + /// Si le nouveau compte est validé, il est retourné + public Compte VerfierCreationCompte(string id, string mdp1, string mdp2,bool admin) + { + foreach (Compte c in ItemsComptes.LesItems) + { + if (id == c.Identifiant) + { + throw new Exception("Ce nom d'utilisateur existe déjà"); + } + } + if (mdp1 != mdp2) + { + throw new Exception("Les mots de passes sont différents"); + } + Compte tmp = new Compte(id, mdp1, admin); + return tmp; + } + + /// + /// Permet de charger les comptes grace à la proprieté Persistance de Gestionaire + /// + public void ChargerLesComptes() + { + ItemsComptes.LesItems.Clear(); + var lesComptesChargés = Persistance?.ChargerLesDonnées()["Comptes"]; + if (lesComptesChargés == null) + { + throw new Exception("PB : chargement imposible"); + } + + foreach (Compte it in lesComptesChargés) + { + ItemsComptes.Ajouter(it); + } + } + public void onPropertyChanged(string prop) + { + PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(prop)); + } + } + +} diff --git a/source/repos/notre_solution/notre_bibliotheque/GestionairedeLangages.cs b/source/repos/notre_solution/notre_bibliotheque/GestionairedeLangages.cs new file mode 100644 index 0000000..08f556d --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/GestionairedeLangages.cs @@ -0,0 +1,79 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.ComponentModel; +using System.Runtime.CompilerServices; + +namespace notre_bibliotheque +{ + /// + /// Ce gestionaire de langage permet de gerrer les langages. + /// + public class GestionaireDeLangages : Gestionaire, INotifyPropertyChanged + { + + private Items itemsLangages; + // ItemsLangages conntient, entre autre, la liste des langages consutables + // et notifie ses abbonés lors ce qu'il change + public Items ItemsLangages + { + get => itemsLangages; + set + { + itemsLangages = value; + OnPropertyChange(); + } + } + public bool IsASelectedLanguage + { + get => ItemsLangages.ItemCourant != null; + } + + public GestionaireDeLangages() + { + ItemsLangages = new Items(); + } + + public GestionaireDeLangages(Items its) + { + ItemsLangages = its; + } + + public event PropertyChangedEventHandler PropertyChanged; + + public Langage VerifierCreationLangage(string nom, int date, IList auteurs, string doc, string logo, string exemple, IList logiciels, string utilite, IList paradigmes, int gen) + { + Langage tmp = new Langage(nom, date, auteurs, doc, logo, exemple, logiciels, utilite, paradigmes, gen); + if (ItemsLangages.Exists(tmp)) + { + throw new Exception("Ce langage existe déjà"); + } + return tmp; + } + + public void OnPropertyChange([CallerMemberName] string prop = null) + { + PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(prop)); + } + + /// + /// Permet de charger les langages depuis la propriété Persistance de Gestionaire + /// + public void ChargerLesLangages() + { + itemsLangages.LesItems.Clear(); + var lesLangagesChargés = Persistance?.ChargerLesDonnées()["Langages"]; + if(lesLangagesChargés == null) + { + throw new Exception("PB : chargement impossible"); + } + + foreach(Item it in lesLangagesChargés) + { + ItemsLangages.Ajouter(it); + } + } + } +} + diff --git a/source/repos/notre_solution/notre_bibliotheque/IPercistance.cs b/source/repos/notre_solution/notre_bibliotheque/IPercistance.cs new file mode 100644 index 0000000..326fda9 --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/IPercistance.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace notre_bibliotheque +{ + /// + /// cette interface va permettre la persistance de toutes les données (langages et comptes) + /// + public interface IPercistance + { + /// + /// cette methode sert à charger les données; + /// elle crée un dictionnaire avec une clé de type string et une valeur de type IEnumerable, + /// elle ajoute deux éléments dans le dictionnaire : une clé Langages avec en valeur la liste LesLangages de Data, + /// et une clé Comptes avec en valeur la liste LesComptes de Data + /// + /// elle retourne le dictionnaire + Dictionary> ChargerLesDonnées(); + + /// + /// cette méthode sert à sauvegarder les données; + /// elle prend deux parametres, une collection IEnumérable et une collection IEnumerable + /// ces collections sont les listes de langages et comptes à sauvegarder + /// + /// + /// + void SauvegarderLesDonnées(IEnumerable lesLangages, IEnumerable lesComptes); + } +} diff --git a/source/repos/notre_solution/notre_bibliotheque/Item.cs b/source/repos/notre_solution/notre_bibliotheque/Item.cs new file mode 100644 index 0000000..46d2800 --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/Item.cs @@ -0,0 +1,11 @@ + +namespace notre_bibliotheque +{ + /// + /// cette interface sert à regrouper Compte et Langage dans une "categorie" + /// cela permet de les gerer plus facilement + /// + public interface Item + { + } +} \ No newline at end of file diff --git a/source/repos/notre_solution/notre_bibliotheque/Items.cs b/source/repos/notre_solution/notre_bibliotheque/Items.cs new file mode 100644 index 0000000..173d456 --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/Items.cs @@ -0,0 +1,176 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Text; +using System.Xml.Serialization; +using System.Linq; +using System.ComponentModel; +using System.Runtime.CompilerServices; +using System.Diagnostics; +using System.Collections.ObjectModel; + +namespace notre_bibliotheque +{ + /// + /// Classe qui sert de point de sérialization. + /// + public class Items : IEquatable, INotifyPropertyChanged + { + private ValeurTri filtre; + public ValeurTri Filtre + { + get => filtre; + set + { + filtre = value; + OnPropertyChanged("LesItems"); + } + } + + public Item ItemCourant { get; set; } + public Items ItemsDeLAutreType { get; set; } + private IList lesItems; + + public event PropertyChangedEventHandler PropertyChanged; + + // LesItems est une propriété calculé en fonction du Filtre de tri + public IList LesItems { + get + { + try + { + switch(Filtre) + { + case ValeurTri.Date: + return lesItems.OrderBy(it => (it as Langage).DateDuLangage).ToList(); + case ValeurTri.Favoris: + if (ItemsDeLAutreType.ItemCourant == null) return new List(); + IList tmp = new List(); + foreach(Item it in (ItemsDeLAutreType.ItemCourant as Compte).LesLangagesFavoris.OrderBy(lang => (lang as Langage).Nom).ToList()) + { + tmp.Add(it); + } + return tmp; + case ValeurTri.Génération: + return lesItems.OrderBy(it => (it as Langage).Generation).ToList(); + case ValeurTri.Historique: + if (ItemsDeLAutreType.ItemCourant == null) return new List(); + List historique = new List(); + foreach(Item lang in (ItemsDeLAutreType.ItemCourant as Compte).HistoriqueDuCompte) + { + historique.Add(lang); + } + historique.Reverse(); + return historique; + default: + return lesItems.OrderBy(it => (it as Langage).Nom).ToList(); + } + } + catch (InvalidCastException) + { + return lesItems; + } + catch(NullReferenceException) + { + return lesItems; + } + } + + private set + { + lesItems = value; + } + } + + public Items(IList items) + { + Filtre = ValeurTri.Nom; + LesItems = new ObservableCollection(items); + } + + public Items() + { + Filtre = ValeurTri.Nom; + LesItems = new ObservableCollection(); + } + + /// + /// Permet de supprimer un Item de LesItems (la liste d'item (Compte ou Langage)) + /// + /// Item a supprimer + public void Supprimer(Item it) + { + if (lesItems.Remove(it) == false) + { + throw new ArgumentException($"{it} n'existe pas :/"); + } + if(ItemsDeLAutreType.ItemCourant == it) + { + ItemsDeLAutreType.ItemCourant = null; + } + if(ItemsDeLAutreType.ItemCourant == it) + { + ItemsDeLAutreType.ItemCourant = null; + } + //quand un item est supprimé, la propriété LesItems est notifiée + OnPropertyChanged("LesItems"); + } + + /// + /// Permet d'ajouter un Item dans la liste d'Item (LesItems) + /// + /// Item à ajouter + public void Ajouter(Item it) + { + if (lesItems.Contains(it) == true) + { + throw new Exception("L'item existe déja"); + } + lesItems.Add(it); + OnPropertyChanged("LesItems"); + } + + /// + /// Vérifie qu'un Item est dans la liste des Item (LesItems) + /// + /// Item à tester + /// + public bool Exists(Item it) + { + return lesItems.Contains(it); + } + + public bool Equals(Items other) + { + ValeurTri ancienFiltreOther = other.Filtre; + other.Filtre = ValeurTri.Nom; + + bool valeurARetourner = lesItems.Equals(other.LesItems); + other.Filtre = ancienFiltreOther; + return valeurARetourner; + } + + public override bool Equals(object obj) + { + if (obj is null) return false; + if (obj == this) return true; + if (obj.GetType() != GetType()) return false; + return Equals(obj as Items); + } + + /// + /// Permet de notifier le changement de valeur d'une propriété + /// + /// nom de la propriété qui change de valeur + /// Si on appel OnPropertyChanged() sans arguments, alors ce sera la propriété qui est en train de mutter qui sera automatiquement passer en argument + private void OnPropertyChanged([CallerMemberName]string prop = null) + { + Debug.WriteLine(prop); + PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(prop)); + } + public override int GetHashCode() + { + return base.GetHashCode(); + } + } +} diff --git a/source/repos/notre_solution/notre_bibliotheque/Langage.cs b/source/repos/notre_solution/notre_bibliotheque/Langage.cs new file mode 100644 index 0000000..640c1d8 --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/Langage.cs @@ -0,0 +1,325 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Runtime.Serialization; +using System.Text; + +namespace notre_bibliotheque +{ + /// + /// cette classe va permettre à l'utilisateur de voir toutes les informations concernant un langage + /// elle implémente l'interface Item, IEquatable (pour le protocole d'égalité) ainsi que + /// INotifyPropertyChanged + /// + + [DataContract] + public class Langage : Item, IEquatable, INotifyPropertyChanged + { + //un langage a un nom de type string + private string nom; + [DataMember] + public string Nom + { + get => nom; + set + { + if (String.IsNullOrEmpty(value.Trim())) + { + throw new Exception("Le nom doit être renseigné"); + } + nom = value; + } + } + + //un langage a une date de création de type int (juste l'année) + private int dateDuLangage; + [DataMember] + public int DateDuLangage + { + get => dateDuLangage; + set + { + if(value <= 1900) + { + throw new Exception("La date de création doit être renseigné"); + } + dateDuLangage = value; + } + } + + //un langage a une collection d'auteurs de type IList + private IList lesAuteurs; + [DataMember] + public IList LesAuteurs + { + get => lesAuteurs; + set + { + if(value == null) + { + throw new Exception("Les auteurs ne doivent pas être null"); + } + if(value.Count == 0) + { + throw new Exception("Il doit y avoir au moins un auteur"); + } + foreach(string auteur in value) + { + if (String.IsNullOrEmpty(auteur.Trim())) + { + throw new Exception("Le nom de l'auteur doit être renseigné"); + } + + } + lesAuteurs = value; + } + } + + //un langage a un lien vers sa documentation de type string + private string documentation; + [DataMember] + public string Documentation + { + get => documentation; + set + { + if (String.IsNullOrEmpty(value.Trim())) + { + throw new Exception("La documentation doit être renseigné"); + } + documentation = value; + } + } + + //un langage a un chemin pour son logo de type string + private string cheminDuLogo; + [DataMember] + public string CheminDuLogo + { + get => cheminDuLogo; + set + { + if (String.IsNullOrEmpty(value.Trim())) + { + throw new Exception("le chemin du logo doit être renseigné"); + } + cheminDuLogo = value; + } + } + + //un langage a une collection de logiciels connus de type IList + private IList logicielsConnus; + [DataMember] + public IList LogicielsConus + { + get => logicielsConnus; + set + { + if (value == null) + { + throw new Exception("Les logiciels ne doivent pas être null"); + } + if (value.Count == 0) + { + throw new Exception("Il doit y avoir au moins un logiciel"); + } + foreach (string logiciel in value) + { + if (String.IsNullOrEmpty(logiciel.Trim())) + { + throw new Exception("Le nom du logiciel doit être renseigné"); + } + + } + logicielsConnus = value; + } + } + + //un langage a une description de son utilité de type string + private string utilitéDuLangage; + [DataMember] + public string UtilitéDuLangage + { + get => utilitéDuLangage; + set + { + if (String.IsNullOrEmpty(value.Trim())) + { + throw new Exception("l'utilité du langage doit être renseigné"); + } + utilitéDuLangage = value; + } + } + + //un langage a un exemple de code "Hello World" de type string + private string exempleDeCode; + [DataMember] + public string ExempleDeCode + { + get => exempleDeCode; + set + { + if (String.IsNullOrEmpty(value.Trim())) + { + throw new Exception("l'exemple de code doit être renseigné"); + } + exempleDeCode = value; + } + } + + //un langage a une collection de paradigmes de type IList + private IList lesParadigmes; + [DataMember] + public IList LesParadigmes + { + get => lesParadigmes; + set + { + if (value == null) + { + throw new Exception("Les paradigmes ne doivent pas être null"); + } + if (value.Count == 0) + { + throw new Exception("Il doit y avoir au moins un paradigme"); + } + foreach (string parag in value) + { + if (String.IsNullOrEmpty(parag.Trim())) + { + throw new Exception("Le nom du paradigme doit être renseigné"); + } + + } + lesParadigmes = value; + } + } + + //un langage a une génération de type int + int generation; + [DataMember] + public int Generation + { + get => generation; + set + { + if (value <= 0) + { + throw new ArgumentException("La génération doit être suppérieur a 0"); + } + generation = value; + + } + } + + //la propriété DansLesFavoris de type bool indique si le langage sélectionné par l'utilisateur + //est actuellement dans la liste des favoris du compte de l'utilisateur (si celui-ci est connecté) + //elle invoque l'événeiment PropertyChanged quand sa valeur est set + private bool dansLesFavoris; + public bool DansLesFavoris + { + get => dansLesFavoris; + set + { + dansLesFavoris = value; + PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("DansLesFavoris")); + } + } + + //l'événement PropertyChanged est utilisé par la propriété DansLesFavoris, pour notifier à l'ensemble + //du programme quand cette propriété est set + public event PropertyChangedEventHandler PropertyChanged; + + //cette classe a deux constructeurs + + /// + /// ce premier constructeur ne prend aucun parametres, les propriétés du langages ne sont alors pas set + /// (ce constructeur a surtout été utile pour les tests) + /// + public Langage() { } + + /// + /// ce second constructeur prend en parametres toutes les informations necessaires pour créer un langage + /// les propriétés du langage vont alors etre set par toutes ses valeurs données en parametre + /// (sauf pour DansLesFavoris qui est mis à false quand le langage est créé) + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + public Langage(string nom, int date, IList auteurs, string doc, string logo, string exemple, IList logiciels, string utilite, IList paradigmes, int generation) + { + Nom = nom; + DateDuLangage = date; + LesAuteurs = auteurs; + Documentation = doc; + CheminDuLogo = logo; + LogicielsConus = logiciels; + UtilitéDuLangage = utilite; + ExempleDeCode = exemple; + LesParadigmes = paradigmes; + Generation = generation; + DansLesFavoris = false; + + } + + /// + /// la methode ToString permet d'afficher les différentes informations d'un langage + /// + /// + public override string ToString() + { + string affiche_auteurs = null; + string affiche_logiciels = null; + string affiche_paradigme = ""; + + foreach(string auteur in LesAuteurs) + { + affiche_auteurs += $"{auteur} \n"; + } + + foreach(string logiciel in LogicielsConus) + { + affiche_logiciels += $"{logiciel} \n"; + } + + foreach(string paradigme in LesParadigmes) + { + affiche_paradigme += $"{paradigme} \n"; + } + + return $"Nom du langage = {Nom} \n Date de création = {DateDuLangage} \n Auteurs = {affiche_auteurs} \n Documentation = {Documentation} \n " + + $"Logo = {CheminDuLogo} \n Paradigmes = {affiche_paradigme}\n Logiciels Connus = {affiche_logiciels} \n Utilité du langage = {UtilitéDuLangage} \n Exemple de code (Hello World) = {ExempleDeCode}\n Génération = {Generation}"; + } + + /// + /// ces trois methodes servent à redéfinir protocole d'égalité + /// deux langages sont les mêmes si ils ont le même nom + /// + /// + /// + public override bool Equals(object obj) + { + if (obj == null) return false; + if (this == obj) return true; + if (this.GetType() != obj.GetType()) return false; + return Equals(obj as Langage); + } + + public bool Equals(Langage other) + { + return this.Nom == other.Nom; + } + + public override int GetHashCode() + { + return ((Nom.Length + DateDuLangage) * LesAuteurs.Count) / 3; + } + } +} diff --git a/source/repos/notre_solution/notre_bibliotheque/Paradigme.cs b/source/repos/notre_solution/notre_bibliotheque/Paradigme.cs new file mode 100644 index 0000000..76415f8 --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/Paradigme.cs @@ -0,0 +1,50 @@ +using System; +using System.Collections.Generic; + +namespace notre_bibliotheque +{ + public class Paradigme : IEquatable + { + public string Nom { get; private set; } + public static IList LesParadigmes { get; set; } + + public Paradigme(string nom) + { + Nom = nom; + } + + public static bool IsParadigmeExists(Paradigme p) + { + return LesParadigmes.Contains(p); + } + + public static bool IsParadigmeExists(string p) + { + foreach(Paradigme paradigme in LesParadigmes) + { + if(p == paradigme.Nom) + { + return true; + } + } + return false; + } + + public override string ToString() + { + return Nom; + } + + public override bool Equals(object obj) + { + if (obj == null) return false; + if (obj == this) return false; + if (GetType() != obj.GetType()) return false; + return Equals(obj as Paradigme); + } + public bool Equals(Paradigme other) + { + return Nom == other.Nom; + } + } +} diff --git a/source/repos/notre_solution/notre_bibliotheque/ValeurTri.cs b/source/repos/notre_solution/notre_bibliotheque/ValeurTri.cs new file mode 100644 index 0000000..98db0d6 --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/ValeurTri.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace notre_bibliotheque +{ + /// + /// cette enum regroupe les valeurs possibles pour trier la liste des langages + /// la liste sera alors triable par nom, date de création et par génération, + /// et pourra être filtré par les langages present dans les listes favoris et historique du compte + /// actuellement connecté + /// + public enum ValeurTri + { + Nom, + Date, + Génération, + Favoris, + Historique, + } +} diff --git a/source/repos/notre_solution/notre_bibliotheque/notre_bibliotheque.csproj b/source/repos/notre_solution/notre_bibliotheque/notre_bibliotheque.csproj new file mode 100644 index 0000000..6b62b4b --- /dev/null +++ b/source/repos/notre_solution/notre_bibliotheque/notre_bibliotheque.csproj @@ -0,0 +1,11 @@ + + + + netstandard2.0 + + + + + + + diff --git a/source/repos/notre_solution/notre_projet/AccueilUC.xaml b/source/repos/notre_solution/notre_projet/AccueilUC.xaml new file mode 100644 index 0000000..fc31d07 --- /dev/null +++ b/source/repos/notre_solution/notre_projet/AccueilUC.xaml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + Historique + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/repos/notre_solution/notre_projet/DescriptionLangageUC.xaml.cs b/source/repos/notre_solution/notre_projet/DescriptionLangageUC.xaml.cs new file mode 100644 index 0000000..84615bb --- /dev/null +++ b/source/repos/notre_solution/notre_projet/DescriptionLangageUC.xaml.cs @@ -0,0 +1,58 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; +using notre_bibliotheque; + +namespace vues +{ + /// + /// Permmet d'afficher un langage + /// + public partial class DescriptionLangageUC : UserControl + { + public GestionaireDeLangages gLangages = ((App.Current as App).MainWindow as MainWindow).GestionaireLangages; + public GestionaireDeComptes gComptes = ((App.Current as App).MainWindow as MainWindow).GestionaireCompte; + public DescriptionLangageUC() + { + InitializeComponent(); + } + + /// + /// Permet d'ajouter un langage dans la liste des favoris + /// + /// Objet appelant Favoris_Click + /// Argument de l'evenement + private void Favoris_Click(object sender, RoutedEventArgs e) + { + if (!gComptes.IsSomeoneConnected) + { + MessageBox.Show("impossible d'ajouter le langage aux favoris : vous n'êtes pas connecté", "favoris", MessageBoxButton.OK, MessageBoxImage.Error); + } + else + { + if ((gLangages.ItemsLangages.ItemCourant as Langage).DansLesFavoris == false) + { + (gLangages.ItemsLangages.ItemCourant as Langage).DansLesFavoris = true; + (gComptes.ItemsComptes.ItemCourant as Compte).AjouterUnLangageAuxFavoirs(gLangages.ItemsLangages.ItemCourant as Langage); + } + else + { + (gLangages.ItemsLangages.ItemCourant as Langage).DansLesFavoris = false; + (gComptes.ItemsComptes.ItemCourant as Compte).RetirerUnLangageDesFavoris((gLangages.ItemsLangages.ItemCourant as Langage)); + + } + } + + } + } +} diff --git a/source/repos/notre_solution/notre_projet/FormulaireCompte.xaml b/source/repos/notre_solution/notre_projet/FormulaireCompte.xaml new file mode 100644 index 0000000..cf599a2 --- /dev/null +++ b/source/repos/notre_solution/notre_projet/FormulaireCompte.xaml @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + +