Transcription
1. Introduction: Bienvenue au cours, C-sharp et dotnet six
pour les débutants absolus. Je suis votre instructeur
pour Vaughan Williams. J'enseigne la programmation
depuis dix ans. Dans ce cours, vous
apprendrez à utiliser notre programmation pour les applications de
bureau. Ces cours
ne supposent aucune connaissance préalable de la programmation ou du langage
C-sharp, et vous serez opérationnel en un rien de temps. Nous allons apprendre la syntaxe C-sharp,
les variables, les boucles, et
c'est sur les instructions, des collections comme cet
expéditeur soulèvent des boucles et des décisions, des instructions et de la programmation orientée
objet. À la fin de ce cours, vous
apprendrez également comment ajouter votre solution à
un ensemble de systèmes de
gestion source comme GitHub. Les développeurs ayant une connaissance
du framework Dotnet et du langage C-sharp sont très demandés dans ce domaine. Ce cours regorge de conseils de développement et il
est très convivial pour les débutants et vous permettra d'être développeur de Dotnet
inemployable
dans n'importe quelle organisation. Sans plus tarder. Je suis heureux de vous
avoir dans ce voyage et j'ai hâte que nous
commencions à nous amuser autant.
2. Installer l'édition communautaire Visual Studio 2022: Salut les gars. Dans cette leçon, nous allons
installer Visual Studio 2022, qui est livré avec dotnet six, qui est le dotnet le plus rapide à ce jour. Donc, pour commencer,
il suffit de
passer à Visual Studio.Microsoft.com
slash téléchargements. Ensuite, nous allons
aller de l'avant et le téléchargement gratuit sur
l'édition communautaire, qui
nous donnera ensuite un installateur. Une fois que vous aurez exécuté ce programme d'installation, nous pourrons sélectionner
les charges de travail souhaitées. Aucune charge de travail ne faisait vraiment référence
aux bibliothèques ou aux bibliothèques
de
support
pour le type d'application que vous
souhaitez créer. Dans ce cas, nous voulons
absolument
obtenir cette charge de travail de développement Web ESP, Dotnet et Web
Development. Mais si vous êtes
intéressé par d'autres technologies, vous pouvez aller de l'avant
et les sélectionner. Vous pouvez donc voir que j'ai
plusieurs charges de travail sélectionnées avec un développement 0, NodeJS et un développement de bureau. Vous pouvez aller de l'avant et les
diviser également. Je pense qu'
ils seront utiles avec d'autres projets que vous pourriez
finir par construire,
une fois que vous aurez fait cela, vous pouvez aller de l'avant
et cliquer sur Installer, ce qui serait fait en
bas à droite... coin de main. Bien sûr,
plus vous
sélectionnez de charges de travail, plus la taille
du téléchargement est grande. Une fois que vous avez terminé
cela, vous pouvez continuer. Personne que le téléchargement n'
est terminé, vous pouvez obtenir certaines
options que
je n'obtiendrai pas parce que
je l'ai déjà installé. Je vais juste vous
guider à quoi nous attendons ? Vous pouvez obtenir une option où
vous pourrez choisir votre thème. Comme vous pouvez le voir, j'
utilise le thème sombre, mais vous
avez l'option d' un thème clair, un thème bleu. Et le fait est
que Visual Studio 22 a beaucoup plus de thèmes
que ses prédécesseurs. Ainsi, même si vous ne voulez pas
éclairer les thèmes initiaux, vous pouvez obtenir d'autres thèmes
si vous en avez besoin. De plus, vous serez peut-être invité à vous
connecter si
2019 est déjà installé sur votre machine et que vous venez d'être
installé en 2022, que vous êtes déjà connecté en 2019, alors cela ne vous
demandera probablement pas de vous connecter à nouveau. Toutefois, s'il s'agit de
votre première installation de Visual Studio, vous serez peut-être invité à vous connecter
ou à créer un compte en direct, à
quel point vous
voudrez simplement utiliser votre Microsoft
émis en direct. Regardez hotmail.com sur les cônes, ou vous pouvez
simplement en créer un. Et si ma mémoire est utile, vous pouvez utiliser une autre adresse e-mail
non Microsoft qui
sécrète un collège de niveau. Si je crée
un nouveau projet et que je fais
une nouvelle application console, C Sharp console. Alors ce sera juste
une démo VS 2222. Très bien, allez-y, touchez ensuite. Cc est la même chose, mais ici je peux choisir quel framework et
je peux maintenant choisir le dernier dotnet six.net cinq sorti l'année dernière et
c'est selon 1.93.1, assis comme support à long terme. Il est donc toujours tout à fait capable et chacun est en réalité
rétrocompatible. Donc cinq, la plupart de ce que
vous faites, trois plus, sinon tout ce que vous faites dans 3.1 est toujours compatible avec cinq. La plupart, sinon tout
ce que vous auriez fait avec ces deux-là
peut être
avancé, transmettez-le à dotnet 6.1. C'est en quelque sorte des supports. Je vous suggérerais si vous
avez un UPS qui vole 2.1 pour commencer à chercher à les
mettre à niveau ou à les mettre à jour. Ou du moins si vous apprenez
simplement .net Core, ne commencez pas par 2.1. Lorsque nous allons de l'avant et cliquez sur Créer. Une autre chose dont je prends
note, je mets en pause la vidéo. Ce n'était pas très rapide, mais j'ai mis la vidéo en pause. Une chose dont j'ai pris note est le fait que
c'est beaucoup fossa, est-à-dire probablement parce qu'il ne s'
agit pas d'une application 64 bits, donc elle utilise mieux les ressources de vos machines 64 bits que les précédentes.
les versions l'auraient fait. Non, vous allez voir des temps de recherche
FASTA, des temps chargement des projets
plus rapides. Vous avez des solutions
avec 109 projets. Cela ne devrait pas prendre autant de
temps pour les charger. Une autre chose
que j'ai souligné est qu'il s'
agit d'une application console. Et si vous avez de
l'expérience dans la rédaction obligations
typiquement C-sharp et que vous ne sauriez pas qu'il
existe un modèle standard dans
lequel vous avez un tas
d'instructions en haut. Et puis vous avez la classe Java
int main, puis vous avez int main, puis vous avez
le code là-dedans. Mais ici, tout ce que je
vois, c'est le code. C'est Dotnet 66 en fait débarrassé de tout
ce modèle. Permettez-moi donc d'ajouter rapidement le projet d'application de
console Dotnet F5. Laissez-moi juste appeler cette démo. Je suis à cinq ans, donc nous connaissons Next. Et puis celui-ci
se fait à cinq heures. C'est donc ce à quoi nous sommes probablement habitués lorsque nous examinons un projet dotnet cinq sont terminés projet console
AddFive ou fichier de code. Vous avez votre classe, vous
aurez votre vide statique principal, puis vous aurez votre code. Cependant, dans dotnet six, ils se sont débarrassés des rappeurs, notre propre olive qui
vient de commencer à écrire du code. Ce n'est pas le cas, ce n'est pas
un tutoriel C-sharp. Je ne fais que
souligner les deux nuances. Mon tutoriel C-sharp, je vais
certainement passer en revue tout cela et les différences
entre le dotnet, dotnet C-sharp
régulier et
ce que dotnet six apporte à la table. Mais c'est vraiment cool pour
autant que je le vois. Maintenant, une autre
fonctionnalité intéressante pour moi est
qu'il est plus intelligent quand il s'agit d'allusion de code, ce qui
laisse entendre ce que vous pourriez obtenir pendant que vous
écrivez votre code. Encore une fois, considérez cela comme
une énorme productivité lorsqu'ils adoptent la
fonctionnalité dans le code télé. Et vous verrez cette petite
icône en bas qui vous
permet de
basculer certaines options. Donc, si je tape console, vous verrez que
c'est une sorte de ligne
d'écriture de points automatique . Il n'attend pas que j' aille dans la liste
et que je la sélectionne. Je peux disperser la languette puis la baignoire, tant qu'ils sont convenus. Les caractères à
droite du curseur, je peux appuyer sur la touche tabulation, puis
il suffit de les remplir. Je suis ici. Laissez-moi essayer autre chose. Si je fais quelque chose comme varname, var num one est égal à et puis je vois que je veux
probablement l'
initialiser à 0. Laissez-moi voir si c'est vraiment
ça l'intelligent, ok, ça suggère num2. Et si je voulais un nom de var ? Que suggérerait-il le nom var ? Et puis un espace et puis ça va, donc je suppose que je l'ai cassé. Mais vous pouvez peut-être voir à quoi
ça se passe. Très bien. Donc je suppose que le nom de var est vague. Comme, vous le savez, vous devez
taper pour qu'il sache
exactement quelle marche dix de variable il va être
avant de donner la valeur. Donc, si j'ai dit un nom de chaîne, voyons ce que cela suggérerait. Stringy et un. Et aussi juste montrer, d'accord, donc c'est une fonctionnalité, je suppose que les heures supplémentaires augmenteront dans son offre
parce que cela est vraiment basé sur des complétions à froid, basées sur d'autres exemples de code de différents référentiels
partout. Je suppose donc
que les noms de variables aléatoires que je souhaitais rarement utiliser, c'est probablement
pourquoi il si difficile de comprendre
ce que je veux faire. Mais alors il ne peut pas voir
avec le num un, num deux, s'il l'a compris. Je viens d'appuyer sur Entrée. Il suggère une ligne d'écriture de
points de console, tabulation. Et puis ça va
suggérer dans le seul onglet juste là, j'ai juste imprimé num
one sans écrire de ligne de code
et regarde ça, j'appuie sur Stop une fois et
j'imprime num2. Donc je pense que vous l'utilisez,
cela semblera plus facile, il fera de meilleures suggestions. C'est clairement contextuel
parce qu'il sait que num1 et num2 sont dans les
documents sont dans le programme, sait qu'il peut le
suggérer plus tard. Ne faites pas pour mes opérations.
3. Créez votre premier projet de console C#: Bienvenue les gars de retour.
Dans cette leçon, nous allons faire un tour rapide de
Visual Studio 2022
pendant la mise
en place de notre premier projet,
Visual Studio 2022. Une fois qu'il sera lancé, vous
obtiendrez cette petite fenêtre. Je cours en mode sombre, c'est
pourquoi j'ai l'air si cool, mais vous êtes peut-être
clair ou bleu, ce que vous
avez peut-être pu sélectionner pendant l'installation
et les étapes initiales. Cependant, quel que soit le
thème que vous exécutez, la mise en page sera très similaire à celui-ci. À gauche, nous avons des projets
récents. Vous voyez ici que j'ai
effondré mes projets récents, ce que j'
ai plusieurs projets. Je ne veux juste pas être
frappé par quoi que ce soit. Je vais vous donner l'
impression que le vôtre ne fonctionne
pas aussi bien que le mien. Mais une fois que vous commencez vos activités de
développement, Visual Studio les
archivera en quelque sorte
à gauche pour vous permettre de les
lancer rapidement si nécessaire. Cependant, nous avons tous les deux la possibilité de
commencer à remplir un référentiel à partir un dépôt en ligne comme
GitHub ou en tant que DevOps. Nous pouvons ouvrir un
projet ou une solution existant. Nous pouvons ouvrir un dossier local, puis créer un nouveau projet. Nous pouvons également continuer
sans code. Je vais aller de l'avant et
créer un nouveau projet. Vous disposez de modèles différents
et ces modèles sont relatifs aux
charges de travail que vous auriez sélectionnées
lors de l'installation. À gauche, vous avez
récemment utilisé des modèles. Si vous ajoutez de la guanine et que
vous avez déjà
expérimenté, ces types de
modèles seront répertoriés à votre gauche, quel que soit le modèle qu'ils ont
expérimenté. Si ce n'est pas le cas, il peut s'agir d'un problème décimal
vide. La droite est là où vous disposez de
tous les modèles potentiels que vous pourriez avoir en
fonction de vos charges de travail. Une fois de plus, vous pouvez
également rechercher et filtrer. Vous voyez que j'ai beaucoup de choses ici. Je ne sais pas où certains d'
entre eux suivent dans la liste. Je peux toujours taper celle qui m'
intéresse en octobre, et elle filtrera
cette liste en conséquence. Lorsque
vous sélectionnez votre modèle, plusieurs options s'offrent à vous. Vous avez la langue dans laquelle vous souhaitez que le modèle se trouve. C'est un faible C-sharp, donc nous allons nous concentrer
sur le C-sharp B comme gabarits. Ensuite, nous avons toutes les plateformes
ou Android ou sous forme de zéros. Vous pouvez filtrer notre
en fonction de cela. Vous pouvez également
filtrer en fonction des types de projets. Si bizarrement, dans la programmation de la console dans
ce module particulier, je pouvais facilement voir un
C-Sharp sur console, puis cela
ne produirait que les modèles qui sont
propices à ces deux options. Sinon, avec ces filtres, je peux bien
sûr faire défiler. Si vous ne trouvez pas le modèle que vous
recherchez, voyons ici. Vous allez jusqu'ici et vous
essayez de trouver la
console C Sharp et elle n'est pas là. Cela signifie que vous
n'avez probablement pas installé la charge de travail. Vous pouvez donc toujours
aller à la fin de la liste et
installer plus d'outils et fonctionnalités qui ne
feraient que relancer le programme d'installation qui
vous a permis de sélectionner vos charges de travail. Vous sélectionnez celui qui est manquant, qui serait destiné au développement
d'ordinateurs de bureau. Bonjour Visual Studio
pour se modifier lui-même. Et puis la prochaine
fois que vous
viendrez ici, tout ira bien. Commençons avec
une application console C Sharp. Notez donc que vous avez la console
C Sharp activée, vous avez également une console VB. Absolument très
prudent de noter que
la langue
utilisée n'utilisait pas Vizio OBC. Si vous voulez être
sûr de choisir C sharp. Ensuite, quand j'ai fait de la console, vous auriez vu deux options
différentes, framework Dotnet
C14
par rapport au Dotnet Core. Nous allons donc nous concentrer sur dotnet Core parce que .net Framework
est une technologie plus ancienne. C'est alors que c'était Windows
seulement depuis Dotnet Core, pas dedans est
devenu open source. Nous voulions donc nous concentrer sur les
avancées les plus récentes développement
NOT IN IT et
nous avons utilisé dotnet Core. Nous choisirons l'
application console qui peut s'exécuter sur Dotnet Core qui peut s'exécuter
sur toutes les plates-formes. Rappelez-vous, je n'ai pas
mentionné qu'il s'agit d'une vieille plateforme multiplateforme, une fente qui suffit de
double-cliquer dessus. Et puis nous serons
confrontés au menu, désolé, l'option Assistant pour mettre
le nom de notre projet, choisir un emplacement et
sélectionner une solution. Je vais choisir le nom du
projet. Très simple. Bonjour tout le monde. C'est généralement le
premier programme que
n'importe qui ait jamais écrit dans
n'importe quel langage de programmation. Helloworld. Notez qu'en modifiant
le nom du projet, il modifie automatiquement
le nom de la solution, mais je ne veux pas nécessairement que la solution porte le
même nom qu'un projet. Je vais donc choisir celui-là. Je vais nommer cette programmation de
console. La pertinence de cela est que
la solution à un projet, désolé, une solution à un problème. Lorsque vous développez
une application, vous développez une
solution à un problème. Solution. La solution a peut-être un nom, mais elle a des projets différents, ce
que nous allons faire. Nous allons donc
avoir une solution qui comporte de nombreux projets. C'est pourquoi je
les nomme différemment même si par défaut, il aurait essayé de leur donner
le même nom. Je vous montre que
vous n'êtes pas
obligé de le faire car
il y a des moments où vous avez une solution
et que vous avez des projets
différents
portant des noms différents sur la même solution. Nom du projet. Helloworld. Si vous
souhaitez modifier votre position, vous pouvez le faire,
mais je vais
quitter mon emplacement par défaut. Ensuite, le nom de la solution
est la programmation de la console. Ensuite, je vais frapper Next. Il est facultatif de faire appel à une solution sur le projet
dans le même répertoire. Je vais laisser ça
jusqu'à ce que nous atteignions Next. Ensuite, nous devons choisir la version du framework
qui nous intéresse. Nous avons donc Dotnet
Core deux points un, ce qui vous
dit très clairement qu'il s'agit d'un support automatique. Donc, ma suggestion est de
ne pas commencer par là. Si vous faites déjà un certain
développement et que vous avez une obligation de 2,1 quart. Il suffit donc d'essayer de le
mettre à niveau le plus rapidement possible. Mais c'est auto support.net Core trois points
qui sera en support jusqu'à ce que je pense que décembre 2020 à ce
dotnet cinq était comme un intermédiaire
entre 3,16 et il sort. de soutien dans un
bol moi la même année. Mais dotnet six héberge un soutien
à long terme et qui sera
utilisé jusqu'en 2024
ou à peu près. Il sera utilisé
pendant quelques années. Je vous suggère de
commencer par Dutton à six ans, car c'est la plus longue longévité de toutes ces versions. Cela étant dit, avec quelques ajustements entre chaque version des frameworks
dotnet, chaque version de C-sharp s'est améliorée
progressivement. Et la plupart de ce que vous pouvez faire en 3.1 est également possible
dans dotnet six. Mais Dotnet Seeks
a également affiné certains processus et
les mises en page de code qui
ne sont pas visibles dans les versions
précédentes. Nous allons donc faire
une comparaison rapide assurer
que vous pouvez apprécier la différence entre les nuances entre les versions. Je suis allé commencer
par Dotnet six. Ensuite, nous pouvons aller de l'avant
et cliquer sur Créer. C'est le résultat final de l'
édition de nos fichiers de projet par Oscar . Un fichier réellement dans l'Explorateur de
solutions, et un fichier appelé
program.cs avec une ligne de code ou un commentaire
sur une ligne de code. Je vais faire une pause, à partir de ce moment, nous avons regardé
tout ce
que nous créons un projet, c'est quelqu'un que nous allons faire beaucoup plus à
l'avenir, à l'avenir. Ne vous inquiétez donc pas si vous
n'avez pas terminé toutes
les étapes de la mémoire. C'était beaucoup d'informations, mais nous le
refaisions normalement, nous sommes allés faire une pause. Et quand nous
reviendrons, nous allons
visiter Visual Studio, cet EDI, ce dont il est capable et comment il nous aidera dans
nos activités de développement.
4. Visite de Visual Studio 2022 de l'édition communautaire: Très bien, dans cette leçon,
nous examinons Visual Studio 2020 sur
l'interface utilisateur, comment tout est connecté, comment cela fonctionne, donc nous
l'utilisons en général. Tout d'abord, vous remarquerez que mon
explorateur de solutions se trouve à gauche. Par défaut, le vôtre est
probablement à droite. Vous pouvez réellement prendre
ces
barres d'outils ce que je dois dire, et
les déplacer partout. Si vous avez une vision différente pour l'ensemble, Visual Studio
est conçu pour vous. Personnellement, j'ai aimé l'explorateur de
solutions à gauche. Je peux donc simplement le
faire glisser et le doter. Vous remarquerez que ce
sont les carrés ici. Lorsque vous le déposez en carré, il vous indiquera
où il apparaîtra. Si vous relâchez
votre dispositif de pointage. Si vous le laissez tomber au centre, il devient une autre baignoire. Je ne
veux pas nécessairement écrire du code et assez pour changer un fichier
, puis revenir. Je n'aime pas ça, donc
j'aime l'avoir sur
le côté et, dans mon cas
, sur le côté gauche. Et puis je ne veux pas qu'il soit aussi
large que je peux toujours rendre plus petit ou plus
grand en conséquence. Bien sûr, cela affecte tant de biens immobiliers que vous avez pour votre section éditeur de code. Vous pouvez expérimenter ça. Vous verrez également
sur mon écran d'autres barres d'outils que vous n'avez peut-être
pas nécessairement. N'importe quelle barre d'outils qui
vous intéresse. Vous pouvez toujours accéder à Affichage
et vous pouvez voir que si vous fermez
accidentellement votre explorateur de
solutions, vous pouvez toujours accéder à l'affichage et vous verrez votre Explorateur de
solutions, vous cliquez dessus, il réapparaît. Vous pouvez l'épingler sur des
cacahuètes ou le cacher. Donc, si je voulais être caché, mais quand je clique
ou que je clique une fois, il apparaît, puis je l'utilise et je continue à faire
ce que je voulais faire. C'est une autre façon de
le garder à l'écran, pour ainsi dire. Mais possédez plus de biens immobiliers
pour écrire votre code. Je vais l'avoir ancré
définitivement à cause d' un écran débutant
que je peux l'utiliser, mais vous ne l'avez peut-être pas
nécessairement, c' est
pourquoi je vous montre
comment vous pouvez également modifier le cacher. Je vais juste me concentrer sur les
choses qui sont absolument nécessaires pour que nous puissions
passer par la programmation sur console, moins pour l'instant,
nous verrons de plus
en plus de choses. Visual Studio a
différents thèmes comme je l'aurais mentionné. Vous verrez ici que j'
utilise le thème sombre. Vous pouvez toujours aller dans Outils, thème et choisir le thème qui vous plaît le plus ou vous
pouvez obtenir plus de thèmes. Et lorsque vous atteignez
un certain niveau, vous pouvez même concevoir
vos propres thèmes. Donc, si vous avez commencé
avec un thème léger
, votre Visual
Studio
ressemblera probablement davantage à ceci. Je n'aime pas ça. C'est dur pour mes yeux. Si vous avez choisi le bleu, je pense que ça change simplement les objets de
la minute, n'est-ce pas ? C'est donc le look classique de
Visual Studio de Visual Studio 2005-2008. Est-ce que ça ressemble un peu à ça
ou plus comme 2012 en fait. Et puis vous pouvez aussi, comme je l'ai dit, vous pouvez
en choisir d'autres. J'en ai donc un
sur le marché appelé Nordic
qui a cette teinte grisâtre et bleuâtre. Je vous montre juste des options. Encore une fois, vous pouvez toujours obtenir plus de thèmes si vous
utilisez le système assis, mon système est défini sur
thème sombre dans mes fenêtres. Donc, c'est juste l'hériter
de ma machine Windows. Une fois que vous êtes à l'aise avec looks Visual Studio
toute l'année, vous pouvez continuer. En termes de codage couleur. Il s'agit de notre éditeur, et il s'agit
vraiment d'un éditeur de texte. Si vous avez déjà fait
du code auparavant, il s'agit d'un éditeur de texte si
vous n'avez jamais écrit de code auparavant et que c'est votre
premier cours de codage, ce n'est pas un problème. Ce n'est pas un problème. Il s'agit simplement d'un éditeur de texte. Pensez-y comme un bloc-notes. La seule différence, c' est que nous allons
écrire syntaxe
spécifique pour
accomplir des choses spécifiques. Donc le codage couleur est,
vous remarquerez que
certains
codes ont des
couleurs différentes et qu'ils signifient
vraiment leur rôle dans toute l'expérience d'
écriture de code. Dans le thème sombre, vous remarquerez
au moins que la console a ce
genre d'aspect bleu sarcelle. Je suis daltonien, alors pardonnez-moi. Mes vêtements sont éteints. Mais cette console
possède cette boucle en T. Console est donc ce que
nous appellerons une classe qui va toujours coder
tout ce qui est une classe. Ensuite, vous remarquerez que la ligne
droite est blanche. Fonctions. Il s'agit d'une fonction ou d'une méthode
qui va être blanche. Et les méthodes sont généralement
caractérisées par parenthèses
ouvertes et proches. Et puis chaque ligne, soit 90 % des lignes que nous
allons écrire au moins
et avec un point-virgule. Ce point-virgule est donc
très important. Non, remarquez si j'ai raté
ce point-virgule ou si j'ai mal orthographié quelque chose et que Visual
Studio ne peut pas
comprendre à quoi je fais référence. Il vous donnera cette ligne
rouge tortillante. Et si vous utilisez Microsoft Word, c'est quelque chose que
vous connaissez bien. Cela va
indiquer qu'il y a une erreur avec le
code que j'ai écrit car la syntaxe est la viande des règles
très spécifiques afin être acceptée par notre éditeur. Une fois que l'éditeur détecte qu'
il y a quelque chose dans la syntaxe ou
ce que nous avons écrit. Il va nous donner
ceux qui sont des lignes rouges. Parfois, ces lignes
sont des flèches. Si vous survolez la ligne, il vous indiquera
quelle est l'erreur. Parfois, il ne peut pas
vous dire quelle est l'erreur Alt, juste titre ici encore, à
juste titre ici encore, que le point-virgule
est attendu, d'accord ? Si je mets le point-virgule, celui-ci disparaît. Mais dans ce cas, il ne
sait pas ce que nous avons raison. C'est qu'il sait bien. Mais il pourrait ne pas être
en mesure de déterminer que le mensonge n'est qu'une
version mal orthographiée de la variété. C'est là que cela peut échouer. Vous pouvez donc toujours planer. Et ensuite, vous pouvez cliquer
sur cette ampoule, qui essaiera de
vous donner quelques suggestions. Ici, Visual Studio,
surtout en 2022, est devenu si
intelligent qu'il peut réellement voir contextuellement cette fois qu'il ne s'agit probablement que d'un changement de faute de frappe,
n'est-ce pas ? À droite. Et je savais que
si je clique dessus, ça me ferait preuve de
courage. Et puis cette ligne disparaît. tout cela Visual Studio vous aide
activement
à écrire un meilleur code. Si j'ai fait une
erreur plus grave que
ça , quelque chose comme ça. Non, je ne sais pas
ce qu'il peut faire dans cette situation pour m'
aider parce qu'il va juste dire que
cela n'existe pas, qu'il ne sait pas ce que c'est. Cela suggère une erreur. Celle-ci est toujours en train de voir. Il s'agit d'une variable
qui n'a jamais été utilisée. Il n'y a pas de variable
avec ce nom, etc. Je
vous montre simplement qu'il y a des domaines qui peuvent vous
aider et parfois ils ne
sauront
simplement pas quoi faire. De temps en temps,
vous devez donc finir par googler. Vous savez quelle est votre erreur. Est-ce que vous effacez tout et essayez de
l'écrire à nouveau à partir de zéro et de voir toute l'
esthétique du visa et de vous aider. Une autre chose que je n'ai
pas soulignée, c'est le fait que nous avons cette équipe froide et cachée. En passant à la ligne suivante, Visual Studio suppose que je
voulais peut-être faire une autre ligne. Par conséquent, en appuyant sur Tab, je peux
accepter ce vieux bloc de texte. Ce que j'ai l'intention de faire si
je voulais consoler. Mais cette fois, vous voyez, j'ai
commis une erreur de point de console. Et puis vous verrez
ici, lorsque vous faites un point, vous obtiendrez cette
chose appelée intelligence, suggérant des méthodes ou des
propriétés potentielles que vous pouvez utiliser pour compléter
ce que vous faites. Très bien, donc parfois, je veux dire, vous n'allez pas mémoriser toutes les méthodes
pour simplement écrire. C'est leur fuseau horaire,
vous ne le ferez pas. Donc, une fois que vous aurez fait les points, Visual Studio va
faire des suggestions et voir peut-être que vous
voulez la largeur du tampon, peut-être que vous voulez lire la
ligne et il a commencé à taper et il va les filtrer Oui, je veux lire la ligne. Et ensuite, vous pouvez l'utiliser. Une autre chose à remarquer sur ce point est que si vous
n'avez pas choisi cette suggestion, quelque chose s'est passé,
vous avez cliqué. Et puis les
suggestions quand jusqu'à ce que nous obtenions le MAC sont le contrôle et l'
espace à partir de l'arrêt complet sont si vous le tapez vous
suggéreront. Mais supposons que vous appuyez sur
Echap ou que vous ayez cliqué et que vous n'avez même pas cette ligne de saisie semi-automatique à votre
disposition. Vous voulez savoir quelles sont
vos options. Vous pouvez
réellement contrôler l'espace ,
puis vous
verrez vos options. Et je vais être honnête, fait des
années que
je fais ça et quand je ne sais pas ce qui
doit venir ensuite, il y a des moments où je contrôle
l'espace et que je fais
défiler quelque chose ressemble
Ce que je cherche. Et je suis sûr que beaucoup d'
expérience des développeurs C-sharp vous
diront la même chose. Donc, je dis simplement que
pour dire qu'il n'y a pas de honte à aller aussi loin et ne pas
nécessairement être sûr, que voulez-vous faire ensuite. C'est pourquoi Visual Studio est
conçu de cette façon pour vous donner IntelliSense
qui
vous aidera et que vous puissiez faire défiler. Et puis il a dit :
« Je veux vraiment écrire quelque chose ou je
voulais prendre des contributions. Je veux lire
quelque chose, AAC lire, lire, lire, lire la lumière. Essayons peut-être de lire la ligne. Et puis il peut utiliser votre onglet et une saisie semi-automatique, non ? Je veux dire, je ne suis pas en mesure de
vous montrer toutes les nuances et tout ce qui concerne Visual
Studio en vidéo de 15 minutes. Il y a des choses
que vous voudriez dire comme égales. Et alors que nous écrivons du code ensemble, je vais pointer
certaines choses anciennes. Je vais toujours afficher vos raccourcis
clavier. Donc, vous savez, comme écrire un commentaire en C-Sharp
serait une barre oblique, barre oblique ou une barre oblique
et une barre oblique d'astérisque. Et celui-ci vous permet de
faire plusieurs lignes de commentaires. Très bien, donc si vous avez besoin
d'une menace pour un paragraphe, vous utiliserez celui-ci. Si vous ne vouliez qu'une seule ligne de commentaires, vous utiliseriez celle-ci. Parce que la prochaine ligne
ne serait pas commentée. Clavier Code Sharp pour cela. s'agirait de la touche Contrôle et voir si vous avez une ligne de code
que vous n'êtes plus. Vous ne voulez pas qu'il s'exécute. Vous voulez vous dire que
vous maintenez le contrôle,
que vous appuyez sur la touche, puis appuyez sur
C tout en maintenant le contrôle
enfoncé. Si vous voulez le décommenter,
il s' agit de la touche Ctrl. Vous, vous maintenez le
contrôle enfoncé et les
lettres impressionnantes K et C pour commenter, puis pour décommenter. Maintenir le contrôle enfoncé. Vous appuyez sur la touche et vous, sont des petites choses que je vais vous
montrer si vous voulez
dupliquer cela et que
vous faites Contrôle et D. Très bien, notre CV de contrôle, qui est vraiment un
copier et coller, mais vous remarquez que je n'ai pas
mis en surbrillance la ligne et dites Copier puis
la
pièce J'ai juste eu le curseur là,
puis maintenez le
contrôle C puis v enfoncé, puis il l'a juste dupliqué. Le contrôle D peut fonctionner pour vous en fonction de vos paramètres de
développement. Cela signifie ne pas
avoir éclaté et voir ceux qui ne fonctionnent pas pour eux, mais le CV de contrôle
fonctionne généralement de cette façon. Pour la dernière partie du magasin, je vais vous montrer comment vous
exécutez votre application. Donc, à ce stade, nous avons du
code qui est censé
imprimer sur la console ou sur le site de programmation de la console. Programmation de console car
au niveau le plus basique, dans la plupart des langages
conçus pour les ordinateurs de bureau, vous aurez une console. Donc, quand nous disons console, nous voulons dire comme la ligne de commande. Si vous l'avez déjà fait, entrez en ligne
sur votre machine, qu'est-ce que c'est Windows, Linux ou Mac. Ça
ressemblerait à ça. Il s'agit de votre console. Donc, quand nous disons que console
dot write et moi, et que nous appelons en fait la
fonctionnalité sous-jacente qui utilise cette fenêtre d'invite de commandes. Et vu que je
voulais imprimer n'importe quel texte que j'
ai décrit ici. Cette fenêtre. Lorsque
vous allez tester votre application
dans Visual Studio, vous avez la possibilité de l'
exécuter, et cela utilise le débogage. Exécutez-le sans déboguer les
puces nettes du clavier seraient F5 pour imiter le débogage et le contrôle, plus F5 pour imiter aucun débogage. Plus tard, nous examinerons
ce que signifie le débogage. L'
effet général est que lorsque vous appuyez sur ces deux boutons
de lecture, il doit exécuter le code
que vous avez écrit. Et il devrait apparaître à
l'écran et
vous montrer ce qu'est l'alt de votre code, soit souhaitable ou non maintenant,
c' est là où votre
programmation entre en jeu, vous apportez vos
modifications et vous pouvez amenez-le au point que
vous voulez qu'il soit. Mais pour l'exécuter, il suffit d'
appuyer sur le bouton Démarrer. Et puis il commence à
déboguer CDC, la fenêtre de sortie arrive et me donne toutes
sortes de statistiques. Ensuite, vous obtenez
cette fenêtre de console qui ressemble à
une invite de commande. Et puis vous obtenez votre
ligne HelloWorld. Et il
vous dit que le code été exécuté à partir de cet endroit. C'est un fichier exécutable. Très bien, donc tout programme d'installation, n'importe quelle application que vous exécutez est
généralement un fichier exécutable. Et puis il est dit qu'il va
automatiquement, eh bien, ils vous donneront la
possibilité de le fermer automatiquement,
mais ce n'est pas
nécessairement ce que nous voulons. Nous pouvons simplement appuyer sur n'importe quelle touche
pour fermer cette fenêtre. Donc, si j'appuie sur Entrée, il fermera simplement la fenêtre et nous retournera à Visual Studio. Et c'est vraiment ça. C'était donc une application
Hello World très simple nous a été
donnée par Visual Studio. Donc oui, le projet
s'appelait Hello World. Mais le code a été généré pour nous non pas parce que
le projet s'appelait ainsi. Avant de partir, permettez-moi de vous faire un petit tour
de l'Explorateur de solutions, même si je vais m'
étendre un peu plus à ce sujet, voici le nom
de la solution. N'oubliez pas que j'ai dit
que nous avions une solution différente de celle
des projets ou des projets. Nous avons donc la solution
appelée programmation de console. Ensuite, nous avons le premier
projet appelé helloworld,
qui, en un clic, révélera un fichier XML qui nous
permet de changer certaines choses. Nous n'allons pas
entrer là-dedans en ce moment. Ensuite, nous avons des dépendances. Vous n'avez pas à vous inquiéter à ce
sujet, n'est-ce pas ? Non. Et puis nous avons un
fichier appelé program.cs, qui est notre
fichier de classe hosing over cold. Bien sûr, nous ne pouvons pas plusieurs
fichiers dans notre projet, que nous
examinerons au fur et à mesure. C'est vraiment tout pour la visite, la visite générale
de Visual Studio, ce qu'il apporte à la table
et vous aidera à écrire code
propre et merveilleusement
exécutable. notre retour, nous allons examiner la
différence entre un projet Dotnet six et les versions
précédentes de Dotnet.
5. Comprendre la différence entre . Les versions NET 6 et précédent: Très bien, alors je me demande si nous
étions ici la dernière fois que nous avons créé notre premier projet de
programmation de console, nous l'appelons Helloworld. Et nous avons exploré du code. Nous avons également exploré Visual
Studio dans son ensemble. Et ce que je voulais
faire, c'est simplement explorer la différence entre ce modèle de programmation de
console et ceux que nous aurions obtenus de dotnet five ou 3.1 ou même dotnet framework
si nous devions l'utiliser. Un moyen simple et simple
d'obtenir un nouveau projet est
directement la solution principale. Très bien, n'oubliez pas de
Solution Explorer. Nous avons la solution
en haut et il est
caractérisé par un ruban violet à
l'intérieur de cette fenêtre. Ensuite, le projet porte
le badge qui nous donne la langue dans laquelle
ce projet a été écrit, mangé ou dans lequel il est
censé être écrit. Nous pouvons donc cliquer avec le bouton droit sur
la solution. Ensuite, nous passons à Ajouter. Ensuite, nous disons un nouveau projet. Alors cet écran devrait vous
paraître très familier. Il s'agit du même écran que celui que nous utilisons pour ajouter le premier projet. Nous pouvons choisir la console. Et parce que j'ai
sur mes filtres, je le vois de
près et de façon personnelle, mais si je suis juste effacé ,
alors
je serai médaillé, je vais
utiliser une application console. Ensuite, je vais
appeler ça Hello World. Aucune suggestion pour
nommer vos projets. N'utilisez pas d'espaces. Je suggère de
ne pas utiliser d'espaces. C'est un. Très bien. N'utilisez pas d'espaces dans le
nom du projet et CamelCase vos mots. Vous remarquerez que mon Hello
a la majuscule H et le monde comme majuscule W. Pour des raisons de
lisibilité, c'est un mot, oui, mais au moins avec
les majuscules, vous pouvez voir où un mot
s'arrête et un autre. commence dans les caractères de
blocage contigus. Je vous
suggère également de rester à l'écart des personnages spéciaux. En fait, c'est le
seul que j'utilise vraiment est un trait de soulignement dans le
nom des projets. Et ce sont d'autres suggestions car plus tard,
vous pourrez vous retrouver avec des problèmes que les autres plateformes n'aiment pas, des tirets et autres choses. Vous pouvez utiliser un trait de soulignement et parfois vous verrez que
les gens utilisent un point. Pas seulement
très bien loin. Donc je peux dire helloworld point
et j'appellerai ce net cinq, que nous savons que c'est l'application Hello World et qu'elle est relative
aux fichiers dotnet. C'est pourquoi je
m'ai nommé est très important. Rien n'indique
que celui-ci
soit vraiment fait à six ans. Mais parce que tout le cours est construit, notre propre dotnet cherche à
ne pas être précis sur tous les projets
réalisés à six ans. Je ne fais que souligner celle-ci parce que c'est la valeur aberrante. HelloWorld.net cinq. Ensuite, nous cliquons sur Suivant. Et puis celui-ci, je
vais m'assurer qu'il sait que j'utilise Dotnet F5. Ensuite, je vais cliquer sur Créer. Très bien, maintenant notre
nouveau projet l'est, et si vous le regardez, vous
verrez que nous avons deux projets. Si je les écroule, vous les verrez individuellement. Vous verrez le HelloWorld et vous verrez helloworld.net F5. Si j'ai expliqué Hello World, vous voyez les fichiers HelloWorld. Si j'agrandis HelloWorld, ai
fait cinq, vous
voyez les cinq fichiers. Notez que l'outil
projette au moins à la base de notre identique
en termes de ce que vous obtenez. Vous obtenez le fichier program.cs. Comparons ces fichiers
program.cs. Nous avons déjà établi que c'est
ce à quoi ressemble le fichier Dotnet six program.cs. Jolie, propre, littéralement une ligne, nous avons ajouté ce terrain supplémentaire. Eh bien, permettez-moi
de revenir aux valeurs par défaut. C'est ce qu'il
faut retenir la boîte. Regardez maintenant le fichier Dotnet F5. Il se
passe beaucoup d'autres choses ici. Eh bien, comment appelez-vous
une déclaration d'utilisation ? J'utilise donc
une déclaration qui
dit que je dois utiliser cette
bibliothèque sur votre système. Ainsi, chaque machine Windows, chaque machine Markov ou Linux, elle possède certaines bibliothèques, sont des bits de
code compilés disponibles
au niveau du système. Lorsque vous
écrivez une application, vous pouvez réellement écrire
une application pour y
accéder sur n'importe quelle machine. Lorsque nous disons utiliser le système, cela signifie que n'importe quelle machine sur
laquelle il va s'
exécuter, essayez d'accéder à
ces appels de bibliothèque. Cette bibliothèque système est ce qui est important pour que notre
console fonctionne, c'est
pourquoi j'ai dit qu'elle
utilisait l'invite de commande. Lorsque nous incluons cela, alors nous avons accès
à certaines fonctions, sont certains bits de code qui plus faible accès en
soi, le système. Vous verrez ce nom
appelé espace de noms. Non, l'espace de noms est la représentation de
code du dossier dans lequel se trouve le
fichier. En termes simples, chaque projet
qui apparaît sur le disque, Project Explorer est vraiment un
dossier de notre système de fichiers. Très bien,
c'est littéralement un dossier. Donc, si je clique dessus avec le bouton droit
de la souris et que je vois ouvert, désolé d'y avoir manqué. Si je clique avec le bouton droit de la souris et que je dis
ouvrir le dossier dans l'Explorateur de fichiers, il
lancera littéralement un explorateur de fichiers
montrant ce sens des fichiers, tous les fichiers impliqués
dans le programme. Si je monte, c'est la programmation de
la console. Programmation de console,
c'
est-à-dire un, c'est le nom de la
solution, c'est un dossier. Ensuite, vous avez ce dossier,
d'accord, il n'y a rien là-dedans. Nous avons aussi Hello
World. Souvenez-vous de nous. Visser ce projet. Dans la leçon précédente, nous avons bonjour monde, dotnet F5. C'est un autre projet. Je ne fais que te montrer ça. C'est tout ce qu'est vraiment l'
espace de noms. C'est juste le nom
du dossier. Donc, si vous avez des sous-dossiers et des fichiers
d'entrée dans ces
sous-dossiers et l'espace de noms sera
automatiquement plus complet,
point , point, point pour toute la fenêtre
hiérarchie des dossiers. Ensuite, vous
remarquerez qu'il y a une déclaration de
classe appelée programme de classe
interne. Et il est écrit que les accolades bouclées ouvrent et
ferment. Et nous avons une fonction principale statique
vide, qui descend ensuite pour imprimer notre
ligne de code Helloworld. La seule chose réelle que ces deux-là ont
en commun est qu' ils utilisent tous les deux une ligne de lecture de
points de console pour imprimer. Savoir ce que les ingénieurs Microsoft ont fait pour
dotnet six a été réduit beaucoup de la
répétition car dans toutes les versions de .net
Framework jusqu'au net cinq, c'est à quoi
ressemblerait le code. À tout le moins, par défaut, il commence toujours
avec ce verre et il commence
toujours par
cette fonction moyenne. Ce qu'ils ont fait, c'est la répétition
Echo Dot. Tout le monde sait donc que ces deux-là sont nécessaires
au minimum. Ils ont dit : « Eh bien, faisons-le
simplement implicite. Nous ne voulons pas que cette
console ait besoin d'utiliser un
système afin que nous puissions répondre à ce qui est implicite également. Et nous arrivons directement
aux non-points de codage
dans l'âme parce
que d'après la version que vous pouvez
utiliser , elle est
limitée à Visual Studio 2022. Eh bien, si vous utilisez Twin
to 19 pour quelque raison que ce soit, et que vous devez utiliser Done it
cinq au lieu de le faire six, alors voici à quoi ressemblera votre
code. Mais tout ce que
nous allons
faire pour Dotnet cherche, c'est très possible
pour un feu dominant. Je viens de rappeler que tout votre code est
écrit à l'intérieur de la fonction moyenne et que tout fonctionne
sa propre fonction principale. Si vous devez passer à
une autre fonction, vous le faites
à l'intérieur de la classe. Si vous devez accéder
à une autre classe, vous devez le faire
dans l'espace de noms. Je ne veux pas vous
confondre. Je voulais juste vous montrer à quoi ressemblent
les anciens
modèles C-sharp par rapport
aux nouveaux modèles C-sharp
et vous aider à comprendre pourquoi l'un se présente comme il le fait et pourquoi l'autre
ressemble d'une autre façon ? Non, nous avions déjà cliqué pour un seul clic sur le projet voir ce fichier XML en un seul clic sur le projet. Ici, c'est que l'unité
du type de sortie est DOT EXE. Ce framework cible est dotnet six et de nouvelles
utilisations implicites sont activées. Nous examinerons cela plus tard, et cela ne permet aucun niveau. Nous
examinerons également cela plus tard. Si vous regardez le dotnet cinq, vous verrez qu'il a moins de paramètres de
configuration, mais cela signifie simplement que
le framework cible est 5. Toujours la même balise de sortie. Si vous faites un projet Dotnet Core à
trois points, il ressemblerait à
ce modèle de projet, modèle code, sauf que
je pense que ce serait probablement public
au lieu d'interne. Nous examinons la différence
entre ceux plus tard et
le fichier XML,
le fichier de configuration du projet aurait également un aspect légèrement
différent. Cependant, comme je l'ai dit, nous
allons nous concentrer sur dotnet six. Je suis donc allé laisser le projet Dotnet cinq
là pour référence. Mais nous allons nous concentrer sur
dotnet six à l'avenir.
6. Développement à l'aide du code Visual Studio: Hé les gars, dans cette leçon,
nous allons chercher une alternative à
Visual Studio 2022. Il se peut que vous ayez besoin d'une alternative
pour plusieurs raisons, Visual Studio est
réellement créé pour les machines
Windows et Mac OS. Et votre machine en
général peut ne pas faire un bon travail
en exécutant Visual Studio, ce qui est correct car c'est
une application très énorme qui
nécessite certaines ressources que nécessite certaines ressources que toutes les machines ne peuvent
pas.
fournir régulièrement. C'est très bien.
Microsoft nous a donc offert une alternative légère, multiplateforme,
ce qui signifie qu'elle fonctionne sur tous les systèmes d'exploitation et qu'elle est très facile
à configurer et à utiliser,
et il s'agit de Visual Studio Code. Tout d'abord, il y a deux choses
dont vous avez besoin. Un code Visual Studio, mais vous devez également
installer manuellement le moteur d'exécution Dotnet six. Vous pouvez donc y arriver
en effectuant une simple recherche
Google
Six Runtime ou ASP.Net
Core six fois ruinée, quelle que soit l'une ou l'autre, alors cela vous
permettra d'installer le SDK sur n'importe lequel des
systèmes d'exploitation dont vous disposez. Une fois cela
fait, il installera les binaires
dans votre système et vous
pourrez utiliser dotnet six. Maintenant, si Visual
Studio est déjà installé, il est livré avec lui. Vous n'avez donc pas forcément
besoin de refaire cette étape. Très bien ? Une fois que vous avez le
moteur d'exécution,
vous allez bien sûr télécharger
Visual Studio Code. Vous allez de l'avant et
installez celui qui convient à votre système
d'exploitation. Le
code Visual Studio n'est installé. Vous obtiendrez une fenêtre
assez simple pour que vous puissiez augmenter ou diminuer l'affichage en utilisant Control Plus ou Control
moins sur votre clavier. Non, à partir de là, vous voudrez
configurer votre espace de projet. Ce que j'aime faire, c'est créer un nouveau dossier, puis
utiliser ce dossier, mon point d'opération, pour ainsi dire. Je suis donc allé ouvrir le dossier. Et en ouvrant le dossier il me demandera quel
dossier je veux ouvrir, naviguer jusqu'à l'endroit où
je stocke les projets. Ensuite, dans ce dossier de projets, je vais créer
un nouveau dossier. Je vais appeler la programmation de la
console juste pour rester en ligne avec tout ce dont
nous avons déjà discuté. Programmation de la console,
puis sélectionnez ce dossier. Une fois que j'aurai ce dossier, je vais également l'enregistrer en tant
qu'espace de travail. Je peux donc simplement voir un fichier
et enregistrer l'espace de travail sous. Et puis je vais laisser cela comme espace de
travail de
programmation de console, console. Que je sais qu'une fois que
j'ai ouvert ce fichier, il ouvrira ce dossier avec tous les projets et
tout ce qui s'y trouve. Je peux voir si, en dehors
de l'espace de travail,
je voudrais avoir des dossiers par projet, la même manière
que Visual Studio, chacun avec chaque projet
que nous avons créé, nous
donne un nouveau dossier
et ensuite, vous attendez d' iRange les fichiers associés
à un certain projet. Je vais créer un nouveau dossier au lieu de cet espace de travail. Et je vais l'appeler, disons Helloworld
dot VS Code. mal orthographié. Je peux toujours
cliquer avec le bouton droit de la souris et le renommer. On y va. Bonjour tout le monde. Oui, citer, savoir, pour créer
le projet là-dedans, contrairement à Visual Studio, nous donne un assistant sympa et une interface utilisateur
visuelle. Je dois utiliser des commandes. Je peux aller au déterminateur, en ouvrant un nouveau terminal. Et puis à l'intérieur de ce
terminal après m'
assurer que je pointe vers un, le dossier de la carte, puis
pour exécuter certaines commandes. Donc, le dossier de modification, ce que vous voulez faire est de dire cd, puis commencez à taper le
nom du dossier que vous voulez. Donc, je veux bonjour, tout le monde, je peux appuyer sur Tab et ça va le
compléter automatiquement pour moi. Appuyez sur Entrée. Non, je
regarde le dossier Helloworld. Cette voie. Il n'y a pas grand-chose du dossier
que je cible. Mixte. Je veux vraiment
créer le projet. Je peux donc dire dotnet
simplement en écrivant .net, vous pouvez voir si le moteur d'exécution ou le SDK est correctement
installé. Si vous ne trouvez pas
quelque chose comme ça, vous
devez probablement
essayer de l'installer à nouveau. Mais je peux dire
Dotnet, nouvelle console. Je vois Dotnet, la cape. Donnez-moi un nouveau projet de
console. Et juste en appuyant sur
Entrée, je vais remplir ce dossier que j'ai ciblé avec des fichiers propices à la programmation de
la console. Lorsque je clique sur program.cs, qui est un fichier C-Sharp, je reçois mon one-liner, comme
tout
ce que nous avons vu, ce program.cs
dans Visual Studio. Vous pouvez également recevoir une fenêtre contextuelle indiquant que vous avez besoin de ressources
supplémentaires. Vous pouvez dire oui. Maintenant, une autre chose qui
est très importante pour votre expérience ici
dans Visual Studio Code, extensions pour la programmation
Caesar, vous avez peut-être reçu
un dicton pop-up. Ils suggèrent cette extension si vous n'y êtes pas
arrivé, c'est très bien. Si vous accédez à Extensions, vous recherchez un C pointu. Vous verrez en haut, C-sharp pour Visual Studio
Code versé par Omni Sharp. Bon, c'est bon de savoir. Mais la
partie pertinente est que vous voulez définitivement
installer cela afin qu'ils obtiennent des indices de code sur une certaine intelligence
pour vous aider avec votre programmation C-Sharp dans
diverses dans cette interface. Vous verrez donc sur le bouton
Installer comme
celui-ci lorsque vous cliquez
sur cette extension. Vous pouvez donc
l'installer. Et une fois que vous l'avez
installé, vous pouvez continuer. Maintenant, pour exécuter votre application, ce que vous voudriez
voir c'est l'exécution de dotnet. Dites Dotnet Run. Il a commencé à compiler,
puis il
vous affichera la sortie ou les résultats à la
place des terminaux. génial avec
déterminant, c'est de
vous donner un accès direct au
même type de console qui apparaîtrait chaque fois que
nous exécutions une application dans Visual Studio sans passer en
externe lors du lancement
une autre console, vous pouvez tout faire
ici même dans cette interface. Vous pouvez exécuter,
vous pouvez y aller et courir. Vous pouvez commencer à
déboguer si vous le souhaitez, ce qui vous donnera une expérience
légèrement différente si vous commencez le débogage. Mais le
fait est que vous verriez tout ce qui se trouve dans code
Visual Studio sans avoir besoin de lancer
une fenêtre externe. Bien sûr, chaque détail
a ses avantages et ses inconvénients. Celui-ci est agréable et léger
et vous pouvez voir qu' il nous apporte une saveur légèrement
différente de toute l'expérience de
développement. Mais cela étant dit, tout ce que nous
allons faire dans Visual Studio est
en fait réparé, réplicable, réplicable,
quel que soit ce mot. Mais il peut être imité dans Visual Studio Code
pour vous aider à vivre une expérience très similaire. La dernière chose que je vais vous
montrer, c'est comment
gérer plusieurs projets
dans cet espace de travail. Considérons donc
notre
espace de travail de programmation de console comme notre solution. Ensuite, nous avons
différents dossiers qui représentent chaque projet. Dans ce dossier de
programmation de console, je voudrais
créer un nouveau projet. Appelons ça bonjour tout le monde, comme ce que nous avons fait
dans Visual Studio. Bonjour tout le monde, Dotnet F5. Permettez-moi de bien comprendre mon orthographe. On y va. Ensuite, si je voulais créer un projet au lieu
de ce dossier, je dois m'assurer de
pointer vers ce dossier. Je dois donc dire
quelque chose comme CB. Et puis je suis allé
voir une barre oblique, barre
oblique sciée au
large du Goldbach. Parce que regardez-le. Le chemin est HelloWorld VS Code pour voir le point
cd dot pour revenir à
la programmation de la console. Donc, le CD NCI, puis
commencez à taper Hello World et appuyez sur Tab jusqu'à ce que je vois le
dossier qui m'intéresse, qui est .net cinq, appuyez sur Entrée. Et puis je peux dire
Dotnet nouvelle console. Et simplement en utilisant les touches fléchées
haut et bas, je peux passer par des commandes tapées récemment ou
antérieurement. Je dois donc dire dotnet nouveau, laissez-moi augmenter le système, assurez-vous que vous voyez clairement la nouvelle console dotnet. Mais quand je suis allé
spécifier la version, je dois dire dash F net F5. Cela ne fonctionnerait donc que
si le SDK Dotnet F5 est déjà installé, ce que vous faites probablement si
vous installez Visual Studio. Si vous installez le SDK, manuellement le clou
après, revenez en arrière et récupérez cette version particulière. Mais quand j'appuie sur Entrée, remarquez à l'intérieur du donut cinq, je reçois ce
nouveau projet
ainsi que les modèles de projet, le modèle de code pour
HelloWorld et à cinq heures. C'est essentiellement tout le code
Visual Studio qui fonctionnerait. Ce que vous pouvez faire, c'est
pour chaque budget que nous allons créer
dans Visual Studio, il suffit de créer un nouveau dossier, exécuter cette commande, puis de
commencer à coder en conséquence.
7. Examen de la section: Très bien, nous sommes
arrivés à la fin de la mise en
place de notre environnement de
développement. À tout le moins, quatre
sont dans divers succès, ainsi de suite, la programmation de
console C-sharp. Nous avons deux outils
à notre disposition. Nous avons Visual Studio 2022. Nous utilisons la
Community Edition, et nous voyons ici qu'il s'agit d'un outil complet verbal dans
lequel Microsoft a beaucoup
investi pour s'assurer
qu'en tant que développeurs de Dotnet, nous disposons d'un outil juste et confortable. espace de travail à utiliser. Et cela va nous aider à écrire un code propre
et Paul complet. Nous avons examiné comment nous
pouvons le réorganiser pour votre confort en déplaçant
ces sections de la barre d'outils, les différentes parties, en
regardant les différents
thèmes tout au long du week-end, il exécute un programme. Nous pouvons ajouter plusieurs projets à une seule solution et
tout ce qui s'y rapproche. En dehors de cela, nous avons également envisagé l'utilisation de
Visual Studio Code. Visual Studio n'est pas une option pour vous, que
ce soit en raison de votre système d'exploitation ou de vos
spécifications système. Visual Studio Code est une alternative
très, très légère, efficace et parfaite
à l'utilisation de Visual Studio. Il y a d'autres
éditeurs, mais ils coûtent généralement de l'argent. Je vous montre donc toutes
vos meilleures options sans avoir à dépenser beaucoup ni
argent à l'avance. Visual Studio Code est un joli éditeur léger
qui nous permet créer nos projets avec quelques commandes simples dans un terminal intégré et écrire du
code avec tout cela. asseyez-vous et ne restez pas dans les parages. Nous allons commencer à nous
concentrer davantage sur le langage C-sharp
au
fur et à mesure que nous allons de l'avant. Et nous allons apprendre à créer de belles
applications.
8. Comprendre la syntaxe C#: Très bien les gars, donc dans cette
leçon, nous allons prendre recul et voir
comment continuer notre
développement dans divers domaines en
lançant un projet existant et en
procédant à la programmation ? Non, je n'avais pas mentionné
à partir du moment où nous effectuons la configuration que, à gauche,
vous verrez des projets récents. Voici donc un tas de
mes projets récents. Mais voici celui sur lequel
je voulais me concentrer, qui est celui que nous
avons créé ensemble. Si vous
arrêtez votre Visual Studio, que vous
arrêtez votre machine, vous alliez dîner,
quoi que ce soit, vous voulez
revenir dans un projet sur
lequel vous travaillez ou une
solution que vous êtes en travaillant, vous le
verriez sur la gauche. Les projets les plus récents savent qu'
il peut y avoir un moment où vous travaillez sur
tant de personnes que
vous n'y
voyez pas, que vous pouvez toujours ouvrir un dossier local ou ouvrir un
projet ou une solution. Vous voudriez donc ouvrir
notre projet ou notre solution. Indiquons donc cet
itinéraire parce que celui-ci, il est facile de cliquer
dessus et il fera
apparaître Visual Studio
avec la solution. Si ce n'est pas le cas, vous voulez ouvrir
un projet ou une solution, ce qui vous
permettra alors de creuser l'endroit où
se trouve le projet. Vous pouvez donc simplement
parcourir jusqu'à ce que vous voyez le projet ou le nom du dossier de la
solution. Et puis vous
verrez ce fichier ici, qui est un fichier de solution. Je suis des fichiers Solution. N'importe quelle approche FCS pour nous, nous ne voyons pas dans le fichier
de projet
CS de Visual Studio Code. C'est un CFI que l'on
clique dessus dans Visual Studio a fait apparaître cette configuration
XML. Le fichier de solution lancera
Visual Studio avec tous
les projets et fichiers
associés à la solution. En règle générale, le nom de ce fichier sera le même. Ils verraient
le nom du dossier. Si vous double-cliquez dessus,
il fera
la même chose et lancera Visual Studio
avec cette solution. Maintenant que le fichier de solution semble être trouvé à partir de
votre système de fichiers si vous deviez
y naviguer et que vous le pouvez,
je peux facilement naviguer en
cliquant avec le bouton droit de la souris et dire Ouvrir le fichier, Ouvrir le dossier. Donc, si je devais naviguer ici
manuellement, voici ce fichier. Si je double-clique sur ce fichier, il lance Visual
Studio avec mes projets. Je
vous montre juste à quel point il est facile reprendre là où vous
auriez dû vous décoller. En connaissant cette partie des
leçons, nous allons nous concentrer sur le
langage C-sharp, la grammaire, vocabulaire et la syntaxe générale des beats off que vous
utiliseriez pour écrire du code. Nous n'allons pas apprendre toute
la langue ici et je ne
vais pas être plongé dans certaines choses. Je vous donne juste
un aperçu général de ce à quoi ressemble le C-sharp. C-sharp est le premier langage de
programmation
fourni par Microsoft pour la plateforme .net. Il ressemble étroitement
au langage C plus plus RC. C'est donc une partie du
langage C, c'est un peu botch. Il prend également une grande partie de
ses constructions à partir d'autres langages de
programmation orientés objet comme Java. Si vous êtes alerte, si
vous avez appris C, et si vous avez appris Java, beaucoup de choses
que
C-sharp fait
sembleront familières si vous n' avez pas
appris ni l'un ni l'autre. Et c'est la première
fois que vous faites de la programmation. Encore une fois, aucun problème. Je vais de l'essentiel, donc vous serez en mesure de le rattraper. Maintenant que C-Sharp sur ce
point est à la version dix, il a passé par de
nombreuses versions à chaque itération du
framework .net dans dotnet Core. Et je peux simplement supprimer, continuer à aller de
mieux en mieux. Mais une chose que
je dois trouver dans Microsoft est
leur capacité à
mettre à jour la langue tout en
gardant en vie certains régimes,
arrangements ou paradigmes plus anciens . Donc, même s'il peut introduire une nouvelle façon d'y
faire quelque chose, le fait de l'écrire dans les
anciennes versions de C Sharp
ne sera pas obsolète. Ce n'est pas comme si ça
allait dire, oh, ça ne peut plus fonctionner, il
faut le changer. Ils font donc un excellent
travail de mise à niveau. Détruire un code plus ancien. C sharp est également open
source et vous pouvez accéder à leur dépôt de projet sur GitHub en vous rendant sur github.com slash.net slash C-sharp poumons. open source signifie
que tout ce que vous faites l'
a rendu disponible. Tous les codes sous-jacents qu' ils ont écrits représentent notre propriété que vous utiliserez. Ils vous donnent la chaussure, les implémentations
et tout ce que vous pouvez y aller et vous voyez
exactement comment cela fonctionne. Vous pouvez même y apporter
des contributions. Vous voyez ici qu'
il y a 125 contributeurs. Bien sûr, ce ne sont pas tous des employés
directs de Microsoft. Ainsi, à mesure que vous vous sentez de plus en plus à l'aise, nous pouvons commencer
à
regarder cette bibliothèque, à voir comment certaines
choses sont faites et voir si vous pouvez les améliorer. Également. Sachez plus tôt que nous étions en train de regarder certaines choses illégales. Il y a certaines
choses que vous ne pouvez tout simplement pas faire dans la syntaxe. Il y a certains Tolkien qui servent des objectifs spécifiques. Donc, comme un hashtag, un signe
numérique ou un signe de livre a la règle très spécifique d'ouvrir une seule fois,
je dis simplement étang. Je peux dire erreur en Pologne. Bien sûr. Quand je peux dire quelque chose
que je version, remarquez que je reçois cette ligne
rouge sur la version. C'est le cas parce que ce n'
est pas quelque chose qui se trouve dans le vocabulaire. Ainsi, comme avec l'anglais ou toute autre langue
que vous parlez, certains mots ne sont tout simplement pas dans le vocabulaire. Les mots que vous n'
utilisez pas parce qu'ils ne sont pas
séparés de la langue, sont de la même façon lorsque nous écrivons C Sharp ou tout autre
langage de programmation d'ailleurs. Si la langue ne
détecte pas ce
que vous écrivez dans sa syntaxe, vous obtiendrez ce
genre de ligne rouge. Commençons
par quel commentaire. Un commentaire est un bon moyen de
documenter ce qui se passe
dans votre lecture froide. Nous pouvons donc écrire un commentaire
en utilisant une barre oblique. Et puis on peut voir cette
ligne imprimer bonjour le monde. C'est donc une bonne façon
d'informer ce qui a gagné, se
rappeler
ce que fait le code ou informer quelqu'un d'autre
ce qu'il est censé faire. Si vous avez un paragraphe entier
que vous voulez écrire. Vous pouvez donc voir une
barre oblique et un astérisque. Remarquez que tout après la barre oblique et l'astérisque
sont devenus verts. n'est donc que le code couleur pour vous montrer qu'il s'agit d'un commentaire. Mais vous pouvez le fermer avec un autre astérisque
et une autre barre oblique. Je ne voulais pas que tu fasses ça. Tout ce que
vous lisez entre les astérisques serait considéré comme un commentaire. Il s'agit d'un
commentaire « park off » en plusieurs lignes. C'est ainsi que vous pouvez écrire
comme un paragraphe entier décrivant ce qui se passe
dans tout un bloc de code. Il s'agit donc d'une
ligne à la fois, cela prend en charge plusieurs lignes. Nous avons également ce que vous
appelez des déclarations. Une instruction serait une expression qui
se termine par un point-virgule. Ainsi, en anglais ou dans la plupart des
autres langues, l'
énoncé est généralement la
phrase qui comprend également des mots qui ont généralement un ordre
spécifique ou des grognements. Donc, en anglais, vous direz l'adjectif avant le connu. En espagnol, vous voyez l'adjectif
connu puis l'adjectif. Mais le fait est
que c'est bon. Une déclaration est écrite dans
cette langue particulière. Dans C-Sharp, cette déclaration est écrite et vous devriez
toujours terminer par un point-virgule, même si dans une autre langue vous finiriez par un arrêt complet. Si vous avez une instruction
déclarant une variable, par
exemple, et j'
expliquerai ce qu'est une variable. Eh bien, disons que le nom
var est égal à variable est un espace
de stockage temporaire pour les détails. Et puis je peux voir mon nom. Est-ce que c'est ça. C'est une déclaration selon laquelle la ligne
rouge dit : Eh bien, vous devez terminer votre
déclaration de façon appropriée, donc j'ai besoin d'un point-virgule. Donc, une façon de savoir quand
vous avez besoin d'un point-virgule est que si vous
écrivez l'instruction et que vous voyez cette ligne rouge, y a des
chances que vous ayez besoin d'un point-virgule il y a des
chances que vous ayez besoin d'un point-virgule
à la fin si
tout le reste semble correct, mais vous avez toujours la ligne rouge. Vérifiez si vous avez
besoin d'un point-virgule. Maintenant, il y a une autre
construction appelée bloc. Un bloc ressemblerait
à ce que nous avons vu dans le gabarit C-sharp cinq, et il est indiqué par des accolades bouclées ouvertes
et fermées. Ce sont donc des blocs. Un bloc serait
comme un paragraphe dans notre langage humain écrit. Les blocs peuvent être des espaces de noms, ce peut être pour notre classe. Vous pouvez également être pour la méthode. Je ne le pensais pas au fur et à mesure que
vous entrez, vous obtenez des blocs pour les déclarations
si et déclarations de
répétition en dehors de les déclarations de
répétition en dehors de celles qu'ils illustrent
ici avec Enée, la classe et la méthode. Si je devais faire comme
une déclaration if, je dirais si le nom. Ne vous inquiétez pas à ce sujet. Je vais passer
par tout ça. Je ne fais que montrer la
syntaxe une fois de plus. Voici donc une comparaison. Si le nom est équivalent à. Et là, ça me montre
qu'il me manque quelque chose. C'est donc l'une de ces fois
qu'il peut suggérer un point-virgule, mais il ne s'agit pas d'une déclaration. Un point-virgule n'est pas
ce qui manque. Je dois donc écrire
la syntaxe du panier. Il y a des moments
où vous pouvez dire pourquoi dois-je
le faire comme ça. Je dis généralement ne pas demander pourquoi si la langue dit que c'est ça que vous le faites,
faites-le simplement de cette façon. Parfois, quand on se
fixe sur la raison pour laquelle ça bloque le fait
que c'est exactement comme ça. Je vais dire que si le nom
est égal à quelque chose, ce n'est
évidemment pas vrai. Mais je vais
commencer un nouveau bloc. Cela veut dire que si c'est vrai, alors je veux exécuter
ce bloc de code qui est dénoté une fois de plus
par nos accolades. Non. Vous souvenez-vous que nous
devons importer ce que
nous appelons des espaces de noms. J'ai peut-être dit des bibliothèques, mais c'est une bibliothèque,
c'est un espace de noms. Un espace de noms est vraiment un
ensemble de classes. C, l'espace de noms a une classe
égale à plusieurs classes. Il s'agit d'un espace
de noms et ceux
qui compilent cet espace de noms deviennent des bibliothèques
multicolores. Les différentes bibliothèques de différentes classes dont
vous profitez. Soul Console est une
classe qui se trouve dans l'espace de noms ou la bibliothèque système. Personne, C-sharp six, vous pouvez toujours ajouter, vous utilisez de la vapeur et
du savon à l'aide d'un système. Vous pouvez toujours le faire. Et au fur et à mesure, vous aurez peut-être besoin de savoir
qu'il est grisé parce que c'est déjà
sous-entendu que c'est inutile. Mais j'ai System.Out et puis vous avez des choses
différentes ici. Donc, vous pourriez dire
System.En détail, vous pouvez voir ceci
et cela peu importe. Le fait est que si
vous n'utilisez pas activement notre classe, les références codées sont
téléphonées dans l'espace de noms. Ensuite, Visual Studio
a dit en fait que
ce n'est pas pertinent. Il arrive maintenant que
vous ayez certains espaces de noms que vous souhaitez utiliser sur
plusieurs fichiers. Maintenant, dans les anciennes
versions de C-sharp, il
faudrait répéter
cela à chaque fois. Donc, pour chaque classe que je
vais utiliser dans la console, je devrais utiliser le système,
l'utilisation du système, l'utilisation d'un système. Dans C-Sharp six, nous avons la possibilité d'ajouter ce que
nous appelons un fichier d'utilisation global. Je peux donc simplement
créer un nouveau fichier. Et je suis allé appeler
ça des usages globaux. Cliquez avec le bouton droit de la souris sur le projet. Remarquez plusieurs projets,
mais je voulais faire partie de notre projet C-sharp
cherche HelloWorld. Cliquez avec le bouton droit sur ce
projet, accédez à Ajouter. Et puis je peux dire un nouvel article. Ensuite, un nouvel élément me
permet
d'ajouter un nouveau fichier de classe ou
d'autres types de fichiers. Cette fois, je me concentre sur
notre nouveau fichier de classe C-Sharp. Je l'appelle global
en utilisant ce point cs, puis je peux l'ajouter. Et à partir d'ici, je n'ai pas besoin de tous ces trucs, je n'ai pas besoin de
tout ça. Je peux le nettoyer. Mais non, je peux ajouter toutes les instructions d'utilisation
dont je sais qu'elles seront utilisées
globalement dans
mon application pour le faire. Je vais donc dire «
global » en face de cela. Alors dites simplement global en utilisant global, en utilisant global en utilisant non, je n'ai pas à
les ajouter manuellement en utilisant des instructions
dans les fichiers 51015. J'en ai juste un, s'il vous plaît. Ensuite, je peux simplement
garder mon fichier de code propre et dédié à mon code. Maintenant, ramenons-le un
peu plus près de chez lui et regardons certaines
des meilleures pratiques quand nous étions juste en
train d'écrire notre code. Une chose est l'indentation. Lorsque nous avons des blocs de code, nous voulons nous assurer que nous faisons indentation parce que
vous ne voulez pas tout
avoir sur une seule ligne et que vous
ne savez pas où une accolade bouclée s'ouvre.
et se ferme, n'est-ce pas ? Donc, ce sera toujours bon. Chaque fois que nous avons un bloc de code, assurez-vous de mettre en retrait. Une autre chose est
que les applications dans chaque
langage
de programmation visent trois structures de contrôle. Nous avons une séquence. Ensuite, nous avons des décisions qui
ne sont pas nécessairement dans cet ordre particulier, mais nous avons une séquence,
nous avons des décisions. Et ensuite, nous avons des répétitions. séquence fait référence
au fait qu'elle ira toujours dans l'ordre dans lequel
vous avez écrit le code. Sachez juste que vous m'avez vu
prendre ces deux lignes de code et les mettre
à l'intérieur de chaque Stevens ,
puis nous avons eu une erreur. Pourquoi ? Parce que je recherche
une variable appelée name, qui n'existe pas encore. La seule façon dont je peux écrire une déclaration
if contre cela, c'est si je l'ai déjà fait exister. C'est donc la séquence que je
dois m'assurer qu'elle existe, puis je peux faire
des processus contre elle. Très bien, donc c'est une séquence. Il va toujours
partir de la première ligne. Donc, la dernière ligne dans
cet ordre exact est bonne lorsque vous travaillez
sur votre algorithme ou sur le flux de votre application, la logique que vous verrez, j'ai besoin que cela se produise alors, alors ça, puis ça. Ensuite, vous écrivez le
code dans cet ordre exact. Première étape, deuxième
étape, troisième étape, etc. Aucune décision n'est également
appelée déclaration conditionnelle. Cela signifie que je vais prendre cette mesure si cette
condition est vraie ? Donc, si cette condition est vraie et que nous examinerons
les différentes conditions et comment nous pouvons les écrire. Mais si cette condition est vraie, je voulais
obtenir cette vente aux enchères. Quel que soit le code à l'intérieur de ce bloc, ce
serait comme le fin. Parce que si nous
voyions cela en anglais, nous dirions que s'il est nuageux, je voulais faire
avec cette action. Puis il disait quelque chose
comme autre chose, faisait une autre action. C'est tout ce que nous pensons
en tant qu'êtres humains. Et c'est exactement un tout. Nous devons rédiger
nos applications. Donc, après avoir dit, si
cela est vrai, alors à l'intérieur de ce bloc de code, je défendrai ce que je vais faire. Et puis je peux voir d'autres choses,
faire autre chose. Nous examinerons cela plus tard. Et je vous
donne juste une fois de plus une idée de ce que nous
entendons par décision ou déclarations
conditionnelles. Le prochain
serait la répétition. Donc, si vous avez quelque chose
à faire plusieurs fois qui pourrait imprimer Hello
World 50 fois, vous avez la possibilité d'écrire cela 50 fois, ce qui
n'est évidemment pas très durable. Ou vous pouvez faire une répétition. Pour que vous puissiez faire
quelque chose comme une boucle. Et je vais juste faire
une boucle pour expliquer la syntaxe. Pourtant, je ne fais que
vous montrer ce que vous diriez pour un certain nombre d'itérations. Tout cela ne se définit que pour voir beaucoup de
fois que vous voulez que cela se produise. Effectuez cette action encore une fois, vous pouvez voir qu'elle est dans un bloc. La reprise, à l'intérieur de
ce bloc, serait répétée pour le nombre de
fois que vous avez défini ici. Très bien ? Il s'agit donc d'éléments clés de la rédaction de programmes en général. Mais alors la syntaxe C-sharp, bien
sûr, elle la
rend très spécifique. Passez entièrement à
l'aide de Visual Studio. Je ne vais pas
trop entrer dans la syntaxe. Ce que je vais faire, c'est laisser quelques commentaires juste pour que
nous puissions nous souvenir de ce qui
a été discuté ici. Et je vais juste
effacer tout ce qui n'est pas
tout à fait important pour cette application
Hello World. Et je vais juste
dire qu'il y a trois structures de contrôle
dans la programmation C-Sharp. Séquence. Et je pense que la séquence
est la plus importante. Donc, s'il y avait une séquence d'ordre de
priorité appelée ses premières décisions
et répétitions, celles-ci sont davantage
basées sur vos besoins. La séquence d'entrée
régit définitivement tout car elle entre toujours dans l'artère que vous avez
écrit le code. C'est vraiment tout pour
une compréhension large et un examen large de la syntaxe C Sharp. Lorsque nous reviendrons, nous allons
créer un nouveau projet. Nous allons voir
comment écrire un programme réel qui
interagit avec l'utilisateur.
9. Programmes d'entrée et de sortie: Très bien les gars, donc on
a appris le C-sharp. Nous nous sommes familiarisés
avec Visual Studio. Écrivons un vrai
programme, n'est-ce pas ? Je vais donc créer un nouveau projet pour
ce nouveau programme, je vais cliquer avec le bouton droit de la souris
ou une solution, aller dans Ajouter un nouveau projet. Ensuite, nous voulons un autre projet d'
application de console C Sharp. Je vais appeler ça
une entrée, une sortie. Sortie d'entrée Clinton. Ensuite, nous savons que
nous devons travailler avec dotnet six, puis créer. Bien sûr, si vous
utilisez Visual Studio Code, cela signifie
que vous allez
créer un nouveau dossier, un nouveau programme de console Dotnet, et vous serez
au même stade que nous, ainsi de suite. Cette application sur
ce que nous allons
faire est que je vais simplement
écrire des commentaires. Premièrement, déclarez ce que
nous appelons une variable. Nous allons réduire les entrées des utilisateurs
et les stocker dans une variable. Ensuite, nous allons
imprimer le contenu d' une variable ou des entrées de l'
utilisateur. Très bien ? Il ne le visualise donc pas chaque fois que vous utilisez
une application, qu'il
s'agisse d'un bureau de tableau blanc, généralement, comme l'utilisateur le
préciserait en détail,
appuyez sur, Enregistrer ou quelque chose comme ça. Et puis, plus tard, vous devrez vous voir
représenté par le programme ou sauvegardé
sur un point millilitre. Nous ne sommes pas tout
à fait au moment où nous allons voir si
c'est jusqu'à demain. Mais pour null, nous pouvons au
moins voir comment c'est que nous
recevons des commentaires de l'utilisateur,
puis nous les renvoyons. En règle générale, les ordinateurs
font trois choses. Ils acceptent
l'entrée, le double processus, puis produisent une sortie. Ce sont les trois
processus de n'importe quel ordinateur. Cocher les entrées, les traiter, puis renvoyer le processus
de
sortie, bien sûr, peut être
aussi compliqué qu'une équation mathématique, cela pourrait être autre chose. Mais quoi que nous fassions entre les deux, la
prise de l'apport et la production d'un opiacé s'appelle un processus. Très bien, voyons la
déclaration d'une variable. Maintenant, C-Sharp a
différents types de données. Un type de données
ressemble à un adjectif
qui décrit la variable et qui définit ou indique la variable quel type
de données elle peut stocker. Types de données dans. C Sharp peut l'être. Permettez-moi simplement que ces
types de données peuvent être et ne sont pas
nécessairement limités à. Je ne fais que montrer les éléments de base. Ce sera de la chaîne. Ce serait comme des
mots et des chiffres, comme une plaque d'immatriculation, un nom ou un numéro partagé de
licence. Comme je l'ai dit, Noms et chiffres. Tout ce qui
le veut contient des lettres. Il peut contenir des chiffres, il peut contenir des caractères
spéciaux. C'est ce que nous
appelons ça un flux. Nous avons également
des types de données numériques tels que des entiers,
qui ressembleraient davantage
à des nombres entiers, ce qui
ressemblerait davantage à des décimales, puis vous avez en fait une
double barre oblique flottante. A fait des versions plus récentes de
C-sharp, vous avez en fait la
décimale comme type de données, mais je vais juste m'en tenir aux versions
traditionnelles juste au cas où sur différentes versions
ils ont des entiers, vous avez un double float. Vous avez aussi de l'omble. Char représente
un chiropraticien. Très bien, il
peut s'agir d'une lettre. Je veux dire,
ce n'est peut-être qu'un. C'est donc l'exemple de cela. La lettre E ou
le chiffre sept. C'est juste une chose à la fois. Il peut s'agir d'un personnage spécial. Ce sont tous des exemples de chars. Très bien, laissez-moi obtenir
mes droits d'orthographe. Les chaînes seraient mes blocs, prendraient ces blocs de textes, nous utiliserons le double
guillemet. Notez que l'omble utilise un guillemet
unique. Dans un exemple précédent,
vous
m'auriez vu utiliser mon nom. Et dans l'
exemple par défaut, vous verrez Hello World, c'est-à-dire une chaîne. C'est bon ? Vous avez différents types de données et nous allons en passer
par d'autres. J'essaie simplement de ne pas
vous donner de surcharge d'informations, mais ce sont
des exemples typiques de différents types de données. Comme je l'ai dit, c'est
comme un adjectif décrivant ce que la
variable peut stocker. La variable est le point de stockage
réel. Donc, pour déclarer une variable
après le type de données
, je lui donne un nom. Donc, si je veux que l'
utilisateur saisisse son nom, j'appellerais le nom de
la variable. Le fait est donc que vous voulez toujours être aussi descriptif que possible avec votre nom de variable. Vous ne voulez pas
dire de douleurs aux cordes. Qu'est-ce que X ? Très bien, quand
vous devez décrire à quelqu'un qui
regarde votre code ou
essaie même de se souvenir de la raison pour laquelle
x a été utilisé. Deux semaines plus tard, vous
ne vous souviendrez plus quand vous
verrez quelque chose comme un nom. Il est clair que si vous
voulez le bord, vous voudrez probablement
utiliser un entier et C, H. C'est clair. S'il s'agit de plus d' un mot
comme un nom complet, vous voudrez voir
quelque chose comme un nom complet. n'ai pas remarqué comment j'ai écrit celui-ci. n'y a pas d'espèces. Les espèces sont illégales
dans les noms de variables. Vous pouvez utiliser des caractères spéciaux
aussi loin qu'un trait de soulignement, c'est le seul
cartilage spécial autorisé. Vous ne pouvez pas utiliser un trait d'union, vous ne pouvez utiliser rien d'autre avec un trait de soulignement, vous le
ferez de cette façon. Certaines personnes aiment utiliser les traits de
soulignement personnellement, je n'
aime pas les utiliser. Ils sont illégaux. Ils n'ont rien de mal à eux. Donc, si vous voulez
les utiliser, pas de problème. Cependant, je me fie à ce que
nous appellerons le caisson de chameau, c'
est-à-dire lorsque vous faites entrer
la première lettre et ensuite vous mettez en majuscule
tous les autres mots. Vous voyez ici un
exemple de Kamil au cas où lorsque nous avons
nommé nos projets, nous aurions utilisé le cas pasco. Si j'ai dit Hello World
comme variable et que je peux
fertiliser le H et le W, alors ce sera le boîtier Pascal. Très bien, nous mettons en majuscule la première lettre
ainsi que chaque ADL. Tout d'abord, c'est hors de
chaque mot là-dedans. En règle générale, lorsque
vous nommez vos variables, vous souhaitez utiliser un
boîtier chameau car il améliore la lisibilité et
quiconque les regarde,
vous pouvez dire qu'il s'agit
d'une variable conçue pour stocker le nom complet de quoi que ce soit. Très bien, c'est pourquoi le nommage
est très, très important. C'est donc notre
variable vers simple. C'est bon ? Non, c'était le numéro un,
déclarez une variable. Nous avons examiné différentes options
de type de données fonction des informations
que nous voulons obtenir. String est le meilleur type de données
pour ces informations. C'est vrai ? Nous devons maintenant leur
permettre de saisir cette variable. Donc, jusqu'à présent, nous savons
comment sortir, car la ligne d'écriture point de console est ce qui nous permet de sortir. Cependant, nous devons y contribuer. Alors, où aller à
droite, nous voulons un outil. Si vous avez dit lire le camion
proche de la souscription, nous voulons la lecture point de console, ligne. Voyez-vous que je dis toujours la date limite
console.log. La console met
en pause et attend les entrées car elle
ne lit pas quelque chose. Au lieu d'écrire un
terrain où il
va imprimer quelque chose. Très bien ? Bien sûr, lorsque nous
permettons à l'utilisateur d'insérer n' importe quelle ligne de lecture, nous avons
besoin de la stocker quelque part. Parce que lorsqu'ils appuient sur Entrée après l'entrée du type dans les
empereurs, l'inflammation est
renvoyée au programme. Mais alors que l'
information est en cours, c'est pourquoi nous
avons la variable. La variable ici avec la ligne verte se plaint
qu'elle est déclarée,
mais jamais, vous n'avez jamais utilisé car nous ne l'utilisons pas
pour faire quoi que ce soit. Nous l'avons
juste là. La présence de celle-ci
est donc importante. Bien sûr. Mais il ne fait rien. Nous voulions donc savoir quand vous recevez des entrées de la console, veuillez les stocker dans
cette variable. Je suis allé voir un nom complet. Vous obtiendrez votre valeur de tout ce qui
passe par la console. Très bien, il y a donc plusieurs façons
d'écrire ce code. Très bien, j'
essaie juste de vous montrer la façon
la plus simple de vous mettre sur pied
et de commencer à travailler. On s'assure que la
variable existe pour attribuer la valeur
à la variable. C'est ce qu'on appelle une
affectation où tout ce qui est en dessous de droite va dans ce qui se
trouve à gauche. conséquent, un exemple d'affectation, nous avons fait un exemple plus tôt, j'ai pu voir une chaîne de nom complet. Je vous attribue
la valeur par défaut d'une chaîne vide, ou vous devriez avoir la valeur
par défaut de mon nom. Tout ce que je fais, c'est de voir
créer une variable et attribuer cette valeur
à la variable. Si je ne mets pas l'affectation
, la variable
existera sans rien dedans. C'est donc ce que nous
allons appeler null, ce qui est comme un récepteur. y avait rien
à l'intérieur jusqu'à ce que nous fassions une telle mission. Très bien, après avoir attribué la valeur que l'utilisateur
saisit dans notre nom complet, je peux imprimer la console, le
point, la ligne d'écriture. Ensuite, Visual Studio indique que j'aimerais imprimer
ce qui est en nom complet. Vous avez donc vu la console
écrire des points, puis beaucoup de merveilleux week-ends
imprimer une valeur littérale comme nous l'avons fait Hello World. Dans ce cas, je ne
veux pas imprimer la chaîne statique car l'utilisateur n'est pas
entré dans helloworld. Je ne sais pas ce que
l'utilisateur a entré, que ce soit pour entrer le nom complet
stocké. C'est ce que je voulais imprimer. Donc, au lieu d'écrire tous ces
guillemets et ceux-là. Ce bloc de ficelle. Je vais simplement
imprimer le contenu de ma variable
de chaîne sur la console. À la fin de cette application, une fois de plus, nous créons
un espace mémoire. Un espace verbal est essentiellement
un espace en mémoire, un espace de stockage en mémoire pendant l'exécution de
l'application. Dès que l'application
cesse de s'exécuter, cette variable n'existe plus lorsque vous commencez à
démarrer, elle la crée. Alors, il attend quelle entrée ? Ensuite, il fait de la science et de l'
entrée pour définir la variable, puis nous l'imprimons. Disons donc cela pour faire un tour. Sachez, vous remarquerez que le bouton de lecture en haut
des élèves est Hello World. Cela signifie que si nous appuyons sur les
saignements pour exécuter le fichier program.cs
dans HelloWorld, nous ne voulons pas qu'il
exécute Hello World. Nous voulions exécuter notre programme de sortie
d'entrée. Nous pouvons modifier
cela en changeant cette liste déroulante et en
choisissant le programme que nous voulons ou pour projeter
que nous voulons exécuter, qui serait en entrée-sortie. Vous remarquerez également que
lorsque vous changez celui, le projet sur lequel on se
concentre à ce moment-là, c'est
lui qui
reçoit les lettres
en gras dans le nom, n'est-ce pas ? Donc, si je le change
en Hello World, bonjour World est audacieux. Si j'ai changé la sortie d'entrée, entrée, la sortie est les deux. Tout le chemin pour y parvenir, c'est
directement le projet lui-même. Et cliquez sur Définir comme projet de
démarrage. Cela fait la même chose qu'une liste
déroulante en haut. Si je veux une sortie d'entrée, cliquez avec le bouton droit sur Définir un projet de
démarrage. Et il ne se concentrera pas
sur la sortie d'entrée et le bouton Lecture
affichera la même chose. Lorsque j'appuie sur le bouton Lecture, remarquez que la console
est à l'écran et qu'elle clignote simplement. D'accord. Pourquoi est-ce que ça clignote simplement ? Il ne s'agit pas d'imprimer
quoi que ce soit ne se déroule pas recherché créé
ou variable Shore, mais il attend également l'entrée. Sortie, mon nom. Appuyez ensuite sur Entrée. Il procédera à l' impression sur la console et vous
remarquerez qu'il s'est arrêté. Mon Dieu, c'est tout ce que je lui ai dit de faire. bizarre pour vous d'entrer l'
impression et la réalisation linéaire. Cette deuxième ligne est
ce qu'elle imprime. C'est ce que je suis entré. Maintenant, ce n'est pas très intuitif. Je suis sûr que vous constatez
que ce n'est pas très intuitif parce que vous
venez de faire une pause pour entrer. J'ai écrit leurs candidatures. Je sais ce que
l'on peut dire qu'il s' arrête en vous attendant. Si vous deviez récupérer
cette demande pour vous-même sans mon avis, sauriez-vous réellement que c'est
ce qu'elle voulait ? Vous ne le feriez pas, et cela ne
s'attendrait pas à ce
qu'un utilisateur sache vraiment ce que vous
voudriez faire pour ce
type d'application. Comme toute autre application, si vous dépensez
beaucoup de forme, vous indique généralement
ce
qu'elle veut dans la zone de texte ou pour cette entrée particulière afin que l'utilisateur sache
ce
que vous voulez. Je le fais. Vous souhaitez donc toujours que votre utilisateur sache
ce qu'il doit faire. Vous pouvez toujours imprimer, conserver vos propres
messages à l'écran. Donc, je suis allé dire ligne d'écriture point de
console. Je suis allé vous donner
l'instruction, entrer votre nom complet. Et je vais juste mettre un
petit deux-points en dessous, bien
sûr, c'est
ce qui est imprimé. Il s'agit donc d'une chaîne littérale imprimée à l'écran
et dit que vous vouliez
être belle et présentable,
Nice lui-même instructions. Ensuite, il s'
arrêtera pour l'entrée. Ensuite, ce qui est imprimé. Je ne sais pas ce qui
est imprimé. Je pourrais donc dire quelque chose
comme une ligne d'écriture de points de console. Votre nom complet est, puis nous imprimons à l'écran quel que soit
l'utilisateur saisi. Très bien, donc ce
sont les choses qui
améliorent la façon dont vos obligations sont renforcées. Vous l'avez fait. Écriture de points de console. La première était l'écriture de points de console. L'écriture de points de la console va
l'imprimer sur une ligne, tandis que la ligne d'
écriture de points de la console va automatiquement la
déplacer vers la
ligne suivante. Essayons celui-là. Alors allez-y et courez. Vous ne voyez ici nulle part
entrer votre nom complet. Et comme nous avons fait une ligne d'écriture, elle est passée automatiquement à la ligne
suivante pour attendre l'entrée. Je suis allé voir mon nom. Ensuite, lorsque j'appuie sur Entrée, votre nom complet est imprimé en une seule ligne
parce que j'ai bien dit. Donc, si je voulais une
invite en une seule ligne, je dirais juste
au lieu d'une seule, non ? Et nous écrirons
automatiquement la ligne qui amène
à la diapositive suivante. Et c'est à peu près tout. Voyez-vous ? Ce n'est
pas si dur du tout. Encore une fois, la séquence est importante. Créez la variable, imprimez et demandez une entrée au
personnel, puis pesez quatre entrées, puis vous pouvez
imprimer n'importe quoi par la suite. Très bien, il s'agit donc d'une
simple sortie d'entrée. Aucun refacteur rapide que je voudrais vous
montrer, c'est que lorsque vous
demandez que des données
entrent dans la variable, il est parfaitement correct
de simplement définir la variable. et
assignez-le en même temps. Bien sûr, vous ne pouvez pas avoir deux devoirs
verbaux
à l'écran. Si vous créez une variable avant de le
faire une deuxième fois. Mais ici, ce que je vois, c'est créer une variable appelée
nom complet et lui donner tout ce
qui vient de l'utilisateur. Il y a donc
moins de lignes de code. Il est donc parfois utile de créer un programme qui
utilise moins de lignes de code. Parfois, ils seront lisibles,
vous le voulez aussi explicite. Je vais donc
laisser ça comme ça pour votre consommation. Créez la variable,
autorisez l'utilisateur à entrer stockage dans la variable
, puis à imprimer le contenu
des entrées.
10. Types de données et conversion C#: Très bien les gars, donc dans
notre dernière application, nous avons examiné rapidement comment
déclarer des variables. Nous avons examiné brièvement
les différents types de données que
ces variables peuvent avoir. Ensuite, nous avons cherché à accepter et à imprimer les informations
de l'utilisateur. Nous allons maintenant nous
appuyer sur
ces deux concepts en
examinant les variables et
leurs types de données. Encore une fois, si vous fermez Visual Studio et que vous
devez le relancer, vous pouvez toujours l'ouvrir, désolé si vous fermez
Visual Studio, je dois relancer le projet. Vous pouvez toujours simplement relancer
Visual Studio 2022. Vous pouvez rechercher l'
obligation ou le
projet récent sur lequel vous avez travaillé ou
ouvrir un projet ou une solution. Accédez à l'endroit où vous souhaitez décaler l'
emplacement du projet. Trouvez-le, puis lancez
ce fichier de solution. Vous pouvez également effectuer cette étape
depuis votre explorateur lui-même. Alors, continuons. Nous allons créer
un nouveau projet. Donc je clique simplement
sur la solution, vais dans un nouveau projet, consoler. Et puis celui-ci sera constitué de variables et types de
données en gardant à l'esprit
des noms très stricts, des suggestions, des espaces
nuls et des
caractères spéciaux et des casses Pascal. Nous faisons donc tout cela. Ensuite, nous utilisons dotnet
six, puis nous pouvons créer des connaissances dans notre tout
nouveau fichier program.cs. Je veux que nous examinions les différentes variables
que nous pouvons utiliser. Et nous utilisons des exemples
pratiques, quelqu'un qui voit
des déclarations et des types de variables. Dans cette application,
nous allons créer un type réel de formulaire de
saisie de données pour notre utilisateur. Nous voulons un nom, un âge, peut-être un salaire. Il y a le genre et s'
ils travaillent ou non. Très bien,
faisons-le tous. Et ce faisant,
nous explorerons Hall. Nous convertissons les types de données entre
ce qui est entré sur ce qui est nécessaire en fonction du
type de données que nous avons sélectionné pour la variable et de la façon dont nous pouvons tout
imprimer
aujourd'hui, à la fin de celle-ci. Nous avons déjà fait un exemple
avec le nom complet. Donc, ici, je peux voir une chaîne de nom
complet est égal à. Vous voulez généralement rester
loin de Knowles. Null, ce qui signifie que je
dis juste un nom complet de chaîne. Il y a une variable
appelée nom complet, laissez-la être, elle est généralement désirée pour
rester loin de cela. Cela va marcher. Mais lorsque vous créez des applications
plus importantes, vous voulez rester à l'écart de cela. Vous souhaitez donc généralement
lui attribuer une valeur par défaut. Voici donc une valeur par défaut intégrée
appelée chaîne de points vide. Parfois, vous pouvez
voir des gens faire cela, mais c'est ce que nous
appelons une corde magique. Et c'est généralement un discours parce qu'on peut
commettre une simple erreur et ne pas se rendre compte et il serait très difficile de le comprendre
plus tard. Nous devons donc diffuser un point vide. Vous laisserez voir les objets tranchants
à la valeur pour vous. Et ce sera beaucoup plus facile à entretenir
et sur la bonne voie, ne le faites pas. Voyons l'âge. J'ai donc voulu contourner, je vais utiliser un entier parce que les gens
auraient généralement 2021, pas nécessairement 21,8 ans. Je voudrais un entier
au lieu d'un double ou un float car je ne m'
attends pas à une décimale pour cela. Vous pouvez également attribuer à
celui-ci une valeur par défaut. Je vais juste régler 0. Il
y a des valeurs par défaut ici, mais vous
finiriez par être int dot, max ou Min, ce qui serait
sur l'une ou l'autre échelle de milliards. Très bien, donc Min est moins 2 milliards ou 2 billions
ou quelque chose comme ça. Je veux dire que Mux est
positif, ce même nombre. Donc, ici, je vais juste
définir cette valeur par défaut sur 0. Peut-être qu'un, peut-être qu'une facilité
par défaut est plus logique, n'est-ce pas ? Mais bon, le prochain arrêt, le salaire. Pas de salaire. Vous pouvez vous attendre à
ce point décimal car le salaire représente de l'argent. Vous pourriez utiliser le double. Ensuite, si vous
vouliez que la valeur par défaut soit égale à 0, c'est votre valeur par défaut. Vous pouvez probablement
également voir les valeurs flottantes
qui prennent également des nombres décimaux,
sauf que qui prennent également des nombres décimaux, la valeur par défaut doit
être un peu différente. Il faudrait donc voir
quelque chose comme ça. 0 f. Juste pour vous montrer,
je vous montre simplement
les nuances avec des types de données
différents, mais il s'agit également d'une décimale c'est simplement dire que
vous devez mettre
le F pour représenter
cela c'est un flotteur et pas seulement un double ordinaire. Vous pouvez également utiliser la décimale. Et si je ne me trompe pas décimal, tu verrais juste 0. Il faudrait mettre le
suffixe M, on y va. Encore une fois, il suffit de vous montrer les différentes options,
différentes nuances. Très bien, je vais donc
rester simple. La porte double est assez bonne. Et je peux simplement dire que NOUS
saurons que c'est une décimale, donc 0 est identique à 0. Genre. Non, je voudrais probablement que l'utilisateur saisisse M
pour moi, F pour femme. Et ensuite, vous voudriez
utiliser un personnage pour cela. Je dirais donc char. Remarquez que je viens d'
écrire accidentellement une
majuscule C. Capital C est
différente de la CDH courante. objectifs similaires mais différents. Vous souhaitez donc toujours qu'ils
soient minuscules lorsque vous définissez vos types de
variables. omble et le genre. Je peux initialiser cet outil. Ne pensez pas qu'il y ait
un omble point vide. Nous avons des valeurs Min
et Max, et vous avez
plusieurs autres opérations. Ils ne vont pas encore
subir toutes ces
opérations. Très bien, alors je vais juste dire, donnez-moi la valeur
moyenne de l'omble. Ensuite, c'est demander l'anniversaire. Je ne veux pas d'anniversaire
cette fois, je veux un booléen. Et travaillez-vous ? Boolean ici
représente donc vrai ou faux. Vous l'êtes
déjà, n'est-ce pas ? Vous êtes sur ou
non binaire un ou 0. Bool représente cette décision
binaire, cette valeur binaire 1
ou 0 true ou false. Le travail ou ne fonctionne pas. Ici, je vais juste
passer par défaut à faux. Vous remarquerez donc que les faux
faux sont en fait des mots-clés. Vous pouvez le dire à partir de leur codage couleur
et du fait que résultats obtenus suggèrent ces valeurs dans
IntelliSense. Pour moi. Même avec une puce, si je n'attribue pas de valeur, elle sera par défaut false. C'est donc quelque chose
que vous pouvez garder à l'esprit si vous ne
lui donnez pas de valeur, la valeur par défaut
est fausse. Si vous ne donnez pas de valeurs entières
et doubles, leurs valeurs par défaut seront 0. Char qui sera
null par défaut de la même manière que la chaîne sera nulle
par défaut. Lorsque vous vous entraînez et que vous vous
sentez plus à l'aise. Vous saurez ces choses. Je les pointe tous parce que je fais ça
depuis des années pour que
je puisse exprimer cette sagesse à
cause de l'expérience. Je suis tous les deux en train de tondre la sagesse pour que vous
puissiez l'avoir dans le fond de votre esprit lorsque vous vivez
une expérience. Ce sont donc les variables avec lesquelles nous voulons travailler
pour cet exercice. Sachez que ce que je
voulais faire est d'inviter l'utilisateur à entrer
chacun d'entre eux, puis je voulais
le stocker dans les variables. Commençons par le nom
parce que nous l'avons déjà fait. Je suis donc allé voir la ligne d'écriture de points de
console. Et je vais dire s'
il vous plaît, entrez votre nom. Je vais écrire des points de
console. Je voulais parler pour imprimer en une seule ligne, puis il va faire une
pause pour l'entrée
par la suite, point-virgule. Et puis je vais voir que le nom complet sera
égal à toutes les entrées de
l'utilisateur, ce qui serait la ligne de lecture
point de console. N'oubliez pas que la dernière fois,
nous avons examiné le fait que vous n'avez qu'à l'
attribuer là. Non. Je n'ai pas mentionné que vous
pouviez définir une variable ici et tout faire une fois. Pour des raisons de lisibilité, il est
parfois bon de simplement
définir toutes vos variables
en haut , puis de les
utiliser plus tard. Donc, au moins, vous
savez ce dont vous avez besoin. Ensuite, vous pouvez écrire notre propre code ce que vous avez déjà travaillé. Ce n'est pas forcément l'un
est meilleur que l'autre. C'est juste que je
suggère simplement ce type de flux de travail pour que vous
puissiez mettre de l' ordre et préparer
votre stratégie pour votre application quand vous en avez besoin. Dans cette section, je
demande simplement à l'utilisateur d'y entrer. Je vais
simplement copier et coller ceci
et je vais
dire s' il vous plaît entrez votre âge. Parfois, il faut
travailler plus intelligemment, pas plus fort. Vous disposez déjà de la ligne d'écriture de points de la
console. Vous savez que vous devez attribuer la variable que je vais
faire est copier-coller. Il prend fin à ses besoins pour changer ,
puis utiliser la variable
appropriée. Alors,
je dis que j'ai eu l'âge. Ouah, pas de moyenne. Qu'est-ce que ce truc de ligne rouge ? Il dit que c'est désolé, laissez-moi survoler encore une fois. Ok, donc parfois, lorsque
vous survolez la souris, vous ne verrez pas l'erreur. Oh mon Dieu, c'est fini. Impossible de convertir implicitement la chaîne
de type en int. Donc, s'il vous plaît, vous pouvez voir les détails de l'erreur
seraient une liste d'erreurs, ce qui
se fait généralement dans la partie inférieure de votre interface ne peut pas implicitement
convertir la chaîne en int. Et si vous ne le voyez pas là,
vous pouvez toujours aller voir. Et vous verrez une liste d'erreurs et vous cliquez dessus
et elle apparaîtra. Ici. Il est dit que j'ai
un entier appelé âge. Mais la
ligne de lecture des points de console
accepte en fait une chaîne
de la part de l'utilisateur, ce qui
signifie que peu importe ce que je
tape dans la console, elle la
verra toujours comme une chaîne. Alors rappelez-vous plus tôt lorsque j'ai discuté des
différents types de données, j'avais dit que la chaîne était
en fait capable
de stocker des mots, nombres, des
caractères spéciaux, n'importe
quoi, tout ce qui est sur votre
clavier va en fait être traité comme
un seul gros bloc de texte. Lorsque nous le mettons dans
l'entrée de la console, il ne s'agit pas de supposer que, parce que
vous placez le chiffre un, que vous voulez un entier r, vous mettez une lettre que
vous voulez un personnage ou un prix d'âge signifiait
vraiment un Booléen. Il faudra toujours supposer que vous
entrez une chaîne. Donc, si vous voulez que cette chaîne soit stockée comme autre chose, nous devons effectuer une conversion
manuelle. Pour convertir de chaîne en int. Vous avez la possibilité d'
utiliser des convertis, qui n'est qu'une autre classe
intégrée. Et je peux dire convertir des points. Et je peux en voir deux sur 32. Je voulais me convertir en 32. C'est une méthode, donc je dois
ouvrir ma parenthèse
et ensuite remarquer qu' après
avoir analysé cette valeur de chaîne
que j'ai l'intention de convertir, quelle est la conversion de cette entrée de
chaîne de l'utilisateur. Lorsque nous disons simplement
convertir en 32, quelle que soit
l'entrée de l'utilisateur. Et puis chaque fois que j'ouvre une
brève barre de so r et le CCN, je dois m'assurer de la fermer. Donc celui-là, celui-ci
est une perte ouverte pour, pour la ligne rouge, mais je
dois fermer le 32. On y va. Cela élimine toutes les flèches. J'
espère que c'était clair. Si ce n'était pas clair, il a doublé
pour être beaucoup plus clair. Nous passons maintenant au salaire. Je ne fais que copier
et coller à nouveau. Et puis j'ai voulu dire «
S'il vous plaît, entrez votre céleri ». Ensuite, je vais
attribuer un salaire. Ceci est en train de passer à 32. Je ne veux pas nécessairement
32 en salaire parce que le
salaire est un double. Il ne s'agit pas d'un entier. Je ne veux donc pas que la
personne qui a fait ça 210.05$. Je ne veux pas seulement 210$. Je veux que les cinq septième disent
aussi que j'ai besoin la décimale.
Eh bien, devinez quoi ? Je peux convertir de chaîne
en double nos deux décimales, nous utilisons le double, donc
je dirai de doubler. On y va. Très bien, donc l'
entrée de chaîne de l'utilisateur, convertissez-la en double
stockage au lieu de salaire. Je viens bien. Je vais juste aller de l'avant
et dupliquer ces lignes pour le genre et le travail, et
nous pourrons les comprendre. Genre ces derniers dans le genre. Ensuite, veuillez entrer si
vous travaillez ou non. Remarquez les lignes rouges. Celui-ci dit « Genre ». Celui-ci dit « travailler ». Laissez-moi le voir. Statut de travail. Permettez-moi de reformuler cela.
Vous travaillez ? Vous travaillez ? Très bien. Alors, agender,
nous utilisons un omble. Je sais que je dois dire à l'utilisateur Watts heures d'entrées
légitimes ou quelles sont les entrées
que je cherche. Je vais donc voir à l'intérieur
du message d'invite M ou F, entrez
l'une de ces lettres. Puis il est monté pour convertir
la chaîne en caractère. Le
caractère est
différent d'une chaîne
car il peut y avoir plusieurs caractères dans son bloc
contigu par rapport à un caractère, qui n'est littéralement qu'
un caractère à la fois. Je suis donc allé voir
des convertis, des points, des outils. Et puis je fais une pause dans
ces entrées de chaîne qui espérons-le, n'a qu'un des choix que j'ai présentés. Et ensuite, je vais stocker
ça dans le genre. De même, travaillez-vous ? Qu'est-ce que je m'attends à ce que l'
utilisateur en mette deux ? Je m'attends à ce qu'ils mettent
en vrai ou en faux. Pourquoi ? Parce que je voulais simplement ajouter conversion
directe du mot true dans le type de données réel. C'est un bool, qui
est le mot-clé true. Pour notre représentation visuelle. Vrai entre guillemets. C'est ce qui arrive par
la ligne de lecture des points de la console. Mais j'ai besoin de vrai. Le mot-clé, qui est ce que
je dirais jusqu'à Boolean. Nous allons faire avec cet outil de
conversion. Booléen. Je suis sûr que Visual
Studio vous donne bonnes suggestions
car il examine
contextuellement ce à quoi vous essayez d'
attribuer cette valeur. Cela leur suggérerait, car il est clair que vous
travaillez avec un booléen. C'est pour
inviter notre utilisateur et pour
convertir en coulisses quel que soit le type de la chaîne
par défaut en type de données réel
dont nous avons besoin pour nos processus en
arrière-plan. est très important d'utiliser le type de données correct car. Si vous en avez besoin pour faire des
mathématiques avec salaire, vous ne pouvez pas faire ce genre
de maths avec une chaîne. Vous devez l'avoir
comme valeur numérique
pour voir si c' est ce que
vous gagnez par mois, alors c'est votre oreille,
le salaire, n'est-ce pas ? Donc, si nous leur demandons d'
entrer votre salaire annuel, je voulais leur montrer ce
qu'ils gagnent par mois pour pouvoir faire les calculs. C'est bon ? Ce sont donc les choses
que vous devez prendre en compte. À la fin de cela, nous souhaitons imprimer les informations
à l'utilisateur. Nous voulions donc
imprimer ce que vous avez saisi, voici
ce que nous avons pour vous. Donc je vais juste voir la ligne d'écriture de points de
console. Nous savons que nous devons le faire. Non, à ce stade, je peux faire ce que nous
appellerons la concaténation. Je suis donc allé voir votre nom, c'est. J'ai deux choix. Je ne vois pas votre nom
et puis
une autre
ligne d' écriture de points de console a été imprimée nom complet. C'est ce que nous avons fait la dernière fois. Ensuite, cela va
finir par doubler dans chaque déclaration d'impression quand
je peux le faire en une seule ligne. Donc, votre nom est, et ensuite je vais faire ce que
nous appellerons la concaténation. Je vais donc dire plus et ensuite lui donner la
variable. Ce que cela fait. Il est écrit, s'il vous plaît ajouter
ce bloc de chaîne. C'est un littéral parce que moi, le programmeur tapé, c'est donc que
cela ne changera jamais. De plus, tout ce qui est arrivé par
la variable parce que je ne sais pas dans quoi l'utilisateur
va écrire. C'est ce que nous faisons là-bas. Une autre façon d'écrire ceci ou de faire ce genre
de concaténation, disons avec EJW, si je voulais voir
votre ij va bien, je peux en fait mettre
un espace réservé ici. Je suis donc allé voir l'
orthèse bouclée ouverte 0, fermer l'accolade bouclée. Et ensuite, je vais ajouter
la variable qui correspond. Je peux donc voir que chacun sait ce que cela fait est
en train de créer
ce que nous appelons des args. Donc, nos arguments qui
seront transmis à la fonction. Les arguments seront donc liés aux variables qui
entrent dans l'ordre de voir. Donc, si j'avais plusieurs arguments sont plusieurs variables
qui devaient imprimer, je pourrais en faire 12. Et puis je peux voir texte ici parce que j'
écris avec une phrase entière, mais certaines parties
doivent être dynamiques. Je ne l'ai pas fait pour chacun d'
entre eux, je vais les appeler des espaces réservés. Je fournirais une variable
dans le même ordre. 0 passe toujours en premier. La première variable
correspond à la valeur 0. La deuxième variable, beaucoup est encore l'autre,
etcetera, etc. Très bien, je
vais donc énumérer
autant de variables
que d'espaces réservés. C'est donc d'
autres. Je vais garder celle-ci simple. Et nous allons juste
voir que votre âge est alors que nous utilisons un
espace réservé et imprimez chacun. Une autre façon d'
imprimer ce que nous
appelons une chaîne de concaténation
serait de voir votre salaire. Et puis je mettrais
la variable ici. Au lieu de voir s'il vous plaît
tenir, je verrais une
accolade bouclée puis je mettais les variables, donc du céleri, mais remarquez que tout
est encore orange déjà la même couleur que n'importe
quel la
représentation littérale de chaîne est. Ce qui manque ici,
c'est le signe du dollar. J'ai besoin d'un signe de dollar
avant d'écrire la chaîne. Ensuite, cela me permet d'utiliser accolades
bouclées et de super imposer la variable n'importe où dans ce flux
que je veux. C'est ce qu'on appelle l'interpolation. Il s'agit donc d'une concaténation. C'est ce qu'on appelle la laisse inter
pull. Le problème avec l'interpolation, c'est
qu'à l'intérieur de cette chaîne, c'est très
similaire à l'utilisation des args. Mais je peux simplement sprinter les variables où nous dirons que
si j'écris quelque chose prend, je ne l'ai pas fait, je voulais une autre
variable, puis plus de texte. Donc j'écris tout simplement sur
une corde de gants, mais partout où j'en
ai besoin pour être dynamique, j'écris simplement dans cette
variable en conséquence. Imprime cette corde.
Il ne fera que placer ces valeurs là où j'ai déclaré que
les variables devraient être. Très bien. Je vais laisser un petit commentaire. Ils sont conscients de ce
qui se passe à chaque moment. Ce sont donc toutes vos
options lorsqu'il s'agit d'imprimer et d'interagir avec une chaîne sur les variables. C-sharp fait
du bon travail en changeant tout
en cordes. Vous devez donc être
délibéré pour transformer en n'importe quel type de données, car
il s'agit d'une chaîne, vous devez être délibéré avec l'outil de type de données que vous
convertissez. Cependant, vous
remarquerez que je ne convertirai rien
d'autre en chaîne ici. C'est une ficelle
et je mets
un double à l'intérieur d'
un bloc de ficelle. La même chose ici avec edge sera le nom complet est
déjà une chaîne. Ici, il convertira toujours n'importe quel type de données en chaîne sans que vous ayez
à faire autre chose. Mais si nécessaire, vous pouvez toujours dire
variable dot toString, qui le
convertira également en chaînes. Cela fonctionne donc, mais c'est un peu redondant
parce que ce n'est pas nécessaire. Parce que C-sharp est bleu. Je ne fais que
vous montrer vos options. Laissez-moi juste dupliquer
cela et voir que votre sexe est, et ensuite je peux simplement
mettre en question le genre. Alors je peux voir que vous êtes Floyd Êtes-vous employé
ou travaillez ? Désolé, je suis juste
pris dans l'autel, écrivez ceci, vous êtes employé et
je verrai juste travailler. Très bien, donc il le
convertira
automatiquement à partir de la chaîne Bool pour moi. La plupart des fois, vous me
verrez faire ça, mais plus tard, nous examinerons manipulation des
cordes
un peu plus en détail. Je
vous montre donc quelques options pour que nous puissions
traverser cette activité. Plus tard, nous étudierons
plus en détail ce qui est possible en ce qui concerne les chaînes et les différents types de
données. À partir de là, si je voulais exécuter cette application,
une fois de plus, je dois la modifier en ce
qui concerne le projet avec lequel
nous travaillons, les variables et les types de données. Et puis laissez-moi exécuter. Commençons alors à
remplir ça. Ce sera donc
le nom du test. Entrez dans le
bord de votre oreille, disons 23. Quel est votre salaire ? C'est un C. Je gagne ce 0,35. Quel est mon sexe ? Je suis allé dire ceux qu'on
m'a suggéré de rester. Ensuite, sur mon travail,
je travaille vrai. Donc, à la fin, vous obtenez votre nom, votre âge, votre salaire, votre sexe et
vous êtes employé. Il n'
y a pas de place ici. Pourquoi n'y a-t-il pas de place là ? Parce que j'ai un dipôle car vous pouvez juste corriger cette faute de frappe et cela corrigerait cette impression. Mais c'est vraiment tout ce que je veux que nous traversions
dans cet exercice. Nous avons examiné les
différentes variables, sur différents
types de variables et tout le week-end, nous
leur donnons les valeurs par défaut par
rapport aux valeurs autres que celles par défaut. Nous avons également examiné le fait
que nous le pouvons ou nous en avons besoin, lorsque nous acceptons les entrées de la console, convertit vers notre type de données spécifique en
fonction de ce dont nous avons besoin. Nous avons également examiné les différentes façons de gérer
l' impression d'anciens textes statiques combinés
à des prises provenant de notre variable.
11. Techniques de débogage des applications: Très bien les gars, donc dans
cette leçon, je veux
discuter des techniques de
débogage des applications. Non, le débogage concerne la
recherche d'erreurs dans votre code. À ce stade, j'ai un tas d' autres projets que
nous
traverserons un par un plus tard. Ne soyez donc pas pris par
le plaisir que j'ai beaucoup de projets et
vous ne nous laissez pas nous concentrer sur le projet
que nous venons de terminer, qui portait sur les
variables et les types de données. Et je voulais
vous montrer comment vous pouvez essayer de
trouver des erreurs dans le
code au fur et à mesure. Très bien, nous
avons donc différents types d'erreurs qui
apparaîtront dans notre code. La plus facile à repérer
est une erreur de syntaxe. Une erreur de syntaxe peut être
aussi simple qu'un type ou vous auriez vu qu'ils ont
écrit quelques lignes erronées. Parfois, si j'écrivais
console au lieu de console
, l'erreur de syntaxe apparaîtrait à travers
la prison elle-même, la ligne rouge, nous l'avons déjà
vu auparavant. Vous remarquerez également
que Visual Studio mettrait en évidence
le lion à votre droite. Et vous verrez ce
petit carré rouge ici montrant qu'il
y a une erreur sur cette ligne. Vous verrez également que vous
avez ce petit x
ici et la liste des erreurs
sera renseignée. Il y a donc
tellement d'indicateurs l'idée d'une erreur
dans votre code lorsqu' il s'agit d'une erreur de syntaxe qu'
il est difficile de ne pas remarquer. Disons maintenant une aventure
de prière. Vous ne l'avez pas remarqué. Et vous avez essayé d'exécuter quelqu'un pour changer mon projet de
départ ici. Ensuite, j'ai essayé de l'exécuter. Je n'ai pas remarqué cette erreur de
syntaxe et j'ai essayé de l'exécuter, puis je vais finir
avec une erreur comme celle-ci. Ainsi, lorsque vous
courez, vous aurez deux options. Vous avez exécuté avec le débogage
et exécuté sans débogage. Exécuter sans débogage signifie qu'il va juste construire, assurez-vous que tout va bien. Et puis essayer de
lancer un programme écrit avec le jeu de balle
signifie qu'il va fonctionner,
mais gardez à l'esprit que vous voudrez peut-être suivre
ce qui se passe. Nous avons donc examiné cela dans quelques-uns. Toutefois, aucune des
options ne fonctionnera lorsque, si vous rencontrez une erreur de syntaxe. Donc, lorsque vous recevez ce
type de message d'erreur indiquant qu'il y a eu une
erreur dans votre build. Voulez-vous continuer avec
la dernière version réussie ? Vous ne voulez pas continuer avec la dernière version réussie. Cela signifie que vous
allez revenir à la bonne version du code, ce qui va à
l'encontre de l'objectif d' écrire un nouveau code que
vous pourrez tester. Vous voulez voir NOR. Et puis il a voulu
accorder une certaine attention à votre liste d'erreurs afin qu'elle puisse vous montrer où se trouvent
vos erreurs. Donc, en double-cliquant ici dans la zone de
la ville, vous
sauterez sur cette ligne
avec les erreurs. Que vous alliez le corriger, commenter ou quoi que ce soit
, supprimez
simplement les erreurs de syntaxe. Ce sont donc les
erreurs les plus faciles à détecter. Sachez que le type d'
erreur le plus difficile à détecter est
une erreur logique. Dans la logique, l'erreur peut être
parce que vous n'avez pas écrit la coordonnée
particulière de la façon dont vous avez fait quelque chose avant qu'il
aurait dû faire autre chose. Rappelez-vous que nous avons une séquence, nous avons sa position et
ensuite nous avons des décisions. Si une séquence
était incorrecte, peut que
vous n'obteniez pas
les résultats souhaités. Si vous avez pris une mauvaise décision, ce qui signifie que vous avez mal écrit une
condition de déclaration, vous risquez d'obtenir de
mauvais résultats là aussi votre for-loop, etc. Il y a un certain nombre
de choses qui peuvent lancer toute la logique. Ce sont des erreurs logiques qui se manifestent
réellement
pendant l'exécution. L'une des façons dont vous pouvez utiliser les valeurs des camions
attribuées consiste à vous asseoir
dans ce que nous appelons des points d'arrêt. Le point d'arrêt est par exemple une ligne de code marqueur qui indique au compilateur que pendant que vous exécutez tout le code, lorsque vous touchez cette ligne, je veux que vous fassiez une pause. Laissez dot-dot-dot enregistrer
un peu pour obtenir ce point de rupture. Si vous regardez à gauche des numéros
de ligne, donc vous avez l'éditeur, alors vous avez vos numéros de ligne
qui, lorsque vous
cliquez dessus, mettez en surbrillance les lignes entières, vous me
verrez faire. Pour obtenir l'intégralité de la doublure il suffit de cliquer sur ce numéro de ligne. Mais dans le coin le plus
à gauche, vous verrez que le curseur s'inverse à nouveau. Donc ici, cela se produit, donc ça semble normal,
juste un pointeur régulier. Et puis, quand je passe
aux numéros de lignes, il devient un peu inversé vers
la direction suivante, puis ça revient
à la normale ici. Ensuite, vous verrez
ces petits points blancs apparaître sur les lignes de code. Lorsque vous cliquez sur l'endroit où
se trouve ces points, il devient rouge. Le point rouge indique un point d'arrêt et
toute cette ligne devient rouge. Vous pouvez donc avoir
plusieurs points d'arrêt. Jettez-le à votre code. Pour activer les points d'arrêt, il
suffit de cliquer à nouveau dessus. Cliquez ici pour activer ou désactiver. Lorsque vous courez. En mode débogage, ce qui signifie que vous
appuyez sur ce bouton de lecture plus grand ou que vous appuyez sur F5 sur votre
clavier, il s'exécutera. Et soyez conscient du fait qu' il pourrait y avoir un point d'arrêt. Donc, quand il atteint ce
point de rupture, il va faire une pause. Lorsqu'il fait une pause, il
vous permet d'interagir avec les variables et autres bits de code qui l'
auraient précédé. Si vous exécutez sans débogage, il s'exécutera simplement. Il ne sera pas curable à
des moments courts. Lançons avec le débogage
et regardons cette expérience. Ici, vous le voyez. Voir entrer le nom pour que nous
sachions ce que nous sommes à 912, c'est là
qu'il attend en
dessous d'entrer. Je suis allé mettre mon
nom, appuyer sur Entrée. Ensuite, il se demande ce qu'ils mangent pour que vous
sachiez ce que c'est ? Pas de contour. 15. Il attend sur le bord. Alors, mettez un avantage et
regardez ça. Il a donc imprimé l'
invite pour une ligne 17. corps ne peut pas aller
plus loin à cause
du point de rupture que nous
avions placé cette ligne 18. Sachez que l'obligation est effectivement arrêtée
peu importe ce que je fais, j'appuie en fait sur les touches, et peu importe ce que je fais, j'avance parce que le
compilateur ne me permet pas de le faire. Très bien, à ce stade, si je survole ces variables
précédentes, je peux vraiment voir quelles
valeurs sont entrées et je peux voir que le nom complet
a actuellement une valeur de Truvada. L'âge de William
a actuellement une valeur de 25 ans et il attend le
salaire pour obtenir sa valeur. Et le salaire
a actuellement une valeur de 0. Gender a la
valeur 0 barre oblique 0. C'était la valeur moyenne. Et travailler par défaut
a la valeur false. Vous voyez ça ? Juste en planant au-dessus d'
eux, je peux le voir. Je peux aussi aller
ici où se trouvent certaines des barres d'outils
supplémentaires et je peux les faire apparaître. Je vais regarder, regarder, c'est tout petit. La section montre me
permet de mettre une seconde variable et de
regarder la variable de genre. Et il me montrait
quelle est sa valeur. Je peux regarder le nom complet. Et il me montrait
quelle est sa valeur. Et je peux également regarder les salaires. Laissez-moi regarder le salaire. Aucun salaire n'a une valeur de 0. Mais si j'appuie sur F9 sur mon
clavier ou si vous habitez, et que je dois m'
assurer d'appuyer sur F 11 car f ten
arrêtera réellement l'enregistrement pour moi, la différence entre f
ten et si nous vivons, est que si dix, nous
sauterons une méthode, alors que FLM
vous amènera dans la méthode. Plus tard, lorsque nous
écrirons du code ensemble, nous verrons que cela fonctionne. Mais pour null, si
dix ou 11 va bien. Donc, si j'appuie sur F 11, il passera à partir de
ce point d'arrêt. Et tous les chiffres, ce sont tous les chiffres
que je mettais plus tôt. Mais non, c'est en fait
à la ligne 18 que j'
attends d' entrer quelque chose
et d'appuyer sur Entrée. Donc, si je mets 800, laissez-moi effacer cela et mettre simplement numéro
sensé
, puis appuyez sur Entrée. Il passera
à la ligne suivante. Ainsi, quand
il atteint la ligne, il devient jaune. Quand il a atteint le point d'arrêt, il était jaune quand il
est passé à la ligne suivante. Ça ne me montre pas que
c'est la prochaine ligne ? C'est vrai. Si je vais à la montre
pour regarder son nez me
montrer que le
salaire n'est plus de 0,
ce n'est pas 8 000
parce que c'est ce que j'ai entré. À ce stade. J'ai quelques options car il
attend toujours que j'aille ligne par
ligne afin que je puisse continuer à
faire F11 ou F1 jusqu'à la fin. que je veux dire pour un petit programme comme celui-ci
ne serait pas grave. Mais parfois, vous
vouliez simplement dévaluer ce qui se passe
à une ligne particulière. Après cette ligne, vous pouvez la laisser continuer.
Pour le laisser continuer. Il vous suffit d'appuyer sur F5 ou de
cliquer sur Continuer en haut. Et une fois que vous aurez fait
cela, l'exécution
du code se
poursuivra comme d'habitude. Je peux donc m'y mettre et
vous voyez que ce n'est pas en pause et me
demande rien et cela continue jusqu'à la
fin de l'exécution. Encore une fois, ces
points d'arrêt me permettent de suspendre l'application
dans ses camions. Et je peux jeter un coup d'
œil aux variables qui sont
peut-être incorrectes,
peut-être que la valeur salariale était erronée parce que le
calcul est erroné. Cela vous aide à mettre en pause votre application et à jeter un coup d'œil aux valeurs
qui se manifestent. Et puis vous pouvez
déterminer que, d'accord, peut-être devrais-je tweeter ceci ou
modifié cela au fur et à mesure. Et ensuite, cela
vous aide à aller de l'avant. Ici, avec le céleri, je viens de
désactiver les points de contrôle sont au point d'arrêt plutôt
en cliquant sur le point rouge
et en cliquant dessus. Vous ne pouvez pas en avoir plusieurs. Le fait est que chaque
fois que vous appuyez sur Continuer, il ira jusqu'
au prochain point d'arrêt de
la ligne dans cet ordre. Donc si j'entre dans le salaire et que ça allait ici et dans ce
pressé continuer quand il enseignerait la ligne 20, il continuerait,
continuerait. Et puis il ferait
tout jusqu'
au point de rupture suivant où
il s'arrête et m'attend, le développeur évaluera ce
qui se passe , puis continue
ou passe ligne par ligne. Voici donc quelques conseils concernant le débogage dans
votre application. Cela vous sera utile. Lorsque vous vous retrouvez avec des erreurs. Peut-être que votre logique n'y est pas aussi bien pensée que vous le
souhaiteriez et cela arrive, nous sommes tous humains, n'est-ce pas ? Parfois, on ne comprend
pas bien la première fois. C'est pourquoi ces
outils existent pour nous
aider à affiner
ce que nous faisons.
12. Les opérateurs arithmétiques et de l'affectation: Dans cette leçon, nous
allons
examiner les opérateurs mathématiques, créons un nouveau projet. Et nous allons appeler
celui-ci des opérateurs mathématiques
en utilisant dotnet six. Et ensuite, nous pourrons commencer
ce spectacle. Non. Nous voulons
peut-être examiner trois catégories. Nous avons des opérateurs de base, sommes des opérateurs d'affectation de base. Nous avons plutôt des
opérateurs arithmétiques, des opérations. Ensuite, nous avons peut-être des opérateurs
d'affectation composés. Nous avons déjà examiné l'
opérateur d'affectation. Celui-ci concerne l'
attribution d'une valeur int num, nous avons une variable. Cool. Je veux lui donner une valeur. Je vais dire que num est peut-être
égal à cinq. C'est ce qu'on appelle une affectation. En anglais normal ou en mathématiques
irrégulières, un être humain, lorsque vous voyez le signe égal, cela signifie que tout ce qui se
trouve gauche a la même valeur
que ce qui se trouve à droite. Cependant, en programmation, lorsque
vous voyez un signe égal, cela signifie que tout ce qui
se trouve à droite est affecté à ce qui se trouve à gauche. C'est donc notre variable. Nous attribuons le chiffre
cinq à la variable. Cela signifie que l'inverse ne sera pas vrai si j'écris ceci en code, je vais juste avoir une erreur
parce qu'il n'y a aucun moyen. Je vois que ces
deux-là sont équivalents. En anglais normal ou en langue humaine
régulière. Cela
serait probablement acceptable, mais pas dans la programmation. Déjà explorés en entier, nous
attribuons des valeurs, nos variables. Et si nous voulions
le faire en une seule ligne, on peut facilement dire que int
num est égal à cette valeur. Par défaut, une fois la
variable créée, elle est créée avec cette valeur. Examinons maintenant les opérations
arithmétiques. opérations arithmétiques
seraient liées au que nous fassions des mathématiques. Je vais faire norm1, lui donner une valeur de quelque chose de
aléatoire 11 et num2, donnons-lui une valeur de 12. Merci. Visual Studio. Vous voyez ici, c'est juste un
cadeau qui continue de donner. Cependant, ce n'est pas
ce que je veux cette fois-ci. Lorsque nous voulions faire des mathématiques, nous avons la possibilité de
faire le même type de maths que celui auquel nous sommes habitués dans notre vie
quotidienne normale, n'est-ce pas ? Donc, si je voulais en faire plus, oubliez pas que j'ai dit que vous pouvez
effectuer différentes opérations. Nous pouvons facilement ajouter
num1 plus num2. Des maths simples. Si je demande à quelqu'un si j'ai écrit un programme de calcul et que c'est une bonne activité pour vous. Écrivez une application
qui accepte deux nombres et qui
effectue des ajouts. Vous leur demanderez
d'entrer dans le numéro un et de le transformer en num2. Et puis vous
verriez num1 plus num2. Ensuite, proprio a
une autre variable, int sum est égal à num
plus num1 plus num1 plus num2. Les mathématiques sont aussi simples que ça ? Donc je vais juste les
écrire à l'intérieur de cette ligne Console.WriteLine. Nous les
imprimons donc à l'écran et des lignes de code utiles. C'est une belle activité si
vous vouliez continuer correctement, et une calculatrice
après cette activité
, ce serait une
bonne pratique pour vous. Écriture d'applications d'entrée, de sortie et
de traitement. Nous pouvons faire des maths, nous
pouvons faire de l'addition, nous pouvons faire de la soustraction. Au lieu d'un signe plus. Nous avons un signe moins. Nous pouvons faire de la multiplication. N'oubliez pas que je ne fais que
dupliquer les lignes à l'aide Control D sur mon
clavier ou Control CV. Très bien, donc la multiplication est représentée par l'
astérisque, pas par le x. Très bien, nous écrivons donc un
x lorsque nous faisons des mathématiques, mais c'est un astérisque. Dans la division de programmation,
vous ne souhaitez pas avoir symbole de division sur votre
clavier si vous le souhaitez. C'est dans Microsoft Word,
c'est un symbole spécial, donc nous utilisons la barre oblique. C'est donc un sens de la division. norme 1 est
divisée par un outil dôme. Si nous voulons faire un module, nous utilisons le signe de pourcentage. module est essentiellement
la division ou le reste après division. Voyons donc voir. Deux divisés par trois. Divisé par trois va vous
donner quelque chose comme je suis désolé, laissez-moi voir. Cinq divisés par deux. Laissez-moi faire quelque chose de plus facile. Cinq divisés par deux
partiraient, allaient deux fois, reste parce qu'il y
aurait une surinfection. Eh bien, vous obtiendriez deux
fois le reste un, temps d'
outils restent un. Très bien. Maintenant, si vous vouliez qu'il ne
reste qu'un seul, alors vous disiez
cinq modules deux. Cela
ne reviendra que le reste. C'est ce que module point. Donc, si vous n'avez jamais interagi
avec plus de détails auparavant, c'est ce
que vous
voyez si vous
arrivez à une application
où vous devez trouver tous les numéros impairs, mettre un numéro et
savoir si C'est bizarre, alors à peu près si c'est le numéro, disons que je suis désolé. Je pense que ce
serait une bonne activité pour nous après cela. Je vais laisser
ça jusqu'à plus tard. Mais si jamais vous devez savoir si quelque chose est un nombre impair, il vous
suffit de
faire le module numéro deux. Et si quel que soit le résultat, c'est un, alors c'est un chiffre
impair, n'est-ce pas ? C'est tout ce que le module fonctionne. Alors, dans le but de
ramener le point à la maison, je vais modifier
la valeur du numéro un. Num One. Votre nouvelle valeur est la
norme un plus quatre. Très bien, donc c'est moi qui
augmente la valeur de num un. Et ensuite, si nous devions imprimer tous ces éléments et
que j'en ajouterai un ici pour voir une nouvelle valeur de
numone , quelle que soit la
norme OneNote. Ensuite,
vous verrez que ce
sont là les réponses originales. J'ai modifié la
valeur de la variable, puis nous obtenons ces nouvelles
valeurs par la suite. C'est une opération mathématique simple. Vous disposez ensuite de différentes
bibliothèques qui vous permettent d'
effectuer des opérations plus complexes. Tangente, sinus
et cosinus, etc. Mais je ne vais pas entrer dans
ceux du B6 en ce moment. Si j'exécute ce programme une
fois de plus, le
démarrage de la voiture ou le projet opérations
mathématiques si les opérateurs
ont commencé le projet, il devrait simplement recracher
tous ces calculs. Donc, l'écran de la console. On y va. Par conséquent,
la console prend parfois une pause. Il suffit de cliquer. Si vous cliquez dessus, il
fera une pause. Ainsi, lorsque vous appuyez sur Entrée
, elle continuera. Nous avons donc ici l'
addition et la soustraction, la multiplication,
la division et le module. Vous voyez ici, il est dit que
12 ne pouvaient pas entrer en 11, est-ce pas ? Ou qu'est-ce que c'était ? C'était normal, est-ce qu'
il vit divisé par 12, donc c'est 0 fois plus le module est 11, car
le reste serait 11. Ensuite, nous passons à
la nouvelle valeur de la norme 1 est 15, puis nous obtenons l'ajout, nous obtenons la soustraction
va se multiplier. Sachez, 12 sur 15 vont une fois. Si le reste est trois, module nous donne le reste. Très bien ? C'est vraiment tout pour les opérations
arithmétiques de base. Les opérateurs
d'attribution de composés de nœuds seraient comme une version
raccourcie de faire quelque chose
comme si je voulais modifier la valeur d'une variable, mais je voulais ajouter ou soustraire
de la valeur d'origine. Dans ce cas, je l'ai
augmenté de quatre. J'ai donc dit quelle que soit la
valeur de num un, n'est-ce pas ? Non, rendez-le moi et ajoutez-en quatre, puis attribuez
cette nouvelle valeur. Normalement, c'est installé,
je l'augmenterais. Si je voulais le diminuer, je ferais de même
avec un signe moins, etc. Si je voulais en
faire quatre fois sa valeur initiale,
je dirais multiplier. Maintenant, lorsque nous parlons d'affectations de
composants, il s'agirait d'une version
abrégée de ce type d'opération. Donc, si je voulais voir
augmenter le nombre un par quatre, je peux voir la norme un plus égale. Donnez-lui alors la valeur. Cela ne verrait donc pas s'accumuler. Nous avons donc ceci, c'est
ce qu'on appelle un accumulateur. Norm. Un augmente de quatre. C'est à peu près
la même chose que d'écrire ce que nous avons
fait ici. Je vais juste venir chez les adultes. Même dynamique. Très bien ? Et puis d'après
ce que vous voulez faire, comme je l'ai dit, si vous vouliez diminuer de quatre, ce
sera pour le voir. Je dis num un moins quatre. Si vous vouliez le multiplier, faites-le quatre fois
son original valide. Et ce sera le cas. Si vous vouliez le rendre quatre fois inférieur à
sa valeur initiale, il sera divisé, etc.
Donc, lorsque nous parlons d'opérations
composées, c'est ce
que nous faisons. Opérations d'attribution de composés. Le fait est qu'avec
chacune de ces opérations, nous modifions en fait
la valeur du numéro un. Il ne s'agit donc pas
de simplement imprimer, c'est le résultat
de l'opération, elle est en train de changer. Je suis donc étrange pour moi de me souvenir
de quelle séquence. Donc le numéro un commence comme 11. Nous traversons tout
cela ou le sprint, tout le résultat de l'opération. Nous n'affectons rien. Nous ne faisons pas que de nouvelles variables attribuent une
valeur à une variable, puis je vois une augmentation
normale d'une par quatre que la nouvelle valeur, nulle un à ce stade n'est
plus vivante, elle est maintenant 15. Toutes ces
opérations mathématiques sont donc relatives à une opération
normale ayant 15 ans et
num2 n'a toujours que 12, c'est
pourquoi nous avons vu
les différents ensembles de résultats
normaux à ce stade et qu'ils sont encore 15. Quand je dis que plus est égal à quatre, je ne l'ai pas augmenté de 1519 causes à ce
stade, il est déjà 15, donc j'ajoute quatre à 15. Et puis, ici, je
vais dire que je
reviendrai 15 ans, juste ici. Je suis allé voir si 15 fois
quatre, c'est 60. Sachez que personne n'a une valeur de 60. Et puis, ici, je vais
dire divisé par quatre, que je le ramène à 15. Et puis je vais
dire le module quatre. Cela signifie donc 15. module quatre serait si mes
maths me servent juste trois. Donc, ce que nous allons faire, juste pour vérifier si mes maths
sont toujours sur le point. Je vais faire notre ligne d'écriture de points de
console. Et je vais
imprimer la valeur du numéro un à chaque opération. Ensuite, nous pouvons comparer pour voir si ma bouche que j'
ai dans
les commentaires serait correcte. Très bien, réexécutons
cette application. Très bien,
c'est maintenant le moment de
marquer mon devoir de maths. J'ai donc dit que le
premier à Ockham aura 19 ans. On y va. Le deuxième
à faire serait 15, puis 60, puis 50, puis le module
serait trois. Donc non, chaque fois que nous
changeons la valeur du numéro un. C'est tout à lui, vous pouvez aller de
l'avant et modifier des variables. Si j'ai dit augmenter quelque chose, augmenter tous les prix
de cinq, alors vous savez, vous pouvez simplement voir le prix
fois égal à cinq. Il le ferait automatiquement.
13. Déclarations conditionnelles: Très bien les gars, dans cette
leçon, nous allons
examiner les
déclarations conditionnelles. J'ai déjà créé
ce projet. À l'heure actuelle. Vous devez savoir comment créer un projet. Vous pouvez donc simplement aller de l'avant, appuyer pause et continuer et
créer ce projet. Lorsque vous aurez fait cela,
nous continuerons et nous examinerons les instructions
conditionnelles. Encore une fois, avec les déclarations
conditionnelles, il s'agit de prendre une
décision. Nous avons déjà discuté du
fait que nous avons une séquence, nous avons des décisions,
mais des répétitions. Les décisions sur les
déclarations conditionnelles semblent donc. Nous disposons donc essentiellement de
trois façons principales de prendre des décisions dans la plupart des langues de
niveau supérieur. Donc, quand je dis des langages de haut
niveau, je veux dire C-Sharp, Java,
C , C plus plus, et des langages
comme Python, Ruby, etc. Donc nous avons des instructions if, nous avons des instructions switch, puis Turner opérateurs. La syntaxe est différente, mais en général, les instructions,
les instructions commutation et les opérateurs
ternaires. Ils se ressemblent tous de la même façon. la même manière en CC
plus C-Sharp Java. Ils peuvent avoir des interprétations légèrement
différentes en Ruby et Python sur
certaines autres langues. Mais une fois que vous comprenez
l'idée générale, adopter une autre langue n'est vraiment qu'une recherche
Google. Même si je suis en train de suivre
un cours précis, je voulais juste vous amener immédiatement
aux points de
réalisation. Vous appréciez ces
concepts dans C-sharp, ils peuvent être appliqués à n'importe quelle autre langue
selon vos besoins. Si les instructions
utilisent généralement ce que nous appelons des opérateurs
conditionnels. Nous avons donc examiné les opérateurs arithmétiques
et les opérateurs d'affectation. Nous avons examiné les opérateurs
conditionnels. L'opérateur conditionnel que
nous avons vu auparavant, se présente sous la forme d'
un signe w égal. Celui-là signifie des équivalents. Donc, comme je l'ai dit, le signe égal unique ne
signifie pas que les deux
côtés sont égaux. Cela signifie que j'attribue ce qui est en dessous de droite à
ce qui est à gauche. Cependant, lorsque nous voyons
le signe double égal, cela signifie que tout ce qui
se trouve à gauche
équivaut à ce qui
est souscrit. C'est un opérateur d'équivalence. Ils ont aussi moins que, nous en avons plus que. Parfois, je les
confond, alors travaillez avec moi. Nous avons moins d'égal à. Nous avons une valeur
supérieure et égale à. Nous ne sommes pas égaux, ce qui ne serait pas le symbole du signe
égal. Ce sont généralement
les opérateurs. Et encore une fois, ils
sont dans
la plupart des langues que j'
avais énumérées précédemment. Ainsi, une fois que vous comprenez
comment les utiliser, vous pouvez les appliquer
presque partout ailleurs. Commençons donc par un programme simple pour
voir comment cela fonctionne. Je vais dire « int num ». Je vais simplement demander à
l'utilisateur d'y entrer. Donc je vais juste
dire point de console, écrire une ligne, entrer, premier numéro. Et puis on voit juste que int
num est égal à convertis. Et je vais juste
écrire tout de suite parce que nous savons
ce que nous faisons. Et c'est même Visual
Studio qui m'aide. Alors, alors que vous voyez dans
votre premier numéro. Et puis nous allons
convertir en 32, tout ce qui arrive dans la console. Et il nous manque un
point-virgule sur cette ligne, c'est
pourquoi j'ai eu
cette ligne rouge. Très bien, laissez-moi voir. Visual Studio va
devoir le faire à nouveau. Non, ce n'est pas la hanche que
j'espérais pour nous. Laissez-moi juste copier cette ligne. Je suis allé appeler ce numéro un. Je ne veux pas appeler ça num2. Et je vais juste dire «
Saisissez votre deuxième numéro ». Nous demandons à l'
utilisateur un numéro d'outil. Examinons maintenant certaines déclarations
conditionnelles qui seraient raisonnables. Et si je
voulais savoir si
un engourdi est supérieur à l'outil num ? Je commencerais et je dirais
si c'est un mot clé. Mais remarquez que ce n'est pas une déclaration car je n'ai pas besoin d'un
point-virgule à la fin. Je vais donc dire que ça suggère que nulle part est équivalente à la norme à
ce que je n'y suis pas encore. Je voulais donc voir si la normale
est supérieure à num2. Puis je suis allé
démarrer un bloc de code. Qu'est-ce que j'aimerais faire ? Peut-être que j'aimerais voir la ligne de lecture du point de
console. Vous avez, vous savez,
laissez-moi rendre cela un
peu plus contextuel ou entrer le nombre de pommes. Le numéro un représente les téléchargements. Je ne l'ai pas fait. Voici un exemple de
violation de ma propre règle. Num one ne me
dit pas que cela stocke vers le haut normal
un ici dit numéro un, ce que je demande pour les téléchargements. Il y a donc une déconnexion ici, donc c'est mieux, je le
nommerais nombre de pommes. C'est donc clair. Maintenant, quand je nomme une variable et que je dois la
renommer à plusieurs endroits. Bien sûr, je peux simplement
passer en revue et copier et coller ou je peux simplement faire des contrôles et des points. Ensuite, vous verrez
l'option Renommer. De l'ancien nom au nouveau nom. Quand je clique dessus, il
va juste passer en revue et refactoriser toutes
les parties pour moi. C'est un bon conseil de
productivité pour vous. Je veux le nombre de pommes, le
nombre d'oranges. Je suis allé appeler ce
numéro d'oranges. Et puis je suis allé au même point de
contrôle et j'ai renommé NOW nombre de pommes,
nombre d'oranges. Si le nombre de pommes est supérieur à un
certain nombre d'oranges, je suis allé voir que vous
avez plus de couples. Cool, sympa et simple. Très bien, c'est
une nouvelle déclaration. Mais que se passe-t-il si j'ai quelque chose d'autre
que je voulais vérifier ? Parce que cela ne fait que
vérifier si
les conditions sont ponctuelles et qu'il ne fait qu'une
action, à cinq autres orangés
est alors que j'ai plus haut. Ensuite, je peux dire autre chose. Ce serait comme si
c'était le cas, alors faites-le. Sinon, faites-le. Je vais dire que vous
avez plus d'oranges. Si le nombre de pommes est supérieur au
nombre d'oranges, vous avez plus de pommes, sinon vous avez plus d'oranges. Mais ce n'est peut-être pas forcément le cas
car que se passe-t-il s'ils sont égaux ? Parce que je sais,
je ne vérifie
qu'une seule condition, d'accord ? Et explicitement, je ne
vois que si le nombre de pommes est
supérieur à cela, alors ce n'est pas une
hypothèse juste parce que je pourrais avoir le même nombre de pommes de
chaque côté devrait
introduire plus de conditions à ce trou. Si je vérifie, je peux avoir
une autre construction appelée L, ce qui me permet de vérifier
s'il y a une autre condition. Je peux voir si c'est
le cas, sinon, si c'est le cas, nombre d'oranges est
donc
supérieur au nombre de pommes. Ou je pouvais en voir moins que, donc j'en utilise un plus grand que déjà. Alors, laissez-moi voir. Numéro désactivé. L'opposition est inférieure
au nombre d'oranges. Je vous montre juste comment utiliser les instructions conditionnelles. Opérateurs, LLC. Si le nombre de pommes est inférieur au nombre d'oranges, nous imprimons que vous
avez plus d'oranges. Et s'ils sont égaux ? Je peux en faire un autre. Si le nombre de téléchargements est équivalent au
nombre d'oranges, nous voulons écrire un
peu plus de code. Je remarque qu'il n'est pas
illégal pour vous mettre le reste sur la même
ligne qu'une orthèse bouclée. Je suis, j'ai tendance à parler du
modèle parce
que je veux cette distinction claire alors que l'étrange commence
à un arrêt. Mais ce n'est pas au LIGO d'
écrire votre code comme ça. si c'est le cas
, je vais consoler ça. Laissez-moi voir le même nombre de
pommes et d'oranges. C'est ce que je suis allé
imprimer sur la console. C'est une décision importante. Vous voyez donc que vous pouvez prendre
une décision simple. Vous pouvez prendre des décisions complexes
à prendre en fonction de deux variables
différentes et de choses différentes qui
sont soumises à
deux considérations différentes
et qui en profitent vraiment. Ce ne sont que de grandes obligations. Y a-t-il des déclarations ? Si vous faites cela, vous obtiendrez ce résultat. C'est tout ce qu'ils sont. Maintenant veut qu'une entreprise entière crée l'application peut sembler toute belle interface
utilisateur et à quel point le ticket semble élevé. À la fin de la journée, tout se résume à un
tas de déclarations si. Si vous appuyez sur ce
bouton, que dois-je faire ? Si vous mettez cette
valeur, que dois-je faire ? C'est tout ce que c'est. C'est bon ? Donc, à la fin de tout cela, si aucune de ces
conditions n'est vraie, vous pouvez finalement faire une grosse instruction else
qui verrait entrée
non valide ou ne pourrait pas
calculer notre action directe. Vous ne voulez pas quelque chose comme
ça. Lorsque vous les obtenez, lorsque vous mettez un certain
volume et une application, j'ai quelque chose à dire
que c'est une valeur non valide. Cela signifie que tous les
énoncés qui ont été écrits ne tenaient pas compte de ce que vous avez fini par mettre, cela restera autrement. Je ne sais pas quoi faire. Je ne peux pas vous aider. Très bien. Qu'y a-t-il dans cette situation ? Nous n'avons probablement pas
besoin d'aller aussi loin, donc je vais simplement le supprimer de
toute façon parce que je pense que nous couvrons tous les résultats potentiels fonction de ce que nous demandons ici. Le nombre sera soit supérieur, soit inférieur, soit équivalent. Certes, vous pourriez
mettre dans tous ceux que j'ai créés un r égal ou
inférieur à un égal, etc. Mais nous n'allons pas
entrer dans tous ces éléments. Sachez simplement que ce
sont des options. Et c'est évident,
si ce n'est pas égal. Ensuite, ce sera
soit plus grand que r, inférieur à cela. Vous pouvez donc prendre des décisions
lorsque vous êtes dans le code que vous pouvez prendre une décision
quant au type de décision. Notre
logique conditionnelle que vous devez
mettre en place pour correspondre à la situation à laquelle
vous êtes confronté. Vous pouvez aller de l'avant et tester
celui-ci si vous le souhaitez. Vous pouvez entrer le même numéro, vous pouvez mettre deux numéros
différents. Et en fonction des
chiffres que vous avez insérés, assurez-vous que cette déclaration
conditionnelle imprime ce que vous attendez. Je vais passer à autre chose
pour changer de déclaration. Vous pouvez appuyer sur Pause, aller de l'avant
et tester et expérimenter, mais je passe à
changer d'instructions. Voyons donc que nous avons, hum, nous devons évaluer que les
watts sont dans une variable,
et ensuite, en fonction de ce qu'il
y a dans la variable, nous devons prendre de l'oxygène. Très bien ? Je vais donc vous donner un autre exemple que
je trouve pratique. Je vais demander un accord. Très bien. Je suis allé voir entrer dans note
finale et nous
allons déterminer si
vous avez réussi ou non. Quelqu'un à voir
intégrer est égal à tout ce qui est transmis
par la console. Ainsi, une instruction switch commence
littéralement
par le commutateur de mot-clé. Ensuite, nous ajoutons la variable que nous
allons évaluer la note. Cela ne se limite pas aux entiers. Cela peut être avec ficelle, peut être avec charge,
peut être avec n'importe quoi. Parce que même lorsque nous acceptons le formulaire
et que nous avons dit MRF, j'aurais pu facilement mettre
une déclaration de commutateur R&D si déclaration pour voir si
m puis imprimer le repas, si F puis imprimer
femelle ou changer, semblable à ce que
nous sommes capables de faire. Je
vous montre donc que ce n'est pas limité aux entiers. Je fais juste cette pièce. Je peux donc dire quelque chose
comme le commutateur, je peux spécifier un cas CC ou Visual Studio
attend que je décroche. Et continuellement, je peux dire cas 0. Que dois-je faire ? Ligne d'écriture point de la console, vous avez échoué. Message simple et sympa. Ensuite, je dois mettre fin à
chaque cas par une épidémie. C'est presque tout. Très bien. Quoi que vous fassiez
entre ce deux-points et
le saut de mot-clé,
c'est
ce qui sera exécuté si c'est le cas, où nous examinons
la valeur de votre grille. Grid n'était probablement pas
un bon exemple car le cas
doit être très précis. Donc, contrairement à l'énoncé if
où je pouvais voir comme cela plus grand que cela ou le script et c'est
que je dois être
spécifique avec une valeur. Je ne peux donc voir que les touches 0. Dans ce cas, je peux
dire une clé ou une boîte. Et bien sûr,
quelle que soit la valeur que j'utilise, c'est par rapport à ce que
je cherche. Ici, je dirais
Console.WriteLine, vous avez dix points. Si la valeur est dix
, elle ira ici. Si la valeur est 0,
elle s'y rendra. Mais si ce n'est pas dix, ce n'est pas 0 et il s'agit
d'une validité qui
n'est pas prise en compte dans les cas, nous voudrions vous
donner cette valeur par défaut. Par défaut,
c'est ce que je vais faire quand tous les autres champs. Très bien, donc casser,
console.WriteLine, notes non valides. Donc, si nous entrons 1 mille je, nous n'avons pas poursuivi le point 1 mille à l'intérieur
de tout cela, alors nous passerions à la
valeur par défaut qui serait comme l'
instruction else par défaut, le fourre-tout. Aucune autre condition n'a été remplie, alors faites-le simplement par défaut. C'est ce que le mot clé est ici. Si je voulais que notre plage soit à l'intérieur
de mes instructions de commutateur, ce qui serait
plus logique ici, étant donné que le degré
est généralement compris entre 0 et
60 pour l'échec, puis
6060 à 100 pour la pause. Ensuite, la valeur par défaut représenterait tout ce qui est en dehors de 0 à 100. Alors, vous voudriez probablement
faire quelque chose comme des clés, int. Il suffit de choisir une variable quand. Alors vous pouvez voir ici,
voyons, c'est génial aujourd'hui. Désolé, la valeur est inférieure ou égale
à 60. Très bien. Ce point qui vient d'
augmenter, n'est-ce pas ? Je suis sûr que vous
comprenez déjà comment faire clés par rapport à une seule valeur. Si vous
vouliez vérifier 102030406998, vous n'avez que dix clés, n'est-ce pas ? Que voulez-vous écrire ? Break, cas 20,
etc., etc. Et vous continueriez,
si vous vouliez qu'ils partagent le même bloc, alors vous
disiez simplement comme les clés 101112 et tous ces cas
utiliseraient simplement ce bloc de code. Donc oui, il est débloqué, mais il n'y a pas de parenthèses ouvertes
et
fermées comme si vous devez changer. C'est juste le côlon. Tous ces éléments
partageraient tout ce qui se passe ici
avant cette pause. C'est une façon de faire en sorte différentes conditions
pour différentes valeurs partagent la même chose. Bien sûr, ce sera
fastidieux si vous vérifiez entre 0 et 60, car cela
signifierait que vous devez avoir 60 cas. Le cas 61 est compris entre 0 et 60
pour vérifier la défaillance. Ce ne serait pas pratique. Ce que je vous montre maintenant,
c'est comment vous pouvez faire comme notre plage pour un
certain nombre de valeurs. Ici, je
vais voir l'affaire. Et puis int n. Donc n est comme dans représentation
en cours de processus de la valeur que nous évaluons. Et puis vous verrez
quand je pense que ces accolades sont facultatives, si elles sont int n,
quand ce n, quel que soit n, quelle que
soit cette valeur
, quelle que soit cette valeur et représente valeur est
inférieure à ou égal à 60, puis vous imprimez, vous avez
échoué quelle que soit la valeur. Et une fois qu'il est inférieur ou
égal à 60, alors vous effectuez un champ. Pour que je puisse maintenant
vérifier la casse int n. quand n est supérieur à 60. On peut dire que tu es passé. C'est logique. Donc
60 est la note de passage, vous pensez que 61 est le mot de passe, disons qu'il est
supérieur ou égal à 59. Oui. Très bien. Voyez s'il est
supérieur ou égal à 59. Moins ou égal à 59,
désolé, cela signifie que vous avez échoué. Toutefois, s'il est
supérieur ou égal à 60, vous faites une pause. 60 est donc la note de passage vers le haut. Cependant, si je mets
assez de milliers, ce n'est pas une valeur valide. Il y a donc une autre
situation où vous avez
parfois besoin de plusieurs conditions pour
paraître multiples dans la même décision. Très bien, ici, nous devons utiliser ce que nous appelons
l'opérateur et. Et les opérateurs le seraient, et ils ont également nos
opérateurs qui seraient RR. Donc, ce sont des tuyaux
et ce sont des esperluettes. Très bien ? Par conséquent, chaque fois que vous souhaitez spécifier deux conditions ou plus
dans la même décision, comme dans ce cas, je
voulais m'assurer qu' elle est supérieure
ou égale à 60. Il est également inférieur
ou égal à 100. Je peux donc voir quand n est
supérieur ou égal à 60 est inférieur ou
égal à 100. Je ne faisais pas l'anglais standard. Ce serait comme
dire entre 6100. C'est ce que les Andes, accord, alors quand c'est le cas, comme c'est plus de 60 ans mais
aussi moins de 100, y compris ces deux valeurs, alors nous pouvons
vous apporter tout ce qui est passé en dehors de cela.
une note non valide. Mon défi
serait donc de modifier cela pour m'
assurer qu'il
crée une valeur non nulle. Ce n'est pas négatif. Négatif serait invité
plus d'un millier est invalide. C'est donc mon petit
défi pour vous basé sur cet exemple, modifiez cette
déclaration de cas pour vous assurer qu'elle n'est pas inférieure à 100. Comme je l'ai dit, vous pouvez avoir autant de déclarations dans cette
section que nécessaire. Donc, si vous
vouliez imprimer plusieurs fois,
tant que vous le faites
avant de franchir la pause, vous n'avez aucun problème. C'est une autre façon
de prendre une décision à l'intérieur de notre application
C-Sharp. Le dernier est un opérateur
ternaire, ce qui ressemble à une version à une ligne d'une simple instruction if. Disons que je
voulais déterminer le message à imprimer en
fonction de la condition ici. Je pourrais facilement dire
quelque chose comme un message. Disons que le
message var est égal à. Et puis je vérifie l'état. Mon état serait que si le nombre de pommes est
supérieur au nombre d'oranges, alors je veux
faire mon message b. Vous avez plus de pommes. Sinon, mon message
sera que vous aurez plus d'oranges. Il y a tellement de façons
de le faire. Cet opérateur de tourneur peut
s'avérer utile de bien des façons. J'ai juste besoin d'imprimer
le message au lieu d' avoir l'intégralité de la déclaration
if ici. Si vous
pouviez juste avoir un burrito d'arrêt, pas d'inconvénient. Je vais donc rendre nos opérations
aussi simples qu'elles sont, c'
est-à-dire qu'elles sont généralement
conçues pour n'avoir qu' une seule condition afin qu'elle ne
devienne pas complexe dans son ensemble. Si un bloc qui peut vous donner plusieurs variations de
différentes anciennes colonnes, etc. Il serait juste comme,
cette condition est-elle vraie ou fausse ? Si c'est vrai, indiqué
par le point d'interrogation, c'est la
valeur que je veux placer
à l'intérieur
de cette variable. S'il est
faux indiqué par les deux-points, c'est la valeur avec
laquelle je travaille. Et cela
fonctionne pratiquement n'importe où. Si je voulais un booléen, ce dont j'aurais besoin d'un
opérateur ternaire pour Boolean. C'est une activité
pour l'époque Leto. Maintenant, je vous ai donné le défi de modifier cela pour afficher la plage. Donc, ce que j'aurais fait ici, nous dirons int n, lorsque n est
supérieur ou égal à 0, est inférieur ou égal à 59. Et c'est vraiment ça. C'est entre 059, vous avez échoué. Entre 100 ans, vous faites une pause. Et puis, comme je l'ai dit, vous pouvez
assembler les clés. Voyons donc. Je vais juste vous montrer, vous laisser un exemple
de cas simple. Disons que k est 101, qui voit la valeur. Et puis je vais juste
dire ligne d'écriture point de console. Exemple de cas unique. Si vous avez fait des cas 101, c'est un exemple unique. Cette ligne rouge est là
parce que j'ai besoin d'une pause. Bon, donc chaque cas doit être
suivi d'une pause. Vous pouvez aller de l'avant et
exécuter cette application. Nous allons être invités à entrer deux valeurs ou je suis désolé, je suis toujours sous la mauvaise valeur. Permettez-moi donc de le remplacer
par
des instructions conditionnelles et de réessayer. Ensuite, nous devons entrer
le nombre de pommes, quelqu'un pour dire dix, puis un certain nombre d'oranges
sur ce que vous voyez à 20. Et puis je reçois
le message. Vous avez plus d'oranges
parce que le nombre d' oranges était en effet
supérieur au nombre d'œuvres d'art, le nombre de pommes était en effet inférieur au nombre d'oranges. J'ai donc plus d'oranges. Maintenant, si j'entre dans la note, je suis allé à 50 ans, puis tu as échoué et tu ne savais pas. C'est le message
de l'opérateur ternaire. Permettez-moi simplement de commenter que cela
devrait éviter toute confusion. Mais essayons encore une fois. Si j'entre dix pour
les pommes et les oranges, 1010, vous avez le même
nombre de pommes et d'oranges. Merci. Et puis si j'entre 101, ça va dire
un exemple de cas unique. Encore un test. Je vais juste
commenter les opérations de relevé si les
opérations de relevé s' exécutent
sans débogage, donc elles se chargent un peu plus
rapidement dans la note finale. Si j'entre dans l'un d'eux tombe
sous quelque chose de
plus grand que cela
va voir la grille non valide. Je n'ai pas pu répondre à cette affaire. Il n'a pas pu répondre à cette affaire. Il n'avait pas besoin de cette affaire, donc il est passé à la valeur par défaut. C'est à peu près
comme ça que fonctionnent
les déclarations conditionnelles dans C-Sharp.
14. Déclarations de répétitions: Bienvenue les gars de retour.
Dans cette leçon, nous examinerons les
déclarations de répétition en C Sharp. Aucune déclaration de répétition ne se présente
généralement sous quelques formes. Nous avons une boucle for-loop, nous avons une boucle de temps. Vous avez fait une boucle en boucle. Vous en avez d'autres que je ne suis pas prêt à explorer dans
cette leçon particulière, mais je ferai des mentions
honorables. Et c'est à dire,
avant chaque boucle. Concentrons-nous
sur ceux qui sont généralement répandus dans la programmation
générale. Encore une fois, j'essaie
toujours de
vous montrer comment donner brièvement un tout pour appliquer ce que
vous apprenez ici en C-Sharp dans n'importe quelle autre langue. Pour les boucles, tandis que les
boucles font des boucles pendant que les boucles sont disponibles dans
toutes les autres langues. La boucle for-loop est ce que nous appelons
une boucle à contre-contrôle. En gros, je vais
faire une boucle pour cela de nombreuses fois. Il y a donc un compteur qui frappe le nombre de
fois que vous avez déjà couru et combien de fois
il a besoin de courir. Ensuite, nous avons ce que nous appelons la
boucle contrôlée par condition. Il s'agit d'une pré-vérification, ce qui signifie qu'il
vérifiera la condition. Nous avons donc simplement examiné les conditions résolues ou les déclarations
conditionnelles. Il va donc
vérifier Deshawn. Et ensuite, si cette condition
n'est pas vraie, elle ira de l'avant
et fera la boucle. Et il continuera à vérifier
la condition jusqu'à ce que ce soit
vrai, puis il s'arrêtera. Et puis nous avons le do-while, qui n'est qu'une boucle
inversée, vraiment là où la vérification
est effectuée à la fin. Il le fera donc au
moins une fois, puis vérifiera ensuite si la condition est
remplie, puis continuera. Pour chacun, comme je l'ai dit, mention
honorable. Nous allons simplement examiner un
exemple rapide de cela plus tard. Examinons une
syntaxe à quatre boucles pour une boucle for est quatre, puis ouvrons et
fermez les parenthèses. Et puis on dit int. De manière générale, dans la plupart des exemples que
vous verrez sur Internet, vous voyez que la variable utilisée n'
a aucune pertinence en utilisant la lettre i n'a aucune
pertinence pour le tribunal. J'aurais pu utiliser Norm, j'aurais pu utiliser le compteur. Il s'agit simplement d'un point de référence pour la
variable qui va suivre le
nombre de fois qu'
elle va s'exécuter. Je suppose que c'est la lettre la plus
couramment utilisée parce qu'elle représente
le mot incrément. Les incréments signifient à chaque fois. Je peux donc en être sûr
pour des incréments. Mais il pourrait également être incrément
égal à un droit. Je vais continuer avec moi uniquement parce que c'est la variable la plus
couramment utilisée, mais encore une fois, elle n'a pas
vraiment de pertinence syntaxique. Nous définissons donc une variable, généralement un entier, nous
lui donnons un nom, puis nous lui attribuons la
valeur 0 au début. Remarquez que Visual Studio est en train de le compléter automatiquement pour moi, mais je veux que nous comprenions correctement
chaque composant de
ce code. Je ne vais donc pas
compléter automatiquement avec
le type et expliquer au
fur et à mesure. Ce premier bloc
définit donc la variable dont
nous avons besoin en tant qu'incrémenteur. Remarquez qu'un point-virgule le termine. Le deuxième bloc sur
mobile à taper représente la valeur à laquelle je voulais
être lorsque nous quittons la boucle. Je peux donc dire que j'ai
moins de cinq ou dix, quelle que soit la valeur que j'y mets. Si je voulais courir cinq fois, je vois moins de cinq fois. Non, pourquoi cela ruinerait-il cinq
fois même quand je dis j'ai moins de cinq fois parce que
je commence mon contact 0. Donc, si vous deviez le
faire sur vos doigts, je vais lire
ici pour que nous puissions
le voir aussi clairement que possible. 012345, c' est 123456 fois. Vous voyez que si je
commence à compter de 0 et que je monte
au chiffre cinq, c'est en fait six. C'est pourquoi je dis qu'il
doit être inférieur à cinq. Donc, le moment où il frappe
cinq signifie que
je dépasse mon nombre de points. Donc 010 est un, c'est deux,
trois , quatre, cinq. Lorsque les incréments
qui modifient les cinq, il va se rendre compte que cinq ne sont plus
inférieurs à cinq. Vous voyez ce que je vois ? À ce moment-là, je voulais sortir. C'est donc la
condition de sortie de la boucle. Je voulais courir de 0 à quatre, ce qui serait 12345 fois. Donc, si je
voulais qu'il tourne dix fois, il sera entre 0
et moins de dix. Pour que vous puissiez comprendre
pourquoi nous commençons à 0 et que nous voyons
moins que le nombre souhaité. Il y a différentes
façons d'écrire ceci, mais en général, c'est ainsi que vous le
verrez écrit. Je m'explique donc facilement. Comprenez pourquoi elle commence à 0, notre flèche blanche au lieu
de moins que le nombre. Très bien ? Non, le prochain pâté de maisons. C'est notre incrément où tout ce que nous
avons à dire, c'est moi plus. Nous avons donc examiné plus tôt les opérateurs
d'affectation composée. Ce sont des accumulateurs, ce qui
signifie que vous
ajoutez n' importe quelle valeur à l'origine de la valeur et que vous
remettez une variable. Il s'agit d'un incrémenteur qui, par défaut, voit simplement plus un. C'est presque la
même chose que de voir, est censé être
égal à moi plus un,
ce qui, si nous utilisons notre technique d'accumulateur je suis plus égal à un, ce qui pourrait également être écrit
plus égal un est égal à un signe, qui peut également être
écrit comme un plus. C'est tout ce que nous faisons. Nous ne faisons que
l'augmenter d'un à chaque fois. C'est pourquoi j'ai dit que c'est
un cône contrôlé. Maintenant, ça pourrait être moi plus deux. Je suis désolé, si je le voulais, il est augmenté de deux. Je dois dire que
je suis plus égal à deux. Il augmenterait de deux. Donc, si vous vouliez sauter en deux comme un compté de 0 à dix, alors cela ruinerait 0, puis deux,
puis quatre , puis six, le moment où il serait
quantitatif, il sauterait. Je ne fais que vous montrer
les différentes itérations, mais à un
niveau très élémentaire, de
plus, encore une fois, je n'ai
pas cette importance. Cela pourrait être normal,
cela pourrait être contraire. Et si je disais la variable de
transit du côlon ici, cela signifie
que
tout ce que j'avais comme iodixanol par rapport
au compteur de mots. C'est donc une boucle for dans
la plupart des langues de haut niveau. Très bien, je vais
continuer avec I. Si je fais la
ligne console.log à l'intérieur de cela, je peux imprimer ça, vous savez, je suis en boucle. Je ne fais que sprinter
la ligne dans laquelle je suis. On s'attend à
ce que cela imprime autant de fois
que je l'ai défini, soit entre
0 et 10 ou 00 à neuf, ce qui serait dix fois ce que j'ai mis à l'intérieur
de ce bloc, seraient répétés
autant de fois que nous l'
avons défini ici. Cela signifie que si je veux faire
quelque chose après la boucle, je dois le mettre
hors de ce bloc de boucles. Ici, je peux voir la ligne de lecture des
points de console et nous allons simplement imprimer une ligne vide en
ne mettant rien là, elle va juste
imprimer une ligne vide. Et puis, dans cette ligne,
je vais juste dire qu' une boucle for est terminée. Je voulais imprimer
cette ligne dix fois. Et puis, à
la fin, nous allons dire qu'une boucle for est terminée. Changez donc vos projets, bien
sûr, et lançons. Et puis quand il faut accuser, on voit ici 12345678910 fois, puis la boucle est terminée. C'est donc ce qu'apporte la
répétition, car si je voulais l'
imprimer dix fois, j'aurais dû écrire dix fois la ligne fixe de la
console, ce qui n'est pas pratique. Si je voulais l'augmenter,
je devrais revenir en
arrière et l'écrire beaucoup plus de fois dans une boucle for-loop, je peux simplement changer cela par 20. Il a ruiné 20 fois 25 pour le
faire courir 25 fois, cinq fois pour le faire fonctionner
et moins de fois, n'est-ce pas ? Mais juste pour d'autres
contextes, je vais vous montrer
quelle est la valeur. Je vais donc charger la console pour imprimer la
valeur du compteur. Je voulais dire deux-points de
contre-valeur. Et puis je vais juste
interpoler ou je variable, ce qui est notre compteur. Alors rappelez-vous que
chaque fois que cela augmente et qu'
il reviendra vérifier. L'augmentation
m'a-t-elle fait dépasser le nombre ? Si ce n'est pas le cas, exécutez tous les commentaires ,
Buck, ont un nombre dépassé. boîte est nulle. Ainsi, chaque fois qu'il ruine,
il s'incrémente et vérifie, augmente et secoue. Vous allez donc
voir qu'il s'exécute entre la valeur initiale de 0 et la valeur de quatre, car à cinq ans, cela
contreviendrait à cela. Essayons ça. Très bien, donc je passe de 0 à 5 maintenant, vous voyez que
la première ligne a besoin de 0, puis elle est allée de l'avant. La deuxième course est 0, je suis désolé, 1D et
2D et 3D et 4D. Et au moment où vous auriez
augmenté à cinq, il a sauté et ensuite passé
au reste du code. Et c'est presque
tout ce que fait notre for-loop. Chaque fois que vous avez
quelque chose que vous voulez répéter pendant un certain
nombre de fois, la boucle for est votre meilleure chose. Très bien, quelqu'un pour commenter
ça juste pour l'instant. Et ensuite, nous
sauterons à la boucle de while. La boucle while va avoir une syntaxe légèrement différente. Premièrement, je suis allé vouloir lui donner une forme de comptoir. Il existe donc un certain nombre d'
applications pour la boucle while. Laissez-moi
commencer par la syntaxe. Tout d'abord, vous voyez un moment, puis vous lui donnez une condition. Nous avons donc déjà
examiné une condition, même type de
déclaration de condition avec moins de, supérieur à etcetera que
vous utiliseriez dans une
instruction if est la même condition vous utiliseriez à l'intérieur du tandis que. Je vois bien qu'une variable
appelée n est inférieure à cinq. Voici pourquoi je disais que je vous
donnerais le comptoir
parce qu'il y a moments où vous vouliez
faire quelque chose pour un nombre fixe de fois,
vous aurez besoin de camionner que
le nombre de fois où vous doivent créer manuellement une variable. C'est que vous utilisez un compteur 0. Ensuite, vous allez le
donner à une condition. C'est presque comme ce que nous avons fait
entre ces deux parties. Ensuite, nous devrions
faire cette partie en dehors la petite section de la boucle. Laissez-nous donc aller de l'avant. Je vais
vous montrer les deux façons. Je vais juste
vous en montrer un quand il remplit la condition en fonction de
certains éléments par rapport à un, nous devons le faire de manière
contre-contrôlée. Disons que je veux une ligne d'écriture de points de
console. Et je voulais voir, me
donner un numéro, un numéro d'entrée. Très bien, alors je
vais laisser n obtenir cette valeur provenant de la ligne de lecture de
la console. Très bien. Je demande à l'utilisateur une valeur. Je prends les commentaires. Et puis je vais
imprimer à la fin de ce
que vous avez entré. Vous avez saisi n'importe quel
numéro que vous avez saisi, qui est n, inscrit sur
le signe du dollar. Nous obtenons donc une
interpolation d'entrée qui fonctionne. ne s'agit pas d'une situation
contraignée. s'agit d'une situation
où il s'agit de vérifier si n est inférieur à cinq. Bien que cette condition soit vraie, veuillez exécuter la boucle. Egen commence à 0 heures. Donc, quand il fera cette vérification,
ça va dire, eh bien, accord, je suis allé exécuter ce code. Si n répond toujours la condition après l'
impression a dit à l'écran, alors je suis allé le réexécuter
et il
continuera à l'exécuter jusqu'à ce
que cette condition soit remplie. s'agit donc pas d'une situation
contre-contrôlée. Parce que si je saisis 100 numéros qui sont tous inférieurs à cinq, cette boucle
s'exécuterait
continuellement jusqu'à ce
que je rentre quelque chose de plus de cinq. C'est-à-dire qu'il s'agit d'une boucle
contrôlée par condition. Il peut arriver
que vous ayez besoin
de ce contrôle. Et à ce moment-là, au
médecin, mettez votre étape manuelle pour augmenter
votre compteur en conséquence. C'est là que je vais augmenter le
procès du côlon en conséquence. Juste pour m'assurer, bien sûr, je ne prendrais pas les commentaires des utilisateurs. Alors permettez-moi de garder que la
situation contrôle la condition et laissez-nous tester. Ici, nous voyons que les
entrées sont des chiffres. Rappelez-vous ce qui
va fonctionner pendant cette E15 et
a commencé à 0. Et si je vous mets en un, ça va dire que
vous en avez entré un, mais il a vérifié à nouveau
et voit que, d'
accord, je suis toujours en boucle. Entrez un autre numéro deux. Et puis, pour
autant de numéros que j' entre moins de cinq, il continuera toujours à
boucler et à s'asseoir. Il ne me laissera jamais
faire quelque chose qui viole la condition
qui a été codée. Au moment où j'entrerai
dix, il sortira. Ici. Je peux voir alors que la boucle terminée parce que j'ai finalement entré quelque chose qui
a apporté la condition. Très bien, c'est à
peu près tout pour la boucle While. Donc, la boucle while
resterait dans
une boucle infinie. Je ne sais pas si vous avez déjà entendu
cette expression. Une boucle infinie, vous l'avez
probablement déjà entendu
dans un film. Mais c'est ce que c'est. mal construite
et une boucle peut se
retrouver dans une boucle infinie où cette boucle ne
s'arrêterait jamais et pourrait même avoir de graves conséquences
sur votre système. À long terme. Vous voulez toujours vous
assurer que vous remplissez cette condition. Ou plutôt, vous écrivez la condition de manière
à ce qu'elle puisse être remplie pour laisser la boucle sortir. Il s'agit d'une condition de sortie. Regardons maintenant le do-while, dont je n'ai pas mentionné n'est qu'une version inversée
de la boucle while, mais il fait la vérification
à la fin, n'est-ce pas ? Je vais donc
prendre notre variable appelée n, réinitialiser à 0. Et puis je vais voir, est-ce qu'ils ouvrent un pâté de maisons ? Très bien, c'est là que
la syntaxe est différente. Nous disons d'ouvrir le bloc
et ensuite nous disons pendant que je, alors nous avons la condition
n est inférieure à cinq. C'est à peu près accroché. Permettez-moi de commenter cela pour l'instant. Nous avons donc une variable et la même manière que nous devions obtenir la variable et obtenir
le conditionnement. Nous devons faire la
même chose ici, sauf que la condition
est à la fin, qui signifie qu'il fera
toujours cette partie en premier, quelle que soit la
condition s'il s'agit de nœuds METAR, il le fera à au moins une fois. C'est ce que nous
appellerons ça après la vérification. Il est ensuite vérifié. Si nous utilisons le même
code que le faire,
alors que, désolé, à l'intérieur
de la période de travail va le faire. Ensuite, il
va vérifier si n était encore inférieur à cinq. Essayons donc. Un. Vous voyez ici, il saute. Il me demande un numéro. Si j'entre dix, ce qui est supérieur à cinq, il va imprimer,
puis il
va vérifier et voir
que je l'ai dépassé. Alors, ne le faites plus maintenant. C'est presque tout ce qu'il y a. Dites si j'avais défini cette
valeur à dix au départ, qui enfreignerait évidemment cette condition et une flèche. Et il va quand même me
demander une valeur pour n. Parce qu'en ce qui
concerne, il doit le faire
au moins une fois. Je ne l'ai pas fait. Si je change ça par deux, ça va toujours
être dans la boucle car maintenant n est moins de cinq. Si je le change à quatre et qu'il va
continuer à me boucler jusqu'à ce que je dépasse la condition. C'est un moment de travail ? Non, nous avons
regardé la boucle « do-while », « while » et « for ». La boucle for each
ressemblerait à ceci, mais elle est généralement
utilisée pour
les listes sont des collections que nous
allons examiner plus tard. Mais en gros,
pour chaque article chaque tranche ou chaque
objet de notre collection, c'est
ce que je voulais faire. Cela est donc utile lorsque vous ne savez pas forcément combien de fois vous voulez le faire et que vous
n'avez pas nécessairement une condition pour vous arrêter. Vous pouvez simplement utiliser le pour
chacun pour dire simplement passer par chacune d'elles au lieu de la
collection et faire cela, mais nous
examinerons cela plus tard. Je ne suis donc pas comme je l'ai dit, c'était vraiment une mention
honorable. sais, j'ai abordé cela très rapidement pour
chaque boucle, il suffit de savoir utiliser Visual Studios, de
code et des suggestions. Le problème, c'est que vous pouvez rapidement
commencer à taper et
ensuite appuyer deux fois sur Tab. Il générera ce
bloc de code pour vous. La même chose à faire, la même chose pendant un certain temps. Je suis à peu près ça
marche pour chaque pâté de maisons. Si j'ai dit si Tab deux fois, cela fait apparaître cette instruction
IF, si je dis basculer
deux fois, il le fait. Donc je vous montre
qu'après coup
parce que je voulais vraiment
avoir la pratique de la dactylographie, a-t-il dit à partir de zéro, vous pouvez l'apprécier. Et certains de ces
raccourcis ne
pensent pas qu'ils fonctionnent aussi bien
dans Visual Studio Code. Il est donc toujours bon de comprendre tout le type ou la
syntaxe quel que soit le type. Très bien. À ce stade, je vais juste
mettre cette dernière console
plutôt qu'après le travail
comme je l'ai fait pour le moment et les quatre. Et c'est tout pour en apprendre
davantage sur les déclarations de répétition.
15. Méthodes - Void: Salut les gars, bienvenue.
Dans cette leçon, nous allons examiner les méthodes ou les fonctions. Je vais donc utiliser les deux mots de manière
interchangeable parce qu'ils représentent le même type de construction que celui dont nous
disposons en C-Sharp et dans de nombreux autres langages de
programmation. ce stade, j'ai déjà créé le nouveau projet pour que
vous puissiez cliquer sur Pause, aller de l'avant et ajouter le
nouveau projet de console, et nous l'appelons méthodes. Donc, une fois que vous avez terminé
ce week-end, continuez. Nous avons donc deux types
de fonctions dans la plupart des
langages de programmation, sinon tous, et ce sont des fonctions nulles
et des fonctions de retour de valeur. Évitez donc le formulaire
affiché, terminez une tâche, puis se déplace
le long de nos sorties. Ensuite, la valeur renvoyée
achève une tâche. Oui, Qu'est-ce que c'est aussi s'assurer qu'il renvoie un résultat. Vous pouvez toujours
récupérer quelque chose de la fonction de
retour de valeur. La fonction vide
ne renvoie rien, suffit de faire quelque chose
et de bouger. Lors de la définition de fonctions,
vous pouvez vous retrouver avec trois parties et de nouveaux contextes BSN vous n'en avez peut-être pas
nécessairement besoin. Vous vous retrouverez
avec un prototype, qui
définit essentiellement la fonction un en-tête de fonction
pour voir le type, s'il s'agit d'une valeur nulle
ou d'une valeur renvoyée, ainsi que le nom et
les paramètres à attendre. Très bien, c'est ce que possède
le prototype. Ensuite, vous avez la définition, qui contient généralement le code. Il contient le
bloc de code correspondant à la mousse affichée. Que fait la fonction ? Il exécute quelque chose. Ensuite, à l'intérieur du code, nous aurions l'appel de fonction. Il s'agit du code qui
fait exécuter une fonction. Parce que notre fonction
restera là et sur la qualité
ne fera rien. C'est donc vraiment ce que sont
les collègues de fonction. Nous avons donc le
prototype qui ressemble à une définition,
qui est en quelque sorte
optionnel, vous n'aurez peut-être pas nécessairement à faire un prototype, mais vous avez toujours une définition et vous
avez toujours
un appel de fonction. Et c'est l'élément clé. Maintenant, nous avons
interagi avec quelques fonctions
pour savoir
dans notre code où nous avons écrit
Hello World et tout, notre ligne d'écriture,
c'est une fonction. Très bien, donc quand
vous dites une ligne d'
écriture point de console , c'est une fonction. Le nom de la
fonction est ligne droite. Et je pense que par définition,
ce serait en fait une fonction vide parce qu'elle ne retourne rien vers la ligne d'écriture de points de
console. Et puis les fonctions sont généralement caractérisées par les parenthèses ouvertes
et proches. Au moins, c'est un appel de fonction. C'est donc ce que nous
appelons cette fonction. Sa définition se trouve quelque part
à l'intérieur de ce fichier de code. Et si nous le regardons, vous verrez qu'il s'agit
en fait d'une fonction vide. Très bien, vous voyez que tout
cela se réunit. Par conséquent, WriteLine est en fait une fonction void
par opposition à la ligne de lecture, qui est une autre fonction du fichier de code, qui
prend des paramètres. Bien sûr, mais celle-ci est
en fait une valeur renvoyant, ce qui renvoie une chaîne. Lorsque nous parlons de ce type, il est nul ou
il a un type de données. En tant que scientifiques, nous
connaissons les types de données. Il peut renvoyer une valeur d' un type de données spécifique après
avoir effectué sa fonction
comme le fait la ligne rouge. Ou ça peut être nul là où
il fait juste quelque chose, ne renvoie aucune valeur. Vous vous demandez, d'accord, alors
pourquoi avons-nous besoin de fonctions ? Eh bien, les fonctions sont un bon moyen d' empaqueter du code ou du
code répétable que nous devons répéter. Très bien, donc l'un
des fondements de la
programmation est sec. C'est un principe. Lorsque nous parlons
du principe DRY. Cela signifie que ne vous répétez pas. Dans le but de ne pas
vous répéter lorsque vous
constatez que vous devez écrire le même bloc de code pour faire une chose particulière
plus d'une fois, vous finirez par
créer une fonction. Donc, au lieu d'écrire
les quatre ou cinq lignes maintes et
maintes fois sur différentes parties de
l'application. Il suffit de le mettre
à l'intérieur d'une fonction et de l'appel si nécessaire. C'est exactement ce qu'ils ont fait avec la ligne d'écriture de points de console. ligne d'écriture de points de la console
contient probablement quelques lignes de code. Au lieu de vous demander d'écrire ces cinq lignes de
code à chaque fois, ils vous disent simplement d'
appeler cette fonction chaque fois que vous avez besoin de
cette fonctionnalité. Commençons par un
exemple de fonction vide. Et si je voulais une mousse qui
montre qu'il suffit d'amener mon genou pour
définir la fonction. Encore une fois, j'ai besoin de ce type. Dans ce cas, je ne fais que
imprimer le nom, donc j'ai juste besoin de vide. Le vide est le type. Et
puis je vais lui donner le nom,
le nom de l'imprimé. Je ne l'ai pas fait, j'ai besoin de lui dire
quels paramètres m'attendre. Les paramètres sont donc répertoriés. À l'intérieur des parenthèses. Si je n'ai pas de paramètres
que je transmets, je n'
ai pas besoin de mettre quoi que ce soit à l'intérieur des
parenthèses, mais les maladies ne
sont pas facultatives. Donc, en voyant le nom d'impression vide ouvert vers
elle, il sait que c' est une fonction, puis j'ouvre
et ferme mes accolades bouclées, ce qui me donne la possibilité de
commencer à écrire, de le regarder. Et au lieu de cette fonction, disons que je voulais rester
simple et que j'imprime mon nom, donc j'imprime
Trivago Williams. C'est tout ce que je veux que
cette fonction fasse. Imaginez donc que je devais imprimer vraies ou Williams à
plusieurs endroits. Très bien, assez juste. Mais que se passe-t-il si
je voulais imprimer tout mon nom complet ou
simplement mon prénom ? Cela signifie que dans chacun de ces endroits,
je devrais aller changer cette seule ligne
de code plusieurs fois. Ou je peux le savoir, dites nom d'impression que je peux appeler cette fonction n'importe où
dans mon application. Et puis, si j'avais besoin de
changer sa façon de fonctionner, je vais à la fonction et change le code, s'il vous plaît. Répétez vous-même. Si j'appelle ça dix fois,
ça n'a pas d'importance. Tout ce qu'il va faire, c'est aller à la fonction
sur Meet the call. Si vous avez essayé de faire
un appel de fonction pour une fonction qui
n'existe pas, vous obtiendrez bien sûr une erreur. Très bien, vous pouvez
toujours avoir une fonction qui existe et elle n'est jamais appelée. Ensuite, ils partageront
cette ligne verte, qui dit simplement qu'elle est
là, mais qu'elle n'est jamais utilisée. Êtes-vous sûr d'en avoir besoin ? Très bien. Il y a un autre principe. Vous n'en aurez pas besoin, ni YAGNI pour faire court. Vous n'en aurez pas besoin. Dans ce principe. En gros, disons, n'écrivez pas de
code dont vous n'avez pas besoin. Si vous n'avez aucun but
pour cette fonction, ne l'écrivez pas,
ne l'avez pas là. Encrassement de votre fichier de code parce que vous allez l'utiliser. Bon, revenons donc
au film Shaun Coûts. Nous avons donc la fonction ici. L'appel de fonction
n'appellera que le nom de la fonction à côté
des parenthèses avec tous les paramètres nécessaires. Dans ce cas, je
n'ai pas de paramètres définis, donc il n'y a pas lieu
de passer cet appel. Très bien, je n'ai pas besoin de
tracer en passant une valeur ici,
tout comme Console.WriteLine,
il y a des moments où une nouvelle ligne d'écriture point de
console sans
aucune valeur n'est transmise. Et il y a tendance lorsque nous consolons cette ligne rouge avec une
valeur transmise. Très bien, donc c'est une chose
qui n'est pas expérimentale. Il s'agit d'un paramètre qui ne prend
pas de paramètres. Nous examinons cela dans quelques uns. Donc, si j'exécute
cette application, elle devrait simplement
aller de l'avant et appeler ma fonction de nom d'impression. On y va. C'est donc le fichier de code principal, quoi que ce soit que nous écrivons ici, oui, mais quelle que soit la méthode que
nous mettons ici qui n'obtiendra ce bloc de code qu'une fois
qu'il aura assez de fonction dans R, fois que c'est un définition
d'une fonction, n'est exécutée qu'en
cas d'appel de fonction. C'est pourquoi nous voyons des
crevettes ou nous les imprimons. Cependant, si je devais supprimer cet appel de fonction et
réessayer, rien ne se passerait. Rien ne se passerait littéralement parce qu'il
n'y a rien à se passer. Il existe une fonction
qui n'a jamais été appelée. Il n'y a pas beaucoup de code
à exécuter nulle part. C'est tout ce que vous appelez ou que vous interrompez avec votre fonction. Très bien, donc je vais
laisser les exemples de méthodes de vide sont des fonctions vides ici. Vraiment et vraiment. Encore une fois, il ne fait que faire quelque chose. Il ne renvoie pas de valeur. Donc, si vous vouliez, disons, une fonction vide pour effectuer des calculs, comme des nombres impairs, vous avez donc situation dans laquelle vous
voudriez passer un paramètre. Très bien, disons que vous
voudriez voir une audition. Nous
parlions de la possibilité de faire une calculatrice plus
tôt. Que se passe-t-il si vous ajoutez un ajout vide
et que vous vouliez ajouter deux nombres pouvoir insérer des paramètres
et relancer. Le paramètre Allah est une variable que vous définissez à l'intérieur des
parenthèses dans la définition de la fonction. Et la valeur
transmise sera
affectée à cette valeur dans le
même ordre que celui défini. Permettez-moi de le faire dans
un exemple de code. Disons que nous devons
prendre deux chiffres. Je prends int num1, int num2. Ensuite, je veux imprimer à
l'écran la somme. Alors regardez, oh, nous pouvons juste rendre ça beau et
professionnel. Je suis donc allé utiliser l'interpolation
et en mettre une normale. Et l'outil de norme est, alors je peux juste mettre dans
le numéro mathématique 1 plus num2. Nous ne retournerons donc pas de valeur. Je vais juste
appeler la fonction, lui donner deux valeurs, puis ça va faire le processus et
imprimer l'écran, mais ça ne retourne
rien pour appeler ça, Non, je dirais ajout. Et en passant deux valeurs. Et remarquez maintenant
que je fais entrer cela dans l'indice, mettant une valeur
pour num one side, faites ça et appuyez sur la virgule. Et puis en voyant mettre
une valeur pour l'outil num, je le fais et je continue. Et puis D2L, je l'
appellerais si nous devions
renforcer un peu cela, pas d'entrée utilisateur antique
pour num1 et num2. Et ce que je vais faire, c'est
revenir à l'un de nos exemples précédents où
nous avons demandé deux entrées. Je crois que vous l'avez fait dans
notre OK. Selon vous, quelles déclarations
conditionnelles demandées pour nombre d'oranges et le
nombre de pommes ? J'essaie juste de travailler
plus intelligemment, pas plus fort, non ? Alors entrez le numéro,
je vais rester simple. Numéro un et numéro deux. Ensuite, nous appelons ce
numéro un, numéro deux. Je fais donc tout
cela délibérément avec mon nom parce que je
prends des variables, je prends des valeurs de l'utilisateur. Je commence à être numéro un. Numéro deux, j'ai défini dans ma fonction
qui prend num1, num2. Cependant, tout ce que j'ai à
faire, c'est passer la valeur du
numéro un comme premier verbe et consacrée pour la normale
au deuxième verbe. montre donc que le nom ici n'a aucune corrélation
avec ce qui est ici, car je peux transmettre les valeurs
littérales un pour num 12, pour num2, je peux passer
ma variable. C'est ce que j'ai obtenu de
l'utilisateur pour le numéro un et de la variable
pour le numéro deux. Le fait est qu'au moment où il cet appel et passe, ce qui était le premier dans la
liste passe au lieu de
commencer par ce
parent ou une seconde dans les bandes de liste avec ce qui est
malade dans la liste. Ensuite, la méthode void va
aller de l'avant et s'exécuter. En ce moment, nous en
apprenons un, faisons des méthodes nulles pour
les définir
et les appeler, puis trois, écrire
dans nos paramètres. Donc, si j'exécute cette application, oui, elle va imprimer pour VOR car nous avons
le nom d'impression. Bien sûr. C'est ce qu'il fait. Ils remarqueraient que cela se poursuit
avec le reste du programme. Il s'est donc passé, il
a appelé la fonction, la fonction et a dit
ensuite est revenu puis a continué le nœud pour voir
Enter numéro un. Je vais juste dire dix
et ensuite entrer le numéro 20. Ensuite, il va aller
rencontrer la toux Photoshop, où je passe
en plus dans un t de bout en bout. Donc la somme de l'étain et du
Twin T est le calcul. Puis il a prétendu que Buck
réalisait qu'il n'y a rien de plus et ensuite
ils peuvent le réparer. C'est vraiment comme ça que fonctionnent
les fonctions. Imaginez donc que vous deviez écrire ce genre de logique à
plusieurs endroits. Vous ne voulez pas avoir à écrire cela à chaque fois. Ils ont demandé un num1, num2, num1, num2, num1 num2. Vous écrivez la méthode. Oui, vous pouvez demander à l'utilisateur
et vous n'avez qu'à appeler. Si vous écrivez
une calculatrice, vous pouvez créer une méthode par opération qui ferait
quelque chose de très similaire à cela. Et vous avez appelé
Operation en conséquence.
16. Méthodes - retour de la valeur: Très bien les gars, donc
nous poursuivons notre aventure dans les méthodes
et maintenons leur travail. Nous avons déjà
examiné la fonction vide, donc elle apprendra une fonction qui
ne prend pas de paramètres et nous en avons regardé une autre qui
prend des paramètres. L'essentiel des
fonctions vide, c'est qu'elles n'étaient
tout simplement pas opérationnelles
et qu'elles se terminent. Donc, si nous voulions connaître
la fin de cette opération, nous écririons simplement console.WriteLine et C
et off void function. Donc, lorsque nous appuyons sur Démarrer, il va à l'IIT
en tant que compilateur, va aller dans l'ordre dans
lequel le code a été écrit. Cela va voir qu'il s'
agit de la définition d'une méthode. Ne faites rien ici. C'est la définition d' une méthode ne faites
rien là-dedans. Cependant, la première
ligne de code que je dois exécuter est un appel de fonction, ce qui signifie que je
dois trouver cette fonction. J'aurais déjà vu sa
définition. Faites ce qu'il est dit que je devrais faire. Et puis c'est la
fin de cette fonction. Ensuite, nous continuons à obtenir
deux numéros en entrée. Une fois que l'utilisateur aura
fourni ces informations nous verrons qu'il s'
agit d'un autre appel de fonction. Il demande
ces deux chiffres. Donc il fait une pause, il va, il trouve que la fonction s'
arrête en deux nombres. C'est ce qu'il est censé faire. Et ce serait aussi
la fin de cet appel de
fonction. Très bien, donc
toutes les fonctions du vide fonctionnent. Non, nous allons examiner
les fonctions de retour de valeur. Les fonctions de retour ne font pas exactement ce que le nom suggère. Ils renvoient une valeur, quelque chose
est renvoyé à la fin. Fonctionnement souvent. Supposons que nous voulions trouver
le plus grand des trois chiffres. Donc, le plus grand sur trois. Je vais donc présenter une autre invite ici
pour un troisième numéro. Nous prenons donc le numéro
un, le numéro deux, puis nous découvrons quelle est
la somme du chiffre 12 ou est plutôt ce
qu'est la somme d'entre eux. Mais nous allons avoir ici
une troisième variable qui
prendra notre troisième
numéro à la fin de cette opération ou
au moment où elle atteindra ce chiffre. Nous devrions maintenant avoir
trois chiffres. Maintenant, je veux savoir quel
est le plus grand nombre. Je vais créer une
méthode qui va prendre ces trois numéros et
renvoyer le plus gros. Lorsque nous parlons de retour de
valeur, vous devez
commencer par le type de données. Quel type de valeur
dois-je retourner ? Eh bien, dans ce cas, si je compare trois entiers, on s'
attend à ce que je
retourne le plus gros des
trois entiers. Mon type de
retour sera donc un entier. Si je retournais le mot ou un nom,
ce serait des chaînes. La même façon de considérer le type de données
que vous devez utiliser pour votre variable
est la même. Nous examinons le
type de données que vous utilisez pour votre type
de retour à partir de votre méthode. Je vais dire int. Et puis je suis allé appeler
ce numéro le plus important. Et des
règles de dénomination très similaires s'appliquent aux méthodes, sauf que nous avons tendance à utiliser le cas pasco pour les méthodes par
opposition à CamelCase. Rappelez-vous donc que la
case Plus Co signifie que vous majuscule la première
lettre ainsi que tous
les autres d'abord sur les autres mots de
ce bloc de texte,
c'est votre saisie. Très bien ? Donc, dans le plus grand nombre. Ensuite, je vais
lui dire qu'il faut prendre trois paramètres ici, Visual Studio suggérant
que IT num1, num2, les deux boutons int allaient
introduire un troisième, int num trois, parce que
je voulais prendre trois numéros et autant de chiffres que vous avez besoin, vous
énumérez le plus bien sûr. Non, vous verrez que
j'ai déjà fait la queue ici. Je dois voir que tous les chemins de
code ne renvoient pas de valeur. J'aime donc expliquer ce que
ces différentes erreurs signifient parce que parfois ce n'est pas
très évident, ici même, ETC. Et que nous ayons
une méthode qu'il a vue est une valeur renvoyée, mais elle ne voit
rien être renvoyé. Très bien, cela signifie que nous avons besoin d'un mot-clé et que ce
mot-clé est renvoyé. Après notre retour, nous devons rester dans
ce que nous revenons. Donc ici, je vais juste vous
montrer si je dis retour 0, c'est satisfait car
0 est une valeur entière, une valeur entière, et il a l'instruction return
pour l'entier. Il s'attend donc
à ce que je retourne un entier. J'ai cette déclaration indiquant
que je retourne un entier. Si je vous mets dans une
chaîne comme mon nom, j'obtiendrais une erreur
car il ne s'agit pas d'un entier. Il est donc bon de voir que vous
ne pouvez pas implicitement convertir chaîne de
type en int y. Il s'
agit d'une chaîne, mais elle s'attend
à ce qu'un entier soit renvoyé. Ce sont des petites choses
que vous devez
surveiller lorsque traitez des fonctions de
retour de valeur. Passons donc à
un exercice rapide ici. Je vais vous montrer une autre
chose appelée « nidification », où nous avons
une structure de contrôle à l'intérieur d'une autre. Donc R1 tapez off construct
à l'intérieur d'une autre signification. Ici, nous avons une méthode, mais je vais
mettre une déclaration if parce que la seule
façon de savoir quel le plus grand nombre
ici est
d'utiliser une déclaration if ou une certaine
forme de logique de décision. J'ai
commencé par constater que le plus grand nombre
est égal à num un. Ce n'est qu'une hypothèse car l'un d'entre eux
doit être le plus important. Je vais donc supposer que
personne n'est le plus grand, mais ensuite je dois tester si le plus grand nombre est réellement
supérieur au numéro deux, numéro trois, alors si
l'un d'entre eux est plus grand
que, cela sera le
nouveau plus grand nombre. J'ai donc dit que si je l'ai dit de la même façon, si c'est le plus grand, voyons si le plus grand
est inférieur à num2, il est évident
que le plus grand
doit être égal à m2 parce que le plus grand nombre
ne peut être inférieur au nom 2. Si c'est inférieur à, alors je dois réaffecter. Know num2 assume le
rôle de plus grand nombre. Ensuite, je peux dire si encore une fois, si le plus grand nombre
est inférieur au numéro trois, Visual Studio va m'
aider à nouveau et me
faire savoir que le coordinateur est
le plus grand nombre n'est pas égal au numéro trois. Remarquez que j'ai deux déclarations. Je n'ai pas utilisé sinon, si ou quoi que ce soit parce que je
devais faire cette comparaison. Et puis cette comparaison, si je faisais une autre chose, la seule façon de procéder à
cette comparaison est que si
celle-ci n'était pas vraie, vous voudrez être
très prudent et très délibéré avec ces derniers
des sortes de choses. Si autrement signifie que je
vais le faire ou. Donc, si celle-ci est vraie, alors je n'ai pas
besoin de regarder cela parce que celle-ci était vraie. Cependant, si je fais des déclarations complètement différentes et individuelles
si, cela vérifiera cela. Si c'est vrai, il
ira dans le corps. Ensuite, il vérifiera cela. Et si c'est vrai, il
ira dans le corps. Cela veut dire que si le point
normal commence par cinq, puis il teste
si le point cinq, qui est le plus grand, c'est la valeur cinq, est inférieur à num2. Et disons que num2 était 105 c'est pas moins de 105, c'est
moins de dix, c'est vrai. Alors aucun plus grand n'obtient
la valeur de dix. Ensuite, il va continuer à dire, vérifiez si dix est
inférieur à, disons trois. S'il n'est pas inférieur à trois, cela ne sera pas
exécuté car ce n'était pas vrai. Ensuite, nous devons revenir. Si vous avez dit le plus grand, alors vous avez définitivement raison. Nous devons restituer cette valeur. Cela renvoie donc un nombre entier qui est considéré comme
le plus grand nombre. Donc, la méthode que vous nommez en fonction de ce que vous
savez qu'elle est censée faire. Oui. Eh bien, vous
devez toujours vous assurer que logique
que vous y
décrivez
correspond à l'
opération prévue et que la valeur renvoyée
correspond à l'icône attendue. Vous pouvez donc imaginer que vous avez
écrit une méthode pour calculer l'impôt de
quelqu'un
, puis vous avez mal calculé. Donc, chaque fois
que vous appelez cette méthode de calcul de la taxe, cela retournait la mauvaise valeur et vous preniez
trop d'impôt à cette personne, ne serait pas bien. Il est donc toujours
bon de comprendre quelle logique met en jeu par rapport à l'
opération en cours. Et oui, je peux m'asseoir ici et
vous montrer des exemples où
vous devez pratiquer. C'est ainsi que vous vous
améliorez dans ce domaine. Vous allez donc mieux prendre ces
décisions. Nous avons déterminé quel est
le plus grand nombre
, puis nous le renvoyons null. Je peux faire un appel de fonction
pour le plus grand nombre. Après avoir obtenu les trois numéros. Je ne peux pas simplement dire le plus grand nombre ,
puis passer le numéro un. Numéro deux, numéro trois. C'est bon ? Non, quand je transmets ça
, que se passe-t-il ? Je vais juste
appeler cette méthode. Il revient le plus gros. Et ensuite, que se passe-t-il ? Nous savons que sans
console.WriteLine, rien n'est imprimé à l'écran grâce à la ligne de lecture de la
console, rien n'est
pris de l'écran car il y a des tonnes quand il
atteint cette méthode, C'est bien de remonter des périodes, aller dans les
côtes des chiffres pour le faire. Il va renvoyer la
plus grande roue à eau. Nous devons renforcer cela
un peu plus. Je dois vraiment mettre
ça à l'intérieur d'une variable. Je peux donc savoir que C crée
une variable appelée, dans ce cas résultat, et elle sera égale
aux résultats de cet appel de
fonction. la même façon que
nous avons fait la même chose ici
lorsque nous demandons des commentaires. Nous disons ligne de lecture de points de console, ou nous avons dit que le nom de la chaîne est égal
à la ligne de lecture des points de console. Il appelle une méthode, puis elle l'assigne
de ce côté-ci. Dans le cas du logiciel,
nous devons effectuer la conversion, convertir en 32, c'
est-à-dire une fonction de
retour de valeur. Tout ce qu'il fait, c'est renvoyer
un entier, n'est-ce pas ? Même chose pour convertir
le char et en bool, etc. Il retourne tout le
type de données qu' il a dit qu'il retournera. C'est pourquoi l'affectation ou la variabilité à laquelle elle est
assignée est très importante. Donc int numéro deux est
égal à convertir en 32, C'est la méthode appel un. Mais là où passer
une autre méthode ici, cela le fera. Donnez-nous la valeur qui sera convertie et ensuite notre science. C'est donc la même
chose ici, sauf où écrire
votre propre méthode. Cette fois, je vois créer une variable de type
entier appelée résultat et assignée tout ce qui est renvoyé par cette méthode
appelée plus grand nombre, qui renvoie un entier. Très bien ? Donc, lorsque nous passons
ces trois chiffres, montez, répondez à la comparaison, retournez
celui qui est le plus important. Et quand nous revenons, cela est stocké dans le résultat. Donc non, je vois que c'est
le plus grand nombre. Je vais simplement utiliser l'interpolation
ici et voir les résultats. L'interpolation signifie que je mets le signe du dollar à l'
avant du ruisseau. On y va. Très bien, donc personne ne
va imprimer le plus grand nombre est le résultat. Non. Je vais
vous montrer une autre façon vous auriez pu faire cela. Pour utiliser moins de lignes. Vous pourriez
simplement imprimer ça. Très bien, voyons voir. On pourrait dire
point de console, écriture ligne. Ce bloc de chaîne est, puis met
cet appel de fonction à l'intérieur de la section
interpolée. Cela signifie qu'il
répondra à l'appel de fonction. La valeur est renvoyée
et cette valeur est qui sera imprimée
à l'intérieur de cette section. Je ne fais que vous montrer, je vais
toujours
vous montrer vos options. Vous pouvez le faire en
deux lignes comme celle-ci, ou vous pouvez le faire en
une seule ligne comme celle-ci. J'ai tendance à préférer utiliser deux lignes car cette forme
MY augmente la lisibilité. Je vois clairement qu'il
s'agit d'une variable. C'est ainsi que ça se déroule. Et puis cela est
toujours utilisé
par opposition à un texte plus long où je dois
mettre
de bons objectifs pour voir qu'il
s'agit d'une fonction appelée se produire à l'intérieur d'une chaîne
interpolée, à l'intérieur de cela, à l'intérieur de cela, pourquoi c'était encore du travail. Vous devez également tenir compte de
la lisibilité de votre code, car
vous pouvez l'écrire vous-même. Personne n'a l'air cool. Peut-être prendre une pause et
revenir et vous me direz
quoi, qu'est-ce que j'ai écrit ici ? Pourquoi est-ce que je l'ai écrit comme ça ? Ou quelqu'un d'autre
devra peut-être regarder votre code. Et ils ne pensaient pas
comme vous le pensiez
quand vous avez écrit le code. Il est donc difficile pour
eux de s'accrocher. Vous devez donc toujours tenir compte ces possibilités lorsque
vous écrivez votre code. Donc parfois, les choses pouvaient
être faites en une seule ligne, mais je les ai tous divisés juste
pour le voir parce que ça facilite la
digestion et la lecture. Très bien, alors
nous allons tester ça. Je vais courir
sans déboguer. Ensuite, inscrivons
plus de trois chiffres. Je suis donc allé mettre en 1056 et ça va dire que
le plus grand nombre est dix. Tiens-le non. Parce que la plus grande norme. plus grand a eu le numéro
dix au départ, n'est-ce pas ? C'était la mienne normale. Ensuite, il a dit que si dix ont
moins de cinq ans, ce qui n'est pas le cas. Il a donc sauté sur ça. Et il a dit, si dix
ont moins de six ans, je pense que ce n'est pas le cas. Il a donc sauté sur ça. Il en a donc retourné dix
puis stocké de l'étain
au lieu des résultats, qui est ce qui a été
imprimé à l'écran. C'est toute sa valeur de
retour des méthodes de travail.
17. Fonctions de manipulation des chaînes: Très bien les gars, donc nous sommes
en train de sortir des sentiers battus d'
explorer le B6 du développement C-sharp et de nous lancer dans quelques concepts plus
avancés. Et l'un d'entre eux est une manipulation de chaîne
avec une chaîne sur manipulations temporelles
D8
car ces deux types de données, apparence transparente, peuvent causer beaucoup de problèmes
s'ils ne sont pas gérés correctement. Nous allons
examiner certaines des façons
de
manipuler les chaînes. Nous l'avons fait pour nous
jusqu'à un certain point, mais nous en
regarderons d'autres. Et nous allons également jeter un coup d'œil valeurs de temps
dy dt et les garder également
manipulées. Commençons rapidement. Nous savons comment imprimer, donc nous savons comment
imprimer la chaîne. Je devrais dire imprimer à
l'écran ici, désolé, c'est la ligne d'écriture point de console. Si je veux imprimer une chose que je viens de voir, la seule variable, dans ce cas, Visual Studio m'
aide à concaténer. C'est donc en fait le
code de la seconde. Si je voulais juste
imprimer le premier thème que nous savons ce que nous venons de
dire, la ligne console.log, s'il vous plaît dans la chaîne
ou la variable, ou c'est un
flux statique que nous transmettons. Celui qui fonctionne une fois qu'il s'agit d'une variable de chaîne, franchement, il peut gérer presque
toutes les variables autant que nous l'avons vu, tous les
types primitifs simples au moins. Voici donc vos
options pour imprimer l'écran. Maintenant, lorsqu'il
s'agit de concaténation, nous savons que nous pouvons
utiliser notre signe plus. Donc, ici, je vois
Console.WriteLine, la valeur qui se trouve dans FirstName, l'espace entre les deux,
puis une autre variable. Nous savons également que si nous voulions une
chaîne statique plus la variable, nous verrions mon nom complet. Ensuite, nous serions en mesure de
concaténer la variable. Et puis, autant d'autres
variables que nous aurions besoin, nous coulons simplement avec
l'espace vide. Donc, la pertinence de l'
espèce qui
imprime, va imprimer
exactement ce qu'elle voit. Il imprime mon
espace, l'espace plein, l'espace noms est l'espace,
puis LastName, puis encore l'espace,
puis le prénom. C'est donc l'importance d' avoir ce petit
espace là-dedans. Très bien ? Non, bien que la façon dont nous
avons envisagé concaténation serait d'utiliser l' interpolation où au lieu
d'utiliser les signes plus, nous pouvons utiliser nos accolades bouclées. Nous venons de sprinter un
bloc de ficelle. Mais bien sûr,
vous remarquez que j'utilise des variables ici, mais elles sont toujours orange. J'ai besoin du
signe du dollar à l'avant. Je vais prendre note que
c'est une corde
interpolée qu'elle sache que de
toute façon voit les accolades bouclées, ça devrait être un verbe là-dedans. Très bien, donc c'est
une autre façon, car maintenant il est en train de sprinter mon espace. L'espace de nom complet est alors
l'espace du nom de famille, le prénom, le
nom de famille, le prénom. Habituellement, vous auriez comme une virgule, donc c'est Williams
coma pour VOR. Voyez que même si je tape entre
les deux variables ici et la chaîne
interpolée. Il va le voir
comme un bloc contigu, juste pour imposer les variables dont il sait
qu'il a besoin, doit être là. De manière générale, ce sont
les plus courants que l'on trouve dans l'eau et le C-Sharp. Mais l'
alternative, bien sûr, comme nous l'avions envisagée,
consistait à utiliser des espaces réservés. Nous n'utilisons donc
aucune interpolation. Au lieu de cela, nous utilisons 12 dossiers de police et
autant d'autres
dossiers de police que nécessaire. Ensuite, nous avons simplement mis en place les variables qui
correspondent dans cet ordre. Donc le prénom, puis le
nom de famille, le nom de famille ici ,
porteraient beaucoup 0, prénom comme un
espace réservé. C'est ainsi que nous pouvons gérer concaténation dans les chaînes. Non, il y a des moments où vous voudrez
peut-être savoir combien de lettres se
trouvent dans le premier thème, par
exemple, si je
voulais le faire, je voudrais trouver la
longueur de la chaîne. Je pourrais donc dire int, disons que la longueur est égale à. Ensuite, je peux
appeler la variable. Ensuite, regardez que
Visual Studio est contextuellement rempli automatiquement
dans cette formule. Il va donc dire :
donnez-moi la variable, regardez la valeur qui s'y trouve
et me dire la longueur. Mon nom contient sept lettres,
cela n'en rapporterait que sept. Il s'agit d'une propriété sur cette
chaîne appelée length. Lorsque nous entrons dans les
classes et les objets, Yolanda,
vous achetez une propriété. Alors, ne vous inquiétez pas à ce sujet. L'utilisation de ce
mot-clé vient d'être utilisée. C'est ça. Vous verrez donc
la longueur d'une chaîne. Si vous vouliez imprimer
ce cours difficile, vous disiez quelque chose
comme la ligne d'écriture de points de console j'ai utilisée juste dire longueur ou laissez-moi juste le
rendre un peu plus clair. Quelqu'un qui utilise le style
le plus ancien jusqu'à la concaténation. Cela verrait que
votre nom est. D'accord. Permettez-moi
d'en faire une phrase entière. Cela serait donc interpolé. Permettez-moi de le faire polluer. Votre nom est, et je peux mettre
autant de lettres longues. Fermez le ruisseau, et c'est tout. Il s'agit donc d'imprimer
une phrase entière avec une dab variable au
milieu d'une chaîne littérale. Passons maintenant
à autre chose. Et si nous voulions
remplacer les lettres ? Disons donc que je voulais un nouveau nom ou que je voulais
voir à quoi
ressemblerait mon nom. Si j'ai remplacé tous les
t par la clé de la lettre. Je peux voir un prénom, Dots. Ensuite, si vous faites le point, vous voyez un certain nombre de méthodes que
nous appellerons. Nous avons déjà examiné les méthodes. Comme on peut le
dire, le point de console, ligne d'
écriture est notre méthode. Vous pouvez en fait sur
n'importe quelle chaîne
variable c, point variable, puis vous
verrez un tas de méthodes. Certains d'entre eux sont
utiles, d'autres ne le sont pas. Juste pour le voir une semaine
et avoir cette propriété. Donc si je dis Remplacer, alors vous
verrez qu'il y a une méthode qu'on l'
appelle s'il vous plaît. Et il veut deux choses. Il veut l'
omble ou le personnage ancien, veut un nouveau personnage. Je pouvais voir le caractère t. Je me souviens que les caractères utilisent des guillemets
simples et qu'une seule valeur peut aller au lieu d'un seul
guillemet. Très bien ? C'est donc
son personnage. Et je veux le remplacer
par un nouveau caractère de k. Cela va automatiquement
évaluer cette chaîne
et parcourir et trouver tous les T et
les remplacer par K. D'accord, je suis allé faire une pause ici
et faites quelques tests. Changeons donc notre projet
par manipulation. J'espère que vous l'avez
déjà fait. Je suis désolé, je n'ai pas fait de points
qu'il a racontés plus tôt mais créez votre
manipulation de clustering de projet. Ou peut-être que vous l'avez
déjà créé sous un autre nom. Ce n'est pas vraiment
le gros point. Assurez-vous simplement que vous
utilisez une nouvelle méthode, plutôt
dans un nouveau projet. Alors, nous allons courir. Voici donc l'impression. Nous avons donc traversé la chaîne
en cours d'impression. C'est là. Je sais que nous avons toutes
les différentes façons dont
nous avons assombri les
concaténations coupées et
votre nom sera long de sept lettres. Et puis nous avons
remplacé par un nouveau nom ce que je n'ai pas fait de sprint il en résulte que quelqu'un
pour voir votre nouveau nom est, puis je vais
voir un nouveau nom. C'est donc l'Australie.
Encore une fois, c'est vrai. Nous avons donc votre
nouveau nom, Chris. Je n'aime pas
le son de celui-là. C'est vrai. Mais maintenant, vous voyez à
quoi ça ressemble. Donc, même si je
voulais enlever la litière, voyons l'œil. Mon nom est donc tout à fait unique
car il est vraiment trivial. Qu'est-ce qu'un œil là-dedans ? Et c'est grec et c'est un
réservoir de force. Beaucoup de gens, quand ils les appellent par leur nom,
ils m'appellent juste des ennuis. Je n'en fais pas vraiment beaucoup, mais
c'est très bien. Disons que j'ai dit un nouveau
nom, l'un est FirstName, remplace la lettre I, le personnage I par rien. Je pouvais le voir avec un espace. Parce que vraiment et vraiment un personnage ne peut pas
être vide comme ça. C'est pourquoi vous obtenez
cette ligne verte, rouge. Vous ne pouvez pas avoir de caractère
littéral vide. Et il n'y a pas de
point de voiture vide comme l'ancien est un point de ruisseau mt, n'est-ce pas ? Non, il n'y a pas de tourelle. Voyons donc, je vais le remplacer par
un espace,
donc une espèce,
en fait un personnage. Très bien, puis je suis allé voir votre nouveau nom est un nouveau nom. Voyons donc ce que cela
évoquerait. C'est là. Donc non, il y a cet
espace où on m' a dit que
l'opération de remplacement fonctionne. Très bien, alors allons-nous de l'avant. La prochaine
serait d'ajouter
vraiment et vraiment à une autre variable de chaîne qui ressemblerait cette concaténation ici
ou à n'importe laquelle d'entre elles. Parce que nous voyons que vous pouvez simplement les
combiner, n'est-ce pas ? Donc je pourrais
simplement voir var,
désolé, l'
écoute de chaîne devient si var, nom complet de la
chaîne est égal à une variable
combinée à une autre variable. Et c'est tout. Ou si je voulais simplement les
combiner sans rien entre vous avec C plus,
d'accord, donc une fois que vous avez mis un signe
plus entre une chaîne ou entre deux cordes, est-ce que ces
chaînes littérales d'air seraient des variables de chaîne ou un verbe qui,
sous chaîne littérale, cependant, la combinaison,
vous utilisez simplement ce signe plus. Cela ne
me donnerait donc pas mon nom complet, que je peux imprimer. Votre nom complet est un employé
jusqu'au nom complet. Maintenant, la prochaine option
consisterait à diviser le flux. Et vous pouvez voir
ici que j'ai commencé écrire le code
aurait une erreur. Et l'erreur est de dire qu'
il ne peut pas implicitement convertir chaîne de
type
avec ces boîtes, avec deux
crochets des chaînes régulières d'outils. En d'autres termes,
cela me
donnerait en fait une collection de cordes. Je vois donc
le nom complet. Ce sera l'espace
Williams traversé et le divisera. Partout où il y a un v. Comme de
nombreux visas peuvent apparaître dans
un bloc de chaîne, il va le
diviser en conséquence. Donc, s'il y a trois V, alors il va le diviser
à gauche de l'un des V, aux émeutes de ce V et dans la
radiation du V suivant, c'est à peu près
ce
que ça va faire . Donc, à Trevarthen Williams, il y a un VC qui se
retrouverait avec ce côté. Et de ce côté, deux cordes
ou deux blocs de cordes. Je ne peux donc pas stocker deux
blocs de cordes dans une seule chaîne, est pourquoi j'ai dit qu'il
fallait les crochets, ce qui signifie que nous ne sommes pas
encore prêts pour les zones. Nous ne sommes pas tout à fait prêts. Nous allons l'explorer
plus en détail. Mais je suis allé vous montrer quel est
le résultat de cette
opération, la meilleure façon de parcourir un tableau est d'utiliser une boucle for-loop. Donc, d'habitude, dites quatre. Et puis nous sommes déjà passés
par une boucle for. Pour int i, qui est mon
compteur, est égal à 0. Je suis inférieur à la longueur, ce qui signifie combien de fois
voulez-vous qu'elle passe ? Et puis j'ai plus, plus. Dans ce cas, je ne sais pas combien de blocs de
cordes je vais obtenir. Je ne sais pas vraiment
parce que je ne sais pas quel sera
le nom complet. Le nom complet
aurait pu être entré par l'utilisateur où la personne
diffusait Internet sans v dedans. n'y a donc rien
à diviser avec 0,53 V dedans. Donc, R5, je ne sais pas. Pour la variable de longueur, je ne voudrais pas en mettre dix
parce que je suis allé dix fois et j'avais peut-être seulement
besoin de le faire deux fois. Et puis cela
va vraiment causer un problème. Encore une fois, je n'
entrerai pas trop dans les
détails avec Ari. Cependant, un moyen facile d'y
naviguer serait de prendre ce tableau de chaînes c. Au lieu de
nous donner un numéro spécifique, je suis allé voir la longueur du point
IRI, quelle que soit la longueur, quel que soit le
nombre d'éléments sont bloqués. Donc Stream sort
de cette opération sera stocké ici. Et chacun va
appeler Windows un. Chaque bloc sera un bloc
à l'intérieur de cette
collection de chaînes. Je dis que j'ai le nombre de blocs dans la
collection de chaînes, et c'est le nombre de
fois où je veux que vous fassiez une boucle. Nous allons y aller plus en
détail plus tard, alors ne vous inquiétez pas. Mais pour l'instant, je voulais
juste
vous montrer la ligne droite de la console. Tout ce que j'aurais à faire, c'est dire, donnez-moi la valeur de nom fractionné
par indice qui se trouve dans I. est-ce
pas ? Je vais juste
imprimer ça. Et puis quand je l'ai
regardé en mode débogage, je vais voir le plateau
et puis, ou William, c'est vraiment
imprimer ici parce que ce v serait les points de
fractionnement. Alors, quelle est la remontée du V ? Qu'y a-t-il à droite du V ? Plus, V est plus divisé. est donc ce que j'ai
dit. Nous ne savons pas combien de fractures nous obtiendrions, c'est
pourquoi nous avons
essayé de le maintenir dynamique. Encore une fois, nous
allons examiner cela. Le concept d'
ironie est plus tard. Passons maintenant aux comparaisons de
chaînes. Une comparaison de chaînes me survient
lorsque vous souhaitez comparer élément
entré par un utilisateur à une option potentielle ou que vous souhaitez comparer
deux valeurs à des variables. Il y a plusieurs raisons pour lesquelles
vous devez comparer des chaînes. Par conséquent, une comparaison très courante
que vous pourriez finir faire consiste à vérifier si quelque chose
est vide ou par défaut. Parce que comme je l'ai dit dès le début lorsque
j'ai défini la chaîne, disons variable, variable de
test. N'oubliez pas, j'ai défini la chaîne et je ne vous ai pas donné
la valeur à ce stade, c'est ce que vous appelez null. C'est bon ? C'est un autre point. Vous l'avez peut-être donné. Ceci. Ce n'est pas nul, mais il
n'a pas de valeur. Donc ce n'est pas, non,
c'est juste vide. Ce n'est pas la même chose. Ce sera la même chose
que de voir un point de chaîne vide. Très bien, donc ces
deux-là s'
apparenteraient au même thème. Permettez-moi de mettre
cela en commentaire
pour montrer que cela
signifie un point de flux vide. C'est bon ? Et dans d'autres, dans certaines situations,
vous ne savez pas si l' utilisateur a réellement mis
quelque chose de valide ou de tel, vous
devez vérifier si c'est vrai, si la valeur nulle, désolée, si la chaîne est nulle
ou si elle est vide . Il existe une méthode intégrée
où lorsque vous tapez la chaîne de type de données et que
vous voyez un arrêt complet, vous obtenez en fait un tas de
méthodes également examinées. Vous avez une molaire vide et vous avez
Ismail, notre espace blanc. espaces blancs
seraient plus comme ça, où vous placez simplement
un espace là-dedans. n'y a rien là. Je voulais dire « chaîne nulle ». C'est sur cette ficelle. C'est un vide. String, puis cet espace blanc, droit, juste pour que nous soyons clairs
ce que chacun représente. Au lieu de cela, je vous verrai
dans la variable test. Vous pouvez voir qu'il est nul ou vide, ce qui indiquera oui ou non. Cela va renvoyer
une valeur booléenne renvoyant une fonction
qui renvoie true. Il n'est ni vide ni nul, ce n'est pas la connaissance
qui n'est pas vide. Ils ont donc besoin d'analyser la chaîne. Vous ne pouvez donc pas voir de chaîne
ici si elle est nulle ou vide. Et c'est là que vous disiez, eh bien, j'ai un ISI ici. Je ne peux pas continuer. Et en fait, quand
vous regardez cela, donc dans C-Sharp, dans
les versions ultérieures de C Sharp, cela
m'empêche de l'utiliser sans d'abord
attribuer une valeur c. Je devrais
voir explicitement ici qu' il est nul
pour qu'il se poursuive, que vous pouvez simplement l'attribuer
comme null, sans l'attribuer. Le compilateur ne va pas
prendre de suppositions et dire :
Oh, c'est non, ce n'est
pas limité à cela. Vous devez donc dire
explicitement que ce n'est pas le cas. Comme je le disais, vous pourriez,
en fait, s'il est plus petit, vide et qu'il ne devrait pas être nul, vous pourriez prendre de l'oxygène. Ce sont des considérations
que vous devez respecter. Un autre facile que vous voudriez
probablement. Laissez-moi juste me séparer dans
notre console juste ici. Ils voient donc maintenant que la chaîne est nulle, une alerte citoyenne vide. Alors, nous verrons simplement que ce n'est pas le cas. La raison pour laquelle vous
voudriez comparer des chaînes est si vous
vouliez comparer deux chaînes. Ainsi, le même type d'équivalence
que vous
appliqueriez probablement à une opération mathématique
peut s'appliquer à deux variables. Je pouvais donc voir si FirstName
est équivalent à LastName. Ensuite, prenez une option. Les noms sont égaux. C'est quelque chose que vous pourriez faire. Vous pouvez également voir s'
ils ne sont pas égaux. Je ne suis pas égal
serait l'exclamation égale au signe, pas égal à c. Les
noms ne sont pas égaux. Ce sont donc d'autres choses
que vous voudriez faire une semaine de plus et comparer deux chaînes est de voir si chaîne a une méthode dot-com
peer dessus. Ensuite, il peut définir
des règles et les chaînes que vous
voulez comparer. Ici, il vous montre
que vous avez quelques options. Vous avez neuf surcharges. Nous examinons les surcharges
à quelques balles. Je peux transmettre une chaîne
numéro un et un numéro deux, qui est le nom de famille. Et puis,
s'ils le sont, désolés
, cela
retournera s'ils le sont, désolés
, un entier. Laissez-moi essayer encore une fois. Donc, je dirais en fait que les résultats de comparaison
int sont égaux à l'ordinateur à chaînes. C'est un entier. Ensuite, il dit qu'
une valeur
inférieure à 0 indique qu'il s'agit
réellement d'une valeur valide, qui n'est pas 0, montre qu'elles sont différentes. peu près des résultats ou quelle que soit la valeur variable que vous
obtiendrez de cette comparaison. Si c'est équivalent à 0, alors cela montre que les noms sont égaux et je peux
simplement faire un autre. Les noms ne sont pas égaux. C'est donc une autre façon de vérifier
qu'il y a
plusieurs façons dont je ne peux qu'il y a
plusieurs façons dont je ne épuiser toutes les méthodes ici et je peux vous assurer au
fur et à mesure que vous allez de l'avant dans vos activités professionnelles ou même
récréatives. vous allez trouver
différents moyens,
différents besoins de comparaisons de
chaînes qui ne peuvent pas être couverts
dans un seul cours. C'est donc une
pratique audible et une exposition. Voyons ensuite
comment nous convertissons les valeurs. Donc, des cordes. En règle générale, chaque fois que vous voulez que
quelque chose soit une chaîne, vous donnez à la
variable le type de données. Voyons, convertissons, valeur
convertie, chaîne
convertie, elle s'appelle une chaîne convertie, est égale à un point de chaîne vide. Je viens de l'
initialiser pour diffuser le point mt. Sachez si j'ai un numéro
que je veux sous forme de chaîne. Ce numéro pourrait être un numéro spécifique que je
voulais taper comme celui-ci. Ou il peut s'agir d'une variable. Le nombre entier est égal
à cette valeur. Et je voulais que cette valeur soit stockée
à l'intérieur
de cette variable. Je ne peux pas simplement dire que convertir cette
chaîne est égale à nombre. Nous avons épuisé cela. On ne peut pas juste prendre quelques chiffres sur la police
à l'intérieur d'une corde. Il fait un mot que nous devons plutôt le
convertir de la même manière. Nous devrons convertir l'
outil en 32 à partir de chaînes et voir ce que
nous avons pour convertir
ToString à partir de n'importe quel
autre type de données. C-sharp rend cela très facile
car il existe une méthode sur chaque variable avec laquelle vous allez interagir
avec la chaîne appelée. C'est tellement cool que
même le chiffre que vous
auriez tapé, vous pourriez voir un point à
enfiler à la fin de celui-ci. Donc, juste en tapant ce chiffre,
je puis en mettant des points. Donc string, vous le
convertiriez en chaîne pour vous. N'importe quelle variable,
qu'il s'agisse d'un booléen,
d'un nombre , d'un double, quelle qu'elle soit, vous pouvez également la convertir en
chaîne. Mais rappelez-vous simplement que
lorsqu'il s'agit d'une chaîne, le signe plus fonctionnera complètement différemment de la façon dont il aurait fonctionné s'
il s'agissait d'un nombre, n'est-ce pas ? Rappelez-vous donc que
les signes plus lorsque nous avons affaire à la
concaténation de chaînes. Alors que les signes plus lorsque
vous avez affaire à des mathématiques, vont réellement faire des
mathématiques et ajouter les chiffres. Soyez donc très prudent et
conscient de cela. Mais pour la norme, je suis allé faire
une pause avec des manipulations de cordes. Vous pouvez passer par là,
expérimenter, voir quelles autres
méthodes existent. D'autres sympas comme vous
pouvez voir en haut et en bas, vous pouvez faire des jointures. Vous pouvez créer. Si vous écrivez simplement la
chaîne 1, appuyez sur points, vous pouvez passer à travers et
voir les autres méthodes disponibles sur
la variable elle-même. Vous pouvez réellement nous laisser
dire le nom complet et je le vois. Je peux en voir deux majuscules si je
voulais que tout soit majuscule. Je pourrais dire de baisser, si je
voulais que tout soit plus bas. Il existe un certain nombre de méthodes
pour vous aider à manipuler une chaîne sans
trop de travail. Je suis donc allé vous laisser
expérimenter et explorer.
18. Fonctions de manipulation de DateTime: Bon, les gars,
bienvenue pour nos propres outils. Gondwana était
donc une question de cordes. J'avais l'intention de faire les deux
chaînes de temps MD, mais vous verrez que
les activités à traverser dans une autre leçon. Donc, c'est très bien. Nous pouvons nous rattraper ici. Je n'ai donc pas encore créé
le projet. Allez-y et faites-le.
Vous pouvez suivre avec moi ou faire une pause
et le faire vous-même. Donc, bien sûr, vous
devez créer notre nouveau projet. Nous allons procéder à des manipulations de
date et d'heure. Ensuite, nous cliquons sur Créer. Maintenant que nous avons
notre nouveau projet, voyons quelles sont
les tâches nécessaires à la manipulation des données. Voici les tâches que
nous allons accomplir. Tout comme
la manipulation de chaînes et la manipulation
des données sont très profondes, très étendues et
très situationnelles. Il y a donc certaines choses que
vous ne finissez jamais faire dans un avenir prévisible. Et il y a certaines
choses que vous
voudrez peut-être faire et que je ne vais
pas forcément montrer
dans cet espace-temps. Nous allons simplement y travailler. Je vais juste varier
dans certaines de ces choses. Nous pouvons ajouter du temps. Désolé. Nous pouvons simplement y travailler et voir comment nous pouvons le mieux au soleil. Premièrement, une datetime représente un type de données en C-Sharp et cela ressemble à un type de données
primitif. Donc, lorsque nous parlons de types de données
primitifs, nous parlions d'
int double flux, la date, heure ou un type de données plus
complexe serait une combinaison de
différents types de données. qui élargit un peu plus
la fonctionnalité. Lorsque nous parlons de
dates et d'heures, parlons sur des bateaux, un type de données appelé
littéralement l'heure. Ensuite, nous lui donnons un nom. Je suis donc allé l'
appeler. Ensuite, vous souhaitez généralement l'initialiser. Et nous l'initialisons
en disant que je connaissais l'heure, parenthèses
ouvertes et proches. C'est ainsi que vous
initialiseriez un objet datetime, non variable, quel objet ? Nous allons entrer dans le
domaine des cours. Remarquez donc que c'est
un peu ce cyan bleu sarcelle. Je ne sais pas quelle couleur c'est, quelle est la même
couleur que celle de la console. Console est donc une classe. Datetime est également une classe, et nous allons faire la chaîne est bleue, int char, tous sont bleus,
ils ne sont pas de la même couleur. Ce ne sont pas des cours. C'est ça. Vous initialisez donc
une date heure vide. Voyons maintenant comment
vous en créeriez un. Disons donc que je voulais
créer ma date de naissance. Je pouvais voir qu'une date, une heure ou une date de naissance est égale
à un nouvel objet datetime. Et ensuite, je peux réellement transmettre
des valeurs que j'aimerais. Donc, si vous regardez jusqu'à
présent, vous verrez que vous disposez de plusieurs options.
Voici celui que je veux. Je peux passer une
année entière, un mois entier, un
entier d, l'année où je suis né, Disons que je suis né en 1980. Le mois, disons que
je suis né en décembre. C'est le 12, non ? Et puis aujourd'hui, Let's est
né le 35. Donc, bien sûr, il n'y a pas de 35e. Mais ça ne
me donnera pas d'erreur ici tant que je n'
essaierai pas de l'exécuter et que ça me
pose un problème. Je suis donc allé faire une ligne d'écriture de points de
console. J'essaie d'imprimer
la date de naissance et de remarquer que je
peux simplement la passer dans la bonne ligne parce qu'
elle accepte les objets
plus complexes qui
ont également les types primitifs avec lesquels
nous avons travaillé. Mon D OB est que je vais juste
utiliser mon signe plus ici. Si j'essayais d'exécuter cela, laissez-moi le modifier à jour des manipulations
et essayer de l'exécuter. Ensuite, wow, nous voyons que
nous avons ces exceptions. Une exception est une erreur
qui se produit généralement dans notre programme et qui tue à peu près
le programme. Si vous utilisez
Google Chrome ou même Visual Studio et que vous obtenez l'
un de ces domaines,
même Windows. Et vous avez cet écran
bleu de la mort, tout ce qu'il fait, c'est
frapper une exception. Une exception est l'une de ces flèches irréversibles qui l'
aident n'a pas tenu compte. Dans ce cas, il est
dit que ce
ne sont pas
les valeurs que j'ai présentées au coucher. Donc oui, la zone va bien, le moment est bien,
mais ce n'est pas très bien. Donc si je le mets au
31 et que je réessaie, alors je devrais obtenir
cette impression adulte. Remarquez donc simplement
en passant cet objet datetime qui est capable d'imprimer le
12e au 31 et 1980. C'est ce qui est ma date de naissance. Très bien. Joli et simple. Maintenant, que se passe-t-il si je voulais l'horodatage actuel
pour voir un temps mort. Appelons ça non. Je voulais savoir quel
est le moment, n'est-ce pas ? Non. Ensuite, littéralement, je
peux voir une date, une heure, des points nuls qui
iront sur votre système, obtient l'horodatage au moment de l'exécution du
code. Et puis cela sera stocké à l'intérieur de cet
objet appelé null. Donc le moment est venu, et je vais juste
imprimer non, laissez-moi essayer celui-là. Comme au moment où le code
a été exécuté, l'heure
était la date, c'était
que l'heure que j'utilise est mon
temps sur mon système. Il va refléter l'
heure du système, voire la mise en page
du format de date. Tout cela est affecté par les paramètres système dont vous disposez
lorsque l'école est exécutée. Donc, si vous êtes sur
les normes britanniques ou quatre mois, cela peut être légèrement
différent en termes d'
utilisation de Montfort plutôt que
de mois, de jour ou d'année. Et si vous n'
utilisez pas le temps armé, alors votre temps nous sera différent. Ce sont des choses
à prendre en compte lorsqu'il s'agit d'
imprimer votre date et l'heure. Sachez que si nous voulions
créer la DateTime
à partir d'une chaîne. Donc, pour ce faire, cela signifie
que j'aurais eu ce genre de
représentation de chaîne qui vient d'être imprimée. Et je m'en sers pour l'ingénierie. J'ai fait de la valeur du temps. Donc je peux voir date/heure, heure et je dirai que fait
de la chaîne est égal à. Je peux faire une analyse datetime. Tout comme les cordes. Un
certain nombre de méthodes sont en jeu. Mais il veut la ficelle. Qu'est-ce que c'est, quel est le flux
qu'il est censé être séparé ? Et si je disais une
barre oblique 31 barre oblique 2221 ? Cela devrait être
le 31 janvier 2021. Cela voit ce que je veux pour des
parties d'autres paramètres
que vous ajouteriez comme des paramètres pour lui faire
connaître pleinement cette culture. Laissez-moi voir si je me souviens
comment taper cela dans la culture variante. Il y a donc
différents paramètres que vous avez mis en place pour le faire savoir. Ne soyez pas spécifique
à la culture. Ici. Je viens d'ajouter cela en utilisant une
déclaration pour celle-ci. Il s'agit en fait d'une classe statique
tout comme la console ou le LN. Je dis donc la culture dans
son intégralité, très incultivée. Il est donc dit que la culture
est indépendante, la culture
est indépendante,
car comme je l'ai dit, le format
varie parfois en fonction de votre culture. n'est donc qu'en faisant cela que nous pouvons faire de l'indépendance. Non, j'ai fait quelque chose et
je ne l'ai pas expliqué en
tapant toute sa
culture. Udot a vu la ligne rouge, ce qui signifie que
j'essaie
d'utiliser une méthode provenant d'une
bibliothèque non incluse. N'oubliez pas que nous
devons ajouter que nous utilisons des instructions chaque fois
que nous voulons utiliser des méthodes partir de bibliothèques qui
ne sont pas déjà incluses. J'ai donc dû faire des points de contrôle. Et la suggestion était que je peux
ajouter la déclaration d'utilisation. Donc, en faisant cela,
il est
allé de l'avant automatiquement et l'a ajouté pour moi. Je sais que je peux accéder à cette méthode. Je vous montre juste une
fois de plus différentes variables. Je vais voir l'heure. L'acte de la chaîne est que je vais juste imprimer
l'ID de la chaîne. Jetons un coup d'œil à celui-là. Très bien, donc en faisant
vraiment et vraiment ça l'a pris, il l'a analysé en journée,
puis il a juste juste
re-posté dans une chaîne. Très bien, ce
n'est qu'un exemple de la façon dont vous pouvez
convertir la chaîne réelle
en date et heure réelle. Datetime est un
type de données réel que vous devez prendre en compte lorsque vous avez particulièrement affaire à
une base de données. Parce que vous accepteriez la saisie de
chaînes de vos utilisateurs s'ils devaient l'entrer via la console, nous allons simplement la stocker
dans une base de données. faudrait qu'
il s'agisse d'une date et d'une heure. C'est donc l'une
des autres raisons pour lesquelles vous
voudriez être prudent. Et si nous voulions voir ce qui est
à une heure de l'heure
actuelle, n'est-ce pas ? Je le sais déjà. Que se passe-t-il si je voulais ajouter une heure pour voir à quelle heure il serait ? Je peux toujours dire sans points. Vous avez la possibilité d'ajouter des heures. Vous pouvez identifier, ajouter des
millisecondes, des minutes, des mois. Il peut ajouter presque n'importe quelle
construction du temps. Variable datetime existante. Je ne vois donc pas d'OA étrange. Donc, si je voulais juste
voir dans une heure c'est une heure de null is, alors je ne peux voir aucun point
ajouter des heures prune dit Non. Il est déjà monté en haut ici. Il sait à quelle heure il est, non. Et ensuite, ça va
calculer, qu'est-ce que c'est dans une heure ? J'ai pu voir un d de
NOW n'est pas un jour d'ajout de points. Encore une fois, l'exploration. Voyons donc à quoi
ça ressemble. Lorsque nous obtenons cela, nous voyons
que la valeur nulle est de 1241900 heures. Une heure du nœud serait 20. 100,1$ par jour sera le 25e avec le même
horodatage qu'il était. Non. Très bien, tous ces
calculs
nous sont apportés grâce à ces méthodes. Maintenant, le prochain de l'alignement
est le temps mort des tiques. Mais je pense que je suis allé l'
inverser et nous allons juste dire tiques à partir du moment où je prendrai. Ou les ticks
représentent essentiellement le nombre de ticks d'horloge depuis le
temps, disons calculés
comme à ce moment, si je dis points de console, c'est vrai. Un chiffre temporel, à
peu près si vous
donniez une
valeur numérique à l'époque, il serait sous la forme
de Dijkstra, c'est que je pourrais dire pas de tiques de points. Il obtient le nombre
de choses qui représentent la date et l'heure de congé. occurrence, à ce moment, il y avait eu
autant de coches à l' heure depuis que nous avons commencé à
calculer l'heure. C'est à peu près
ce que seraient les tiques. Avant de tester cela, passons simplement dans
les données et le temps. Donc, les dates et l'heure seulement nos nouvelles constructions
et notre étain pointu C là où il y a des moments
où vous ne voudriez pas nécessairement le temps dessus. Parce qu'ici même, naissance ne serait pas
forcément temps. date de naissance n'est que
l'année, le mois. Le bon. Bien sûr, vous pouvez
ajouter les secondes, minutes et les heures
si vous le souhaitez. Mais nous ne voulons pas nécessairement
faire ça parce que vous voyez
ici si je continue à taper, vous commencerez à voir qu'il n'a pas fait heures en minutes et secondes. C'est donc à ce moment que vous
parlez de date et d'heure. Ce serait en fait les années 1980, le 12 du
31 décembre
1988, heures une minute
et 35 secondes. Il y a tendance à être aussi précis. Très bien. En fait, je pouvais voir
qu'une date est égale à la date de naissance. Disons D, ce
n'est qu'en dehors de la naissance. Juste pour que nous puissions voir quelques caractéristiques
distinctives,
date de naissance. Ensuite, je prendrai un objet datetime
existant, cette date de naissance. Et C, je ne veux que le D. Je vois en effet que cela
me ramènerait exactement comme ça. En fait non, ne date que
des points à partir de la date et de l'heure. On y va. Je m'excuse. Il s'agit d'une construction assez nouvelle, alors pardonnez-moi. Très bien. Donc, Dot DS vous
donnerait vraiment les dates, n'est-ce pas ? Laissez-moi, laissez-moi
le mettre ici. Je ne ferais que
couper les zéros qui
auraient été vus après
toute la date et l'heure ici. Très bien. Donc, ça devrait me
parler de l'acte. Alors la
construction de date seule va juste me rendre d Ça
ne s'en soucie pas à l'époque. Mais si j'ai une date et une heure, je peux dire ne me donner
la date qu'à partir de date et de l'heure et vous donner
cette valeur date/heure. la même manière, je ne vois que le temps. Permettez-moi d'avoir le plus de
débordement juste à l'heure seulement. Et je vais juste dire l'heure. temps est égal à, et je ne peux le faire
qu'à partir de l'époque. Essayons sans
raison que je sais qu'il y
aura un temps
réel étant donné
que c'est un horodatage. Essayons donc
tous ensemble. Ici. Je vois
que même si j'ai dit que ça allait toujours me
rendre le deet au-dessus la composante temporelle à droite. Ce que nous n'avons pas
fait de sprint, alors permettez-moi d'ajouter
le sprint seulement. Permettez-moi de
les ajouter rapidement. Et ce sera le jour de la naissance. Et puis mélangez celui-ci. Laissez-moi régler ça un peu. Nous allons dire que le temps
n'est que le temps. Après avoir mis la console. Essayons encore une fois. Non. Encore une fois, même si
j'ai dit les dates de naissance, donnez-moi la date et l'heure complète puis donnez-moi le point
datetime. Vous pouvez voir que les horodatages tentent toujours d'être ajoutés. J'ai passé par l'horodatage, j'ai ajouté une heure, et ce sont les tiques. Donc, en ce moment, quel que soit
ce nombre, si vous voulez essayer de l'appeler, vous pouvez me faire savoir
quelle est cette valeur, quel est le nombre
de tiques que j'ai
traversées depuis. nous avons commencé à
calculer le temps. La date ici ne
représente alors que la date. Il s'agit donc littéralement de
la date de naissance, pas de la date, de l'heure de naissance. Très bien. Et puis, si je ne
voulais qu'une heure, c'est l'heure qui a pris l'horodatage et ne me
donne que l'heure, pas la date et l'heure. Voici donc quelques
façons de
manipuler les dates et les
heures d ou les avantages. Je peux vous assurer qu'
une fois
que vous aurez mis en place des fonctionnalités qui
traitent de Dietz, d'horodatages et choses
particulières à des moments particuliers, vous
devrez certainement devenir familier avec certaines
de ces fonctions. Encore une fois, je ne peux pas voir chacun d'entre eux. Il y a des choses que
vous devez explorer, comment expérimenter. Ce sont aussi des choses comme le
retour de l'année. Et si je voulais savoir
quel jour je suis né ? Je pourrais dire que la date de
naissance est annulée par semaine. Donc ça me
rendra si c'est 1234567, jour de la semaine, il leur donnera le temps libre D ça me donnera le
jour de l'année, non ? Il y a donc 365 ou
366 jours par année. Quel jour de l'année était-ce ? Si je dis que je ne
parle que du D, c'est l'entier
du D, n'est-ce pas ? Ainsi, le jour de congé, le jour est
différent de la semaine de congé
parce que D est évident. Nous savons que c'est le 31, mais le jour de la semaine qui
était le 31 en 1998-1980, nous ne savons pas nécessairement que d of weak est
une autre construction. Vous avez d'autres choses
comme je viens de les ajouter. Donc la semaine de congé, le
jour de votre temps libre, le nombre de tiques. Quand je suis né, et
le genre, n'est-ce pas ? Donc, si je n'ai qu'une autre exécution juste pour voir
ce qui est imprimé pour toutes ces valeurs par rapport à la
date de naissance. Vous
voyez ça ? Je suis né. Je sais que c'est là. C'était le 366e
jour de l'année, donc c'était une année bissextile. Vous pouvez donc garder cela
à l'esprit lorsque vous essayez de calculer des années bissextiles. Vous pouvez voir le temps libre,
eh bien, je n'ai pas précisé d'heure, donc l'heure de la journée me donnerait
quelque chose de similaire
à l'heure. C'était un certain nombre
de tiques, n'est-ce pas ? Donc si je faisais des calculs et que je disais Ce nombre de tiques,
ce nombre de tiques, j'obtiendrais en fait
le nombre de tiques entre les deux fois NON et la date de naissance. Le type ici est spécifié. Donc, en fait,
il s'agit de l'UTC ou de l'ESD ou d'une heure locale, peu près je n'ai fait
aucun emplacement
spécifique pour regarder l'horodatage
ou le fuseau horaire. C'était si gentil n'est pas précisé. Ce sont donc quelques idées quand il vient à la manipulation.
19. Gestion des exceptions: Salut les gars, bienvenue. Dans cette leçon, nous allons
examiner la gestion des exceptions. Nous avons examiné la
gestion des exceptions plus tôt. Sommes-nous confrontés à
une exception un
peu plus tôt lorsque nous
regardions nos objets datetime ? Et si vous vous souvenez, lorsque nous créons un objet
unique, nous ajoutons une valeur non valide. Et puis le programme nous
a donné une erreur. Cela nous a donné un bloc
de texte que je suis sûr que si je ne l'avais pas lu
et que je ne vous l'expliquais pas, cela n'aurait pas
eu plus de sens. C'est généralement ce qu'est
une exception. Une exception est une erreur fatale qui
se produirait dans votre programme. Généralement,
c'est une erreur très méchante. Et ce n'est pas
forcément quelque chose que vous
voudriez voir par vos utilisateurs. Il suffit donc de revenir dans vos
souvenirs et de penser à chaque fois que vous voyez Google Chrome s'écraser avec un message
qui n'a aucun sens. Ou cet écran bleu de la mort
sur Windows ou une erreur que vous rencontrez dans une application où
cette application vous montre une erreur. Et lorsque vous essayez de vous
éloigner, l'application risque de planter. Il y a également des moments où cette application ne se bloque pas, mais elle se trouve plus en état d' erreur, ce qui vous permet de
poursuivre votre opération. Non, c'est ce que nous appelons le traitement des
exceptions. L'erreur elle-même
constitue une exception. Ensuite, la façon dont il est
traité est ce que nous
appelons la manipulation. Dans C-Sharp et dans la plupart des
autres langues, gestion des
exceptions se fait via ce que nous appellerons
un bloc try-catch. Un essai ou la partie voyage de la prise d'essai
va essentiellement essayer l'opération. Très bien, il est donc
bon d'essayer de
terminer quelque chose, d'
accomplir une tâche. Ils attrapent une section
de ce bloc entier, vont détecter toute erreur ou
exception fatale qui peut se produire
lors de l'essai de l'opération. Ensuite, vous verrez généralement, ou parfois vous verrez
un autre bloc appelé Finalement, ce
qui signifie si, que
l'essai ou la capture ait réussi. Faites-le à la fin d'essayer, peut-être d'attraper, de le faire. Si vous l'essayez et que vous le
faites, faites toujours ceci. C'est à peu près ce
que l'on trouve qu'il fait. Ensuite, un autre mot-clé
que vous
voyez généralement dans la
gestion des exceptions est vrai, ce qui signifie que l'
exécution du programme avec l'erreur est exécutée. Très bien, nous allons
faire un petit exercice ici
où nous allons
explorer dans quelles circonstances
il pourrait y avoir des erreurs. Watts que nous pouvons faire quand il y a des erreurs et pourquoi nous voudrions
faire ces choses, n'est-ce pas ? Je suis donc allé commencer par
une application très simple. Je vais simplement réutiliser l'une de ces opérations
que nous avons déjà effectuées. Cela n'a pas
emprunté du code à l'
un de nos exemples précédents. Vous pouvez simplement appuyer sur Pause
et répliquer cela, mais je dis simplement
entrer le premier numéro, stockant en chiffres de 1
seconde pendant génome pour frapper pause
répliqué cela. Non, d'une manière générale, vous voudriez effectuer une opération
quelconque ici. Vous voudriez dire, par exemple,
disons que le quotient de num1 et num2 sera généralement
num1 divisé par num2. Mathématiques simples, num un
divisé par num2. Ensuite, vous voudriez
écrire que le quotient est quelle que soit cette
valeur, les résultats. Ensuite, je vais juste
concaténer cela. Très bien ? Il s'agit donc d'un exemple
mathématique typique. Je suis allé à. Tout d'abord, exécutez cette opération. Et j'ai déjà
créé le projet. Bien sûr, comme vous pouvez le constater, j'appelle cela le traitement des
exceptions. Gestion des exceptions. Mettons-le dans le premier chiffre qui est
divisé par un. Le résultat est dix. D'accord, c'est simple. Essayons encore une fois. Si je fais la même chose avec 100. C'est mon regard sur ça. Dans Visual Studio. Je reçois cette flèche jaune. Personne n'a déjà subi de
débogage. Nous savons que cette flèche jaune indique
généralement à
quelle ligne vous vous trouvez, surtout après avoir mis notre point d'arrêt pour savoir, je suis sûr que vous
n'avez pas codé cette flèche jaune
surgissant de sa propre volonté. De plus, vous n'
auriez pas vu ce X rouge avec le message
sauf non géré. Donc ici, il est dit
que nous avons un système.Out diviser par 0, exception, a
tenté de diviser par 0. Il y a donc certaines
choses qui ne peuvent pas arrêter de diviser par
0 en font partie. Et le système,
qui est votre ordinateur, étant des ordinateurs en général, ne peut pas gérer une
opération où
vous lui demandez de diviser
un autre nombre par 0. C'est donc ce qui
provoque une exception. Et puis ce genre d'
exception est ce qui
bloquerait votre programme parce que vous voyez qu'il a cessé de fonctionner. Et maintenant, je reçois
cette mauvaise erreur dans la console disant exception
non gérée, alors cela signifie vraiment, je veux dire,
cela ne signifie probablement rien
pour vous en tant que débutant. Et c'est très bien. J'en ai assez vu au cours de ma carrière pour comprendre
ce que c'est, vu. Le fait est que
vous ne voudriez pas
afficher ce bloc de texte ou quoi que ce soit ici à notre utilisateur car cela n'a aucun
sens pour l'utilisateur. Imaginez ce que vous
ressentez lorsque vous voyez Google Chrome ou quelle que soit application que je continue d'
utiliser Chrome, car Sita permet de préparer ce
qu'ils gèrent bien, mais ils
montrent parfois des erreurs obscures . Je pense qu'ils s'en
sortent beaucoup mieux ces derniers temps. Mais parfois, vous voyez
ces erreurs obscures. Ce sont donc les exceptions qui se produisent à l'intérieur de
l'application. Et c'est pourquoi
les applications ont tendance à dire : voulez-vous
faire
ce programme de commentaires où, lorsqu'elles
rencontrent une exception, vous leur renvoyez le
message. Ils reçoivent donc ce
genre de message dans leur e-mail disant que cela
est arrivé à un utilisateur, c'est
pourquoi vous recevez des mises à jour. Aucune application n'est parfaite. Ils ont tous des flèches
quelque part. C'est pourquoi vous continuez
à recevoir des mises à jour parce qu'elles
allaient ensuite dans le code et le corrigeraient. Alors, résolvons celui-ci. Il s'agit d'une exception que
nous n'avons pas prise en compte. Laissez-nous le réparer. Nous pouvons donc l'envelopper
à l'intérieur d'une prise d'essai. Comme je l'ai dit, le pneu représente l'opération que
vous tentez. Je peux dire essayer et juste en écrivant la tendance
en appuyant deux fois sur Tab, il générera tout ce bloc
try-catch pour moi, ce bloc est ce que nous essayerions. Je veux dire, il ne peut pas y avoir
autant de lignes que nécessaire, c'est l'opération
que vous avez entraînée. Parce que parfois, vous
avez 235 étapes dans une opération et n'importe laquelle de ces étapes peut
déclencher une exception. Donc, lorsque nous
lançons une exception, par
exemple, ou une opération
de
division ce que nous essayons. Si cela crée une exception, nous avons ce bloc de capture. Remarquez qu'il est dit « catch exception ». exception est le type de données
général utilisé pour identifier quand
une erreur s'est produite. Ce ne sont que des exceptions , même si vous en
aurez des exceptions spécifiques. Ils sont tous à la
base des exceptions. Vous saisissez l'exception. Vous pouvez ensuite stocker
cette exception au lieu d'
une variable ou d'un objet. Nous pouvons donc lui donner un
objet II ou III oeufs ou l'appeler exception avec toutes les minuscules que je suis
allé le laisser comme loi EX. Donc, fondamentalement, nous disons
essayer cette opération, attraper toute exception
ou erreur et stocker les détails de l'exception ou de l'
erreur de décalage à l'intérieur de cette
variable appelée EAX. Ensuite, vous remarquerez que vous avez également ce
mot clé appelé throw. Throwable est ce qui
tue le programme. Donc, si je devais supprimer lancer, vous
continueriez à exécuter. Donc, quand on essaie et que ça
attrape l'exception, si je ne le fais pas. C'est donc là que je l'enverrais
probablement par courriel ou l'écrirais dans un journal
quelque part. Mais je ne fais que
vous donner les idées parce que nous utilisons
des applications tous les jours. Ce sont des choses que
nous voyons quelque chose là-bas. Mais je vous montre juste
que ça se résume vraiment à ces petits morceaux de code. C'est ici que cette application va
vous montrer la boîte de dialogue et dire, hé, vous savez, nous vous avons
cherché , nous avons
rencontré une erreur. Vous souhaitez envoyer un
rapport à nos développeurs ? Vous dites oui, alors ce qu'ils
ont vu
vous montrer le dialogue. Si vous dites oui, envoyez l'erreur détectée
à l'intérieur de cet objet. C'est tout ce qui se passe. Ensuite, à la fin de l'opération imprimerions ou si
nous ne pouvons pas imprimer car cette variable
existe dans cette étendue. C'est un bon endroit
pour parler de portée. Si vous définissez une variable
entre deux accolades, cette variable ne vit que aussi
longtemps que lorsqu'elle touche cette ligne
et que cette accolade bouclée se termine.
Ça fait tremper un peu. C'est pourquoi je ne peux pas imprimer quotient en dehors de
la capture d'essai car cette variable n'existe qu'
à l'intérieur de ce bloc try. Je peux donc faire tout ce que je veux
mettre en garde à l'intérieur d'ici. Comme si je pouvais
l'imprimer à l'intérieur du plateau. Une fois que je ne peux pas interagir avec
, je veux essayer, c'est fait. C'est pourquoi je ne peux pas imprimer à l'extérieur du phare du plateau en
essayant de le faire initialement. Ce sont des choses
à prendre en compte. Continuons maintenant, si je dis « lancer », on se
retrouverait dans le même genre de
situation où il vient de mettre fin complètement à
l'exécution. Vous ne
voulez pas nécessairement lancer, à moins d'être absolument sûr que c'est l'effet
souhaité. Si vous voulez
tuer le programme, lorsque ces
zones particulières sont en concert, alors vous voulez lancer. Voyons donc que le fait de diviser par 0 n'est pas le type d'erreur que
vous souhaitez générer. Cependant, si vous
attrapez une
autre exception et que
vous voulez lancer, vous souhaitez des réactions différentes à différents types
d'exceptions. Eh bien, vous pouvez réellement
avoir plusieurs prises. Vous pouvez en attraper un particulier, disons divisé
par 0 exception. Ensuite, vous pouvez décider quand il s' agit d'une exception divisée par 0. Je veux voir une opération illégale. Il suffit de dire opération illégale. Et puis je pourrais mettre ce message d'exception
à l'intérieur de son propre objet. Appelons ça EX. Donc, si vous attrapez cette exception, je stocke qu'elle n'a pas déclenché EAX dans ce bloc de capture. Et je vais imprimer le
message fourni avec des exceptions pour pouvoir voir des points EX. Ensuite, nous voyons un message. Quand je le ferai pour un
point-virgule à la fin, je vais attraper ce
genre d'exception. Sinon, tout autre type d' exception peut
envoyer un e-mail à l'équipe de développement et
lancer tuer le programme parce que je ne suis pas prêt
à continuer après cela. C'est bon ? Et puis je vais juste
le dire enfin. Ensuite, dans le bloc final, nous
pouvons simplement console.WriteLine. Je vais juste dire que c'est
le dernier bloc. Donc, c'est mauvais. Essayons encore une fois. C'est le dernier bloc. On y va. Donc, ce que nous voulions
faire à la fin, c' est si nous avons réussi ou si nous l'
appelons la division par 0. Nous voulons sauvegarder cela
comme le bloc final. Ou disons simplement que c'est
la fin du programme. Hors du programme. Essayons ça. Gestion d'une exception, exécutez-le. Et puis je vais
faire une bonne division. Donc, je vais faire 105
et ensuite j'en aurai deux. Et vous voyez que c'est
la fin du programme. Il a donc essayé, n'
a attrapé aucune exception et a
ensuite fait le final. Très bien, alors
essayons encore une fois. Et cette fois, je
vais essayer d'obtenir cette division par 0 exception. Nous allons voir qu'il
a encore été sauté jusqu'
au final et continue à l'
exception. Donc, si je dis dix divisés par 0, cela dira
opération illégale colon. C'est ma
chaîne statique que j'ai tapée. Très bien. Et puis le message de point EX serait la tentative de
diviser par 0. Donc, tout
ce manque que nous aurions vu
plus tôt quand il aurait lancé l'exception aurait été un certain nombre de bits d'
informations
différents , tous encapsulés dans cet objet ou
variable appelée EAX, qui incarne
toute l'exception et tout ce qui a mal tourné. Par conséquent, un développeur
voudrait voir cela
parce que vous
verriez alors toute l'étendue de l'erreur et que vous
seriez mieux en mesure de la corriger. Cependant, d'une manière
générale, vous recevrez un message agréable plus lisible par l'homme
et convivial, ce que vous
voudriez peut-être présenter à l'utilisateur parce que l'utilisateur J'aurais
une idée qui va bien, c'est ce
que j'ai mal fait. Cependant, ils n'
obtiennent pas le shebang complet sur le numéro de ligne et
toutes sortes de détails sur le code que la propriété n'a pas besoin que notre propriété ne
devrait pas voir, non ? De plus, vous ne voulez pas
nécessairement d'utilisateurs. Vous ne savez pas qui
utilise votre application. Vous ne voulez pas qu'ils sachent
nécessairement
que cette ligne numéro 20
fait cela, etc. Ce sont
donc des moyens
que vous pouvez utiliser pour gérer les
erreurs potentielles dans votre code. Parce que nous ne sommes pas parfaits. Parfois, vous écrivez du
code et nous ne nous
rendons pas compte que nous faisons des
choses qui risquent d'échouer, surtout lorsque
vous commencez à écrire des applications
plus volumineuses qui ont d'autres dépendances qui icône un base de données ou lors
de la connexion à Internet. Si vous essayez de vous connecter
à Internet,
Internet n'est pas activé, vous
devez saisir
l'exception et la
gérer de manière à l'exception et la
gérer de manière ce que l'utilisateur n'ait pas l'impression votre programme n'est pas
écrit correctement.
20. Les tableaux: Bienvenue les gars de retour. Dans cette leçon, nous
allons examiner les tableaux. Vous pouvez donc commencer par créer projet
dont nous avons besoin. J'appelle ça des tableaux et on
peut se lancer dans les affaires. J'ai ajouté quelques commentaires servent de guide sur
ce que nous allons discuter
dans cette leçon. Un tableau représente donc
un ensemble de valeurs. Nous avons donc eu un peu
d'exposition à un tableau plus tôt lorsque nous avons examiné nos
opérations de manipulation de chaînes. Et si vous vous rappelez
quand je
vous ai montré la scission, nous y allons. Moodle a vu ces
accolades carrées ou des crochets. Et j'ai dit
que cela signifiait qu'il s'agissait d'une collection de
blocs de cordes et que nous devions
naviguer à travers elle et tension à ce stade
parce que nous en parlions. Eh bien, le moment est venu. Permettez-moi donc de
fermer tous les onglets qui ne sont pas
absolument nécessaires. Et juste en cliquant sur
l'onglet du milieu, il se fermera. Donc, je ne sais pas si je
vous ai montré avant personne. Si vous avez un onglet, ouvrez notre bloc de code ouvert
et vous vouliez le fermer. Vous pouvez cliquer sur la semaine XES et cliquer sur l'
onglet au milieu, il se fermera. Commençons par la
définition d'un tableau. Un tableau est un
ensemble de valeurs. Par exemple, si nous
voulions collecter, voir les notes ou cinq élèves
, nous
devrions généralement voir Edens vert. Un est égal à et ensuite nous devons le faire en
deuxième année et en 345, etc. Ce n'est pas très efficace. Et si le
cours passe à dix ans, alors nous devons
revenir dans notre programme et en faire encore dix. Le fait est que ce n'est pas
très efficace lorsqu'il faut
disposer de variables différentes comme
celle-ci pour stocker ces valeurs. Ce qui se passe donc, c'est
qu'un tableau constituerait un ensemble de valeurs
vers un seul objectif. Si je sais que je veux des notes, je peux créer un
type de collection pour les notes. Et puis ce dont nous avons
parlé, la taille fixe, cela signifie que je sais exactement
combien de grilles je veux. Parce que si c'est sur les cinq
, je veux une collection
de cinq grilles. Pour définir ce
type de construction. Je défendrais d'abord le
type de données de cette collection. Et de manière
générale, vous pouvez utiliser n'importe quel type de données si vous vouliez
un ensemble de noms, il s'agirait d'un
tableau de chaînes, comme nous l'avons vu, nous avons la chaîne dans
une manipulation de chaînes. Écoutez. Il peut s'agir d'une double
collection de salaires, etc. Ainsi, les notes ne sont
qu'un exemple, int, et ensuite vous utilisez
vos accolades, puis vous lui donnez un nom. Voici donc ma
collègue, Norma Ari. J'appelle les grilles. Et puis je peux voir
z égal à new int. Et puis en utilisant des accolades carrées, je dirais quelle valeur
je vous donnerais C Visual Studio en suggérant Maxwell, ce
n'est pas ce que je veux. Je ne veux pas que le
maximum de collègues activé parce que cela pourrait
planter votre ordinateur. Mais j'ai dit que j'en voulais cinq, alors je vais mettre
cinq points-virgules. Cela signifie qu'il
va entrer en mémoire et me réserver
cinq espaces. Très bien, cinq
adresses spatiales seront réservées en mémoire,
toutes appelées grilles. Et puis, ce qui se passera,
c'est que chacun
aurait un numéro
associé à eux. Depuis l'espace des grilles,
un espace de grille aussi. Mais la numérotation des
RA commence généralement à 0. Souvenez-vous donc de la guerre mondiale
pendant la boucle for-loop, nous avons dit que nous commençons par
0 et que nous sommes allés à un de moins que le numéro de sortie. Donc, si la taille
du tableau est cinq
, la chose conique sera 0. Puis 1234. Et c'est tout parce que
c'est 12345 espèces en mémoire. Très bien, donc c'est une partie des artères qui
peut se révéler déroutante. Mais une fois que vous vous êtes habitué à
comprendre, une fois de plus, la taille est de cinq, nous réservons des espèces de phase. Mais chacun
aura une adresse
comprise entre 0 et une adresse
inférieure à ce nombre. Donc, si je vois cela comme
une équation mathématique, si n est la taille du tableau, alors votre tableau a adresses de 0, Tooele moins un. C'est moi qui essaie de ressembler à
un génie des maths juste là. Très bien. Cinq adresses spatiales vous
donneraient donc de 0 à n moins un, soit quatre. C'est tout pour nos yeux. Si je disais dix, alors ce
serait 010 moins un. Par conséquent, 0 à neuf
vous donnerait les adresses. Maintenant, le problème,
c'est que je dois couvrir et modifier la valeur ici. C'est assez facile. Je veux dire, si je le voulais
plus gros, fais-le 15. Si je veux qu'il soit plus petit,
fais-le cinq. Peu importe. Je ne demande plus d'espèces ici. Lorsque le programme sera exécuté, il me réserve
autant de choses en mémoire. Parlons maintenant de l'
ajout de valeurs à l'IRI. Je n'ai donc pas dit que vous
auriez des indices qui sont ce que
vous appelez des indices. Les indices représentent
ces chiffres qui représentent les adresses. Si je voulais ajouter
la première grille, je dois dire qu'il
s'appelle le tableau par son nom. Ajoutez ensuite mes
crochets, puis appelez l'adresse par valeur. La première note serait donc 0, ce qui est la première
adresse réservée pour moi. Et puis je lui
donnerais la valeur de la grille. Ensuite, je peux le refaire. Les mises à niveau pour une seraient
deux, etc. Visual Studio ne fait que
faire des suggestions. Ce ne sont pas
nécessairement les valeurs car elles
sont évidemment excellentes. Alors peut-être que vous avez obtenu 25 points, peut-être que les élèves ont trois au carré 38, et peut-être que l'étudiant
quatre en a obtenu 45. Remarquez que c'est l'étudiant
quatre parce qu'il
s'agit d'un, de deux, de trois, puis de quatre. Même si les adresses sont 0123 et je pense que nous avons
épuisé 12 ans, aucun droit d'entrer dans les
notes pour tous les élèves. Je finirais avec des lignes, on peut laisser cet élève 12345, les cinq étudiants et
ils auront leurs notes. Mais je vois que
c'est un peu fastidieux. Si vous pensez que c'est
fastidieux, je suis d'accord, car si je l'augmente
à 25 et que vous deviez écrire 25 lignes comme
celle-ci, ce ne serait pas très efficace. Jetons également un coup d'œil
à ce qui se passerait si j'ajoutais des notes de cinquième année. Donc, si je disais que les grilles
indiquaient cinq ou sixième année autre, j'ai dit que vous aviez 60 ans. Si j'ai essayé d'exécuter cette application pour que vous puissiez
passer à des zones lorsque
votre projet de démarrage appuie sur votre
bouton ,
puis regardez cette exception
non gérée que nous venons de traverser,
sauf en ce qui concerne la gestion. Maintenant, je reçois une exception
non gérée. Et ce type d'exception est exception
System.Out index hors
plage. J'ai besoin de voir
que l'index était en dehors des os du tableau. Il s'agit donc essentiellement de me
dire que vous
avez cinq espèces. Vous m'avez demandé cinq espèces. Pourquoi essayez-vous de mettre
une sixième valeur dans quelque chose
qui n'a d'espace que pour cinq, cet index hors du tableau des os ? Essentiellement, vu que
vous essayez d'
accéder à un espace qui n'existe pas à
l'intérieur des os du tableau. Très bien, c'
est pourquoi il est très important de comprendre que les chiffres vont de
0 à n moins un. Si n correspond à la taille du tableau, c'est très illégal. Sachez qu'une autre façon que
j'aurais pu attribuer ces valeurs serait
dans une ligne comme celle-ci. Si je disais que les grilles
seraient égales à un nouveau int. Et puis fourni des accolades bouclées ,
puis a procédé à
mettre ces valeurs. Donc un mod 2538, **** 4554. Et ce sera une belle
doublure pour attribuer des valeurs. Je n'aurais donc pas besoin de six lignes. J'aurais pu tout faire en
une seule ligne parce que, bien sûr, suffit d'initialiser
le tableau ici. Commentons
tout cela, prétendons que j'aurais pu initialiser
ce nombre d'espèces. Non. Disons que nous ne
savons pas que les notes de fronts
écrivaient une application, ce qui va probablement être
le cas où l'écriture d'une application permettra aux utilisateurs de nous
fournir ces grilles. Donc je veux dire, en général,
vous ne voudriez pas
écrire
un programme en tant que responsable de l'informatique , puis
jusqu'à ce que vous les utilisiez tous, venez me dire
quels sont les diplômes je
puisse les inscrire pour vous. Vous ne voulez pas
leur donner le pouvoir de pouvoir entrer dans les
grilles elles-mêmes, quelqu'un d'entrer. Ensuite, nous allons
regarder en entier. Nous pouvons écrire un programme
qui permet à l'utilisateur de
passer en revue et d'insérer
chacun d'entre eux. Nous allons donc utiliser des boucles d'une
manière plus pratique. Non, pas seulement un exemple. Nous avons donc fait quelque chose
comme ça dans notre exercice de
manipulation de cordes, où nous avons eu l'IRI et vous vouliez
parcourir notre tableau. Tu te souviens de ça ? Je voulais parcourir la baie de disques en
boucle. Nous pouvons faire quelque chose de
très similaire à cela. Donc je vais voir
pour top tub int I, rappelez-vous que je suis juste mon
comptoir est égal à 0. Voici donc encore un point très
important. Pourquoi commençons le cône à 0, car notre tableau
va commencer à 0. Comme nous considérons la pertinence. Le suivant. C'est que vous pouvez toujours
voir quel que soit le nombre. Mais ensuite, en codant en dur
le numéro comme celui-ci, vous ne savez pas si
demain
il faudra 15 ou 55. Ainsi, lorsque vous codez en dur le numéro
dont vous devez vous souvenir que chaque fois que vous risquez modifier la
taille du tableau, vous devez modifier la boucle for-loop, ce que vous pourriez oublier. Nous sommes tous humains. C'
est pourquoi nous voudrions probablement utiliser la longueur des points du
tableau, quelle que soit la longueur
qui finit par être. Nous obtiendrons cette longueur
pendant l'exécution. Et nous savons que nous allons atteindre N moins une de cette longueur. Ensuite, nous avons
notre incrémenteur. Sachez qu'une fois que nous aurons
écrit tout ce code, nous allons demander à l'
utilisateur d'entrer les notes. Je suis donc allé dire
console dot readline. Chaque fois que la boucle tourne, je veux inviter
les utilisateurs à entrer en cupidité. Et je vais juste
faire de l'
écriture de points de console pour que ce ne soit pas,
je ne voulais pas de ligne. Et puis je peux dire des grilles avec l'indice de
n'importe quelle valeur de moi. Très bien, alors laissez-le s'
imprégner un peu. Rappelez-vous qu'au départ,
je pourrais dire me donner cette adresse exacte et je
peux ajouter le numéro. Très bien. Non, je veux que ce soit
un peu plus dynamique. Je ne veux pas le coder en dur. Je veux qu'il soit dynamique. Je sais donc déjà que la
boucle commence à 0 et qu'elle va ajouter
moins un de tout. C'est aussi grand que celui d'Ari. Je peux donc compter sur un, comme compteur pour passer de 0 à
la fin du tableau, un par un, aller juste à 0, puis un, puis deux, puis trois, puis quatre. Nous l'avons vu avec
les travaux for-loop. C'est le compteur dans
les œuvres de la boucle for-loop. Ici. Je vais juste dire, donnez-moi des grilles à l'
indice de I. Dans ce que j'aimerais stocker, je ne veux pas dire
convertir en int 32 et obtenir la valeur de
la console utilisateur. Ligne de lecture des points de la console. Je vois chaque fois que vous passez
par chaque indice, allez me chercher la valeur
de l'entrée de l'utilisateur, convertir en int et en
stockage au lieu de ma baie. Cela semble
assez simple et simple, n'est-ce pas ? Voyons comment cela fonctionnerait. Donc, quand je m'exécute et que je
saute sur ma console, vous voyez ici que c'est en pause. Il attend juste que
j'entre dans la grille. Il s'agirait donc d'
entrer dans la grille en indice 0, car il s'agit de la première exécution. Et en première année,
j'ai
regardé ce qui se passe lorsque
j'appuie sur Entrée en boucle. Il est allé à l'outil, il
est allé à l'incrémentation
du compteur. Je sais que c'est au
deuxième espace en indice attend cette valeur de grille. Il s'agira donc de 2538
, puis de 45, puis de 54. Et puis regardez là, il a
demandé qu'il y ait 001234 espèces. L'IRI, si j'
augmente encore 150 jusqu'à un à un de
moins que l'espace iris. Joli et simple. Sachez que nous avons
collecté les valeurs. Regardons en attente, présentons-les à l'utilisateur. Donc je suppose que j'
espère que vous réalisez maintenant que le moyen le plus simple de
parcourir un tableau est d'
utiliser une boucle for. Je vais donc mettre un peu plus d'impression
autour de ces exercices. Entrez donc toutes les grilles. C'est juste le
chauffage pour voir où entrer toutes les grilles. Et puis celui-ci va
voir les notes que vous
avez saisies sont celles que
vous avez saisies, êtes-vous entrées. Ensuite, nous allons les
imprimer ci-dessous. Encore une fois, en
avançant la boucle FOR, juste pour la tablette supérieure,
elle a généré ce talon. Nous allons prendre
la longueur de la matrice. Ainsi, la longueur du point du nom du tableau. Et puis on va
voir des points de console, non ? Nous allons
simplement imprimer des grilles. L'indice de I. One va le
remplir sur un seul va simplement le
régurgiter à l'écran.
C'est une terre de rat. Nous les verrons un par un. Laissez-moi tester ce
vieux avec vous. Nous voyons la grille Inter. Je vais juste mettre quelques valeurs
de grille aléatoires. Puis, après les avoir
entrés, il tire. Les États-Unis acceptent
que vous ayez entré notre 1020 pour envoyer la même commande
que celle que je leur ai saisie. C'est le même ordre. Ils sont imprimés parce qu'
il s'agit d'une collection structurée. Il sait ce qui était le premier, ce qui était malade,
ce qui était le troisième. Si je voulais en imprimer
un en particulier. Je pourrais facilement dire
la ligne d'écriture de points de console, et les notes C avec
un indice de C. Three. Cela me donnera les quatrième
éléments quoi qu'
il en soit, ce sera toujours le quatrième élément
car c'est comme ça que je peux y
accéder facilement si je réexécute
cette application, n'
imprimerait pas toutes les dégradations. Oui, vous allez imprimer la
première grille à entrer, puis elle affichera la
quatrième note Entrée, puis la deuxième année Entrée
puis la quatrième note. Parce que, au lieu d'être
dynamique avec l'adresse, je regarde toujours
l'adresse numéro trois. Très bien, donc c'est
vraiment comme ça que fonctionnent les tableaux. Donc, lorsque nous passons à des tableaux de taille
variable, Non, c'est à
ce moment que nous
parlons d'une situation
où vous ne savez peut-être pas nécessairement combien de
grilles doivent être saisies. Je peux donc définir une artère de taille
sur place. Commençons par
lui donner une valeur par défaut. Donc si j'ai dit int grids, disons que si je sais que c'est
juste d'accord pour que nous puissions changer le nom. Donc, int les grilles finales
en crochets, les grilles
finales ou vous savez quoi ? Permettez-moi d'essayer un autre type de données afin que nous ayons une certaine couverture. Essayons une ficelle cette fois. Par conséquent, les noms d'étudiants à chaîne
sont égaux à connaître. Rappelez-vous, si je dis nouveau tableau de chaînes de cinq
et que je le verrouille dans une taille. C'est bon ? Le problème
, c'est qu'ils doivent
toujours avoir une taille. Ils ne sont pas dynamiques. Vous avez d'autres
types de collection dynamiques. Le bouton n'est pas si dynamique. faut toujours lui
indiquer la taille. Donc, même si j'ai
dit taille variable, ce n'est pas vraiment une
taille variable dans le sens réel. Au lieu de cela, ce qui
se passerait ici, c'est que je devrais
voir une nouvelle chaîne RE, pas vous donner cette taille définie. Vous verrez que
j'y arrive. La ligne représente la
plupart d'entre nous la taille ou un initialiseur de tableau. Je peux donc utiliser cette méthode d'initialisation
que j'ai montrée ici. Maintenant, ce qui se passe,
c'est qu'il prendra sa taille fonction
des valeurs du nombre de
valeurs à insérer. Je peux donc voir un test, un
étudiant, etc. Donc, à ce stade, noms des
étudiants sont un tableau
qui n'a qu'une taille 4123. Il peut donc arriver que
vous initialisiez
un tableau et que vous examiniez
peut-être la liste, mais vous ne connaissez pas
le numéro à voir. D'accord, j'en ai cinq ici. Il peut être 20, peut-être
21, 70 ans. Pour écrire un numéro que vous
ne seriez pas en mesure de calculer
simplement en regardant la liste. C'est là que ce genre de déclaration serait
utile. Alors, ce qui
arriverait, c'est
que vous allez de l'avant et que vous
les énumérez comme ça. Et quand le programme exécute, il ne le saurait pas. Ok, j'ai trois places
ici 72. J'ai besoin de 72 espaces en mémoire pour mes noms déjà appelés
étudiants. Non, pour ce qui est de l'interaction
avec cette RE, c'est vraiment le même principe. Il s'agira de la même
impression sur toute la couture. Interaction sur l'insertion de valeurs. Vraiment et vraiment, je
ne vais pas déclencher la répétition de
passer par là. Vous disposez déjà de
ces exemples de code. Vous pouvez, voici un exercice pour examiner comment
vous
imprimeriez réellement les valeurs des valeurs cette RA et comment
vous les imprimeriez. Très bien, j'espère que
vous avez relevé le défi. Si ce n'est pas le cas, alors c'est le cas. Si vous vouliez essayer
et qu'elle ferait une pause, ne regardez pas ce que je vais
expliquer et essayer vous-même. Mais à peu près j' aurais juste reproduit
ça pour le voir en boucle. Alors, j'ai dit entrer tout
ce qui devrait être des noms. Littéralement, j'ai copié et
collé tous les noms. Et puis pour chacun, désolé, pour int je suis égal à 0. Je suis moins que la longueur du point
des noms d'étudiants. Et puis nous allons
entrer le nom et ensuite noms des
étudiants avec un
indice auquel je suis égal, car c'est une chaîne, je n'ai pas besoin de
convertir quoi que ce soit. Donc je peux juste dire point de
console, lire, ligne. la même façon, lorsque j'
imprime, j'ai le même type de boucle
for-loop et je fais juste une ligne de lecture de console sur les
noms d'étudiants avec un indice I. Donc c'est vraiment tout pour les tableaux. Lorsque nous reviendrons, nous
allons examiner les listes, qui sont une liste dynamique
ou un type de collection
ici dans C-Sharp.
21. Listes: Très bien, les gars. Nous sommes donc en train de
sortir des zones de discussion et je viens apprendre à faire un récapitulatif
rapide pour que nous
puissions regarder en arrière ce qu'ils sont. Ma définition personnelle d'
un tableau est une collecte de données contiguë et homogène. Ce qui signifie qu'ils
sont contigus, ils sont côte à côte. Donc, vous avez REEE S1
comme, Eh bien, j'écris ces
tuyaux les uns à côté autres en mémoire là-bas. Très bien, l'un à côté de l'
autre, à peu près. Je descends la
ligne comme ça. Vos données sont donc stockées dans une chaîne comme
celle-ci, contiguë. Et ensuite homogène, ce qui
signifie que vous ne
pouvez avoir qu'un seul type de données aqua icon pour avoir un tableau contenant la fois des chaînes
et des entiers. Donc, soit il y aura
des chaînes, etc. C' chaînes, etc. est-à-dire qu'un tableau
n'est pas l'une des limites d'
un tableau, c'est qu'il
doit toujours connaître sa taille. Il est donc difficile d'être dynamique dans une institution où l'on
ne connaît pas la taille à l'avance. Parce que vous
allez
le définir avec un espace
suffisamment grand pour
couvrir tous les scénarios. Mais ensuite, vous allez
réserver 255 espèces en mémoire alors que
vous n'en utiliserez que dix. Ce n'est pas très efficace. C'est des ordinateurs entiers qui font la guerre, pas de blocage de temps sous une charge
lourde de
programmes à cause de
décisions que ceux-ci, l'alternative serait que vous ne connaissez pas la
taille de l'interface, mais en fonction les données que
vous fournissez, vous pouvez en déduire qu'elles ne sont toujours pas très efficaces car vous
devez tout saisir dès le départ pour
commencer à les utiliser. Ce que nous voulons
faire maintenant, c'est examiner type de collection
dynamique appelé liste, et qui est disponible
dans C-Sharp. Je vais donc sauter par-dessus, créer ces nouveaux projets, une nouvelle console et j'appelle
cette collection de listes. Bien sûr, nous utilisons dotnet six et nous créons
cette nouvelle application console. Lorsque nous parlons de listes, la syntaxe va
ressembler à celle-ci. Nous définissons que nous voulons énumérer. Et puis je dis que je voulais
au moins savoir quel type de données, le type de données ici, comme avec le
tableau, peut être n'importe quoi. Il peut s'agir au moins d'une chaîne, il peut s'agir
d'une liste d'entiers, etc. Alors faisons des chaînes. Et je vais
appeler ça des noms. Ensuite, je suis allé l'
initialiser dans une nouvelle liste de chaînes. Vous commencerez à voir
que nous avons affaire à types
beaucoup plus complexes
qu'intenses, car vous commencez à
voir que nous devons voir nouveau design
égal que lorsque nous passons à l'
objet exercices orientés, vous commencerez à
comprendre pourquoi certaines déclarations
de variables
doivent ressembler à ceci plutôt
que lorsque nous
voyons simplement que la chaîne est égale à cela. Nous devenons un
peu plus complexes, mais les pas de bébé, mais
c'est tout ce que nous déclarons une liste. Comme je l'ai dit, il s'agit
encore une fois d'une collection
homogène contiguë, sauf qu'elle ne nous est pas fixée
comme initialement. Par conséquent, au lieu d'avoir une
variable appelée nom, nous créons une liste
de noms potentiels. Voyons comment nous
ajoutons des valeurs à notre liste. Au lieu de zones similaires où vous deviez utiliser le point
fixe car je peux toujours dire que les noms avec le nom d'index 0 devraient
avoir la valeur ici. Je ne peux pas faire ça. Les listes vous permettent de le faire car l'entrée
réelle
est au moins construite au-dessus de la
construction générale qui est un IRI. Donc, c'est comme, voici un gros mot ni une
extension d'un tableau. Ils ont donc vu les
limites de la zone, alors ils en ont fait une extension. Mais à la base,
nous pouvons encore faire certaines choses qui vous
permettraient de faire. Mais ils ont également créé d'autres
fonctionnalités pour vous. Vous avez donc vu que Visual
Studio
me suggérait de voir des noms
, ajouter un nom, ou ajouter toutes les valeurs que je pourrais ajouter à mon nom. Il s'agit donc de deux façons. Savoir la différence
entre ces
deux-là , je dois connaître
l'adresse exacte à laquelle j'ajoute l'outil de nom, que je ne peux pas connaître pendant l'
exécution pendant l'exécution de l'
application. Je ne sais pas si 50 noms sont déjà
entrés ne sont que dix. Je ne sais pas. Donc, en essayant d'accéder
à une adresse,
je pourrais rencontrer le problème d' accéder à une adresse qui n'
existe pas encore parce qu'elle n'est que dix et j'essaie de la
mettre dans l'espace 50, ou je la mettrai dans l'espace
50 et puis finissez avec des espaces
vides entre
10501149 seront vides. Encore une fois, ce n'est pas efficace. Nous voudrions donc nous
fier au programme, la méthode, désolée, qui nous a été fournie
appelée point AD. Nous voyons le nom de la liste, qui est des noms, des noms, des points ajoutés. Et puis nous lui donnons la valeur, saura qu'il
devrait le placer dans cet espace parce que cet
espace est le prochain en ligne. Si l'un d'eux est supprimé, tout se réordonne automatiquement. Vous pouvez donc supprimer et ajouter autant de choses que vous le souhaitez. Je peux retirer Trevor. À partir de là, je suis désolée. Je peux éliminer les problèmes ou de
cela simplement en voyant le Dr bouger partout où il est trivial ou en utilisant la liste des dates que la première
étoile à coller sur notre troisième, il va aller de l'avant
et le supprimer, puis réorganiser tout pour
que l'adresse soit 0 à la longueur moins une est
toujours intacte. Les listes sont donc beaucoup plus
dynamiques que les tableaux. Si vous essayez de supprimer ou de supprimer des DSPS
MTO dans une baie, nous effectuons l'exécution,
cela ne fonctionnera tout simplement pas. D'accord ? Très bien, voyons comment nous
pourrions ajouter des valeurs à des corps
plus dynamiques. Je vais donc écrire
une petite console. Et je vais juste dire
entrer des noms. C'est bon ? Et puis ici, je vais
utiliser plus comme une boucle de temps. Pourquoi est-ce que j'utilise une boucle While ? Parce que je ne connais pas le
nombre d'articles que je veux. Je ne peux donc pas passer par notre comptoir. Si j'ai écrit ce
programme pour une école, aucun des programmeurs ne
peut supposer que l'école ne
compte que 100 élèves. Ils en ont peut-être dix et
ils en ont peut-être mille. Je ne peux donc pas utiliser
une boucle for-pour dire, passer par et faire cela plusieurs fois parce
que la longueur ici va être déterminée par le nombre
de choses qui entrent. Une boucle de temps serait
mieux parce que je peux alors une condition par laquelle
ils peuvent quitter cette opération. Alors rappelez-vous que la boucle while ou même la boucle do-while, sont des
boucles contrôlées par condition, n'est-ce pas ? Je peux donc voir le nom, disons nom, donc
nous avons un nom de chaîne. Vous pouvez déjà le redéfinir. Vraiment curieux de savoir si
vous l'aviez effacé. Et initialisons manuellement
le point de chaîne vide au lieu de la
chaîne vide. Et puis j'ai
dit que le nom n'est pas égal à la valeur négative. Très bien, je vais vous
montrer maintenant comment nous écrivons des
programmes à l'aide de boucles
contrôlées par condition. Vous avez toujours
cette condition de sortie et vous pouvez
l'écrire de plusieurs manières. Vous pouvez écrire le nom
n'est pas égal à un nom négatif. Vous devez également écrire
ce nom point égal. Il y a un film égal à Shaun sur une chaîne qu'ils peuvent utiliser lorsque vous voulez
le comparer à une autre chaîne. Très bien, je ne
pense pas avoir mentionné cela avec la
comparaison des chaînes plus tôt. Vous pouvez donc dire que le nom est égal à ce que vous
vouliez quand ce n'est pas le cas. Donc, vous pouvez voir, pas d'accord. Vous pouvez voir que c'est l'
équivalent de faux. Oh, il y a tellement de
façons d'écrire du code, encore
une fois, la moitié à explorer. Très bien, donc c'est
une façon de l'écrire. Je vais juste vous montrer
toutes les façons de l'écrire. Ensuite, vous pouvez simplement voir que
cette explication ne dit
pas seulement que ce n'est pas égal. Je dis juste que si
cela est faux, alors qu'il n'est pas égal à
négatif, alors continuez. Laissez-moi les laisser coder un peu de blues là pour
votre référence plus tard. Je vais aller de l'avant
avec celui-ci. Alors que le point de nom est égal,
ce n'est pas vrai. C'est ce que signifie ce signe
d'exclamation. Ensuite, nous voulions
continuer à boucler. Je suis allé demander le nom de l'
utilisateur. Je vais voir le
point de la console écrire le nom. Et puis je vais dire que le nom est égal à la ligne de lecture du point de
console. Je charge donc l'utilisateur
pour entrer le nom. Et puis je vais voir le nom,
les points, Désolé, les noms qui ne sont
pas en mesure d'ajouter des points. On y va. Et nous ajoutons le nom
qui a été saisi, qui est bien sûr une chaîne. Je peux donc simplement ajouter ce
nom car il s'agit d'une chaîne. Cela signifie que sachez que
c'est possible une nulle. Cela signifie que si la
personne n'a rien entré, voulez-vous vraiment entrer
une chaîne vide ou quelque chose dans la zone des noms est plutôt
la liste des noms. C'est donc là que je vais
faire une déclaration si. Sachez donc que vous voyez que cela
devient de plus en plus complexe à
mesure que notre programme, alors que nous élargissons nos horizons, nous commençons à
regarder comment nous mettons une déclaration if à l'intérieur d' une boucle de temps et comment nous sommes
interagir avec cette liste. C'est ce que nous appelons l'
imbrication lorsque vous avez une
structure de contrôle constante à l'intérieur d'une autre instruction if au lieu
d'un moment est une imbrication. Très bien, je peux voir si une
chaîne est nulle ou vide. Alors, faisons-le. S'il n'est pas nul ou vide, regardez ce nœud et il
n'est pas égal à un nœud négatif. Jolie et complexe si la
déclaration a été obtenue, alors nous pouvons l'ajouter. Allons par le haut. Bien que notre nom ne soit pas
égal à négatif, ce qui ne sera pas le cas parce que nous l'avons initialisé sur
une chaîne vide. Il est donc vide. Et c'est que cette pré-vérification va passer car
elle ne sera pas
négative avant qu'elle ne frappe ici fonction de la façon dont nous avons
écrit ou programmé. Ensuite, je vais
dire entrer le nom, accepter l'entrée de l'utilisateur. Ensuite, seulement si l'entrée de
l'utilisateur n'est ni nulle ni vide et que l'entrée de l'utilisateur n'est pas
égale à négative. Cette fois-ci, nous devrions l'ajouter. Cela signifie que s'il est vide, alors il ne l'
exécutera pas si bloc,
il échouera à cette condition et ensuite il
reviendra et vérifiera. Mais alors ce n'est toujours
pas négatif, donc il reviendra
dans la boucle. Si je saisis un négatif, alors il échouera cette vérification car maintenant
c'est négatif, donc il n'entrera toujours pas, reviendra pas,
puis il quittera. Très bien, c'
est ainsi que nous utiliserions une boucle while pour demander des noms à l'utilisateur jusqu'à ce
qu'ils soient terminés. Parce que quand j'aurai fini, je peux en mettre un négatif. C'est donc ce que nous appelons
les critères de sortie. Et c'est généralement une valeur
obscure par rapport au contexte que l'utilisateur ne
mettrait jamais par défaut, je veux dire, qui met
un tas de noms, entrées en négatif. Essayons donc celui-là. Il s'agit donc de collections de listes. Commençons. Très bien, donc nous
sommes invités à entrer le nom. Je vais donc entrer dans le trope
ou je suis allé au test. Je suis allé entrer dans Matthew. Je suis allé entrer dans John. Toutes ces valeurs. Remarquez que ça continue tout simplement. Je vais juste continuer à
taper et à appuyer sur Entrée. Il ne guérit pas. C'est juste accepter les valeurs. Et puis quand je suis
personnellement négatif, c'est à ce moment qu'il sort,
c'est l'âme. Non, vous
seriez en mesure de saisir des valeurs sur l'utilisateur est satisfait. Si vous le souhaitez, vous pouvez mettre
une autre petite invite ici pour savoir quand la valeur a été saisie quand elle n'a pas été saisie. Parce que s'il est
entré et que vous pouviez voir que le nom a été inséré. Je ne peux donc pas simplement
interpoler cette chaîne. Ensuite, il suffit de voir que la valeur du nom
a été insérée avec succès. Ajouté, réussi. Laissez-moi voir, j'ai ajouté. Très bien. Ainsi, l'utilisateur
recevrait des commentaires. Oui, vous avez indiqué ce nom, il a été ajouté avec succès. Ou plutôt, vous le mettriez
après l'avoir ajouté. Il a été ajouté avec succès. C'est ainsi que nous remplissons
notre liste de valeurs. Maintenant, comment imprimer nos
valeurs à partir de cette liste ? Par conséquent, imprimez les valeurs dans la liste. Eh bien, nous avons
encore une fois quelques options. Nous pourrions réutiliser le moment. Je pense qu'il faut beaucoup de
coordination pour utiliser le tout. Je vais donc ignorer
l'exemple, mais nous avons déjà un moyen faire sous la
forme de la boucle for-loop. C'est. N'oubliez donc pas que les listes sont construites au-dessus de la
construction d'une RA. Je pourrais simplement
écrire une boucle for-loop qui va de 0 à la
longueur de notre liste. La liste s'appelle donc des noms et je peux voir des noms, des
pensées, des cônes. Celui-ci n'a pas de longueur, mais il a des cônes. Les cônes obtiennent le
nombre d'éléments. Si vous voyez le contenu de Visual Studio, vous
obtiendrez le nombre d'éléments
contenus dans la liste. Très bien, comme je l'ai dit, parfois ce que vous voulez n'est pas nécessairement présenté
ou vous risquez de l'ignorer. Parfois, je finis par
défiler sur certains, j'élimine une propriété ou une méthode
ressemble à ce que je veux. Plus
récemment, Visual Studio a mis en vedette les méthodes
et les propriétés les plus utilisées, et vous les verrez en haut. Même s'il est ordonné par ordre
alphabétique, vous en
verrez certains en haut. Comme les cônes sont au sommet
parce que je pense que les gens veulent généralement
connaître le nombre de
choses de notre liste. Dot colon t, donc tu l'as compris. C'est là pour vous, j'élève sa
longueur de points avec des listes. On pense que les cônes
semblent avoir cet effet. Nous passons de 0
au cône à moins un. Ensuite, je pourrais facilement dire point de
console, écrire, imprimer, buck chaque nom appelé
nom d'octets de liste, puis lui donner
l'indice de I, va réellement
parcourir cette liste pour autant d'éléments que Nous sommes entrés. Parce que rappelez-vous,
Open ne savait pas, nous ne savons toujours pas
combien d'objets à attendre. C'est la première fois
que vous pouvez le faire. Ce serait donc l'impression. Laissez-moi juste faire l'écriture de
points de console, l'impression de lignes. Permettez-moi d'obtenir mes droits de déversement. Impression de noms via une boucle FOR. C'est ce que fait ce premier. Maintenant, la raison pour laquelle je spécifie
for-loop, c'
est que vous pouvez également utiliser un autre type de
boucle spécialement conçu pour
ce genre de situation, qui a reçu
une mention honorable lorsque nous étions en regardant les déclarations de
répétition, mais je n'y suis pas arrivé
parce que le moment n'était pas venu. Et c'est la boucle pour chaque boucle. Maintenant, nous savons comment, ou nulle part, voir
comment la boucle pour chaque boucle, n'est-ce pas ? Je vais donc dire console. Je vais juste dupliquer
cette diapositive ici. Et ce serait
une boucle de foreach. Maintenant, la boucle pour chaque boucle, vous commencez à taper pour
chacune d'elles, puis vous appuyez deux fois sur Tab et
cela génère ce talon pour vous. Donc pour chacun, et vous
verrez que c'est Var. Nous examinons ce qu'est var plus tard. Ce que je vais être fortement tapé ici et dire
string parce que c' est une collection de chaînes. ficelle. Ensuite, nous voyons l'objet. Quelle est la collection ? Nous devons appeler la
collection par son nom, la collection ici
au moins terminée, c'est-à-dire les noms. Il s'agit essentiellement de dire que pour chaque
entrée de cette collection, pour chaque élément de la
collection de noms, il pourrait s'agir d'une densité plus
spécifique pour chaque nom de la
collection de noms, mais je ne peux pas le faire car j' ai
déjà une
variable appelée name, donc cela causerait de la
confusion. C'est très bien. Je vais juste le laisser comme objet. Ce que je veux dire,
c'est que cela va passer par quel que soit le nombre d'articles
de cette collection, qu' il
s'agisse de 110105 mille, passera par chacun. Stockez-le ici pour l'
exécution de la boucle. Et puis à chaque fois qu'il tourne, il obtient le nouveau. Vous pouvez faire ce que vous
voulez faire avec le nouveau. Comme je l'ai dit, nous
voulions les imprimer. Je vais juste dire point de
console, écrire une ligne. Et tout ce que je vais
faire, c'est imprimer un article. Très bien, c'est tout
ce que ça fait vraiment. C'est une boucle pour chaque. La boucle pour chaque boucle est parfaite. Je n'ai pas à m'
inquiéter des cônes. Je n'ai pas à m'
inquiéter d'un critère de sortie. Tout ce que j'ai à faire, c'est dire que pour chaque variable de
cette collection, faites tout ce que vous devez faire. Joli et simple. Très bien, alors jetons un coup d'œil à
ce que cela produira. Je suis allé entrer
quelques noms ici, donc nous voyons le noeud vu *********
ajouté avec succès. Acheté, j'ai fait une
écriture point de console au lieu de la ligne droite de
la console R. C'est pourquoi il
imprime tout ça, mais je pense que nous le
saurions maintenant. Je ne vais donc pas
insister sur celui-là. Je ne fais que saisir des noms. Après avoir saisi tous
ces noms, lorsque j'appuie sur un négatif, vous verrez qu'il est passé
par la boucle for, imprimée. Et puis il a passé par
la boucle pour chaque boucle et l'a imprimée directement. Pour moi. La boucle foreach est tout simplement
beaucoup plus facile à formuler car elle nécessite un peu
moins de coordination. Mais il existe
des situations où vous n'
auriez pas besoin d'une boucle
for-loop avec la liste, mais le contexte détermine
votre exécution
la plupart du temps, il est bon de connaître les outils que vous avez en main. Mais celui à
utiliser quand est généralement déterminé par vos
besoins en ce moment. C'est tout de ma part sur
le sujet des listes. Je veux que vous expérimentiez, essayez des listes avec d'autres types de données, comme des tableaux avec
d'autres types de données, et écrivez d'autres programmes
pour accepter des valeurs. Essayez d'écrire un programme qui
accepte plusieurs baies. Ou au moins, vous
pourriez avoir des noms, des noms d'
étudiants et des grilles. Ensuite, vous écrivez une
boucle pour entrer dans les deux, puis vous
les imprimez tous, créativité et explorez.
22. Introduction aux cours et aux objets: Hé les gars, dans cette leçon,
nous allons commencer à discuter de la programmation
orientée objet. Non, j'ai déjà dit
que C-sharp est un langage de
programmation orienté objet. Et il y en a
quelques-uns. Java est très populaire. Python, Ruby, C plus, plus. Tous sont également
orientés objet dans des langages
de programmation. La différence entre les
langages de programmation
orientés objet et les
autres langages de programmation
sera donc langages de programmation
orientés objet et que les
langages de programmation
orientés objet nous permettent créer nos propres types de données. Et nous le faisons par la définition de ce que
nous appellerons une classe. Pour commencer,
créons un nouveau projet et nous appelons
celui-ci des classes et des objets. Allez-y et appuyez sur Pause,
créez le projet. Et nous pouvons commencer
à regarder ce qu'est la classe. Nous avons interagi
avec les classes pour savoir que Console est une classe. Et j'aurais
fait remarquer qu'en se basant sur le codage des couleurs, on verrait qu'il
y a des classes, n'est-ce pas ? Console est donc une classe. Lorsque nous avons regardé au
moins les collections. Nous avons également examiné une classe, et cette classe s'appelle liste. Et je
vous aurais montré que la déclaration de ce genre d'objet était
légèrement différente d'un. Nous ajoutons notre type de données irrégulier. Nous dirions simplement que le
type de données est égal à tout. List est en fait un type de données très spécifique
qui a été créé. Ce n'est pas l'un des types de données
primitifs
que nous appelons. types de données primitifs seraient ceux
que nous aurions utilisés
au début. Vous n'êtes pas dans la
chaîne, le char, le bool. Tous ces éléments sont primitifs. Remarquez qu'ils sont tous
de la même couleur. Préventifs car ils sont aussi
basiques que les types de données peuvent l'obtenir. Mais ils ne
fournissent pas nécessairement tout ce que nous voulons. Donc, afin capturer certains battements de
l'inflammation, comme lorsque nous
devions faire le programme pour obtenir
tous ces bits de données, nous devions disposer de 12345 variables pour collecter des données sur une seule personne. Nous devons avoir l'âge du nom complet. Mais que se passe-t-il si je voulais une
représentation d'une personne ? C'est là que la création de votre
propre type de données intervient. L'objet ou la programmation
sont donc liés à la création de
vos propres types de données. Vous êtes un type de données puisque c'est
vous qui le créez, vous pouvez déterminer
quelles sont les propriétés, quelles méthodes peuvent être impliquées. Nous
le faisons en définissant ce que nous appellerons une classe. Une classe est un plan directeur de ce
que va être l'objet. L'objet est la
manifestation de la classe. Pensez-y
comme avec un hôte. Lorsque vous
allez construire une maison, vous devez la mettre sur papier, vous devez définir,
nous surveillons l'objectif, la taille de chaque pièce si tout est fait dans une représentation
visuelle, une représentation 2D,
c'est le plan directeur. Toutefois, lorsque vous
créez l'hôte, c'est la manifestation
du Blueprint défini. Et si vous
avez plusieurs trous est construit à partir de ce plan, vous avez plusieurs
manifestations. Donc, si nous devions le faire dans OOP, le dessin des plans serait notre classe, c'est le contour. Ensuite, chaque hôte est
un objet de la classe. Pour définir une classe, nous semblons utiliser la classe de
mots clés, puis nous lui donnons un nom. Donc, si j'utilise une personne qui
n'est pas le nom de la classe, alors j'ouvre et ferme. Mon mémoire dit que mes bretelles bouclées savent que dans la
définition de la classe, nous
devons lui donner des propriétés. Vous voyez donc Visual Studios
ici faire une suggestion. Je vais le faire
manuellement pour pouvoir expliquer ce que chaque partie signifie. Les propriétés se réfèrent à l'objet,
disons les
connus. Ainsi, dans le cas d'une personne, ce qui est inconnu sur la
personne de données est inconnu, donc c'est une propriété
d'une personne. Le nom est la propriété de
la personne juste là. Répondez à toutes les
informations sur un bateau, une personne dans ce contexte, un bateau ou quelle que soit
la classe, chaque information
est en effet à la hauteur. Pour obtenir d'abord la propriété, donnez-lui un modificateur d'accès. Vous en avez donc
différents. Vous avez du public. Cela signifie que 170
ne peuvent pas taper une personne, je peux accéder à leur
tout ce qui est public. Ensuite, je dois
lui donner un type de données. Donc, chaîne publique, et ensuite quelque chose qui est accessible au
public, la plupart des personnes sont leur nom. Donc, en réalité, le nom est
une très bonne suggestion. Je sais ce que c'est. Probablement être accessible
au public à propos d'une personne
serait là chacun parce que chacun
ressemblerait davantage à un int. Et puis je dirais l'âge. Et remarquez qu'il y
a cette accolade bouclée ouverte,
puis obtenez un point-virgule,
puis asseyez-vous, obtenez un point-virgule, puis placez un point-virgule
puis une accolade bouclée fermée. C'est ce que
vous appelez des accessoires. Ils vous permettent donc d' obtenir la valeur impliquée
ici sont stockées ici. Et celui-ci vous permet de
placer la valeur stockée ici. Donc, en voyant se désinstaller, cela signifie qu'une fois que
j'interagis avec une personne que j'ai levier pour obtenir ce qu' est
son nom ou m'asseoir
ce qu'est son nom, obtiens ce qu'il est, Asseyez-vous quel est leur nom. Très bien, alors classe,
donnez-lui un nom. J'ai remarqué juste en
voyant ici un cours qui prend un niveau que
j'ai écrit. Null a la même couleur
que la console et la liste et tous les autres parce que
c'est seulement moi qui crée mon type de données. Ce type de données complexe utilise des
types de données primitifs à l'intérieur. Une personne a un nom, a un âge, peut posséder
d'autres propriétés. Avant d'aller de l'avant, je vais diviser les sels. Donc, d'une manière générale, vous
ne voulez pas simplement stocker le nom, vous vouliez stocker le prénom et stocker LastName. Remarquez également la
convention de dénomination, je n'utilise pas de lettres courantes, ce n'est pas si j'utilise la
lettre commune, cela fonctionnera. Il n'y aura aucun problème. Mais si je vais ici et que je
contrôle Visual Studio suggérant
d'utiliser une majuscule jusqu'à présent des
propriétés dans une classe, il est suggéré d'
utiliser la majuscule, ce n'est qu'une norme. Ce n'est pas seulement ça qui fonctionne. Les bits ne font qu'un. Nous sommes à. Le coude n'est qu'
une norme et je vous
signale toujours les anciennes normes
et les meilleures pratiques. Public est l'accessoire
qui me permet d' accéder
à tout ce qui
concerne cette personne, le prénom, le
nom de famille et l'âge. Maintenant, une autre chose que
je voulais mettre en avant
même que nous
commencions à regarder des objets. Je
vous montre toujours les meilleures pratiques. Vous ne
voulez pas nécessairement que
votre classe soit définie à l'intérieur d'une autre classe. Chaque classe
doit donc être dans son propre fichier pour les contextes. Et je vais juste tout
réduire ici sur l'Explorateur de solutions. Vous pouvez le faire facilement en utilisant
ce bouton pour tout réduire, il réduit tout. Et puis je peux cibler ce
fichier ouvrir ce fichier ici spécifiquement en cliquant sur cette synchronisation avec le document actif. D'autres raccourcis clavier, astuces et astuces de
Visual Studio vous
arrivent à droite. Voici notre
fichier program.cs qui fonctionne en cours de fonctionnement et il
s'agit d'un fichier program.cs. Cela signifie qu'il s'
agit d'un fichier de classe dédié au programme. Je veux que ma propre classe soit définie, mon propre type de données. Je ne veux pas nécessairement que cela soit défini à l'intérieur du programme. Il existe un autre principe selon
lequel nous adhérons à l'appellation principe de
responsabilité unique et unique. Ce principe
signifie essentiellement que chaque unité, la mesure du possible, n'a qu'une seule responsabilité. Notre fichier program.cs ne
devrait pas avoir la responsabilité de
définir notre classe. Je voudrais mettre cela dans sa propre classe et une façon
simple de le faire,
grâce à Visual Studio,
serait deux, alors que grâce à Visual Studio,
serait deux, vous pourriez facilement cliquer avec le bouton droit de la souris sur Ajouter un nouvel élément. Ensuite, vous pourriez dire que vous voulez un nouveau fichier de classe et qu'il
pourrait lui donner le nom. Je suis donc allé voir comme quelqu'un. Ensuite, il générera tout
ce bloc de code
indiquant l'espace de noms. N'oubliez donc pas que l'espace de noms
est le nom du dossier. Très bien, donc notre projet
discute d'un objet, donc c'est notre espace de noms. Ensuite, il génère
ce stub de méthode avec un autre modificateur d'accès appelé public
interne signifie que
n'importe qui peut y accéder, mais interne signifie
que seuls d'autres fichiers au lieu du même
projet peuvent y accéder. Très bien ? Je pourrais donc facilement le faire et
c'est là que j'ai ma définition de
classe. Non, j'ai
défini cette classe dans des fichiers complètement
différents. Donc, si je voulais
savoir où
traverse ma personne , je dois le trouver. Si mon programme avait un
millier de lignes de code, je n'aurais pas à les
parcourir toutes pour trouver la
classe personnes.New ECS. Et ce dossier a une
seule responsabilité de traiter tout ce qui est
lié à la classe de personnes. Très bien. Non, le
raccourci clavier pour faire cela aurait été de
faire le point de contrôle. Et puis il vous demanderait
en fait, voulez-vous déplacer
type vers personne point CSS ? Donc, cela
suggérerait que je peux simplement déplacer tout le
code vers un nouveau fichier pour vous. Si je n'ai pas créé
ce nouveau cours, permettez-moi de l'effacer
juste pour vous montrer. Je peux simplement contrôler les points et ensuite déplacer le type
vers la personne point cs. Ensuite, il ne
ferait que couper et coller pour moi et créer
cette nouvelle formule de fichier. Et on y va. Je vous montre simplement
les différentes façons dont vous pouvez le faire. Encore une fois, public. Qui a un public qui
peut faire partie de la classe. Vous avez de l'intérieur. Cela signifie qu'il n'est pas
public dans le monde entier, mais il est public à tout ce qui se
trouve dans le même projet. Ensuite, vous aurez un accès privé, ce qui signifie que vous avez besoin diverses
autorisations spéciales pour y accéder. Et même l'utilitaire Visual Studio, vous ne pouvez pas avoir quelque
chose de privé ici et tout le
reste est public. Ainsi, vous ne
voyez généralement pas de cours privés, vous verrez généralement des cours
publics et internes. Je suis donc allé laisser
celui-ci en public. Et toutes ces
propriétés sont également publiques. Maintenant que j'ai une
classe définie, par code, interagissez avec elle dans
mon programme principal. Disons que je voulais
écrire un programme qui me permette de renseigner les
informations pour une personne. Je me souviens qu'une personne pourrait
facilement représenter n' importe quel objet et propriétés
de cet objet que vous voulez. S'il s'agissait d'une boîte, il peut s'
agir de longueur, de largeur, de hauteur. Si une personne
devait être étudiante, il peut s'agir de prénom, nom, d'âge et de cupidité. Rappelez-vous la tête entière de
la difficulté de faire un tableau pour les notes sur
un tableau pour les noms. Nous pourrions tout faire à l'intérieur d' un type de Big Data appelé
personnel ou quoi que ce soit. Encore une fois, ce
n'est qu'un plan. Pour obtenir la manifestation
du plan directeur, nous devrions faire ce que nous
appelons une déclaration d'objet. Donc maintenant, je vais commencer à
voir l'objet au lieu de variable plus variable tend à faire référence à la manifestation
du type de données primitif. Pour obtenir un
type de données plus compliqué , on dirait le
nom du type de données, qui est la personne, appelé
le nom de l'objet, je peux dire cette personne. Remarquez que je peux en nommer un avec le P majuscule et un autre
avec un pois commun. Et c'est vraiment parce que
je pense que nulle part réaliser que c'est très fortement
dactylographié et qu'il est sensible à la casse, donc le capita apaise
complètement
différent du P. Alors je
vais dire que c'est égal à un
nouveau instance de la classe. Si cela semble
familier, alors c'est bien. Cela signifie que vous faites
attention lorsque nous avons fait notre liste, notre liste, quels que soient les noms égaux à une nouvelle liste et que nous ouvrons
et fermez l'accolade. Chaque fois que vous avez affaire
à une classe qui doit être déclarée, c'est
ce à quoi elle
va ressembler. Personne. Ensuite, le nom de
l'objet est égal à une nouvelle instance
de cet objet. Devinez quoi ? Il peut également comporter plusieurs instances
de cet objet. Vous pouvez donc avoir une
personne, une personne deux. Parce que la réalité
est que vous avez plusieurs personnes dans le monde. Ce que nous avons tous en commun, cependant, les propriétés définies, chaque personne a un
FirstName, LastName et chacun, sinon,
je reste corrigé. C'est le
plan général, et ce
sont là toutes des manifestations. Blueprint offset. Connaissez une façon abrégée d'
écrire ceci en C-Sharp, Huit vers le haut ou 900 mots
serait simplement de dire nouveau. Vous n'avez donc pas besoin d'écrire à nouveau
une personne qui est égale
à une nouvelle personne, vous pouvez simplement dire que la
personne est égale à une personne égale, puis nouvelle. C'est un point fort et nous nous laissons travailler avec
une personne pour null, écrivons une demande qui va accepter les
informations sur cette personne. Et puis il va l'
imprimer à l'écran qu'il soit dispersé. L'information est que je peux voir la ligne d'écriture point de console,
entrer, FirstName. Ce sont donc des choses
que nous avons faites. Nous savons comment
demander le prénom. Ce que nous ne savions pas
auparavant, c'est stocker tout à l'intérieur d' un objet pour que je
puisse voir une personne. Notez que la personne est l'objet
que nous avons défini. Je peux voir une personne des points. Et quand je parle de données, j'ai accès à un tas
de méthodes et de propriétés. Alors, comment puis-je connaître des méthodes
différentes des propriétés ? premier indice est que dans l'intelligence,
les méthodes vont avoir ce cube. Ensuite, les propriétés
vont avoir cette plage. Notre propriété
représente donc l'une de ces variables que j'
aurais définies ici. La méthode représenterait ce que
nous avons déjà examiné les méthodes. Pour que nous puissions réellement faire des méthodes, nous le ferons dans quelques uns. Donc, juste en ayant du lactose, il existe des
méthodes par défaut que nous
obtiendrions comme deux cordes. J'ai donc dit auparavant que
chaque objet C-Sharp peut faire àString ce qui n'
est pas toujours pratique. Il a les égaux,
obtient le type. Il dispose d'un tas de méthodes
intégrées. Je vais commencer par les plus faciles,
qui sont les propriétés
avec lesquelles je sais avoir besoin d'interagir. Donc la personne dote en premier et la signification lorsque vous
créez cet objet entier, qui est une collection de
ces trois variables, je voulais définir le prénom pour que la valeur provienne
de la console, ligne de lecture de points de console. C'est le numéro un. Ensuite, je veux entrer le nom de famille sera
le même principe. nom de famille du point de personne est donc Le nom de famille du point de personne est donc égal à obtenir la
valeur de la console. Ensuite, j'ai voulu prendre l'avantage. Alors, entrez. Ensuite, nous disons person.New edge, puis l'âge est un entier. Donc, si vous avez dit que nous devions
convertir, vous avez tout à fait raison. Nous devons donc voir
convertir des points en int 32. Permettez-moi d'obtenir mes
droits d'orthographe sur int 32. Et ensuite, nous
terminons cela entre parenthèses. Et on y va. Non, je remplis les informations
pour cette personne. C'est gracieuseté de la
désolée, hors du plateau. Le set me permet de le faire. Si je ne voyais pas que
je peux m'asseoir sur le bord, je ne peux avoir que l'âge. Ensuite, je vais
recevoir une erreur lorsque j'ai essayé de faire cette
tâche car maintenant il est dit qu'il n'y en a pas, voir qu'il
est en lecture seule. Je ne peux pas définir de
valeur sur cette propriété. Très bien, c'est
pourquoi je reçois dix ensembles sont importants si la contextualité
est importante. Vous ne
voudrez peut-être pas nécessairement que quelqu'un soit en âge. Bien sûr, encore une fois, je ne fais que vous donner le concept. La mise en œuvre est
liée à votre situation. Prénom, prénom, âge. Et nous pouvons entrer
chacun directement dans les propriétés telles que fournies par notre objet de type en personne. Voyons maintenant
une autre propriété comme peut-être le salaire. La plupart des gens gardent leur
salaire privé. Ce n'est pas quelque chose
que vous pourriez trouver très facilement
sur Google. Dans ce contexte,
vous ne verriez pas nécessairement un salaire public. Vous verriez privé, le type de données double et le salaire. Et d'une manière générale, lorsque
vous faites une activité privée, ce que nous appellerons cela un domaine. Il s'agirait donc de
propriétés publiques. En général, lorsqu'ils sont privés, vous les appelez champs, juste un peu de jargon pour que vous puissiez
apprécier la différence. De manière générale,
avec les champs, vous
utiliseriez un trait de soulignement ici pour indiquer que cela
est censé être privé. Donc, si vous
regardiez simplement code de
quelqu'un et que vous vouliez souligner la ligne directrice
générale vouliez souligner la ligne directrice
générale
serait
le thème général derrière ce trait de soulignement précédant le nom. ce
serait que c'est un
domaine, c'est privé. Alors que lorsque vous utilisez
une majuscule, cela signifie qu'elle est publique. C'est juste cette petite chose que vous pouvez surveiller. Encore une fois, une autre
bonne pratique à avoir. Quand j'ai essayé d'interagir
avec quelque chose de privé, comme ici,
si je disais que privé, comme ici, la personne point salaire, remarquez que ce n'est
même pas dans le renseignement parce que le renseignement parce que
C-sharp dit
C'est privé, donc je ne suis même pas
censé vous le montrer. Si j'essayais d'y accéder, si j'essayais de l'interrompre,
ça va dire, garçon, c'est inaccessible en
raison de son niveau de protection. Je ne peux pas vous aider. C'est privé. Vous ne pouvez pas simplement interagir
avec elle comme ça. C'est donc une autre
chose que vous pouvez surveiller en ce qui
concerne les paramètres
privés et publics vos propriétés obliques de champs. Quand il vient dans
nos domaines privés, c'est à ce moment
que nous commençons à parler des
deux méthodes qui seraient
nécessaires pour interagir avec eux. Une méthode ressemblerait
davantage à un verbe. J'ai donc dit que les propriétés
seront comme celles connues. Ce sont des choses qui
se trouvent sur l'objet. Qu'est-ce qui ne l'a pas fait, que
peut faire l'objet ? Une personne peut marcher, une personne peut courir, des trucs comme ça,
une voiture peut conduire. Ce sont des choses que vous pouvez faire. Ce sont des méthodes. Chaque fois que vous pensez à
quelque chose qui est réalisable, cela
devrait probablement être défini comme une méthode par opposition
à notre propriété. Disons donc, par exemple, que nous voulions être en mesure
d'obtenir un salaire non fixé. Ce sont des méthodes que
vous obtenez est verbe, réglage est un verbe. Nous l'avons en privé. Nous aurions besoin de méthodes pour nous
aider à interagir avec elle. Ce que je ferais ici,
c'est définir une méthode. Nous avons déjà examiné
comment nous définissons les méthodes. Ce que nous
n'avons probablement pas fait a été mis sur les modificateurs
d'accès sur
la méthode, n'est-ce pas ? Donc, si je dois
fixer le salaire, cela signifie
que je n'ai rien
à rembourser. Je voudrais quelque chose
comme une méthode vide. Je ne veux pas
appeler ça céleri. Céleri. Votre travail consiste à donner une valeur au champ
privé. Disons que je vais
le régler à 100. Une fois cette méthode appelée, salaire aura
la valeur de 100. Comment puis-je récupérer cette valeur ? Je peux en faire un autre, alors que le public reçoit un salaire. Et cette fois, je
vais faire en sorte que valeur revienne parce que je veux récupérer
ce qu'est le salaire, alors tout ce que j'ai à
faire est de retourner le salaire. Très bien. Regardez-le, pas de champ privé. Ensuite, nous avons des méthodes pour interagir avec le domaine privé. Nous en avons un pour définir sa valeur. Je n'ai pas besoin de faire quoi que ce soit. Je n'ai pas besoin de retourner quoi que ce soit
après avoir défini la valeur, donc je vais juste éviter. Cependant, ne faites pas ici, je
vais m'asseoir. Désolé. Je vais le récupérer. Donc, si je le récupère,
cela signifie qu'il doit
le renvoyer. Et s'il le retourne au
camp avant le test, c' le type de données sur
tout ce que je retourne, ce qui est un double. Très bien, je vous montre
comment tout est connecté. Donc, parce que ce sont
deux méthodes publiques, je peux facilement dire point de personne, puis regarder ce salaire
null set listé. Les salaires y sont
également indiqués. Ils ne sont qu'un seul public, ils sont
donc visibles. Et deuxièmement, ce sont des méthodes. Remarquez le cube. Très bien, j'ai décrit que le cube représente
que c'est un mythe. Voyons si j'appelle
ça le salaire ici. Ensuite, j'ai voulu imprimer ce
que représente ce salaire par la suite. Je vais juste voir que le salaire est. Et ensuite, je vais juste faire l'
interpolation et ensuite regarder la deuxième personne, j'
obtiendrai un salaire. Pour nous, ne pas obtenir de salaire
va récupérer ce qu' est
le salaire et
qui sera imprimé dans la ligne d'écriture de points de la
console. Très bien, alors ce que nous
pouvons faire, c'est tester le sel. Avant de le tester,
j'ai dit que je vais créer d'autres lignes. Je suis donc allé voir un
prénom, un nom et un âge. Et ce que nous allons faire,
c'est imprimer les propriétés. Donc la personne point
prénom, personne, pensée, nom de famille,
personne pensée âge. Et puis, ce sont des propriétés. Et puis c'est une méthode, mais
tous sont liés à la même personne parce que nous
saisissons les informations
pour une seule personne. Je vais donc modifier mon projet de démarrage qui
provoque un objet. Et ensuite, nous allons prendre
celui-ci pour un tour rapide. Lorsque le programme sera exécuté
dans le prénom, j'utiliserai mon propre nom, nom, mon âge,
disons que j'avais 45 ans. Donc, personne ne va
tout imprimer sur cette personne. Prénom, nom de famille est Susie, tout est
stocké sur le salaire a été fixé à 100 gracieuseté
de notre méthode. Mais ce n'est pas la
réalité parce que nous codons dur
la valeur, n'est-ce pas ? Donc, mon salaire
ne correspond pas à vos centres. Ainsi, lorsqu'ils vous inscrivent
en tant que personne portant votre nom, ils doivent entrer votre salaire. Ce que je peux faire, c'est simplement créer
une variable locale
que je vais
appeler salaire ici dans
le programme principal. Ensuite, je vais accepter les
entrées de la console. Lorsque je reçois ce salaire à faible coût, c'est le salaire
que je veux utiliser le SETT, le salaire de la
personne. Nous avons envisagé d'utiliser
des paramètres dans nos méthodes. Je vais modifier
la méthode du salaire fixé. Et il y avait déjà la presse F12. Donc, quand il a
voulu passer à une méthode, vous voulez accéder
à cette méthode, suffit de cliquer dessus, appuyer sur F 12 sur le clavier et de passer à la définition. C'est donc un autre
raccourci clavier pour vous. Donc, à partir de là, je peux
dire à l'ensemble du salaire d'
accepter un paramètre
appelé salaire. Et nous utiliserons cette
valeur qui arrive pour placer le champ privé. Très bien, donc ça veut dire non, quand j'appelle un salaire fixe, c'est connu comme une
flèche parce qu'elle attend une valeur pour que je puisse lui donner le salaire qui
a été accepté comme entrée utilisateur. Ainsi, les entrées des utilisateurs, le salaire, nous appelons un salaire de point de personne
, augmentent au-dessus de la valeur
qui vient d'arriver. Ensuite, à l'intérieur de cette méthode utilisez cette valeur pour définir
les champs privés. Ainsi, chaque fois que nous
demandions le salaire, c'est à ce moment que nous récupérons tout ce qui a été accepté
par l'utilisateur. C'est complet, vous devrez
interagir avec des champs privés. Une autre chose que
je vais vous montrer c'est peut-être obtenir le nom complet. Il va à la rétine où on obtient
FirstName, dernière chose. Que faire si je ne voulais pas
imprimer FirstName, LastName ? Et si je voulais
voir votre nom complet, c' est
votre âge, et votre
salaire est exact. Je peux donc facilement mettre
une autre méthode. C'est à moi de décider que je
peux mettre une méthode de
retour de valeur de type
chaîne qui dit obtenir nom
complet, obtenir le nom complet. Cela ne nécessite aucun
paramètre car il
interagira avec des propriétés qui se trouvent déjà dans la classe. Je peux donc simplement
lui dire de renvoyer une version concaténée
que nous verrons. Je vais
interpoler une chaîne montrant FirstName et LastName. Très bien, donc
prénom et nom de famille, et c'est plus facile, le nom complet, et c'est ce que je
veux que vous reveniez. Donc, chaque fois que quelqu'un appelle son nom
complet, il devrait revenir. Ca. Bloc de chaîne avec le prénom et le
nom inclus. Sachez que, au lieu de dire
FirstName et LastName, je peux venir dans ces lignes. Ensuite, je vais juste en
créer un pour voir le nom
complet est un nom complet. Regardez cette personne qui
n'a pas de nom fou. L'âge, c'est que je
vais vous donner un défi sur ce
point pour l'âge, si vous vouliez savoir quelle année pour personne est née
au lieu de seulement chacune d'entre elles. Vous pouvez prendre l'âge. Ensuite, vous pouvez créer une
méthode qui dit aller à l'année de naissance et la laisser revenir l'année de naissance et l'
imprimer à l'écran. Lorsque nous parlons de
classes, d'objets et d'encapsulation, j'ai vu j'expliquais ce qu'est l'
encapsulation. Agrégation. Premièrement, la
classe est le plan directeur. De ce point de vue,
quiconque regarde
cela ne connaît pas
grand-chose sur la personne. Ils ne voient la personne que
lorsqu'elle interagit avec
l'objet de type person. Ils peuvent interagir
avec certaines choses. Ils ne
comprennent pas nécessairement comment cela fonctionne. C'est ce que nous
appelons l'encapsulation parce que le fonctionnement
interne des salaires réellement fixés
est effectivement récupéré. Ils ne savent pas que les autres
voient, c'est toucher un salaire. Est-ce qu'ils ont simplifié,
je voulais payer. J'appelle juste le ciel. reçoit un salaire. Si je
voulais un nom complet, j'appellerai juste le nom complet. Ils ne connaissent pas le matériel qui se
passe derrière ici. Même si c'est difficile ou
supposé que ce soit, la personne qui interagit avec
l'objet ne le sait pas. Dans le Blueprint,
vous définissez toutes les
fonctionnalités, mais son utilisation réelle
est censée être aussi
simple que possible pour
la personne qui l'utilise. Et plus loin, personne ne
parlerait d'agrégation. Cela signifie qu'à l'intérieur de
cette classe complexe, nous avons agrégé un certain nombre de propriétés et d'opérations
qu'ils peuvent effectuer. Ainsi, de ce point de vue, dans quelques lignes de code, ils peuvent accomplir
tant de choses sans se rendre compte nombre de lignes de
code qui auraient été ajoutées dans notre agrégée
pour le rattraper. Passons à un autre
test avec cela afin voir si nous obtenons à nouveau le
nom complet et le salaire. Je suis allé pour l'âge de 58 ans de
VOR William. Et quand j'appuie sur Entrée, je pense que c'est
demander le plus subtil que je
n'ai pas mis dans le
sujet pour le salaire. Laissez-moi vous mettre en deux mille. Et puis Node voyant
votre nom
complet est le nom complet tel que
donné par cette chaîne. Et ici, je vois deux espaces. Très bien, donc c'est quelque chose que
nous pourrions examiner. Je pense que j'ai mis un espace
après l'un d'eux. C'est pourquoi nous
recevons le nom complet. On arrive à l'âge
et on se fait de l'argent. C'est la valeur salariale que
nous avons prise via les intrants. Il s'agit donc d'une introduction rapide à la programmation orientée objet. Encore une fois, la pratique
devient permanente. Alors allez-y et
pratiquez-vous en essayant de
déterminer comment calculer l'année de
naissance de la personne en fonction de
l'âge fourni.
23. Surcharge de méthode: Salut les gars, bienvenue. Nous poursuivons notre parcours avec une
programmation orientée objet. Et je voulais juste mentionner un concept rapide appelé surcharge de
méthode. Ce que nous aurions remarqué
jusqu' à présent dans nos
interactions avec le
coût, c'est avant même de
commencer à créer la nôtre, c'est le fait que nous
pouvions écrire ou accéder à différentes variantes
de la même méthode. Ce regard sur la classe de console. Console. Ligne d'écriture de points. Aucune ligne d'écriture de points
n'a 17 surcharges. Par conséquent, une surcharge signifie que vous avez différentes
façons d'aller à l'université. Vous pouvez simplement l'appeler vide,
ce qui signifie des paramètres nuls. Vous l'appelez avec
le paramètre taureau, avec un paramètre char. Et je pense que je vais
faire défiler et vous
montrer toutes
les possibilités. Il s'agit en fait d'une surcharge de
méthode qui se produit
ici parce que c'est la même méthode
avec le même nom verrait le type de retour. Il va fonctionner légèrement différemment en fonction de la valeur transmise ici,
qu' il
s'agisse d'une chaîne ou
d'un graphique entier, etc. Une fois encore, l'encapsulation. Vous ne savez pas,
la ligne droite fonctionne. Vous ne connaîtrez que sa classe interne et c'est une méthode que
vous appelez et vous lui donnez une valeur et vous vous attendez à ce qu' elle imprime
quelque chose à l'écran. Vous ne savez pas quoi faire pour
convertir les Indiens ou la chaîne ou le W ici en chaîne sont ce qu'
il faut tester avec un flux irrégulier. Et toutes ces choses, n'est-ce pas ? Vous ne savez pas. À la fin de la méthode, la surcharge peut
être très importante lorsque vous souhaitez donner à vos utilisateurs
la possibilité d'effectuer le même type d'opération ou différentes options avec
le même nom de méthode. Quelqu'un pour que celui-ci reste simple, mais c'est tout simplement suffisant pour
qu'avec un exemple, vous soyez en mesure de le
rattraper facilement, n'est-ce pas ? Voyons donc, nous allons obtenir
le nom complet de la personne ici. Je voulais le
surcharger pour
obtenir potentiellement leur deuxième prénom. Je veux donc une option
où je peux entrer
le deuxième prénom et obtenir le nom complet avec le
deuxième prénom inclus. n'y a pas de propriété en
personne pour le deuxième prénom. Je vais donc le faire à
partir de zéro, non ? Disons que j'ai
une variable de chaîne, que je vais appeler le deuxième prénom. Je vais l'initialiser
le point de chaîne mt. Je vais vous demander. Donc, plus tôt, je n'ai pas ajouté
l'invite pour le salaire. Je suis juste du sud. Récupère mes dépenses
juste là, on y va. Saisissez le salaire. Ensuite, je vais
demander le deuxième prénom. Je suis donc allé dire que la console
entrez le deuxième prénom. Et puis largeur pour
les entrées du deuxième prénom de
notre console, point readline. Une fois que ce deuxième prénom est entré, s'il est présent, je voudrais obtenir le nom complet personnel avec
le deuxième prénom inclus. Sinon, donnez-moi simplement
le nom complet habituel. Je vais utiliser une déclaration if et je suis allé prendre
une décision rapide. Vous avez vu quelque chose comme ça. Si le point de chaîne n'est pas
nul ou vide. Donc, s'il n'y a pas de
deuxième prénom, ce qui signifie que l'utilisateur n'a rien mis
pour cette entrée. Ensuite, j'imprimerai le nom complet
habituel. Sinon. J'aimerais une option où
je peux vous donner
le deuxième prénom complet et qui soit inclus dans le
nom complet qui est imprimé. Maintenant, remarquez que celui-ci ne
prend aucun paramètre. C'est ainsi que nous l'avons défini. Celui-ci, je passe le paramètre et ça me
donne une erreur. Pourquoi ? Parce qu'il n'y a pas de surcharge
pour cette méthode prend un argument disant que je vois que vous appelez
cette méthode, mais je ne trouve
pas définition de méthode correspondante qui est censée
prendre paramètres du tout. C'est donc à moi que non, d'aller en classe et de m'
assurer qu'il existe. Je peux donc passer en personne, suffit de cliquer dessus, d'appuyer sur F 12. Et puis je peux créer
une autre méthode que je peux créer une chaîne publique, lui donner le même
nom, obtenir un nom complet. Mais cette fois, il va prendre un paramètre de chaîne
appelé deuxième prénom. Vous voyez ça ? Celui-là, non, je peux le faire renvoyer le même type de chaîne. Mais je vais inclure
l'oreille moyenne
au milieu de cette
corde, non ? Encore une fois, cet
utilisateur ne
saura jamais si la différence était compliquée ou aussi simple. Ils savent simplement qu'ils ont possibilité
d'obtenir le nom complet. Et ils ont la possibilité d'obtenir le nom complet avec un
deuxième prénom inclus. Sachez que j'ai ces deux versions de
pratiquement la même méthode. Dites méthode à cause du nom. Si je regarde en arrière,
cette erreur a disparu. Très bien, alors une fois que j'ai fourni un deuxième prénom et je
suis allé
vérifier quelle option
devrais-je les appeler ? Dois-je appeler
Person.New SetFullName ici ou devrais-je appeler
celui avec le deuxième prénom ? prisons du deuxième prénom. Très bien. Essayons cela rapidement. Obtenez le prénom,
le nom de famille, l'âge, le salaire,
puis le deuxième prénom. Si je n'y mets rien, remarquez qu'il imprime tous mes
prénom et mon nom de famille. Essayons encore une fois. Je vais le relancer
et ensuite voir la même chose. Âge, salaire. J'ai alors un deuxième prénom
unique. C'est un grec,
c'est un réservoir, c'est du pain de vie. En fait. Je suis désolé. C'est grec, ça veut dire
pain de vie. Et quand je me suis présenté
dans les intrants, j'ai cette option pour VOR, nos orteils Williams, n'est-ce pas ? Si vous voulez en être sûr, faisons une petite session de
débogage. Quelqu'un qui met nos
points d'arrêt sur l'un
ou pour
s'assurer qu'il va appeler le panier quand on s'y attend. C'est un autre moyen. Si vous le faisiez
n'importe où et obteniez la sortie
que vous attendiez, n'hésitez pas à utiliser
vos points d'arrêt. Donc, pour toujours Williams
ou tout simplement raccourci pour passer à travers ça
rapidement, pas de deuxième prénom. Appuyez sur Entrée et OTC appelé, obtenez le nom complet avec tous les deuxième prénoms parce que je
n'ai pas fourni de deuxième prénom, j'appuie simplement sur Entrée
pour qu'il ne soit pas vide. Et il n'est pas question d'appeler cette méthode pour
chauffer ce point de rupture. Donc, à ce moment-là, FirstName est vrai car le
nom de famille est Will. Si je survole le deuxième
prénom, il n'y a rien là. Ça ne me montrera même rien parce qu'il
n'y a rien là. Il n'était pas assis. C'est vrai. Donc, si j'appuie sur F5 pour le
laisser continuer
l' exécution et que j'appuie sur Entrée
dans la console en haut de F3. Ensuite, vous verrez que c'est Non, j'imprime comme prévu. Et ensuite, exactement de la même façon. Si je mets en test le céleri de l'utilisateur et
ensuite un deuxième prénom, alors il va frapper celui-ci où il passe
par-dessus ce deuxième prénom. C'est un exemple très simple
de surcharge de méthode. Comme je l'ai dit, c'est quelque chose
que nous avons fait depuis le début avec la
zone humide console.log et d'autres méthodes. C'est ainsi que vous pouvez l'
implémenter dans votre propre classe.
24. Cours statiques et membres de cours statiques: Très bien les gars, donc nous allons aller de l'avant et nous
allons
examiner une autre catégorie
de types de classes. Et celle-ci s'appelle statique. Le gaz statique est un gaz qui
ne peut pas être instancié. Ainsi, lorsque nous
parlons d'instanciation, cela signifie cela lorsque nous créons
un objet d'une classe. D'accord, laissez-moi, j'aurais dû le
faire plus tôt, alors laissez-moi vous montrer, vous
donner un code ou une
référence à conserver. Cela pourrait également être fait. Bon, alors qu'est-ce que tu dis
nouveau ou tu dis nouvelle personne ? Et plus tard, nous
examinerons un autre mot-clé
que nous pourrons utiliser, le type de données obscurci. Mais concentrons-nous
sur les classes statiques afin que nous ne puissions pas instancier une
nouvelle instance de la classe. Nous avons donc instancié
notre propre classe. Nous devons instancier liste et nous aurions
dû instancier dans
une certaine mesure les RA lorsque nous faisions tableaux ou même le temps mort pour que ce soient toutes des classes. Datetime est égal
à new datetime. Nous avons dû le faire plus tôt. Une classe statique
ressemblerait davantage à une console. C'est bon ? console nous donne donc plutôt des méthodes
bien statiques. Cela signifie que nous n'
avons pas besoin de voir que la console crée un objet est égal
à une nouvelle instance de console pour
accéder ensuite à la ligne droite. Parce qu'il n'y a aucun
moyen que je puisse dire personne avec un P
B majuscule dans le point de type classe. Cela ne me donne rien. Il ne me permet pas d'accéder
à aucune des propriétés sans
l'
instancier, c' est-à-dire créer l'objet ou la manifestation
du Blueprint. Et puis à travers le plan, à travers la manifestation
sur plutôt ou sur l'objet, je peux accéder aux
propriétés et aux méthodes. Nous allons donc examiner la
création d'une classe statique et comment elle pourrait être utile. La classe statique est généralement
utilisée comme classe d'utilitaire, je vais
donc créer
un nouveau fichier de classe. Je vais donc
appeler directement notre
projet de classes et d'objets pour accéder à Ajouter un nouvel élément. Et en fait, vous pouvez remarquer que vous avez
ici quelques citations qui disent simplement
classe, c'est presque
la même chose. Il va ouvrir
la même fenêtre de dialogue et se concentrer automatiquement sur la classe
pour vous. Disons que j'appelle cette date de classe
util util. Dates utils. Il n'y a pas de jour à attendre Il va
vous donner le nouveau fichier, vais me donner toutes les instructions
d'utilisation. Et encore une fois, il s'agit d'un fichier C-Sharp
traditionnel. Dans dotnet six over nous avons accès à
des fichiers minimaux où nous n'
avons pas l'espace de noms ,
toutes ces accolades et
toutes les instructions d'utilisation. À l'avance. Vous pouvez toujours les nettoyer en maintenant la touche Ctrl enfoncée
et en appuyant sur la touche E. Et cela supprimera tout ce qui n'est pas
nécessaire de vos fichiers. Nous n'avons donc pas besoin de tous ces éléments
utilisant des instructions Clé de contrôle. Parfois, vous vouliez simplement fichier pour vous montrer ce que
vous devez voir, qui est toute la philosophie de six est presque
finie ****** avec même ces blocs de code où
l'espace de noms que je peux supprimer ces accolades bouclées et
il suffit de mettre un point-virgule. C-sharp six saura
automatiquement qu'il s'agit de l'espace de noms
qui régit l'ensemble du fichier. Je n'ai donc pas besoin
de toutes ces brises. Sachez que nous nous
penchons davantage sur le
vieux PM en vous montrant de petites choses sur la mise en place de l'accord et sur la façon dont vous
pouvez interagir avec elle. Vous pourriez le
faire en étain C-Sharp, d'accord, comme
avant que ça ne fonctionne parfaitement. Je veux dire, Visual Studio vous l'
a donné donc ça doit fonctionner que nous, accord,
concentrons-nous sur notre classe, classe
interne, et
nous l'appelons D22. Sachez que si je voulais calculer, je voulais une méthode pour calculer la dette en
fonction de la valeur de l'année. Cette classe utilitaire
va avoir un tas de méthodes qui
ne font que faire des choses pour moi. C'est tellement public. Année de naissance. Et puis cette année de la classe de
naissance, désolée, méthode est censée rendre un public entier en
année de naissance. Prenons chacun un entier, une
année ou un entier. Commençons par ça. Très bien, donc compte tenu de l'âge, je veux revenir, quelle est votre
année de naissance probabilité ? Dans cette méthode, je vais
faire quelques calculs. Je vais juste
revenir l'heure. Date, heure point non, année moins h si facilement que c'est. Donc datetime dot know obtient
l'horodatage actuel, donnez-moi l'année. Hors du noyau dans l'
horodatage, puis moins l'âge de
celui-ci et renvoyez cela. C'est un moyen facile de
connaître votre année de naissance. Belle projection au moins, non ? Essayons un autre. Et si je voulais une surcharge pour ça ? Cela m'a également permis de
revenir une année de naissance. Je vais donc toujours lui donner
le même nom en surcharge. Mais cette fois, je voudrais
prendre votre date de naissance. date de naissance est la propriété, c'est le paramètre que je veux. Alors ce que je peux dire, c'est que si c'est bon, laissez-moi voir ce que Visual
Studio a pour moi. Si la date de naissance que vous m'avez donnée est équivalente à nulle, retournez 0 ou tilapia. Sinon, retournez
l'année difficile, l' heure, le non, l'année moins
la date de naissance de l'année. Oh mon Dieu. C'est charmant, mais
ce n'est pas vraiment ce que je veux. J'en veux plus. Je voulais juste vous donner un dollar l'année parce que j'ai
dit année de naissance. Donc, si vous me donnez
l'heure de la naissance
, je reviendrai. Quelle est votre année
de naissance ? Cependant, je vous
montre simplement que ce
sont des méthodes que les points focaux
ne sont pas vraiment les méthodes. Je fais juste un
tas de méthodes dans cette classe util parce que
je vous montre juste que, d'une
manière générale, les cours d'
étude sont comme des classes util, non ? Celui-ci déterminera donc votre âge en fonction
d'une date de naissance. Ensuite, je reviendrai simplement
à la suggestion originale. Nous sommes morts, non. Année moins la date de naissance, l'année que vous avez fournie. Les classes
d'utilitaires savent dans les circonstances normales de commencer à interagir avec ces méthodes, méthodes
utilitaires, désolé,
interagir avec elles. Si je voulais les utiliser à la
place de mon program.cs, je devrais venir
ici et dire datetime D2 jusqu'à créer un nouvel
objet de date utils. Remarquez maintenant qu'il me dit
qu'il n'a pas pu être trouvé. En effet, l'espace de noms
a été défini au-dessus du fichier et aucune autre classe ce projet particulier ne
possède cet espace de noms. L'espace de noms est essentiellement une déclaration aux
fichiers hors de l'adresse. Si cette adresse n'est pas incluse, vous l'utilisez. Solution simple, je
vais simplement supprimer l'espace de noms. Ce n'est pas absolument nécessaire, moins pas
chez le locataire
C-Sharp sur lequel il cherche à savoir qu'il est retiré. J'y ai accès. Sachez que si j'avais besoin de
calculer quelque chose, je dois dire point d'objet. Je serais alors en mesure
d'accéder à toutes ces méthodes. En conséquence. L'année de naissance par rapport à l'âge par rapport à ce qui était
l'autre année de naissance a été surchargée. Désolé. Je me souviens juste
qu'il était surchargé, alors sachez qu'il est surchargé. Dans le domaine de l'intelligence, nous
allons à C plus une surcharge. Vous pouvez donc me donner la DateTime, la
date de naissance, ou vous pouvez simplement me donner l'
âge de la personne. Très bien ? Non, les données statiques suppriment le
besoin de cette instanciation. Donc, pour répondre à cette statique, étape numéro un
est que vous écrivez le mot statique dans la section modificateur
d'accès. Si la classe est statique
, tout ce qui se trouve dans la classe doit être
étudié de cette façon. La classe est statique, alors les méthodes doivent également
porter ce modificateur d'accès, laissant tout le
compilateur, tout le programme savoir
qu'ils sont statiques. Cependant, vous pouvez avoir des méthodes
statiques à l'intérieur
de notre classe habituelle. Très bien, voyons voir, sachez quelle serait l'
interaction si je voulais le savoir,
ok, Notice vendue depuis
qu'elle est statique, ce n'est pas illégal. Je ne peux pas instancier. Type statique. Impossible de déclarer une
variable de type statique. Je ne peux plus faire ça. Au lieu de cela, je vais devoir
appeler ce cours. Ils le font jusque-là,
je dis juste des points. Je ne l'ai pas fait, je ne peux accéder à aucune méthode qui
se trouve dans cette robe. Beaucoup de console locale fonctionne
là où il suffit de dire console.log. Et puis j'accède à la méthode
que je pourrais facilement imprimer. L'âge, c'est ça. Et puis, disons
une année de naissance. Et puis je dis juste les points D22, Dots, année de naissance. Et puis, que suis-je en train de passer ? Je ne parle pas de
dates de naissance nulles, mais ce que j'ai sur mes surcharges. J'ai un avantage pour que je puisse vous
donner l'âge. D'accord. Je peux donc dire « personne.New Age ». L'âge d'une personne n' a besoin que
de l'année de naissance. C'est essentiellement
ça. Comme je l'ai dit, il est généralement utilisé pour les services publics. Toutes
les opérations rapides sont donc des opérations que vous pourriez
répéter plusieurs fois. Vous pouvez simplement créer
une classe statique de noter la méthode, celles, cette opération, parfois c'est aussi simple que je
joins des chaînes. Il peut s'agir de couper des cordes. Il peut s'agir de convertir entre datetime et
entiers, des trucs comme ça. Il peut s'agir d'une classe de mathématiques où
vous voulez trouver la racine, racine
carrée des choses. Il suffit de créer un
cours pour cela. Très bien. Essayons cela et
voyons à quel point cela fonctionne bien. Très bien, je vais
remplir la guerre sociale. Williams, 50 à 70 ans deuxième prénom de céleri.
Nous n'avons pas besoin de cela. Et puis vous verrez
ici que le nom complet est que l'âge est que l'année
de naissance est 1965. Il a donc fallu cet âge, fait le calcul
tel que nous avons défini et retourné cette valeur. C'est essentiellement ça. C'est ainsi que vous utiliseriez une classe statique dans une situation très
pratique. Et tout au long de votre parcours avec programmation
C-Sharp et
orientée objet, vous allez rencontrer
de nombreuses classes statiques. Il est donc bon de comprendre
comment ils sont construits, comment ils sont utilisés en général et quand ne pas les utiliser également.
25. L'héritage avec des cours et des interfaces: Très bien, les gars, bienvenue. Dans cette leçon, nous
allons parler d'héritage. Nous nous penchons donc toujours sur la programmation orientée
objet. Les concepts incertains sont au
moins des concepts clés pour vous préparer à écrire une application
de base. Et pour la deuxième
partie de ce cours, où tout est axé sur la programmation orientée objet. Où nous sommes allés
discuter de l'héritage en créant un tout nouveau projet, un nouveau projet, et consoler C-Sharp sur l'endroit où l'on appelle
cet héritage. Héritage. héritage est donc lié à ce
que le mot vous
suggère en
tant qu'être humain quand il
parle d'héritage, cela signifie recevoir quelque chose
d'une autre source. Certaines personnes sont extrêmement riches en raison de
leur héritage, ce qu'ils ont reçu de leur prédécesseur. L'héritage concerne les propriétés de
cisaillement
avec quelqu'un d'autre, cisaillement de mes affaires
avec quelqu'un d'autre. En ce qui concerne la
programmation orientée objet dans ce concept, cela signifie que nous n'avons pas
nécessairement à répéter certaines choses entre des types qui transmettent des attributs
communs. En parlant assez, permettez-moi de vous montrer quelques exemples
pratiques. Quelqu'un pour créer une nouvelle
classe ou au moins quelqu'un pour écrire les classes ici, puis nous
les déplacerons vers leur ancien fichier. Supposons donc que nous ayons une classe que l'on peut
appeler une forme 3D. Ça commence donc cette forme de
nuage, n'est-ce pas ? Une forme. Dans notre
définition de la forme, nous allons avoir au
moins la hauteur et la largeur. Disons que nous avons une propriété. Ainsi, un raccourci clavier pour écrire notre propriété
est que vous pouvez écrire prop, puis appuyer
deux fois sur Tab et
cela génère ce talon pour vous. Nous pouvons avoir une double hauteur
avec un H majuscule, bien sûr. Ensuite, nous pouvons appuyer sur Entrée à
la fin du remplissage. Ensuite, passez à la ligne suivante
et dites propagande
onglet, tabulation , puis double. Ensuite, vous appuyez sur Tab
pour passer du W2, le nom de la propriété, placez cela dans. Appelons donc ça une seule longueur. Appuyez ensuite sur Entrée et
c'est tout, n'est-ce pas ? En règle générale, la forme aura au moins la hauteur et la longueur. Non, vous avez des variations de forme parce que
les triangles auraient probablement votre hauteur et votre longueur à l'intérieur
, c'est ce
que nous appelons
l'hypotenuse, pour
ainsi dire, n' c'est ce
que nous appelons
l'hypotenuse, est-ce pas ? Cube. Le cuboïde aurait de la hauteur, aurait de la longueur et il
aurait aussi de la largeur ? Ou aurait-on une classe de base dite herbe
obèse de forme. Vous disposez d'un
modificateur d'accès appelé obstruct. Cela signifie que je ne peux pas, désolé, cela doit passer
avant la classe de mots. La forme de classe abstraite signifie
que oui, c'est une classe. Oui, il existe mais vous
ne pouvez pas l'instancier. Alors n'oubliez pas que,
comme pour la statique, nous ne pouvons pas voir de nouvelles formes de moutons. Nous ne pouvons pas faire cela. C'est illégal parce que l'abstrait ne peut pas le faire. À la fin de cette opération, lorsque nous aurons défini
notre classe de formes, je vais aller sur les points de contrôle
et les déplacer dans son propre fichier. Déplacez donc le point rasé
csv son propre fichier. Nous sommes donc en forme de points cs. Noah veut
que d'autres classes partagent les propriétés d'une forme afin que je puisse facilement créer une autre classe, une classe
publique, et j'
appellerai ce cube. Pour hériter, j'ai juste besoin de voir deux-points, puis de
lui donner le nom de classe qui hérite en
voyant les deux-points du cube de classe publique. Il hérite de la forme. Maintenant, cela se plaint en raison des incohérences avec le,
avec les modificateurs
d'accès d'accessibilité. C'est donc public, alors que
la forme n'est pas publique. Donc, si je retire le public ici, ça
devrait bien se passer. On y va. Si je les rends
publics tous les deux, ça devrait aller. Cube de classe, en forme de côlon. Ensuite, je peux définir
mes propres propriétés. Donc le cube ou un, nous avons déjà haut pour avoir
déjà de la longueur. Donc, je vais juste lui
donner une largeur. Sachez ce que je n'ai pas besoin d'aller et définir des propriétés spécifiques. Donc, même si j'avais essayé de
définir à nouveau la double hauteur C. C-sharp va le
souligner en vert. Et faites-moi savoir que vous avez déjà
façonné la hauteur des points. Par conséquent, en définissant la hauteur ici, vous
surpassez celle d'origine. Être redondant, vous vous
répétez. Je n'ai pas besoin de faire ça. Si je devais instancier Q, disons que je dis cube. Cube est incroyablement similaire à nu cube. Je peux toujours le faire. Permettez-moi de
déplacer cela dans son propre dossier. Contrôlez donc les points, puis
passez au point de cube CS. Oui, j'aimerais le déplacer. On y va. Maintenant, j'ai une
instance de cube. Je peux voir des points cubes. Je peux avoir accès à la longueur de l'outil, ce qui est courtoisie hors
forme. Je ne peux pas devenir toxique. C'est la largeur
que je viens de définir, et elle peut accéder
à la hauteur, qui permet également de
voir actuellement comment la forme, c'est-à-dire ce
que
l'héritage permet. Il me permet de
définir une source de propriétés
communes, puis de réutiliser cette source à
plusieurs endroits. Dans. La raison pour laquelle j'ai
fait ce résumé est que je ne sais pas
quelle est la forme. Même si je disais que les moutons
sont égaux à une nouvelle forme, quel est le type de navire ? Est-ce que c'est le cercle ? Est-ce un cube ? Le CRC ne peut pas instancier un type
abstrait de moutons. C'est abstrait. Le concept de forme
est donc abstrait, c'est
pourquoi C-sharp
nous donne ce mot-clé abstrait. Qu'est-ce qu'une forme ? La manifestation réelle
d'un navire est donc une manifestation que nous pouvons
quantifier comme un cube, un
cuboïde, un rectangle, etc. Autant d'autres types
que je peux penser. Disons donc que j'ai pensé aussi à
inclure un triangle de classe tranquille. C'est aussi un mouton. Et je voulais
hériter de la forme. Très bien, parce qu'ils
ont des propriétés communes, alors notre classe appelée triangle
va avoir sa propre propriété unique
appelée peut-être hypotenuse. Je pourrais peut-être me relâcher
avec ma géométrie ici, mais je travaille simplement avec moi. Le triangle
hérite aussi des moutons. C'est deux endroits de moins pour
mettre, hauteur et longueur. C'est bon ? Je peux donc toujours mettre un
triangle dans son propre type. Donc, une seule responsabilité, encore
une fois, si nous voulions modifier une foule
triangulaire afin financer si nous voulions modifier une forme, vous savez
où la trouver. Si vous vouliez modifier un cube, nous ne savons pas où le trouver. Et le programme moyen est là. Vous remarquerez que parce que
j'utilise l'héritage, il y a ceci, c'est un
symbole qui arrive ici. C'est ce qu'on appelle une marge
d'héritage, qui
me permettra en fait de sauter entre la classe de base
héritant des classes. Donc, si je modifie la classe de base, puis de la
classe de base, je dois
revenir à l'un de ces triangles
cuboïdes. Je peux toujours cliquer sur
ce saut sur le cube. Et c'est un
moyen facile et agréable de naviguer entre les classes
héritées d'une autre. Si vous le souhaitez,
vous pouvez écrire anciennes lignes rouges et
rouges de la console , remplir le cube puis faire quelques
calculs, n'est-ce pas ? Mais cela soulève
un autre point intéressant. Quand il vient nous voir
faire des calculs. Nous devrions savoir comment
définir la zone ou le volume ou autre fonction des différents
types de formes. En forme ? Oui, il peut y avoir une méthode
qui se définit comme GetArea. Bien sûr. Zone d'accès double publique. En règle générale,
pour la zone, il
suffit de la
longueur par la largeur. S'il s'agit d'un triangle, c'est la moitié de la hauteur de base. Et supposons que
la longueur ici correspond la hauteur des temps de base. Vous verrez donc que chaque forme aura sa propre
façon d'obtenir la zone. Il n'est donc pas tout à fait
facile de simplement dire, oh, je vais avoir une perte
abstraite et en avoir une, ça obtient une méthode de zone. Cela va marcher. Bien sûr, vous pouvez simplement
définir get era à l'intérieur de
chacune de ces classes dérivées. Nous appelons donc ces
gaz dérivés tout ce qui est hérité. Il s'appelle la classe dérivée. Tout ce qui est hérité
s'appelle la classe de base. Ce sont donc les
deux mots-clés qu'ils peuvent appliquer à votre conversation. Je peux toujours voir le public doubler la zone
pour le triangle. Et je peux toujours voir le public
double zone pour le cube. Mais si je vais à un
autre, voyons voir, j'aborde un autre cours. Laissez-moi simplement,
laissez-moi le faire de cette façon. Permettez-moi d'être cohérent. Disons que j'ai un rectangle de
classe. C'est une autre forme avec
laquelle nous interagissons. Et il
hérite également de la forme. Très bien, et puis il n'a pas de propriétés
supplémentaires et en ce moment,
oublie réellement de lui donner
sa propre ère de get. Donc, ici, je
vais être très incohérent parce que les
cubes peuvent obtenir la zone, triangle peut atteindre la zone. Et je suis humain, j'ai oublié de
mettre dans la
classe ou la méthode GetArea, désolé, dans la classe rectangle. Non. J'obtiens la zone du rectangle et j'ai publié mon programme. Je vous ai dit à des personnes et puis je reçois
ces commentaires, Hé, ça ne fonctionne pas quand j'ai essayé de travailler avec
nos langues. Cela prendra en charge une
construction etc, etc. C'est une sorte de feedback qui devrait vous employer pour faire mieux. Mais ce que je veux dire, c'est qu' il y a des moments où
cela peut se produire. C'est donc à ce moment que nous voulons déplacer notre héritage à
partir de classes, de classes abstraites ici,
puis de commencer
à examiner l'héritage à l'aide d'interfaces. L'interface est une
version réduite d'une classe, mais elle ressemble davantage à un contrat. Je vais vous montrer
un exemple de cela. Je vais juste
écrire ça dit ici. Je vais dire interface au lieu de
classe que nous disons interface. Et puis, d'une manière générale, la convention de dénomination pour une interface que
vous avez commencé avec un majuscule, puis
vous lui donnez le nom. Donc, je forme. C'est l'interface avec
laquelle nous travaillons. Non, comme je l'ai dit, c'est une classe de poids
plus légère, ce qui signifie qu'elle peut
définir des propriétés, elle peut définir des méthodes, mais elle peut plutôt les déclarer, mais elle ne les définit pas. Juste pour acheter un camion. Il s'agit d'un appel de fonction. Cependant, la définition
de la fonction est le code réel qu'
une fonction exécute. Permettez-moi
de revenir à ma personne. Voici donc la définition
de la fonction. Ce sont des définitions à l'interface qui ne
le
définissent pas nécessairement parce que la définition de get era pour rectangle sera
différente de la définition du triangle est différent de la
définition du cube. Cependant, je peux
déclarer que
chaque classe
dérivée héritant de cette interface doit avoir une définition pour une méthode
particulière. Donc ici, je peux voir
qu'il devrait
toujours y avoir une zone bleue terne. Très bien ? Donc tout ce qui hérite
de la forme de l'EI. La plupart mettent en œuvre une double zone d'obtention. C'est pourquoi nous appelons cela
une déclaration ou
certaines langues appelleraient cela comme des prototypes de fonctions. Donc, cela ne fait que voir qu'il
s'agit du type de données,
c'est le nom. Il y a peut-être des paramètres, mais c'est tout ce qu'il y a à faire. Ce n'est pas une définition
et ce n'est pas un appel de fonction,
c'est un prototype. Je peux laisser tout le monde
hérité d'un mouton. Savoir. Vous allez
voir WE Héritage un, vous ne pouvez pas hériter de
plus d'une classe à la fois. Toutefois, vous pouvez hériter
d'une classe et une interface ou de plusieurs
interfaces à ce moment-là. Ce sont les règles
ici. Je peux le dire. Triangle des mâchoires. Oui, vous héritez
de la forme. Et voyons voir. Aucun d'entre eux
n'a défini l'ère. Laissez-moi laisser l'ère en file d'attente. triangle et le rectangle n'ont
pas d'époque définie. Maintenant, rappelez-vous que le problème
était que nous l'avons expédié sans pouvoir calculer
la surface pour le rectangle. Et non, je l'
ai enlevé pour un triangle. Le cube de livre est très bien. Qb a juste besoin de retourner
la hauteur, un tout, est-ce encore ? Non, c'est la largeur par rapport à la
longueur, désolé, longueur fois
la largeur, la surface du cube. Très bien, c'est très bien. Mais ces deux-là n'ont aucune méthode définie pour cela. En fait
, je peux aller ici côté de
l'héritage
après le deux-points et voir Côme que je voulais
hériter de ma forme
aussi, laissez-moi bouger. J'ai façonné le dossier Suisse. Permettez-moi de le faire rapidement. Je remarque que ce n'est toujours qu'un fichier CSS et que
le nom est que je forme. Et vous avez toujours
voulu vous assurer que vos noms de fichiers correspondent
au nom de la classe. C'est dans son propre fichier,
c'est un héritage, c'est une interface qui
devrait plutôt appliquer l'
implémentation de ceci, une méthode qui est en train d'être des
prototypes sont déclarés. Lorsque je vais dans une classe qui n'hérite pas de ma forme, je vois une erreur.
Quel est ce domaine ? On voit que rectangle,
qui est la classe, n'implémente
pas le membre de
l'interface que je saisis point get era. Vous voyez que je dois m'
assurer que si j'
hérite d'Isua, je mets en œuvre ce
que l'IS façonné dit devrait
être implémenté. Donc je peux simplement faire
des points de contrôle et implémenter l'interface et cela mettra
la méthode stub pour moi. C'est un bon moyen d'appliquer au niveau l'édition, au niveau de la
compilation. Que certaines règles
sont respectées. Chaque forme doit pouvoir
calculer sa surface. Rectangle aurait dû avoir une ère en laissant tous ces éléments
hérités de i se façonner. Je n'applique pas la règle car ce
programme ne se compilerait jamais. Je n'ai jamais pu tout expédier dans cet état parce que
ça ne fonctionnerait pas. Je dois m'assurer
que je vais avoir notre représentation de Getarea
avant de pouvoir aller de l'avant. Non, cela va simplement
lancer une exception non implémentée, qui est un autre
type d'exception, mais c'est très bien. Nous pouvons effacer cela. Ensuite, pour le rectangle, je peux
renvoyer la longueur fois largeur. Très bien, pourquoi
ai-je accès à la longueur ? Parce que le lien a été défini dans le mouton
abstrait et qu'il en hérite. Je peux donc facilement
y accéder sans avoir besoin redéfinir, de redéclarer et de les
placer dans de nombreuses propriétés. Durée, quelle est sa hauteur ? C'était de la hauteur et de la largeur. Cela signifie donc que je
dois vraiment mettre dans la propriété, avec peur. Il y a beaucoup de permutations
car tout cela fonctionne. Je veux dire, je ne vais pas
pouvoir couvrir toutes les variations. Je voulais juste
vous donner
des exemples de raisons pour lesquelles vous
auriez l'héritage
d'une classe par rapport à l'héritage
par une interface par rapport aux deux. Cube n'hérite actuellement d'aucune interface à qui
je peux lui dire, mais il a déjà fait l'
implémentation, donc c'est très bien. n'y a pas d'erreur ici. Comme je l'ai dit, avec les marges d'
héritage, vous pouvez toujours sauter entre
les fichiers de classe et vous pouvez passer à la définition
si nécessaire. Vous pouvez voir où il est défini partout, etc. Donc ici en triangle, si j'essayais d'obtenir une
zone de triangle, cela me donnerait
un aérosol ici. Je peux avoir la définition à
l'intérieur de la classe triangle, la moitié B. Donc c'est 0,5 fois la base, que j'ai utilisé comme longueur. C'est la moitié de la
hauteur de base, non ? Désolé, il y a un certain temps de commencer à dire que c'est la
moitié des temps de base, vraiment et vraiment, non ? C'est ainsi que la zone
triangulaire est définie. Il s'agit de la zone rectangulaire. Et puis la zone du cube est que même si
vous héritez, vous pouvez avoir vos propres méthodes
ici parce que je peux facilement voir le volume public double get. Et le volume
du cube serait longueur fois o. J'ai dit la longueur fois la longueur
ici, la longueur fois la largeur. Longueur temps largeur fois hauteur. C'est bon ? Oui, j'hérite de
11 forêts de début, mais je peux avoir mes propres propriétés et mes propres propriétés
même si je veux dire héritage
nous aide à réduire la répétition. Et rappelez-vous, principe DRY, ne
vous répétez pas là où vous voyez des opportunités comme celle-ci, où vous pourriez répéter certaines propriétés
dans plusieurs classes, toujours plates que vous Je veux les
placer dans une classe de base et faire de l'héritage pour réduire
toute cette répétition. Écrivons un programme rapide pour mettre tout
cela à l'épreuve. J'ai déjà le cube et je vais
vous montrer le mot-clé var. Et var est également un moyen rapide de définir une variable ou un objet. Le truc avec var, c'est
qu'il supposera son type en fonction de ce qui se trouve sur le côté droit
de cette décoration. Donc, quand je dis triangle var, il ne sait pas de quel type de
données il s'agit tant que je dit qu'il s'agit d'un nouveau triangle. Si j'ai dit rectangle var, alors l'objet appelle, l'objet est appelé triangle. Qu'est-ce qui va encore
être de type ou de glucose de langue ? C'est un type que j'ai défini. C'est courant, vous verrez quel
développement C-sharp au lieu de voir un nom de chaîne et
un âge et ainsi de suite. Mais j'ai été stricte là-dessus tout
à l'heure parce que je voulais que nous appréciions les types de données. En allant de l'avant,
vous me verrez utiliser var, un peu plus. Triangle Var. Je peux dire Var Cube. Je peux dire rectangle var. Rectangle est égal à un nouvel objet hors
rectangle, etc. Ensuite, je vais faire une
console, des lignes droites. Vous pouvez appuyer sur pause et répliquer ces objets, sauf les trois objets, puis j'en ai trois. petites variables ici. Je les définit simplement comme int, mais comme je l'ai dit, c'est
facile de voir loin. Juste en voyant un virus sans aucun, ce lien est censé être entier car sur
le côté droit, nous voyons que nous
envoyons un entier. peut s'agir d'une épée à double tranchant car elle n'est pas disposée à
vous donner une erreur si le type de données
n'est pas ce que vous attendez. Cependant, lorsque vous êtes
strict comme celui-ci, vous pouvez voir à un kilomètre
que vous écrivez peut-être code
incorrect pour la
situation en cours, comme ici. J'ai tendance à privilégier l'utilisation des
types de données primitifs quand j'en ai besoin. Mais pour les plus complexes, je vais compter sur le feu, mais parfois encore une fois, vous pouvez les utiliser de manière
interchangeable. Ici, je vous
demande simplement la longueur, la largeur et la hauteur. Ensuite, je vais définir des points cubes. La longueur doit être égale à la longueur, largeur du
cube doit être égale à
la valeur de largeur qui arrive. Cuba, hauteur des points à la hauteur. Une autre chose pour le
triangle avec la longueur, triangle avec la largeur et le
triangle avec la hauteur. Remarquez que
celui-ci me donne une erreur car le
triangle
n' a pas de propriété width
définie. C'était donc les
suggestions de Visual Studio. Je vais l'enlever. C'est très bien. Et puis le rectangle
va
prendre de la longueur et de la
largeur, quoi pas serré. Sachez qu'il existe différentes façons de définir nos attributions de
valeurs. C'est une façon de le faire. Il y a une autre façon de le faire. Il y a au moins deux
autres façons de le
faire plus efficacement. Dans la leçon suivante, lorsque
nous regardions des constructeurs, je vais vous montrer qu'une
fois que nous aurons tous ces éléments définis,
nous pourrons facilement faire
des lignes d'écriture de points de
console. Je vais juste les emprunter
ponctuellement et voir un triangle. Permettez-moi de commencer par un
cube, une zone cube. Ensuite, nous appelons
les points de cube, obtient la zone. Habituellement, c'est-à-dire après avoir
assigné les valeurs, nous avons une définition
pour qu'elle
y arrive et q aurait
également obtenu du volume. Je vais donc appeler ça
en même temps. Ensuite, nous allons juste faire le triangle. Ici s'appelle la méthode du
triangle obtient l'ère. Et nous pouvons faire la même chose
pour la zone rectangulaire. Très bien. Je vous montre juste que
lorsque vous
commencez comprendre comment tout
fonctionne, tout coule. Vous verrez que la programmation
orientée objet est là pour
vous faciliter la vie. Regardez la quantité de
code que nous avons écrite. Leuko n'a fait que quelques choses que
nous avons faites, ou program.cs est si simple, il suffit de définir
trois objets, obtenir des données, puis
de les envoyer , puis d'obtenir toutes ces valeurs, ils sont cachés à nous. Lorsque je testerai cela, je vais simplement utiliser
les trois mêmes
valeurs pour les trois formes. Longueur cm pour le voir à
l'intérieur de la couture. Bon, alors laissez-moi
libérer ma console. Disons donc que la longueur
est de 50 par 40 par 32. Et puis la surface
du cube est de 2 000, mais le volume qui
aurait dû être volume est 2032. Et puis les zones triangulaires. Donc, je ne
sais pas si c'est vrai. Oui, je savais qu'il était incorrect
parce que j'ai dit plus au lieu d'astérisque, excuses. Mais j'espère que vous verrez la valeur de l'héritage
dans ce contexte. Encore une fois, grâce à l'héritage, j'ai pu
créer une classe de base, c'
est-à-dire que je l'appelle une
classe abstraite appelée shape, qui définit certaines propriétés
partagées que toutes les formes possèdent. Et puis je pourrais laisser
toutes les autres formes dériver ou hériter de
ce gaz en forme de BCE. J'ai aussi envisagé d'
utiliser l'héritage pour faire respecter cette méthode
ou certaines pensées mythes, parce que vous n'êtes pas
limité à une seule. Mais certaines méthodes ont été
appliquées dans la forme. Donc ici, je pense à atténuer
une convention de dénomination. Donc, contrôlez les données et cela devrait être Gettier avec un majuscule G. Même chose pour obtenir du volume. Donc, il ne serait pas
incarcéré pour moi. Ce que je disais, c'est que
l' interface héritée
agit comme un contrat, un contrat stipule que vous êtes obligé de faire cela. Une fois que vous héritez
de ce contrat, il signifie que vous êtes
déjà bon pour
mener à bien l'opération
définie par le contrat. C'est essentiellement, oh, whoa, les interfaces
d'héritage fonctionnent. Et il n'est pas devenu beaucoup plus
compliqué que ça. Mais lorsque vous arrivez à de
plus grandes applications, vous commencerez à les voir. Mais il s'agit d'une introduction
rapide à l'héritage avec des
classes et des interfaces.
26. Constructeurs: Très bien, dans cette leçon nous examinons les constructeurs. Je vais donc réutiliser le projet d'héritage
uniquement parce qu'il a déjà tellement de coordonnées et je
pense que c'est un moyen parfait montrer ce que
sont les constructeurs et de les garder utiles. Lorsque nous
traversons l'héritage, j'
ai mentionné qu' il
existe des moyens plus simples, entre guillemets, d'attribuer des valeurs
aux objets nouvellement créés. Un de ces moyens serait de le faire, et je vais simplement
réorganiser le code petit déchirer quelqu'un pour déplacer les définitions d'objet vers ci-dessous, où nous avons demandé les valeurs. Lorsque je définit le cube, comme lorsque nous
faisions les IRA, quand nous pouvions me donner une nouvelle zone et ensuite mettre
les valeurs en même temps. Je peux vraiment le faire
avec un tout nouveau cours. Je peux dire,
donnez-moi un nouveau cube, ouvrez et fermez des accolades bouclées. Et puis je peux commencer à attribuer les différentes valeurs aux
différentes propriétés, n'est-ce pas ? Je peux donc voir une largeur. Vous devriez obtenir la valeur de dix. Depuis que je l'ai obtenu
grâce à l'entrée utilisateur de n'importe quelle moyenne k vers la variable
locale. Très bien. Vous obtenez la longueur de tout ce qui est arrivé par
notre variable locale. La hauteur reçoit le même traitement. Très bien ? C'est-à-dire que cette seule ligne de code
éliminerait en fait ces trois. Asseyez-vous à. Cette ligne serait en train de me
donner un nouveau cube qui est défini pour avoir la largeur en
fonction de ce qui est arrivé, longueur et la hauteur
selon ce qui est arrivé, par
opposition à moi, la longueur des points en par
opposition à moi cubes est égale
à la longueur de la largeur des points en cubes. Il fonctionne. Mais encore une fois, je vous
montre des alternatives. Je peux réellement supprimer
ces trois lignes de code. Je peux faire la même chose
pour le triangle. Et je
ne rencontrais pas
le même problème quand je faisais le triangle qui a
accidentellement mis en largeur. Et je n'ai pas demandé où était notre
hypotenuse pour mon triangle. Vous voyez ça ? C'est très bien. La hauteur est égale à la hauteur Côme, puis la longueur est
égale à la longueur Côme. Ensuite, je pourrais facilement mettre
notre valeur hypotenuse. Je n'en ai pas demandé un, donc je vais juste le
coder en dur à dix. Cela élimine donc ces
deux lignes de code. Et puis je peux reproduire cela avec le rectangle au lieu
de taper à partir de zéro, je vais juste emprunter le
code du cube et retirer la hauteur, en fait, je crois que c'est celle dont je
n'ai pas besoin pour le rectangle, ce qui élimine ces
deux lignes de code. Regardez-moi beaucoup plus soigné. Non, ce n'est pas ce que sont
les constructeurs. Je travaille jusqu'à
vous montrer ce que sont les constructeurs. constructeurs sont des méthodes par défaut qui vont être créées dans une classe qui impose
qu'un objet doit répondre à des occasions spécifiques avant de pouvoir être instancié. C'est une bouchée. Laissez-moi vous expliquer. Non, il existe un constructeur
par défaut qui ne prend aucun paramètre. C'est pourquoi nous pouvons simplement voir cube est égal à une
nouvelle instance de cube, que nous ayons
fourni ou non des valeurs. Parce que rappelez-vous que cela a fonctionné, vous avez travaillé plus tôt
lorsque j'ai créé le nouveau cube sans
aucune valeur. Il s'agissait donc d'un
objet sans hauteur, largeur ou longueur. Cela
aurait été 0. Cependant, si je
voulais faire respecter cela, pour créer un cube, vous devez fournir ces
valeurs dès le départ. Ensuite, je demanderais l'
aide d'un constructeur. Pour créer un constructeur. Je vais juste appuyer sur le cube
Shift 121 et passer à la définition. Dans Forcer Out constructeur, vous pouvez facilement écrire le mot-clé CTO,
puis appuyer deux fois sur Tab, puis cela génère
cette méthode stop. Noeud. constructeurs
se caractérisent par le fait qu'ils sont
publics et que l'outil portent le même
nom que la classe. Trois jours prendre r peut
prendre des paramètres. Le constructeur par défaut est un constructeur qui n'a pas besoin de paramètres sans que je le
fasse réellement, il y avait un défaut,
c'est sous-entendu, c'est
pourquoi j'ai
pu m'en sortir avec un cube sans paramètres. C'est la valeur par défaut
qui est déjà implicite. Mais il arrive parfois
que
vous trouviez des personnes très explicites
avec celle par défaut, surtout lorsqu'elles ont une autre option qui n'
est pas la valeur par défaut. Vous pouvez réellement
avoir des
surcharges de constructeurs les mêmes surcharges de méthode de
week-end. Je peux définir un autre
constructeur, l'onglet supérieur CTR. Et puis je peux dire non, vous voyez qu'il se plaint
parce qu'il y a
deux constructeurs identiques. On les voit
déjà ici avec l'environnement marin qui
type, c'est très bien. Mais que se passe-t-il si je voulais faire respecter cela
afin de créer un cube ? Vous devez me donner de la largeur. Vous devez me donner une hauteur. Et vous devez continuer à
diviser la hauteur mal. Et ensuite, tu dois
me donner quel est l'autre ? Largeur et longueur. On y va. Vous devez me donner
ces trois valeurs. Et une fois que vous m'avez donné
ces trois valeurs, je peux facilement instancier les
propriétés à ces valeurs. Que nous ne pouvons pas avoir un cube qui n'
a pas de côté et y penser. Avez-vous déjà vu des
soins intensifs avec 0 longueur, 0 à 0 hauteur ? Peut-être que c'est ce qu'
on appelle un cube invisible. Pour créer un cube, vous devez me donner la hauteur, la largeur et la
longueur du cube. Je peux donc supprimer ce constructeur par défaut et n'
avoir qu'un seul constructeur, ce qui est vu, j'ai
besoin de ces trois. Non, quand je fais cela,
regardez ce qui se passe
dans le fichier program.cs, il n'y a aucun moyen que je puisse
définir un objet de veuve
cube qui transmet ces valeurs à l'intérieur de
la liste des paramètres. Donc, même si cela n'
apaise pas le compilateur, n'est-ce pas ? Permettez-moi donc de le supprimer et vous
montrer cela
afin de créer un cube. Si vous le survolez, cela vous montrera que
vous devez avoir la largeur de l'int en longueur et en
serré. Je vais donc devoir
fournir la largeur. Et je le ferai avec
la valeur fournie par l'utilisateur, la hauteur et la longueur. Non, c'est satisfait. Maintenant, il y a ce cube. Quand vous dites, donnez-moi un nouveau cube et
que vous dites donnez-moi un cube nu, vous devez fournir la largeur, la hauteur et la longueur. Une fois cela fait, toutes
les valeurs seront affectées. Parce que dans le constructeur,
j'ai dit qu'une fois que vous avez ces scientifiques d'idées automatiques, ce nouvel objet d'un cube sait déjà
quelle est sa largeur, quelle est sa hauteur et
ce qu'il signifie est à l'avance. Je n'ai pas à le dire par la
suite comme ça, nous avons eu
le code au départ. Très bien, le triangle
peut encore s'échapper parce que je n'ai pas défini
dans le constructeur. Donc, même si je lui donne le constructeur
par défaut, cela fonctionnera toujours. Mais disons que je l'ai donné les deux. La valeur par défaut et celle
qui dit me donnent la largeur, désolé, pas avec la longueur, la hauteur et l'hypotenuse. Ou ils vont dire battage médiatique, n'est-ce pas ? Ou je pourrais faire respecter cela. Je ne veux que l'hypotenuse. C'est à moi de choisir quelle est
la valeur par défaut ? Quel est le strict minimum que cet objet doit
posséder pour être instancié ? Si j'ai deux
constructeurs comme celui-ci,
ce se passe, c'est
que je peux facilement définir un constructeur par défaut comme celui-ci et
attribuer les valeurs ultérieurement. Ou je peux en avoir un autre où
je peux transmettre les valeurs. Voyons donc que je vais
utiliser l'autre nœud. Donc, si je dis des parenthèses
ouvertes en triangle, vous verrez que
cela me montre que j'
ai deux options pour
créer un triangle. Je peux créer du blanc, ou je peux mettre la valeur de l'
hypotenuse. Et mettons-en dix, ou je mets la
contribution de l'utilisateur, quoi qu'il en soit. C'est tout ce qui m'est
demandé. Sachez que j'ai un triangle en utilisant
le constructeur par défaut. Laissez-moi le faire en trois exemplaires. Vous avez donc le constructeur
par défaut. C'est complètement vide. Pas de hauteur, pas de longueur, ce qui n'est pas vraiment pratique. Ensuite, vous avez celui où oui, je l'ai créé, des bateaux vides, j'attribue les valeurs. Et puis j'en ai
une où rien
d'autre n' a d'autres valeurs
que l'hypotenuse. C'est bon ? Donc, toutes ces choses
sont des options quand il s'agit
de mettre en place un constructeur. Vous pouvez donc avoir
plusieurs constructeurs. Ainsi, souvent, lorsque nous
définissons de nouvelles classes, même des classes intégrées C-sharp, vous pouvez trouver que vous
pouvez définir un objet. Désolé, lorsque nous définissons
des objets à partir de lunettes, vous pouvez définir les
objets avec des paramètres, parfois avec tous les paramètres. Ce ne sont que des surcharges de constructeurs qui
existent dans la classe. Si je crée un constructeur, c'est mon constructeur de base. Si je crée plusieurs
constructeurs, ce sont toutes des options
car je
pourrais facilement agrandir cela et dire me
donner l'hypotenuse, la hauteur et la longueur. Si vous voulez. Vous avez cette option également si
vous créez un triangle, si vous ne pouvez pas le faire vide, vous pouvez me donner
juste un utilisateur de bouton, vous pouvez me donner les trois. Que vais-je faire lorsque j'
obtiendrai les valeurs dans chaque paramètre ? Donc, quand je reçois l'
hypotenuse seule, je dirais
ici cette hypotenuse, de nouvelles valeurs. Gardez. Si j'arrive aux trois, alors hypotenuse ta
nouvelle valeur est tas. Bien sûr. Quand j'obtiens la hauteur, sa hauteur et quand j'obtiens
la longueur, sa longueur
, toutes mes
définitions peuvent être caractérisées par toutes
ces options, n'est-ce pas ? Donc le triangle trois
pourrait utiliser l'
Option, option surcharge s1, nous
passons juste l'hypotenuse
est une où je passe en hypotenuse
et utilisons dix. Je passe en hauteur
et je passe dans la longueur. Trois façons différentes d'
instancier un objet triangle. Bien sûr, chacun aura un résultat différent
parce que
c'est dans son état actuel quand j'ai
essayé de faire descendre la zone ici. Bien sûr. Je vais juste obtenir 0 parce qu' il n'y a rien que j'ai signé. Cependant, prendre l'oreille de celui-ci
me donnerait une valeur amère. Essayons cela
avec Triangle Tool puis essayons avec
le voyage, celui où nous n'
avons que ce bouton utilisé, cela va probablement
me donner 0 aussi parce que c'est la moitié 0
fois dix, ce qui est 0. Et ensuite, celui
où je fournit toutes les valeurs devrait
me donner un autre résultat. Disons donc que pour un tour, accord, alors saisissez
des valeurs aléatoires. Et puis nous voyons ici
que nous avons deux zéros. Le premier 0 pour
le triangle ici est parce qu'il était vide,
ces objets vides. Le second est un triangle à l'endroit où il a obtenu
la hauteur, la longueur et l'hypotenuse
codée en dur sous forme d'étain, ce qui aurait bien sûr pu facilement
être des entrées de l'utilisateur. Ensuite, nous avons le troisième
qui est 0 parce que nous n'avons eu que l'hypotenuse
ni la hauteur et la largeur. Ainsi, la demi-base ou
demi-longueur fois dix va nous donner une demi-fois
0 fois dix, ce qui est 20. Ensuite, la zone triangulaire de
la troisième zone où elle a atteint dix à la hauteur et la
largeur sera de 270. Très bien ? Donc c'est à peu près tout ça pour le
trou
que vous utilisez
des constructeurs, non ? Une fois de plus, les
constructeurs sont là pour appliquer les exigences relatives certaines propriétés
avant de pouvoir
avancer avec l'
instanciation d'un objet.
27. Créer un compte GitHub: Examinons la création d'
un compte GitHub. Si vous n'en avez pas un, vous pouvez en obtenir un
en cinq minutes ou moins. Étape numéro un, allez sur
github.com, c'est GIT Hub.com. Allez-y et
donnez-leur votre
adresse e-mail pour s'inscrire ? Non, j'ai déjà un compte. Je peux me connecter à mon
compte et vous montrer à quoi il ressemble. C'est ce que c'est. C'est presque comme une plateforme de médias
sociaux, mais pour les développeurs et les contributeurs
open source, et plus vous avez d'
abonnés plus vous
aurez d'activités sur votre écran. Plus vous ajoutez de référentiels ou de
projets, plus vous en avez ici. Il est donc très avantageux de
conserver les sauvegardes de
votre code source de référencer le code source d'
une autre personne. Et en général, collaborer
lorsque vous travaillez en équipe. Alors,
créez votre compte, et une fois que vous avez fait cela, vous pouvez passer
à l'étape suivante. Comme je l'ai dit, c'est une procédure
très simple. Vous leur donnez une adresse e-mail. Je vais essayer de leur
donner un que je ne pense pas encore
avoir pour moi. Et une fois cela fait, il suffit de
remplir le reste du formulaire, d'
entrer le contenu de l'e-mail
et de leur donner un mot de passe. Et je pense qu'après cela, ils envoient le code de vérification
et vous le vérifiez. Et puis, boum, vous
avez un compte. Une fois que vous avez fait tout cela, vous êtes prêt à passer
à la prochaine leçon.
28. Ajouter de la solution à la commande de sources: Très bien, les gars. Nous sommes à un très bon jalon. Nous avons beaucoup fait depuis que nous avons commencé ce
cours. Nous avons plusieurs
projets et plusieurs références de code et exercices. Et je pense que ce voyage a été
merveilleux jusqu'à présent. cette étape, je
voulais vous présenter le concept de contrôle des sources, et c'est un
concept très simple à saisir. Tout d'abord, vous aurez besoin de
votre compte GitHub, et je suis sûr que vous en avez
déjà créé un depuis Visual Studio. Il est très facile à intégrer
à votre compte GitHub. La première étape ici, et je vais juste
fermer toutes les fenêtres, tous les morceaux de code. Je peux simplement cliquer avec le bouton droit de la souris et
dire que tous les baignoires vont sur TBS. Nous avons donc une fenêtre vide. À partir d'ici. Si vous regardez dans le coin inférieur
droit, vous verrez un mélange comme
publicité pour le contrôle source. Et vous cliquez dessus,
il vous dira obtenir. Si cela ne s'affiche pas, vous
devrez peut-être revoir l'installation de
votre Visual Studio. Ainsi, lorsque vous cliquez sur
Obtenir, cette petite fenêtre vous suggère de
créer un référentiel Git. Vous pouvez également vous demander de vous authentifier contre votre
GitHub ou vos cônes à ce stade. Vous avez donc deux options ici. Vous avez GitHub
et Azure DevOps, tous deux appartenant à Microsoft, tous deux notre variable
pour les deux étant des moteurs
de contrôle
source pris en charge, sont des supports qui reçoivent le protocole. L'un ou l'autre fonctionne.
Cependant, je vais vous
montrer avec GitHub car c'est la plateforme
open source la plus reconnue. Et il nous a dit de
publier votre code et
d'avoir un portfolio pour montrer aux autres que c'est
ce que vous avez écrit, c'est
ce que vous savez. En continuant avec GitHub, vous pouvez simplement aller de l'avant
et remplir hors cours, vous êtes authentifié afin
qu'il remplisse certains
blancs pour vous. Ensuite, il verrait un nom de
dépôt et vous pouvez lui donner d'autres textes. C-sharp avec net six, je suis allé voir la
programmation de console avec tricot six. Et il peut
lui donner une description. Les activités entourant le B6 de la programmation
c-sharp
dans la recherche de dotnet. Savoir. Vous vous demandez peut-être, d'accord, pourquoi est-ce que je veux
publier mon code ? Je l'ai sur mon ordinateur. Eh bien, un contrôle source unique vous
aide à gérer les changements. Nous avons donc fait beaucoup de changements. Nous ne faisions pas de camionnage
avec le contrôle de la source. Donc je suis sûr que si je
vous demandais de vous rappeler et d'
annuler certaines choses
des leçons précédentes, ce serait très difficile. C'est donc un avantage
car si vous commettez une erreur dans ce qui fonctionnait et que vous
ne savez pas comment y remédier. Vous pouvez toujours revenir
à Source Control, obtenir la version qui
fonctionnait, puis recommencer. C'est donc bien, c'est
bénéfique pour cette raison. Un autre avantage, encore une fois, est qu'il vous aide
à partager du code non seulement avec des employeurs potentiels
ou vos amis, mais également avec votre équipe. Si vous travaillez sur un projet
et que vous devez tous contribuer au lieu
de copier-coller, j'essaie de zoomer la session. Vous pouvez simplement
utiliser le contrôle source et centraliser
l'endroit où le code est stocké, qui sera sur GitHub. Et puis tout le monde
aimerait s'abonner à ce référentiel et être en mesure voir les
changements de tout le monde, d'apporter des changements, et tout le monde peut être sur le
même pied quand il vient à niveler la diversion ou contribuant à
l'application. Je vais décocher référentiel
privé parce que
je ne veux pas que ce soit privé si vous voulez
masquer votre application au public que
vous choisissez privé, sinon vous décochez cela. Ensuite, vous pouvez simplement
dire Créer et pousser. Une fois que vous avez fait cela
avec succès et les choses
nobles changeront
dans Visual Studio One, vous ne verrez plus le bouton indiquant
Ajouter au contrôle source. Et je voulais juste
vous montrer le maître. Je voulais juste te montrer ça. Il obtiendra un symbole avec le nom du projet
ou d'autres projets. Vous pouvez voir que j'ai un certain nombre de projets sur Source Control. Vous verrez également
des cadenas bleus apparaître à côté de vos fichiers. Cela signifie qu'ils
sont enregistrés là-dedans ? Non. J'ai le même niveau que
ce qui est hébergé de manière centralisée. Si je dois accéder à mon profil
GitHub, je pourrais
parcourir mes référentiels. Laissez-moi commencer à zéro. Voici donc ma page d'accueil GitHub et à gauche se trouvent
mes référentiels. Je peux voir la programmation de console intérieur de cette recherche et
elle va filtrer et me
montrer le projet et tous
les fichiers vus sur les
fichiers du projet que j'ai téléchargés sont ici pour un accès public
parce que je l'ai fait. public. Si je voulais changer,
c'est privé. Je vais dans les paramètres et je fais défiler vers le bas et je vois un
changement de visibilité, alors cela me permettrait
de le changer en privé. Je pourrais également archiver
transféré à quelqu'un d'autre ou simplement le supprimer si je ne le
voulais vraiment plus. Je peux également renommer. Tant que vous n'êtes pas en
conflit avec les noms, ce n'est pas un problème. Si je voulais ajouter des personnes
à ce référentiel, c'est-à-dire par mes coéquipiers, personnes
avec lesquelles je cods gratuitement, vous pouvez ajouter, je pense, à environ cinq
collaborateurs. Il vous suffit donc de confirmer votre mot de passe et
d'ajouter des personnes. Très bien, donc je peux
aller de l'avant et dire que les gens
recherchent le nom d'utilisateur, leur
envoient une invitation. Une fois qu'ils ont vu cette invitation, ils peuvent accepter et ils
auront accès
au référentiel où
ils pourront venir fermer tricot ou l'ouvrir avec Visual Studio en cliquant sur le
code sur leur propre ordinateur. Ils peuvent dire Ouvrir
avec Visual Studio, qui
leur permettra ensuite d'ouvrir le projet localement dans une nouvelle fenêtre
Visual Studio à l'emplacement de
leur préférence. Donc, si j'ai changé ce chemin
pour tester, d'accord, maintenant je peux le cloner
et il y arrivera, il
téléchargera automatiquement tous ces fichiers et les mettra en
place pour moi sur mon ordinateur. C'est ce que feraient vos
coéquipiers après avoir créé
le projet, votre équipe, il allait de l'avant et cloner et ensuite ils
pourront ouvrir la solution de programmation de la
console de fichiers SON. Ensuite, ils
seraient en mesure d'interagir avec tous les
fichiers du projet en conséquence. Maintenant, quand je change
son moi en fichier, disons le Hello World, c'était très simple. Et puis peut-être que j'ai
apporté ce changement. Quel que soit le changement, il peut s'agir d'un nouveau texte,
d'un espace, quoi qu'il soit, vous verrez
qu'il y a maintenant une coche rouge. Ce signal rouge
signifie que j'ai modifié le fichier
depuis la dernière fois. Il s'agit donc d'
une modification de test. C'est ma modification. J'ai modifié
le fichier par rapport à la dernière version
sur GitHub. Une fois que j'ai fait mon changement, nous travaillons en équipe, personne. J'ai eu l'
occasion de savoir modifier ces parties particulières
du programme et je l'ai
fait et je suis satisfait. Je dois l'enregistrer sur
GitHub pour que tout le
monde puisse avoir accès
à la modification. Je devrais aller à une fenêtre
appelée les bons changements. Vous pouvez y accéder
en allant dans Afficher et les modifications le
masqueront plus tôt. Mais c'était Datsun quand les étudiants l'ont
mis sur le côté
ici aux côtés de l' Explorateur de
solutions. On y va. Je ne sais pas pourquoi ne pas être
fixé là-dessus. Obtenez des changements. C'est sur
ça que je me concentre. Alors, obtenez des changements, d'
abord, vous mettez un message,
qu'est-ce que vous l'avez modifié ? Je donnerais un bon message, modifié le programme Hello
World. Ensuite, je peux voir
tout commet et voir, alors cliquez sur ce petit
caret en plus des commentaires Tous et cliquez sur Commit
Tout et synchroniser. Et ce que cela va faire, c'est
pousser ce changement à GitHub. Donc non, je n'ai fait que
quelques clics de bouton. Maintenant, le cadenas est de retour. Et si quelqu'un d'autre
retourne sur GitHub, remarquez tous ces
fichiers de projet lorsque j'actualiserai, il va
leur montrer il y a 20 secondes il y a eu un changement. Et cela va me montrer quel projet a été modifié
et quel était le message. Si je clique sur ce
message, programme modifié, vous voyez ici qu'
il me montre qu' il a ajouté deux nouvelles espèces
ainsi que ce qui est en rouge est ce qui est en vert
est ce qu'est la note. Très bien. C'est pourquoi j'ai dit qu'il pouvait
suivre les changements parce que maintenant vous pouvez voir exactement qui
a fait ce changement. Donc, quelqu'un qui a détruit l'application, vous
savez qui blâmer. Très bien, vous pouvez facilement effectuer
toutes les modifications qui se sont produites sur chaque
fichier à chaque itération. Et vous avez toutes les
versions qu'il peut rechercher et
cliquer sur les commits. Ensuite, vous pouvez voir en
fonction des messages, qui a fait quoi et quel était
le message, vous pouvez toujours revenir
à cette version
du code et récupérer celle-ci. Très bien, donc c'est bon
si quelqu'un de l'équipe détruit le code ou même si vous détruisez le code et que
vous vouliez revenir, il est facile de revenir
à cette version plus propre. Le revers pour
les membres de l'équipe qui
attendent les mises à jour. Il s'agit donc de la fenêtre originale de
Visual Studio. Et si vous
regardez mon program.cs, il n'a pas
cette mise à jour, n'est-ce pas ? Alors disons non, j'ai effectué les mises à jour
et, vous savez, je dois récupérer
le code le plus récent pour cette mise à jour sur votre
application, sur votre machine. Tout ce que vous avez à faire, c'est d'
aller chercher des changements. Quand cette fenêtre s'ouvre, laissez-moi réparer la
station d'accueil une fois de plus. Lorsque des changements apparaissent, vous suffit de
faire un cycle de pool. Je vais vous appeler
et vous dire, Hé, vous savez, j'ai fini le travail et je l'ai
vérifié, je vais aller plus tard. Donc, vous êtes comme, Ok, merci. Et puis vous venez juste pour obtenir des changements et ensuite vous faites une piscine. Et ensuite, il
passera à GitHub, obtiendra toutes les modifications,
puis regardera ça. Il vient de
mettre à jour automatiquement mon fichier pour moi. C'est pourquoi GitHub est parfait
pour les situations d'équipe et pas seulement acheté par github à l'aide d'un système de
gestion de contrôle de source. Github n'est qu'une
de vos options. Vous avez d'autres options s'
il y a un
des protocoles. Mais je serai le plus populaire. Et celle que
je recommanderais GitHub est l'une des plateformes les
plus populaires, les plus faciles à démarrer
dans mon livre, et aussi celle que je recommande.