‫Content de te revoir.
‫C'est à nouveau l'heure du défi, et j'espère que vous parviendrez à regarder toute la vidéo sur l'héritage et à comprendre ce qui
‫se passait et comment créer le message et le message d'image et comment ils sont corrélés les uns aux autres, donc comment ils
‫sont connectés les uns aux autres.
‫Donc, cette publication d'image est la classe de conduite et se pose comme la classe de base, car maintenant le petit défi consiste
‫à créer une nouvelle classe appelée Video Post, qui est une classe de conduite avec la vidéo de propriété dont vous avez l'URL et
‫la longueur.
‫Ce sont donc des propriétés uniques à cette publication vidéo.
‫Alors imaginez que nous sommes toujours dans ce genre de chose et que nous avons des messages normaux qui ne sont que du texte que
‫nous avons ou qui peuvent être du texte, mais tout le reste aussi.
‫Ensuite, nous avons une publication d'image qui a également une URL d'image.
‫Et maintenant, ce que nous voulons avoir, c'est une publication vidéo où nous avons en fait une URL de vidéo au lieu
‫d'une URL d'image et également la durée de la vidéo.
‫Ce sont donc les informations que nous voulons avoir sur chaque publication vidéo.
‫Créez donc maintenant les constructeurs requis pour créer une publication vidéo ajustée à la méthode de chaîne
‫en conséquence, car nous avons vu dans la publication d'image que la méthode à deux chaînes ajoute des informations supplémentaires en
‫fonction des informations déjà envoyées ici.
‫Mais nous voulons en savoir encore plus sur la publication vidéo que sur la publication.
‫Donc, il suffit de chaîner la méthode, puis de créer une instance de publication vidéo.
‫Donc à peu près la même chose que nous avons fait ici avec le post d'image.
‫Il suffit d'en créer un, puis de le monter sur la console.
‫Alors peut-être que je devrais ajouter cela et utiliser la méthode à deux chaînes dessus.
‫Ensuite, si vous avez envie d'un vrai défi, vous pouvez passer aux choses les plus avancées.
‫Utilisez donc une minuterie et une méthode de rappel ici et vous pouvez la rechercher sur Google.
‫Vous pouvez simplement oui, vous pouvez essayer de le faire vous-même ou vous pouvez le rechercher sur Google.
‫Donc, l'idée est que notre publication vidéo a une méthode appelée Play et une qui s'appelle Stop et une
‫play s'appelle.
‫Ensuite, ils doivent écrire la durée actuelle de la vidéo.
‫Donc, à chaque seconde où il devrait y avoir une coche qui écrit à quelle seconde
‫de la vidéo nous sommes actuellement, puis un arrêt est enfoncé, la minuterie est arrêtée et il y a aussi un texte écrit, arrêtez ça.
‫Et c'est mieux avec nos gens.
‫Et oui, c'est à peu près ça.
‫Lisez donc la vidéo après avoir créé l'instance et mettez-la en pause lorsque l'utilisateur appuie sur l'anarchie ou arrêtez-la peut-être lorsque
‫l'utilisateur appuie sur n'importe quelle touche.
‫Donc, par processus, n'importe quelle clé, je veux simplement dire que vous avez une ligne rouge là-bas.
‫Alors restez simple ou risqué mieux.
‫Alors restez simple.
‫Et c'est ce que vous voyez ici vous aidera à créer même des lecteurs vidéo plus tard.
‫C'est donc vraiment juste un concept de base et utilisez des minuteries ici.
‫Mais comme je l'ai dit, celui-ci est la partie la plus avancée.
‫Si vous n'avez pas envie de le faire ou si c'est trop difficile, alors ça va aussi.
‫Vous pouvez simplement regarder la vidéo, mais je vous conseille vraiment de la vérifier car elle vous apprendra à utiliser
‫les minuteries et les rappels en la recherchant simplement sur Google.
‫Et il est préférable d'essayer par vous-même de découvrir comment cela fonctionne et vous vous en souviendrez certainement la prochaine fois que
‫vous voudrez utiliser des minuteries.
‫D'accord.
‫Alors peut-être, vous savez, et essayez de relever ce défi.
‫Déjà, j'espère que vous l'avez essayé, tout d'abord, nous avons bien sûr besoin d'une nouvelle classe.
‫Et ce sera notre publication vidéo et maintenant cette publication vidéo devrait hériter de la publication et ici, comme je l'ai
‫dit, nous aurions une propriété différente ou en fait deux propriétés différentes, ce que nous n'avions
‫pas auparavant.
‫Et l'un d'eux est la vidéo, vous une vidéo de chaîne protégée.
‫Vous êtes L et c'est un ensemble puis la même chose avec la longueur protégée int longueur avec
‫un L majuscule. Au mieux, obtenez et définissez également.
‫Ensuite, nous devons construire.
‫Créons donc un constructeur ici, une publication vidéo publique et je vais le laisser à nouveau vide.
‫La même approche que celle que nous avons eue dans notre article sur l'image ici où nous avons simplement créé ce constructeur vide car aucun des deux
‫constructeurs n'appelle de classe de base.
‫Celui de poste s'appellera donc celui-là ici.
‫Donc, si nous avons une entité que vous publiez, la méthode post sera appelée ou le constructeur post sera appelé
‫celui par défaut.
‫Mais nous en avons également un où nous transmettons réellement les informations requises.
‫Donc par exemple pour un post vidéo, ce qui est intéressant là, ben c'est d'une part encore le titre,
‫chaîne titre, puis le nom d'utilisateur.
‫Donc envoyé par nom d'utilisateur, alors vous êtes une vidéo de chaîne L, votre URL et le bool sont publiés et même la longueur ainsi en
‫longueur est également utile ici.
‫D'accord.
‫Donc assez long constructeur au niveau de ses paramètres.
‫Et maintenant, nous devons bien sûr utiliser ce point et bien sûr ce DOT, obtenir l'ID ou obtenir l'ID suivant sera
‫également requis ici.
‫Nous voulons donc ne pas créer un identifiant déjà présent.
‫Nous voulons aller de l'avant et utiliser le prochain ID.
‫Et comme vous vous en souviendrez peut-être, le prochain ID défini est de retour et augmente ou incrémente l'ID de
‫publication actuel, qui est une variable statique.
‫C'est donc unique pour tout ce programme, ce qui signifie qu'il sera remplacé par la nouvelle valeur ou que
‫nous obtiendrons simplement la nouvelle valeur.
‫Et ce ne sera toujours qu'une seule pièce d'identité.
‫Donc, chaque côté sera unique et c'est vraiment important ici.
‫Ensuite, le titre sera le titre et en fait, nous pouvons même aller de l'avant et le copier à partir d'ici parce que c'est la
‫même approche.
‫Droit.
‫Et.
‫Nous pouvons simplement importer ici et maintenant nous allons de l'avant avec nos URL uniques, donc, euh, propriété vidéo, votre URL est
‫un membre de la publication vidéo et en fait, je l'ai appelée accidentellement juste publiée, mais elle devrait
‫être en tant que publication vidéo publique, mais pas de poste.
‫Et ce sera cette vidéo.
‫Votre URL sera la vidéo YORO et cette longueur sera une longueur.
‫Donc, tout ce qui est donné ici comme argument doit être pris dans les propriétés de l'objet, qui sont la longueur, la vidéo, l'URL
‫et bien sûr celle que nous avons héritée de la publication.
‫Très bien, c'est donc notre constructeur.
‫Et maintenant, nous devons avoir une méthode à deux chaînes.
‫Comme nous l'avons dit, nous aurions besoin d'une méthode spécifique à la chaîne.
‫Et c'est plus simple si nous le copions simplement à partir de la publication de l'image et que nous le supprimons à nouveau.
‫Donc chaîne de substitution publique en chaîne.
‫Nous remplaçons donc la méthode de notre classe post, ce qui signifie que nous remplaçons cette méthode ici, qui à nouveau remplace cet
‫objet par le système.
‫C'est donc la beauté de l'héritage que vous pouvez annuler et annuler.
‫Alors maintenant, nous avons le format de chaîne et il pourrait être un peu différent.
‫Eh bien, différent.
‫Nous pouvons décider si nous le voulons ou non.
‫Nous pourrions envoyer la longueur ici ou nous pourrions la laisser telle quelle.
‫Ainsi, la seule différence ne serait pas l'URL de l'image, mais la vidéo dont vous avez besoin.
‫Et si vous en avez envie, vous pouvez également ajouter la longueur ici.
‫Donc, si vous voulez en informer.
‫Alors peut-être faisons-le.
‫C'est peut-être plus simple de faire ça.
‫Et ce sera pour alors et ici.
‫Je vais juste ajouter ceci, cette longueur et je sépare par une virgule.
‫Alors maintenant, afin de le rendre plus lisible, je vais juste utiliser une deuxième ligne ici.
‫Très bien, c'est donc notre méthode G-string, et maintenant nous pouvons aller de l'avant dans notre
‫publication ou en fait dans notre classe de programme et ici, nous pouvons créer une publication vidéo, une publication vidéo.
‫Nous allons l'appeler publication vidéo.
‫L'un d'eux sera un nouveau post vidéo.
‫Et nous pourrions aller de l'avant et faire comme ça.
‫Mais alors ce serait un post vide, qui est notre post ID zero comme celui-ci ici, qui a juste mon premier post, car
‫en entier, c'est public et c'est de Dennis Pennetta, mais ce n'est pas très intéressant.
‫Nous allons donc en créer un avec nos propres valeurs uniques, qui aura un identifiant unique parce que nous l'avons créé de cette
‫façon.
‫Donc on peut aller de l'avant ici.
‫Et je vais dire que c'est une vidéo ratée et je l'ai téléchargée.
‫Alors, il est téléchargé et vous pouvez le trouver sous https video dot com slash fail video ou quelque chose comme ça.
‫C'est juste une fausse pièce d'identité ou un faux lien vidéo dot com slash fail vidéo.
‫Et puis comme c'est trop long pour un rôle, je vais juste passer au suivant.
‫Ce dont nous avons besoin maintenant, si vous le vérifiez ici, il y a deux surcharges.
‫Voyons donc celui du suzerain.
‫Nous avons besoin d'une information supplémentaire sur l'accès ou s'il est public ou non.
‫Nous revoilà, public, et maintenant nous avons besoin de la longueur.
‫Disons que cette vidéo dure 15 secondes ou peut-être 10 secondes.
‫Dix, c'est bien.
‫Alors faites-le simplement 10 secondes.
‫Et maintenant.
‫C'est à peu près tout, nous pouvons donc déjà commencer notre programme et nous devrions voir les informations
‫sur notre publication vidéo et bien sûr, la partie la plus difficile manque toujours.
‫Alors nous y sommes.
‫Découvrez mes nouvelles chaussures sur images, point com.
‫Et en fait, nous n'appelons pas encore la méthode la méthode à deux chaînes.
‫Alors peut-être qu'on devrait faire ça.
‫Et ensuite, nous devons appeler ces publications vidéo à la méthode string.
‫D'accord.
‫Donc, en passant, si vous vous demandiez une carte postale vidéo, vous pouvez voir qu'il existe déjà plusieurs méthodes
‫ici.
‫Et nous n'avons pas créé ces chiffres.
‫Ils étaient juste là.
‫Et c'est parce que nous avons hérité de la poste, qui, encore une fois, hérite du système cet objet.
‫Soit dit en passant, si vous le consultez également pour le post un, postez-en un pour que vous puissiez également y voir ces méthodes.
‫Donc, égal à ce code de hachage get type update ces méthodes, ils sont hérités du système, cette classe d'objets.
‫D'accord.
‫Alors maintenant, nous avons les deux chaînes.
‫Alors maintenant, bien sûr, nous devons mettre cela dans une console.
‫Droit.
‫Et en fait, copions ce code ici et remplaçons la publication de l'image par la vidéo.
‫Publiez-en un.
‫D'accord.
‫Et maintenant, nous pouvons le démarrer.
‫Nous y sommes.
‫Donc une chose est pour les vœux d'anniversaire, puis trois.
‫Comme vous pouvez le voir, la publication vidéo a un I différent. RÉ. que notre article d'image.
‫Nous en avons donc un, trois et deux.
‫C'est juste l'ordre dans lequel nous les écrivons sur la console.
‫Donc, si vous le regardez ici, la publication vidéo, même si elle est créée après la publication d'image que nous avons
‫imprimée plus tôt, et cela nous donne ce mauvais ordre si vous le souhaitez.
‫Mais l'ordre n'est pas si important.
‫Si tu vas bien, c'est basé sur ce que tu veux montrer.
‫Donc, si vous voulez afficher les images en fonction de l'ordre dans lequel elles ont été créées ou les publications en général
‫en fonction de l'ordre dans lequel elles ont été créées, ou si vous souhaitez afficher la dernière en premier, ce genre de choses, puis
‫l'ordre, de bien sûr, ça compte.
‫Mais dans notre cas, c'est vraiment bien que nous l'ayons ainsi.
‫Ainsi, vous pouvez voir que l'ID est configuré au moment où l'objet est créé.
‫Alors j'en ai fait trois et j'en ai fait deux et pas au moment où on l'appelle comme ici, comme la méthode deux
‫cordes.
‫Donc si vous souhaitez avoir le bon.
‫Ordre pour l'ordre dans lequel ils sont créés, nous irions de l'avant comme ceci et maintenant nous pouvons voir un, deux
‫et trois.
‫Alors merci pour les vœux d'anniversaire que notre image pour les nouvelles chaussures et la vidéo ratée de Dennis Panetta.
‫Et comme vous pouvez le voir ici, la longueur de dix est également envoyée.
‫D'accord.
‫C'était donc la première partie.
‫Et maintenant, le défi plus avancé, qui consiste à créer une minuterie et une méthode de rappel, qui est appelée toutes les secondes,
‫et devrait nous informer sur la durée de la vidéo ou la durée actuelle de la vidéo.
‫Et bien sûr, nous devons créer les champs requis.
‫Nous aurons donc besoin de champs supplémentaires ici.
‫Par exemple, nous aurons besoin de savoir à quel moment de la vidéo nous en sommes.
‫Alors allons-y et créons en fait les champs avant les propriétés.
‫Il a donc des propriétés et créons maintenant les champs membres.
‫Et l'un d'eux sera un booléen protégé en cours de lecture, ce qui est utile car si une vidéo est en cours de lecture, vous pouvez la
‫mettre en pause.
‫S'il ne joue pas, vous pouvez arrêter de démarrer.
‫Donc c'est vraiment important.
‫Donc, si une vidéo est déjà en cours de lecture, vous ne voudriez pas commencer à jouer.
‫C'est pourquoi nous avons cette aide booléenne ici et ensuite nous avons besoin d'une durée protégée et cur.
‫Il est à zéro maintenant pour appeler le chronomètre.
‫Nous créons une nouvelle méthode, créons une méthode de jeu public void et créons également la méthode d'arrêt.
‫Donc vide public Stop.
‫Maintenant, que voulons-nous faire ici ?
‫Eh bien, tout d'abord, écrivons quelque chose sur la console comme jouer pour que nous sachions, OK, le jeu
‫a commencé ou est en cours de lecture.
‫La vidéo a commencé.
‫Et ici, je veux régler la minuterie et créons d'abord la minuterie.
‫Nous allons donc avoir besoin d'une minuterie ici, une minuterie, et je vais l'appeler une minuterie.
‫Maintenant, pour utiliser la minuterie, nous devons utiliser un système de thread qui est celui dont j'ai besoin en utilisant le système,
‫ce thread.
‫Et maintenant, ce que nous pouvons faire, c'est initialiser la minuterie, quel que soit l'endroit où vous avez appuyé.
‫Donc, la minuterie va être une nouvelle.
‫Timer, timer, callback devrait être la méthode qui est appelée après ce que nous devons déclarer ici, ce que je
‫vais dire maintenant.
‫Donc, comme vous pouvez le voir, vous avez besoin d'un rappel de minuterie, puis vous avez besoin d'un objet.
‫Vous devez faire du temps et une période.
‫Et le moment venu, c'est quand il devrait commencer.
‫Et la période doit être la fréquence à laquelle elle doit être répétée ou dans quel laps de temps elle doit être répétée.
‫Donc, le temps d'attente, je vais le mettre à zéro et la période est de 1000 millisecondes.
‫Alors maintenant, bien sûr, j'ai besoin de cette méthode de rappel de minuterie et je vais simplement aller de l'avant et la créer.
‫Et cela devrait être une méthode privée parce que je ne veux pas que quelqu'un d'autre l'appelle uniquement cette classe elle-même.
‫Ainsi, seule la publication vidéo vide devrait pouvoir appeler ce rappel de minuterie et le rappel de minuterie.
‫Eh bien, il a besoin d'un objet comme paramètre.
‫Je vais juste dire, oh, je vais l'appeler.
‫Oh, et maintenant je peux vérifier si la durée actuelle est inférieure à la durée de la vidéo, alors je
‫veux aller de l'avant et augmenter la durée actuelle d'un et l'afficher sur la console.
‫Donc, une vidéo CW à zéro seconde comme celle-ci, puis nous devons avoir la durée actuelle.
‫Donc, cela suffira tout simplement sur la console.
‫Maintenant, afin de forcer le ramasse-miettes pour cette vidéo, nous allons simplement utiliser la collecte de points GC.
‫Donc, cela va nettoyer tout gâchis.
‫Et au fait, sinon, si la durée actuelle n'est pas inférieure à la longueur, ce qui signifie que la vidéo est terminée, nous
‫voulons appeler la méthode d'arrêt.
‫Donc ici, nous allons juste appeler stop.
‫Et maintenant, l'arrêt doit, bien sûr, être mis en œuvre.
‫Voyons donc ce dont nous avons besoin dans la ligne droite Arrêter la console Todd et cela va s'arrêter à, puis nous le disons simplement, à
‫quelle seconde nous arrêtons la vidéo.
‫Je vais dire la durée actuelle.
‫Et bien sûr, nous devons réinitialiser la durée actuelle à zéro et arrêter le chronomètre et arrêter le temps.
‫Nous appelons cela les deux méthodes.
‫Celui-ci nettoie simplement l'heure ou arrête la minuterie et la réinitialise.
‫Maintenant, afin de rendre cela encore plus propre, comme je l'ai dit, nous avons ce terrain de jeu et nous pouvons l'utiliser dans
‫notre méthode de jeu.
‫Donc on pourrait dire que si c'est jouer c'est faux.
‫Nous utilisons donc le point d'exclamation au début.
‫Alors seulement je veux faire ça.
‫Alors seulement, je veux commencer à jouer.
‫Alors seulement, je veux initialiser la minuterie.
‫Et s'il ne joue pas, alors rien ne devrait se passer.
‫Et ici, nous pouvons faire la même chose.
‫Donc, dans la méthode d'arrêt, nous pouvons vérifier si son jeu est vrai, donc seulement si le joueur joue, nous
‫devrions pouvoir l'arrêter.
‫D'accord.
‫C'est donc tout pour notre cours de publication vidéo.
‫Alors maintenant, nous devrions pouvoir le vérifier en accédant à notre programme et à un moment donné, commencer à créer ou à lire
‫la vidéo.
‫Donc, ce que je vais faire, c'est qu'après avoir créé la publication vidéo, je vais la lire.
‫Et puis, comme je l'ai dit, j'aimerais laisser ou laisser l'utilisateur arrêter la lecture de la vidéo.
‫Alors, comment faisons-nous cette console qui lit la clé ?
‫Et après j'appellerai la méthode stop.
‫Et entre les deux, bien sûr, j'aimerais informer l'utilisateur de ce qu'il doit faire.
‫Je vais donc utiliser S. W. ici consolez la ligne droite et je vais dire appuyez sur n'importe quelle touche pour arrêter la vidéo.
‫D'accord.
‫Et maintenant, nous pouvons le vérifier.
‫Et voyez si ce que nous avons construit là-bas fonctionne réellement, de sorte que nous appuyons sur n'importe quelle touche pour arrêter la vidéo, comme vous pouvez le
‫voir, la vidéo a commencé et elle est en cours d'exécution.
‫Et disons que je veux appuyer sur n'importe quelle touche.
‫Et en fait, j'étais trop lent.
‫La vidéo est donc passée et après 10 secondes, elle s'est arrêtée.
‫Et pourquoi est-ce que?
‫Eh bien, c'est parce que notre vidéo ne dure que 10 secondes.
‫Nous avons donc cette propriété de longueur, qui indique la durée de la vidéo.
‫Alors disons que nous créons une vidéo différente et que nous voulons cette vidéo ou en fait nous avons modifié la durée d'une publication
‫vidéo pour qu'elle ne soit que de cinq secondes.
‫Alors faisons-le et exécutons-le à nouveau, puis vous verrez qu'au bout de cinq secondes, il s'arrêtera.
‫Et voilà, la neige finie.
‫Arrêtons-le manuellement.
‫Exécutons-le à nouveau.
‫Nous y sommes et appuyons sur n'importe quelle touche pour arrêter la vidéo, et cela ne fonctionne pas, et
‫c'est parce que si nous vérifions le message que Klaus joue est faux et c'est pourquoi son jeu n'est jamais vrai.
‫Donc, ce que nous devons faire ici, c'est définir le jeu sur vrai, bien sûr.
‫Et il en va de même pour notre arrêt ici.
‫Alors on se dit qu'on joue son faux.
‫Très bien, alors maintenant revenons ici et exécutons-le à nouveau, et maintenant la vidéo est en cours d'exécution et je l'ai postée ou je
‫l'ai arrêtée et il est dit arrêté à quatre et nous pourrions même continuer et la changer pour
‫arrêter ces quatre secondes comme ça .
‫Et pour avoir plus de temps, comme vous l'avez vu, c'était assez proche.
‫Je vais encore me donner 10 secondes.
‫Alors je le traîne.
‫Je suis ici.
‫Et je l'arrête.
‫J'ai donc appuyé sur la touche entrée.
‫Okeydokey, c'était donc tout un défi.
‫J'espère que vous avez réussi à le faire même la chose la plus avancée.
‫Mais ce qui est vraiment intéressant, et je n'en ai pas trop parlé, c'est toute cette méthode de minuterie.
‫Donc si vous l'avez utilisé, alors vous comprenez ce qui se passe ou cette heure de cours.
‫Il existe donc une classe appelée Timer et vous pouvez l'utiliser pour utiliser des méthodes de minuterie, travailler pour utiliser
‫une minuterie.
‫Donc, ce que cela fait, c'est de créer un nouvel objet de minuterie et vous pouvez utiliser un rappel
‫de minuterie et un rappel de minuterie vous permet d'être appelé ou d'exécuter du code chaque fois que cette durée est écoulée.
‫Donc, chaque fois que le délai que vous avez attribué ici.
‫Donc dans mon cas, mille millisecondes s'écoulent ou cette période, alors cette fois rappelons que nous
‫l'appellerions.
‫Nous sommes donc appelés dans mon cas à chaque seconde.
‫C'est pourquoi il est écrit vidéo à une seconde, deux secondes et ainsi de suite.
‫C'est plutôt cool parce que maintenant vous pouvez aller de l'avant et créer une méthode basée sur une minuterie ou des programmes basés sur une minuterie à
‫peu près.
‫Et vous pouvez créer une minuterie complète avec laquelle un utilisateur peut jouer et faire encore plus que ce que nous venons de faire
‫ici.
‫Donc l'idée générale est que vous créez un nouveau timer, vous créez un timer callback, qui est cette fois une méthode
‫de callback qui a besoin d'un objet qui est important.
‫Et puis ici, vous pouvez aller de l'avant ou entre les accolades, vous pouvez aller de l'avant et exécuter
‫votre code régulièrement.
‫Et ce sera tout ainsi en tant de secondes.
‫Ensuite, bien sûr, l'objet timer a, si vous le regardez, une heure d'échéance, que vous pouvez attribuer, qui est
‫celle-ci ici, et un état que vous pouvez attribuer.
‫Et j'utilise juste le modèle d'état.
‫D'accord.
‫C'était donc ça.
‫Et nous allons aller de l'avant et voir encore plus ce que nous pouvons faire avec l'héritage et la programmation orientée objet dans les
‫prochaines vidéos.
‫Alors rendez-vous là-bas.