Très belles explications. Moi qui vient du Java, je n'ai pas eu du tout du mal à comprendre. C'est la syntaxe qui change toute simplement. La différence fondamentale est peut-être dans la la façon de gérer les accesseurs (getters) et les mutateurs (setters) à travers un attribut public mandataire (une propriété). C# est en fait le langage Java amélioré :-)!
@formation-video3 ай бұрын
Merci de ton retour. Et oui, C# a une approche basée sur des propriétés là où Java reste sur un fonctionnement plus historique en encapsulant dans des méthodes (get/set)
@fayepapamamadou9332 Жыл бұрын
Bonjour. Sur Visual Studio, l'Intellisense m'enlève toujours le mot clé this dont j'étais habitué en php. A t-il toujours un intérêt aujourd'hui en C# ? Cordialement.
@formation-video Жыл бұрын
Bonjour, généralement, il est facultatif, ce qui explique pourquoi ton éditeur le retire, mais tu fais comme tu veux. Si tu veux l'utiliser, continue de l'utiliser 👍
@julesfradin Жыл бұрын
Je ne comprends pas bien la différence entre l'utilisation de 'virtual + override' (method hiding/shadowing?) et de 'new' (method overriding?). Visuellement ça m'a donné le même résultat mais j'imagine que ce n'est pas process de la même manière. Merci !
@formation-video Жыл бұрын
Peux-tu donner les temps de la vidéo auxquels tu fais référence ?
@YoussefJassim Жыл бұрын
Merci beaucoup pour tes efforts, C# en mode easy...
@formation-video Жыл бұрын
Bonne continuation sur ce cours 👋
@calou62703 жыл бұрын
Merci pour toutes ces vidéos :D
@formation-video3 жыл бұрын
🙂
@KuraYami...3 жыл бұрын
Tu connais tellement de programme et de notion c'est incroyable. Quel étude as tu fait ? Et actuellement quelle est ton métier tu est développer ?
@formation-video3 жыл бұрын
Tu auras tes réponses sur mon site ( jasonchampagne.fr/ ), sections "Bio" et "Travail"
@KuraYami...3 жыл бұрын
@@formation-video ok je vais y fair un tour
@formation-video3 жыл бұрын
👍
@fayepapamamadou9332 Жыл бұрын
Très belle vidéo. Formidable langage qu'est le C#. Avec Golang et Rust c'est vraiment l'avenir. À propos penses-tu faire une formation sur ces deux autres langages? Merci encore pour ton partage de connaissances et bonne continuation. Cordialement.
@formation-video Жыл бұрын
Oui, c'est prévu : github.com/jasonchampagne/FormationVideo
@melodie147103 жыл бұрын
Bonjour Jason ! Superbe vidéo 😄 Je voulais juste savoir l'intérêt du niveau de protection "protected" ? Je veux dire qu'elle drôle d'idée à mon sens de créer des attributs dans une classe qui ne seront pas accessible pour elle-même. Autant les instancier directement dans la classe dérivée. Merci par avance pour ta réponse. Cela pourra aider certainement d'autres personnes.
@formation-video3 жыл бұрын
Bonjour, alors la classe a bien accès à ses propres données (même privées), sinon on aurait des données accessibles de nul part, ce qui n'aurait pas de sens. Par contre, pour que les données d'une classe Parent soient accessibles à la classe Enfant (qui en hérite), il faut mettre ses données au niveau d'accès protégé (protected)
@benjaminsultan23712 жыл бұрын
salut jason merci beaucoup pour tes videos j'ai cree une class 'Animal' que j'ai mis en protected et une class 'Cat' qui en derive mais lorsque je fais cat.name il me dit que c'est inaccessible tu saurais m'aider stp??
@formation-video2 жыл бұрын
Bonjour, montre l'ensemble du code
@benjaminsultan23712 жыл бұрын
@@formation-video class Animal { private string _name; protected string Name { get { return _name; } } public Animal(string name) { _name = name; } public virtual void print() { Console.WriteLine($"L'animal {Name} est cree"); } } sealed class Cat : Animal // class qui ne peut pas etre derivee { private int _age; public int Age { get { return _age; } } public Cat(string name, int age) : base(name) { _age = age; } public override void print() { Console.WriteLine($"Le chat {Name} qui a {Age} ans est cree"); } public static Cat operator +(Cat c1, Cat c2) { return new Cat(c1.Name, c1.Age + c2.Age); } } Animal animal = new Animal("hey"); animal.print(); Cat cat1 = new Cat("bonbon", 3); cat1.print(); Console.WriteLine(cat1.Name);
@formation-video2 жыл бұрын
Ta propriété "Name" doit être définie comme publique, c'est tout son intérêt justement 👍 : pastebin.com/9TdHqr6T
@benjaminsultan23712 жыл бұрын
@@formation-video et donc comment je fais pour rendre ma class animal protected? si je veux que seulement les class qui derivent d'animal puissent acceder a name?
@formation-video2 жыл бұрын
Et bien ton premier code était bon : si tu fais appel à la propriété Name depuis la classe Animal (ou Cat), le code compile. En revanche, si tu le fais dans une autre classe : erreur.
@DarkG.H11 ай бұрын
j'ai du mal a saisir ton explication de protected. Tu dit que les champs protected ne sont pas accessibles depuis la classe même, mais seulement depuis les classes dérivées. Mais si tu as une erreur, ce n'est pas plutôt parce que tout comme pour private, les champs protected ne sont pas accessibles depuis les instances? car je me trompes peut être mais ça me parait faux de dire que les champs protected ne sont pas accessible depuis la classe elle-même.
@formation-video11 ай бұрын
Quel moment de la vidéo exactement ?
@Lanfeust417 ай бұрын
@@formation-video A partir de 25'20. Je pense aussi qu'il y a une coquille, sur le site de Microsoft c'est bien précisé en c# : Un membre protégé est accessible dans sa classe et par les instances de la classe dérivée. Merci en tt cas pour toutes les vidéos !
@ala_dine27093 ай бұрын
moi aussi je pense la meme chose protected permet a la classe elle meme et ses dirivees de acceder aux proprietes noramle
@tenchigreed3 жыл бұрын
Super bien
@fr5302 жыл бұрын
Salut, ça réponds à mes questions. Étant sur php à la base ça diffère un peu
@formation-video2 жыл бұрын
Bonjour, oui, ce sera différent dans la syntaxe, mais les concepts restent les mêmes 😉
@kengmokanadomfranc22203 жыл бұрын
bonjour Jason et merci pour tes vidéos .j'aimerai savoir si je pouvais connecter ma base de donnée avec mon code source écrit en C?? MERCI D'AVANCE
@formation-video3 жыл бұрын
Oui, il existe une interface pour MySQL en C : dev.mysql.com/downloads/c-api/
@kengmokanadomfranc22203 жыл бұрын
@@formation-video merci
@didiergnd3934 Жыл бұрын
👍
@khadimdiop88443 жыл бұрын
Merci beaucoup
@formation-video3 жыл бұрын
De rien =)
@mamoudoundjim6801 Жыл бұрын
tu expliques mal
@formation-video Жыл бұрын
Mince, je ne suis donc pas parfait 👀
@fabricemattel24232 жыл бұрын
bonne video mais trop de blabla ... tu ferais mieux d'aller plus vite a l'essentiel
@formation-video2 жыл бұрын
C'est malheureusement le genre de remarque très/trop subjective, et propre à chacun. Je fais quoi dans la mesure où on me réclame également davantage de détails sur les vidéos ? Je "bablate" encore plus ? Tout cela pour dire que les vidéos ne sont pas suivies que par des francophones, et par des gens qui ont chacun leur manière d'apprendre et leur rythme d'assimilation. Ce qui peut être évident et clair au premier instant pour les uns ne l'est pas forcément pour les autres. Il faut en tenir compte et ne pas oublier que l'on n'est pas le seul à regarder la vidéo. Alors j'ai envie de dire, si pour toi, c'est assimilé rapidement, c'est tout à ton avantage 🙂 !
@abdulkabir_02 Жыл бұрын
Soit courtois tu n’es pas seul en plus il fait ce travail sans rémunération. Tu as une fois pensé à te mettre à la place des gens ?