Transkripte
1. Einführung: KI ist nichts für die
Zukunft. Sie ist schon gekommen. Und wenn Sie
als Java-Entwickler wachsen möchten, müssen
wir jetzt lernen, wie man mit KI
arbeitet. In diesem Kurs
zeige ich Ihnen, wie Sie den Github-Copilot
verwenden, um schnell Code
zu schreiben, Fehler in nur wenigen Sekunden zu
beheben, Full-Stack-Java-Projekte ohne Kopfschmerzen zu
erstellen
und sogar leistungsstarke
Spring-Boot-Anwendungen zu erstellen, und das
alles mit KI, die wie
Ihr persönlicher Assistent arbeitet Das spart Ihnen wertvolle Zeit, verbessert Ihre Fähigkeiten und macht das Programmieren viel
unterhaltsamer und einfacher Außerdem lernen Sie
die besten Methoden kennen,
intelligente Methoden kennen, um
effektive Eingabeaufforderungen zu geben,
und erfahren, wie Sie
Copilot wirklich zu Ihrem Codierungspartner machen Wer sich jetzt mit KI-Tools auskennt, wird die Nase vorn haben
und eine Vorreiterrolle Also warte nicht. Lass uns unsere Reise beginnen, Copilot zu beherrschen
2. 0201 GitHub Copilot in Visual Studio Code einrichten: Verwenden Sie Copilot im VS-Code
in unseren Java-Projekten.
Wir
müssen grundsätzlich sicherstellen, dass wir drei
verschiedene Erweiterungen
installiert haben drei
verschiedene Erweiterungen
installiert Sie jedoch vorher
sicher, dass Sie
die neueste und
beste Version von
JDK auf Ihrem Computer installiert haben die neueste und
beste Version von JDK auf Ihrem Computer installiert Um dies zu überprüfen, können
Sie
Control Tilda drücken und den Befehl
Java Hyphen Version
eingeben und sicherstellen, dass Sie die Version sehen die
Sie installiert Die erste Erweiterung, von der
wir
sicherstellen müssen, dass wir sie installiert haben, ist das Erweiterungspaket für Java Wenn Sie an Java-Projekten
gearbeitet haben, müssen
Sie diese Erweiterung bereits
installiert haben. Wenn nicht, wenn Sie
gerade erst mit VSCode beginnen
, installieren Sie
diese Erweiterung Und während der Installation werden Sie
möglicherweise aufgefordert, die Java-Version auszuwählen.
Stellen Sie sicher, dass Sie
die neueste Version wählen Dies ist die Erweiterung, die dem
VS-Code die Informationen
verleiht , die uns bei der
Arbeit an Java-Projekten helfen. Außerdem enthält
es eine Reihe von Tools wie Test Run Debug usw., die uns bei der
Arbeit an Java-Projekten helfen Die nächste Erweiterung, die wir
installieren müssen , ist das Spring
Boot-Erweiterungspaket, das nicht wirklich obligatorisch ist, aber wir müssen es installieren, wenn wir an
Spring-Boot-Projekten arbeiten Und tatsächlich werden
wir in diesem Kurs an
Frühjahrsprojekten arbeiten, um die Leistungsfähigkeit von Copilot zu demonstrieren Spring Boot-Erweiterungspaket. Dies würde es uns ermöglichen, an Springboard-Projekten zu arbeiten, und es enthält auch eine Reihe
von Tools wie
Spring Initializer, mit von Tools wie
Spring Initializer, denen wir
problemlos
Springboard-Projekte mit allen
erforderlichen Abhängigkeiten erstellen können Springboard-Projekte mit allen Es enthält auch ein
Springboard-Dashboard, mit dem wir
die restlichen Endpunkte visualisieren, alle laufenden
Springboot-Anwendungen
anzeigen
oder die Anwendungen nach Bedarf sogar starten und oder die Anwendungen nach Bedarf sogar starten Also mach weiter und
installiere das auch. Als Nächstes, rate mal was? Wir müssen die
Copilot-Erweiterung installieren. Ich werde genau
das suchen Da ich es
bereits installiert habe, sehe
ich die
Option zur Installation nicht,
aber bitte fahren Sie fort und
installieren Sie Git Hub Und während der Installation
wirst du möglicherweise
aufgefordert, dich in
dein GitHub-Konto einzuloggen Wenn Sie kein
GitHub-Konto haben, gehen Sie zu github.com,
erstellen Sie Ihr Konto und melden Sie sich dann mit
diesen Anmeldeinformationen an Sobald Sie
diese Erweiterungen installiert
haben, sind wir bereit, Copilot in
unseren Java-Spring-Projekten zu
verwenden .
Wir sehen uns
3. 0202 GitHub Copilot in IntelliJ IDEA einrichten: Okay, lassen Sie uns sehen,
wie wir
Co-Pilot in IntelliJ ID einrichten können Co-Pilot Vorher müssen wir jedoch
sicherstellen, dass wir die
neueste Version von JDK auf unserem
Computer
installiert haben und dass wir auch die neueste
Version von Intelli haben Sobald Sie sie haben, gehen Sie zur
Dateiprojektstruktur und stellen Sie sicher , dass Sie die
richtige ASDK-Version auswählen Das Sprachniveau
ist ebenfalls wichtig da es die Funktionen
festlegt, die die Codeunterstützung im
Editor unterstützen soll Sobald Sie
sie haben, können wir Copilot einrichten Um Copilot einzurichten, gehen Sie zu den
Einstellungen und klicken Sie auf Plugins. Gehe zum Marketplace und
suche nach Github Copilot. Es ist auch wirklich
erwähnenswert, dass Intelligy auch über einen
eigenen KI-Codeassistenten verfügt ist er jedoch nicht so genau oder Im Vergleich zu Copilot ist er jedoch nicht so genau oder
kontextsensitiv,
da Copilot
HatpFoe und Codex verwendet, die an einer Vielzahl von Open-Source-Projekten geschult wurden, die
auf GitHub verfügbar sind. Und im Allgemeinen finde ich, dass
Copilot komplexe Eingabeaufforderungen besser handhaben kann als der eingebaute KI-Assistent. Copilot kann auch
sehr komplexe Funktionen
und Klassen generieren ,
und ich finde den integrierten
KI-Assistenten Wähle Github Copilot
und installiere ihn. Nach der Installation
müssen wir unsere ID neu starten. Klicken wir also auf
Restart ID, Restart. Wir haben also das
Copilot-Plugin installiert Jetzt sollten wir dieses Copilot-Symbol
in der oberen linken Ecke
sowie in der unteren rechten Ecke
sehen können in der oberen linken Ecke
sowie in der unteren rechten Ecke sowie Klicken Sie auf dieses Symbol und
dann auf Bei GitHub anmelden. Wir müssen uns jetzt in unser
GitHub-Konto einloggen und
IntelliJ autorisieren , auf
unser Github-Konto zuzugreifen Klicken Sie also auf Kopieren und
Öffnen. Klicken Sie auf Weiter. Wenn Sie noch kein
Github-Konto haben, können
Sie einfach
eines erstellen und sich anmelden. Es würde dich bitten
, den Code einzugeben. Sie müssen diesen
Authentifizierungscode eingeben, um Intellig den
Zugriff auf Ihr Github-Konto zu autorisieren Sobald Sie das getan haben,
klicken Sie auf Weiter. Klicken Sie auf das Autorisierte
Github-Copilot-Plugin. Und wir sind bereit, Copilot in
unserer IntelliJ ID
zu verwenden .
Wir sehen uns als Nächstes
4. 0203 GitHub Copilot in Eclipse-IDE einrichten: Sehen Sie, wie wir
Co-Pilot in Eclipse einrichten können. jedoch vorher
sicher, dass Sie
die neueste und beste Version
von JDK und Eclipse haben die neueste und beste Version
von JDK und Eclipse Sobald Sie sie haben, gehen Sie zur Hilfe, klicken Sie auf Eclipse Marketplace
und suchen Sie nach Copilot Es gibt ein offizielles
Co-Pilot-Plugin von Github, aber leider fehlen ihm
einige Funktionen Zum Beispiel hat es zumindest
zum Zeitpunkt dieser Aufnahme noch keine Chart-Unterstützung. Vielmehr wollen wir dieses Plug-In
namens Copilot for
Eclipse von Genu Tech
installieren namens Copilot for
Eclipse von Genu Also mach weiter und installiere es, und möglicherweise musst du
deine Eclipse nach der Installation neu starten . Nach der Installation
sollten Sie dieses Symbol in der
unteren rechten Ecke
sehen können dieses Symbol in der
unteren rechten Ecke
sehen Klicken Sie darauf und dann auf Bei Github Copilot
anmelden Wir müssen
dieses Plugin jetzt autorisieren, um unser Github-Konto zu verwenden Also klicke auf Code kopieren und öffne. Wenn Sie kein
Github-Konto haben, können
Sie ganz einfach eines erstellen und sich
dann anmelden. Klicken Sie auf Weiter. Fügen Sie den Code ein, den Sie gerade
kopiert haben, und klicken Sie auf Weiter. Und dann autorisiere endlich
das Github, das Copilot-Plugin. Damit sind wir bereit, Copilot
in
unserer Eclipse-Registrierung zu verwenden .
Wir sehen uns als Nächstes
5. 0204 Die IDE, die wir verwenden werden: Wir werden
für den Rest des Kurses Intelligent ID verwenden. Wenn Sie eine andere
ID verwenden, sollten Sie das wissen. Copilot funktioniert zwar mit
verschiedenen IDs wie
Visual Studio-Code, Jet Brains, Intelligent ID, Eclipse usw., es
kann jedoch geringfügige Unterschiede in
den unterstützten Funktionen, den verwendeten
Tastenkombinationen und ihrer Funktionsweise Die Kernfunktionen,
wie Air Powered-Vorschläge,
Codevervollständigung und Unterstützung,
bleiben jedoch wie Air Powered-Vorschläge, Codevervollständigung und Unterstützung, bei allen
Registrierungen gleich Ein wesentlicher
Unterschied besteht jedoch in den Tastenkombinationen und Tastenkombinationen, die für die Interaktion mit dem
Copiloten verwendet werden Während einige Tastenkombinationen verschiedene IDs
gleich
bleiben, unterscheiden sich
einige
je nach Registrierung Jede ID hat ihre eigenen
Tastenkombinationen, und wenn ich sie alle
behandeln würde,
würde das zu unnötigen
Wiederholungen in diesem Kurs führen Stattdessen werden wir uns auf
IntelligID konzentrieren , da dies
die beliebteste ID unter Java-Entwicklern ist die beliebteste ID unter Java-Entwicklern Indem wir uns auf Intellig konzentrieren, stellen
wir sicher, dass wir in die Tiefe gehen,
ohne Sie mit redundanten Informationen zu überfordern Sie sich jedoch keine Sorgen, wenn Sie
eine andere ID verwenden Ich habe einen Spickzettel bereitgestellt
, auf den Sie sich beziehen können. Wenn ich also eine bestimmte
Tastenkombination in Intellig ID verwende, können
Sie einfach
im Spickzettel
nach der entsprechenden Tastenkombination in Ihrer ID
suchen Für die beste
Lernerfahrung kann
ich jedoch nur empfehlen, Intelligen ID zu installieren und Hier können Sie
praktische Erfahrungen sammeln und in Echtzeit verstehen, wie Copilot
funktioniert Sobald Sie sich damit vertraut gemacht haben,
können Sie ganz einfach die Punkte verbinden und dieselben Konzepte auf
jede andere ID
anwenden, die Sie bevorzugen Lassen Sie uns also eintauchen und herausfinden, wie Co
Pilate
Ihre Java-Entwicklung in
Intelligen ID vorantreiben kann Ihre Java-Entwicklung in .
Wir sehen uns als Nächstes
6. 0205 Maven-Projekt erstellen: Lassen Sie uns ein
Maven-Projekt in IntelligID erstellen ,
damit wir
etwas zum Arbeiten
haben ,
damit wir
etwas zum Arbeiten
haben und Copilot verwenden können. Wenn Sie bereits wissen, wie man ein Maven-Projekt in
Intelligent ID
erstellt , Sie können diese Vorlesung überspringen und mit der nächsten
weitermachen. Wenn nicht, folgen
Sie mir einfach, denn genau das
werden wir tun. Um ein Man-Projekt zu erstellen, gehen Sie zu Datei > Neu > Klicken Sie auf Projekt. Wählen Sie den Maven-Archetyp und
geben Sie unserem Projekt einen Namen. Ich nenne es Bite
Forge und dann wähle ich Archetype als Maven Archetype Quick Start Da
es in diesem Kurs nicht um Maven geht, werde
ich mich nicht wirklich eingehend mit Ich werde die übrigen
Felder auf
ihren Standardeinstellungen belassen und auf ihren Standardeinstellungen belassen und Warten Sie eine Weile, bis
der Build abgeschlossen ist. Sobald der Build erfolgreich ist, haben
wir das Projekt fertig. Wir können jetzt anfangen,
Copilot zu verwenden. Wir sehen uns
7. 0206 Code Generieren mit CoPilot Kursen Methoden CRUD Repos und mehr: Sehen wir uns an, wie wir mithilfe von Copilot codeähnliche
Klassen und Methoden
generieren können Klassen Lassen Sie uns dafür
eine neue Klassendatei erstellen. Ich werde unsere
Klasse Math Utilities nennen. Sobald ich in
die Klasse gehe und
Enter oder Return drücke, schlägt mir der
Copilot einen Code vor. Was Sie hier sehen,
wird Geistertext genannt. Es hat eine graue Farbe und
es ist die Art des Copiloten, zu fragen,
ob dieser Code in dieser Datei enthalten
sein soll Wenn Sie Ja dazu sagen möchten, drücken
wir die Tabulatortaste, um den
Code zu akzeptieren Ich drücke Escape und
der Vorschlag ist weg. Wenn Sie den Copilot
jetzt bitten möchten den Vorschlag erneut anzuzeigen, entweder
zurückgehen und ihn präsentieren
oder
wir können einfach Alt (Backslash)
drücken Copilot
zu bitten, den Code zu Und manchmal hat Copilot vielleicht mehrere Vorschläge. Wenn wir
durch diese Vorschläge navigieren möchten, können
wir Alt drücken, eckige Klammer
rechts um zum nächsten Vorschlag zu gelangen. Wie Sie sehen, hat sich der Code leicht geändert, oder wir können Alt (
linke eckige Klammer) drücken um zum
vorherigen Vorschlag zu gelangen Wenn Sie keinen neuen Code
sehen während Sie die
eckige Alt-Klammer drücken, bedeutet
das, dass Copilot
keine Vorschläge zu machen Und wir müssen nicht
den gesamten Code auf einmal akzeptieren. Wir können auch jeweils ein Wort
oder eine Zeile nach der anderen akzeptieren . Wenn wir
jeweils ein Wort akzeptieren möchten, müssen
wir die
Strg-Schreibtaste drücken , um jeweils ein
Wort zu akzeptieren. Und wenn Sie
jeweils eine Zeile akzeptieren möchten, möchten
wir die Alt-Taste hinzufügen. Also drücken wir Strg+Alt
nach rechts , um jeweils eine Zeile zu akzeptieren. Jetzt
fragen Sie sich vielleicht, wie Co Pilot diesen Code generieren kann Nun, wir haben unsere
Klasse Math-Utilities genannt, und Copilot ist intelligent genug, um zu
verstehen, welchen Code wir hier benötigen
könnten Übrigens, selbst
wenn Sie exakt dieselbe Klasse mit exakt
demselben Namen erstellen , Ihnen möglicherweise ein
ganz anderer Vorschlag angezeigt Copilot generiert einen Code auf der
Grundlage seines
Kontextbewusstseins. Lassen Sie mich nun entweder die
Eingabetaste oder den
Alt-Schrägstrich drücken , damit Copilot weiterhin
Vorschläge macht Ich akzeptiere weiterhin,
ob sie Sinn machen. Manchmal
generiert Copilot möglicherweise nicht den Code
, den Sie benötigen In diesem Fall können wir
Copilot bitten, den Code zu generieren, den wir benötigen, und das können wir unter anderem mithilfe von
Befehlen herausfinden Wir Java-Entwickler verwenden oft Befehle, um die Methode zu beschreiben Und im Allgemeinen schreiben wir die Methode und geben dann einen Kommentar ab. Aber hier können
wir einen Kommentar abgeben, um Copilot zu bitten,
den Code für uns zu generieren Ich werde
zum Beispiel einen Kommentar hinzufügen, der besagt, Methode zwei, und übrigens, Copal versucht auch hier
eine Vermutung anzustellen gibt uns Vorschläge zu
dem Wenn Sie
es erneut akzeptieren möchten, können
Sie die Tabulatortaste drücken oder einfach weitertippen Also werde ich
Methode sagen, um
ein Array von Primzahlen zurückzugeben . Bis zu N. Und sobald
ich Enter oder Return drücke, Copt tatsächlich
den Ghost-Text mit zeigt
Copt tatsächlich
den Ghost-Text mit
dem Vorschlag Ich kann
es einfach akzeptieren, indem ich die Tabulatortaste drücke. Es ist also wirklich wichtig, dass
Sie einen klaren Kommentar schreiben. Je besser Sie Ihre Absicht
beschreiben, desto besser ist
der Vorschlag von Copalt Manchmal
generiert Copilot auch Code mit einigen Fehlern oder
mit In diesem Fall hat es einwandfrei
funktioniert, aber manchmal fehlt
möglicherweise kein Code wie
dieser, was zu Fehlern führt Auch hier können Sie einfach
zu dieser Stelle gehen und
Copilot bitten , einen Vorschlag zu machen,
indem Sie Alt (Backslash) drücken, und
der Code wird wie gewünscht ausgefüllt Wir haben hier keine schriftliche
Erklärung, also gehe ich dorthin und drücke
Alt Backslash und akzeptiere den Eine andere Möglichkeit, Co
Palette zu bitten, Code für
uns zu generieren , besteht darin, unseren Methoden einen aussagekräftigen
Namen zu geben Ich
sage zum Beispiel public static. Und schauen Sie, Copalt
versucht hier bereits , einen Vorschlag zu machen,
eine Methode, um zu sehen, ob eine bestimmte
Zahl eine Primzahl ist oder nicht Ob Sie es glauben oder nicht, das ist genau das, was
ich gleich tippen werde Sie können einfach
den Methodennamen Prime eingeben, und wir haben hier einen Fehler. liegt daran, dass diese
Methode
nichts öffentliches
statisches Mobbing zurückgibt nichts öffentliches statisches Mobbing Manchmal muss
man sich tatsächlich einmischen und
Änderungen vornehmen, weil der
Copilot nicht perfekt ist Es wird Ihre Arbeit nicht wirklich erledigen, sondern Ihnen nur die Arbeit erleichtern,
indem es Vorschläge macht. Es wird nur Code generieren der auf dem Kontext, der
Struktur und der Absicht
basiert, aber Sie müssen die Vorschläge noch überprüfen
und verfeinern, und hier kommt unser
Wissen ins Spiel. So generieren wir
Code mit Copilot. Auf diese Weise können wir auch
Crud-Repositorys oder
Controller generieren Crud-Repositorys oder Später werden wir aussagekräftigere Beispiele
haben
und wir werden uns einige der wirklich interessanten
Funktionen ansehen, und wir werden uns einige der wirklich interessanten
Funktionen ansehen die
Copilot bietet, um uns die Arbeit zu
erleichtern Aber als Aufgabe möchte
ich, dass Sie
eine Mitarbeiterklasse mit
Getter und Setter, dem Konstruktor und einer Methode zur
Berechnung
des Jahresgehalts erstellen eine Mitarbeiterklasse mit
Getter und Setter, dem Konstruktor und einer Methode zur
Berechnung
des Jahresgehalts Machen Sie weiter und machen Sie das mit Hilfe
des Copiloten.
8. 0207 Aufgabenlösung: Mal sehen, wie wir eine Mitarbeiterklasse
erstellen können. Ich werde eine neue Klasse namens
Employee erstellen und hier einen Kommentar abgeben, in dem es um eine gut gestaltete
Mitarbeiterklasse mit Konstruktor-, Getter- und
Setter-Methoden und einer Methode zur Berechnung Sobald ich die Tabulatortaste drücke, haben
wir den Code. Jahresgehalt bekommen heißt also
einfach, das Gehalt mit 12 zu multiplizieren Es wurde auch eine zusätzliche
Methode hinzugefügt ,
die als Gehaltserhöhung bezeichnet Das ist gut zu haben.
Wir sehen uns als Nächstes.
9. 0208 Chat-Ansicht erkunden Eine weiterentwickelte Version von Inline-Chat mit zusätzlichen Funktionen und Kontext-Awa: Inline-Chat eignet sich hervorragend für schnelle codespezifische Antworten
direkt in Ihrem Editor Sie markieren einen Code, stellen eine Frage und erhalten
eine kurze Antwort. Aber was ist, wenn Sie
tiefere Diskussionen, Hilfe beim
Debuggen oder
konzeptionelle Anleitungen benötigen Hilfe beim
Debuggen oder
konzeptionelle Anleitungen Nun, hier kommt Chat
View ins Spiel. Um die Chat-Ansicht zu öffnen, können
Sie auf das Copilot-Symbol in
der unteren rechten Ecke und
dann auf
Github Copilot der unteren rechten Ecke und Hat öffnen klicken Alternativ
können Sie auch die
Tastenkombination Strg Shift C verwenden . Die Chat-Ansicht wird
in einem separaten Bereich geöffnet,
sodass Sie Platz für
strukturierte Konversationen haben.
Im Gegensatz zum Inline-Chat, der einfache Fragen
beantwortet, ermöglicht die
Chat-Ansicht auch
Folgediskussionen ,
sodass Sie Platz für
strukturierte Konversationen Im Gegensatz zum Inline-Chat, der einfache Fragen
beantwortet, ermöglicht die Chat-Ansicht auch
Folgediskussionen Es ist wie eine weiterentwickelte
Version des Inline-Chats,
die sich an Ihre
Interaktion mit dem Chat erinnert. So können Sie eine
Folgefrage stellen und im Laufe der Zeit bessere
Antworten erhalten. beispielsweise während der
Arbeit an Ihrem Projekt auf einen Fehler stoßen
, Wenn Sie beispielsweise während der
Arbeit an Ihrem Projekt auf einen Fehler stoßen
, können
Sie einfach das gesamte
Fehlerprotokoll hier hinter sich lassen und fragen, können
Sie einfach das gesamte
Fehlerprotokoll hier hinter sich lassen und fragen wie Sie den Fehler beheben können, würde Ihnen
vorschlagen, wie und wo
Sie ihn in Ihrem Code beheben können, oder ob Sie
ein Entwurfsmuster untersuchen oder
Leistungsverbesserungen in Ihrem Code benötigen, oder wenn Sie
Implementierungsstrategien wissen möchten, gibt
Chafe detaillierte Einblicke Etwas im Liniendiagramm ist
einfach nicht dafür gemacht. Ich möchte
zum Beispiel wissen, wie diese Anwendung in AWS
bereitgestellt wird. Und es wird
Anweisungen geben, wie
wir das tun können,
zusammen mit Befehlen, die
wir ausführen müssen. So können wir
diesen Anweisungen folgen und die Anwendung bereitstellen. Und wenn Sie
weitere Fragen haben, können
wir sie einfach stellen und es wird eine Lösung gefunden. Wir können auch fragen, wie die Autorisierung
in unserer Anwendung
implementiert wird. Und es würde
alle Anweisungen enthalten , die Sie
befolgen müssen, um die
Autorisierung in Ihrem Projekt zu implementieren. Es zeigt deutlich, welche
Dateien wir erstellen müssen, wie sie konfiguriert werden
müssen, wo sie erstellt werden müssen usw. Und wenn wir
Änderungen am bestehenden Code vornehmen müssen , würde
dies auch vorschlagen Nun, zum jetzigen Zeitpunkt macht es für uns keinen
Sinn, die
Autorisierung in dieser speziellen
App zu implementieren , aber werden
wir tatsächlich eine
Springbot-Anwendung
von Grund auf neu erstellen , und dort könnten wir tatsächlich Autorisierung
und Authentifizierung
implementieren Aber im Moment ist es
sinnvoller, die Protokollierung
in unserer Anwendung
zu implementieren Also werde ich genau
das fragen Also werden wir aufgefordert, diese Abhängigkeiten,
SLF vier J, sowie Logback
hinzuzufügen SLF vier J, sowie Logback Und dann werden wir aufgefordert, diese Datei
mit dem Namen
logbck dot XML im
Ressourcenordner zu erstellen logbck dot XML im Und es hat auf
andere Konfigurationen hingewiesen, die wir
benötigen, damit es funktioniert Ich kann auch eine
Folgefrage stellen , wie ich
das in meinem Code verwenden kann. Es zeigt einige Vorschläge ,
wie wir es implementieren können. Falls Sie es bemerken, hat es
unsere Mitarbeiterklasse mit
Logging-Mechanismus generiert . Ich kann diesen Code einfach kopieren, oder ich kann den Code einfach einfügen oder den Code einfach so
ersetzen. Wir werden jedoch Zwangsfehler
haben, weil ich
diese Abhängigkeit nicht habe Also werde ich es schnell rückgängig machen. Eine Sache, die an ChaFve
einzigartig ist, ist , dass es sich an
unsere Konversation erinnert Ich kann zurückgehen und mir die Eingabeaufforderung ansehen, die ich eingegeben habe, und die
Konversation, die ich geführt habe Ich kann auch eine
bestimmte Aufforderung löschen wenn ich finde, dass sie
für diese Konversation nicht relevant ist. Oder wenn ich
eine völlig neue
Konversation
ohne Kontext beginnen möchte , kann
ich auf dieses Plussymbol klicken, um eine neue Konversation zu beginnen
und Fragen zu stellen. Ich kann auch
zwischen Konversationen hin und her wechseln. Wenn ich mir also alle
Konversationen
ansehe, werden alle Sitzungen angezeigt,
die wir haben. Ich kann darauf doppelklicken, um zur vorherigen Konversation
zurückzukehren, oder ich kann auch eine dieser Konversationen
löschen, indem ich mit
der rechten Maustaste klicke
und die Konversation lösche. Und es würde
die Konversation löschen, und der Kontext wird
ebenfalls bereinigt. Als Aufgabe möchte
ich, dass Sie die Protokollierung in
unserer Anwendung mithilfe der
Copilot-Chat-Ansicht
implementieren unserer Anwendung mithilfe der
Copilot-Chat-Ansicht Nun, es hat auch eine Reihe
anderer Funktionen. Wir werden uns mit all diesen kommenden Vorlesungen befassen.
Wir sehen uns als Nächstes.
10. 0209 Inline-Chat mit deinem Programmierkumpel zur Fehlerbehebung bei der Generierung von Codeänderungen und mehr: Okay, nehmen wir die
Hilfe von Copilot Protokollierung
in unserer Anwendung
zu implementieren Lassen Sie mich Copilot fragen, wie die Protokollierung
in meiner Anwendung implementiert Es liegt ein
Fehler vor, aber der Copilot ist intelligent genug, um zu
verstehen, was ich will Also muss ich zuerst zu
Palm Dot XML gehen und
diese Abhängigkeiten einführen Also gehe ich zu Palm Dot XML und
platziere meinen Cursor hier. Und schieb den Code einfach so hoch. Das Entfernen der Abhängigkeit ist jedoch ein Tag, da
es bereits vorhanden ist. Ich mache Control ATL, um den Code
zu formatieren. Als Nächstes müssen wir
Logb Dot EML unter den Hauptressourcen von
SRC einführen Logb Dot EML unter den Hauptressourcen von
SRC Wir haben diesen Ordner nicht,
also erstellen wir einen. Ich werde ein Verzeichnis mit dem
Namen Main Resources erstellen. Darin werden
wir eine neue Datei mit
dem Namen logback dot EML erstellen dem Namen logback dot EML Und wir müssen
diesen Inhalt dorthin kopieren. Aber bitte
kopiere nicht einfach blindlings, was auch immer darin steht. Sie müssen
verstehen können, was es erzeugt. In diesem Fall wird
Console Appender verwendet, was bedeutet, dass alle unsere Protokollnachrichten auf der Konsole gedruckt
werden Und jede Protokollnachricht
folgt diesem Muster. Mit Datum und Uhrzeit, Protokollebene, Namen des Loggers mit
maximal 36 Zeichen und dann der Protokollnachricht selbst. Sobald Sie damit zufrieden sind,
können wir mit dem nächsten Schritt fortfahren, der darin besteht
, den Logger tatsächlich in unseren Code zu implementieren. Copilot hat also
unsere Math Utilities-Klasse
mit integriertem Logging-Mechanismus neu generiert unsere Math Utilities-Klasse mit integriertem Logging-Mechanismus Gehen wir also zu diesem Kurs. Ich werde den gesamten Code auswählen und ihn durch diesen ersetzen. Wir werden Fehler haben,
denn obwohl wir die Abhängigkeit hinzugefügt
haben, ist
sie nicht wirklich in
unserem lokalen Maven-Repository vorhanden Also gehe ich zum Menü, zeige die
Werkzeugfenster an und klicke auf Maven. Klicken Sie auf das Aktualisierungssymbol und dann auf Alle
Maven-Projekte synchronisieren Wenn ich jetzt zurückgehe, sind all
diese Fehler weg. Wir scheinen
einige Fehler zu haben, die nichts miteinander zu tun haben. Lassen Sie uns also Strahlen importieren
, um sie zu lösen. Wie kann Alt L gedrückt werden, um den Code richtig zu formatieren? Und
da hast du es. Wir haben jetzt den
Protokollierungsmechanismus in unserem Projekt
implementiert. Sie können ihn auch
ausprobieren . Es sollte gut funktionieren. Wie dem auch sei, wir werden später einen
Vortrag darüber halten, wie man Tests
generiert, um unseren Code zu testen. Dabei werden wir
sowieso sehen, dass
unsere Protokollnachrichten auf der Konsole
angezeigt werden. Wir sehen uns als Nächstes.
11. 0210 Logging mit Copilot implementieren: Okay, lassen Sie uns von Copilot
helfen, um Anwendung
zu implementieren Lassen Sie mich Copilot fragen, wie die Protokollierung
in meiner Anwendung implementiert Es liegt ein
Fehler vor, aber der Copilot ist intelligent genug, um zu
verstehen, was ich will Also muss ich zuerst zu
Palm Dot XML gehen und
diese Abhängigkeiten einführen Also gehe ich zu Palm Dot XML und
platziere meinen Cursor hier. Und schieb den Code einfach so hoch. Das Entfernen der Abhängigkeit ist jedoch ein Tag, da
es bereits vorhanden ist. Ich mache Control ATL, um den Code
zu formatieren. Als Nächstes müssen wir
Logb Dot EML unter den Hauptressourcen von
SRC einführen Logb Dot EML unter den Hauptressourcen von
SRC Wir haben diesen Ordner nicht,
also erstellen wir einen. Ich werde ein Verzeichnis mit dem
Namen Main Resources erstellen. Darin werden
wir eine neue Datei
namens logback dot EML erstellen namens logback dot EML Und wir müssen
diesen Inhalt dorthin kopieren. Aber bitte
kopiere nicht einfach blindlings, was auch immer darin steht. Sie müssen
verstehen können, was es erzeugt. In diesem Fall wird
Console Appender verwendet, was bedeutet, dass alle unsere Protokollnachrichten auf der Konsole gedruckt
werden Und jede Protokollnachricht
folgt diesem Muster. Mit Datum und Uhrzeit, Protokollebene, Namen des Loggers mit
maximal 36 Zeichen und dann der Protokollnachricht selbst. Sobald Sie damit zufrieden sind,
können wir mit dem nächsten Schritt fortfahren, der darin besteht
, den Logger tatsächlich in unseren Code zu implementieren. Copilot hat also
unsere Math Utilities-Klasse
mit integriertem Logging-Mechanismus neu generiert unsere Math Utilities-Klasse mit integriertem Logging-Mechanismus Gehen wir also zu diesem Kurs. Ich werde den gesamten Code auswählen und ihn durch diesen ersetzen. Wir werden Fehler haben,
denn obwohl wir die Abhängigkeit hinzugefügt
haben, ist
sie nicht wirklich in
unserem lokalen Maven-Repository vorhanden Also gehe ich zum Menü, zeige die
Werkzeugfenster an und klicke auf Maven. Klicken Sie auf das Aktualisierungssymbol und dann auf Alle
Maven-Projekte synchronisieren Wenn ich jetzt zurückgehe, sind all
diese Fehler weg. Wir scheinen
einige Fehler zu haben, die nichts miteinander zu tun haben. Lassen Sie uns also Strahlen importieren
, um sie zu lösen. Wie kann Alt L gedrückt werden, um den Code richtig zu formatieren? Und
da hast du es. Wir haben jetzt den
Protokollierungsmechanismus in unserem Projekt
implementiert. Sie können ihn auch
ausprobieren . Es sollte gut funktionieren. Wie dem auch sei, wir werden später einen
Vortrag darüber halten, wie man Tests
generiert, um unseren Code zu testen. Dabei werden wir
sowieso sehen, dass
unsere Protokollnachrichten auf der Konsole
angezeigt werden. Wir sehen uns als Nächstes.
12. 0211 Schrägstrichbefehle und intelligente Aktionen: Slash-Befehle sind Abkürzungen
, mit denen Sie effizienter
mit dem
Github-Copilot interagieren können mit dem
Github-Copilot Anstatt lange Abfragen
eingeben zu müssen, können
Sie diese Slash-Befehle verwenden,
um Hilfe beim Codieren,
Debuggen, Erklärungen
und sogar beim schnellen Generieren ganzer Funktionen zu erhalten Debuggen, Erklärungen
und sogar beim schnellen Generieren ganzer Funktionen und sogar Ich befinde mich gerade in der Chat-Ansicht, und wenn ich Slash drücke, werden
dir alle
unterstützten Slash-Befehle angezeigt Der Befehl
explain slash wie der Code funktioniert Standardmäßig würde er
versuchen,
den Code in der
aktuell geöffneten Datei zu erklären den Code in der
aktuell geöffneten Datei Oder Sie können auch einen
Codeabschnitt auswählen und
diesen Schrägstrichbefehl ausführen , sodass der Copilot
nur diesen Teil des Codes erklärt Ich drücke Slash. Mit dem
Feedback-Befehl können Sie uns Ihre Meinung
zur Reaktion des Copiloten mitteilen Wenn Sie also diesen
Feedback-Schrägstrich verwenden, er im Grunde
einige Anweisungen wie
Sie Ihr Feedback
an
das Copilot-Team weitergeben können, sodass Ihr Feedback tatsächlich zur Verbesserung des Systems
beitragen kann Sie können
dies vorerst einfach ignorieren. Außerdem können Sie jedes Mal, wenn Sie eine
Antwort von Copilot erhalten, das Symbol „Daumen hoch“ und „
Daumen
runter“ verwenden, um
Ihr Feedback zu teilen Wenn Ihnen die Antwort gefällt, können
Sie mit dem Daumen nach oben drücken,
damit der Kunde weiß, dass er tatsächlich gute Arbeit leistet und dies auch weiterhin tun würde Wenn Sie die Daumen nach unten drücken, wird
es versuchen, etwas zu tun, um die
Antworten zu verbessern Der Befehl mit dem festen Schrägstrich behebt, wie der Name schon
sagt, wie der Name schon
sagt, die Probleme
in Ihrem Code Nehmen wir zum Beispiel an, ich
habe
diesen Code versehentlich durcheinander gebracht und gehen davon aus , dass ich nicht weiß, was
hier falsch läuft Ich kann einfach diesen Code auswählen und schnell den
Slash-Befehl fix ausführen Und es schlägt den
Code mit dem Fix vor. Ich kann es einfach so
benutzen. Der Befehl help erklärt Ihnen
im Grunde, wie Sie Copilot verwenden. Das
ist für Anfänger Sie können
diesen Befehl einfach ganz ignorieren. Der Befehl test würde
uns helfen, Unit-Tests zu generieren, und der Befehl doc hilft uns, die Dokumentation
für unseren Code zu erstellen. Vorlesungen werden wir über die
Generierung von Unit-Tests kommenden Vorlesungen werden wir über die
Generierung von Unit-Tests
sowie über die Dokumentation
sprechen. Lassen Sie uns jetzt nicht darüber sprechen. Befehl „Schrägstrich vereinfachen“ trägt dazu bei, dass Ihr Code übersichtlicher und
verständlicher Wenn
Sie beispielsweise einen komplexen
oder sehr langen Code haben , können
Sie den Befehl
simplify verwenden. Copilot versucht dann, ihn übersichtlicher
und lesbarer
umzuschreiben , ohne die Funktionalität zu beeinträchtigen . In diesem Fall
ist unser Code bereits optimiert, sodass er nicht wirklich viel bewirkt Aber nehmen wir an,
Sie haben verschachtelte Schleifen oder eine lange FLS-Kette Mit Simplify können Sie
sie in eine effizientere Struktur umgestalten Es ist im Grunde eine
schnelle Möglichkeit,
Ihren Code zu optimieren , ohne ihn manuell
neu schreiben Chat-Befehle sind auch im Inline-Chat
verfügbar. Sie können also einfach den Online-Chat
öffnen und den Schrägstrich
drücken, um alle
unterstützten Befehle zu sehen Einige der Befehle
sind in der
Chat-Ansicht verfügbar , werden jedoch im Online-Chat möglicherweise nicht
unterstützt Wir haben auch intelligente Aktionen, die Slash-Befehlen ähneln
, aber Sie tun dies mit einem Mausklick Um auf Smart Actions zuzugreifen, klicken
Sie mit der rechten Maustaste, gehen Sie zu Github
Copilot und hier Also mach weiter und experimentiere
mit Slash-Befehlen
und intelligenten Aktionen .
Wir sehen uns als Nächstes
13. 0212 Erstellen von Dokumentation für Einheitstests und Beheben von Fehlern mit Copilot: Sehen wir uns an, wie wir mit
Copilot Testfälle und
auch Dokumentation für
unseren Code generieren können auch Dokumentation für
unseren Code Ratet mal, was ich als
Nächstes tun werde. Ich habe die Math
Utilities-Datei geöffnet und werde
den Slash-Befehlstest verwenden Mein Fehler. Ich habe versehentlich die empfohlene Eingabeaufforderung
gewählt. Übrigens gibt Copilt auch
eine Empfehlung
zur Aufforderung ab Wie Sie sehen können, haben wir
umgehend einen Vorschlag von Copilot. Wenn wir darauf klicken, wird
Copilot es verarbeiten. Wie auch immer, lassen Sie uns den
Slash-Befehlstest ausführen. Wenn ja, hat der Co-Pilot die Tests
generiert. Ich kann jetzt diesen Code kopieren, in das
G-Punkt-Beispielpaket
im Testverzeichnis
gehen und Control
V ausführen, um den Code zu übergeben. Und wir haben jetzt die Testfälle. Natürlich werden wir einige Cobalti-Fehler
haben da wir
die erforderlichen Bibliotheken importieren müssen Also werde ich die Maus bewegen, weitere Aktionen ausführen und wir werden die
Mybn-Abhängigkeit hinzufügen Die Abhängigkeit, die wir hinzufügen müssen
, ist die Jupiter-API. Und wir
haben diese Fehler nicht mehr. Wenn Sie zur Pom-Dot-EML-Datei wechseln, haben
wir diese
Abhängigkeit jetzt hinzugefügt Ich bin jedoch mit diesem Code nicht
zufrieden. Er ist sehr minimalistisch
und ich möchte mehr Szenarien
behandeln.
Ratet mal was? Ich werde Co
Pilot bitten, das für mich zu tun. Ich werde die Chat-Ansicht erneut öffnen und Sie bitten,
weitere Behauptungen hinzuzufügen, um positivere und
negativere Szenarien zu testen positivere und
negativere Szenarien Verwenden Sie auch BDD (Behavior
Driven Development, Benennungskonvention) für
die durch
Unterstriche
getrennten Testfallnamen durch
Unterstriche
getrennten Mal sehen, was es für uns tun
wird. Und tatsächlich
deckt es jetzt auch positive und
negative Szenarien und folgt der
BDD-Benennungskonvention Ich bin mit der Antwort zufrieden. Es wird auch getestet,
ob wir
eine Ausnahme bekommen , die
sowohl positive als auch negative
Szenarien abdeckt , und das ist genau das, was ich will. Ich bin mit dem Vorschlag zufrieden, also wähle ich
den gesamten Code aus
und ersetze ihn durch den Code , den der Copilot Also. Speichern Sie die Datei und lassen Sie uns sehen, ob unsere
Testfälle erfolgreich sind. Ich werde den Befehl
Ambien clean install ausführen. Dies würde nicht nur das Projekt
erstellen sondern auch die Testfälle ausführen Und wir scheinen einen Fehler zu
haben,
was ein gutes Zeichen ist,
denn wir wollen sehen, ob Copilot
uns tatsächlich helfen kann, dieses Problem zu lösen. Ich weiß, was hier schief läuft, aber lassen Sie uns sehen, ob der Copilot es für uns herausfinden
kann Ich werde
einfach den Fehler-Trace kopieren und in
den Chat einfügen
und die Eingabetaste drücken Es hat sich eine Erklärung ausgedacht und es schien auch das Problem
herausgefunden zu haben. Ich muss einige Änderungen an den Abhängigkeitsversionen
vornehmen. Anstatt
das bestehende Pom-Dot-Beispiel manuell
mit dem generierten
Code zu vergleichen das bestehende Pom-Dot-Beispiel und Korrekturen vorzunehmen, werde
ich
Opalt bitten,
das gesamte Pom-Dot-Beispiel
mit allen erforderlichen Korrekturen zu generieren das gesamte Pom-Dot-Beispiel
mit Ich wähle
den gesamten Code aus und
ersetze ihn durch den Code, den der Copilot generiert hat.
Speichern Sie die Datei Ich gehe zu Ansicht,
Tools-Fenster, Maven, und lasse uns schnell
alle Maven-Projekte neu laden , nur um sicherzugehen, dass wir diese Abhängigkeiten
haben, und dann
versuchen wir, den Befehl auszuführen Wir haben noch einen Fehler bekommen. Es bezieht sich tatsächlich
auf die App-Testdatei. Wir
brauchen diese Datei eigentlich nicht. Sie wurde automatisch generiert. Also lass uns es ganz
loswerden. Und führe den Befehl erneut aus. Ein neuer Build ist erneut fehlgeschlagen. Aber dieses Mal sind einige
der Testfälle gescheitert. Wir haben kein Problem mit
dem Build oder den Abhängigkeiten. Dies ist ein Codefehler, und da es in diesem Kurs
nicht um Junit geht, werde
ich mich nicht wirklich damit
befassen Tatsächlich können wir sogar
Copilot bitten ,
dieses Problem ebenfalls zu lösen Ich kopiere das und
füge es in das Diagramm ein. Y. Versuchen Sie
nun
zu verstehen, was es uns nahelegen
will Wenn es Sinn macht,
können wir weitermachen und es reparieren. Es versucht im Grunde, die Methode Get Primes zu
reparieren. Lassen Sie mich also
zu den mathematischen Hilfsprogrammen zurückkehren. Natürlich geht
es in diesem Kurs nicht um Java, also schenke ich hier nicht
allzu viel Aufmerksamkeit, aber idealerweise sollten
Sie sich in
Echtzeit-Szenarien den generierten Code ansehen und
die notwendigen Änderungen vornehmen. Ich werde den Code auswählen. Also werde ich diesen
Code auswählen und ihn hier platzieren. Speichern Sie die Datei. Und lassen Sie uns versuchen, noch einmal zu laufen und zu
sehen, ob das Problem dadurch behoben wird. Und dieses Mal wurden alle
Tests bestanden und der Build ist ebenfalls
erfolgreich. Als Nächstes
wollen wir nun eine
Dokumentation erstellen . Ratet mal,
was ich tun muss. Ich würde den
Schrägstrich Command Doc verwenden während ich die Math
Utilities-Testdatei geöffnet ließ Und wenn wir
mit der Antwort zufrieden sind, können
wir den Code einfach ersetzen So können wir
Testfälle und Dokumentation generieren . Dabei haben wir
auch gesehen, wie wir
Probleme in unserem
Projekt mithilfe von Copilot lösen können Probleme in unserem
Projekt mithilfe von Copilot Da
es
in diesem Kurs nicht um J Unit oder Java geht, werde
ich mich natürlich es
in diesem Kurs nicht um J Unit oder Java geht, nicht eingehend mit dieser Logik befassen, aber ich empfehle
Ihnen immer,
den generierten Code
einmal durchzugehen und ihn
nur dann zu implementieren , wenn er für Sie
sinnvoll ist, da Copilot nicht immer
korrekten Code generiert Sie müssen in der
Lage sein,
den Code zu verstehen und dann die notwendigen Änderungen vorzunehmen Als Aufgabe können Sie Testfälle
und Dokumentation für Ihren
Code generieren . Wir sehen uns als Nächstes.
14. 0213 Verwendung von Schrägbefehlen: Wir können dem
Copilot
zusätzlichen Kontext geben, indem wir
Dateien in die Chat-Ansicht aufnehmen Um die Dateien einzubinden, können wir
entweder
hier auf das Plus-Symbol drücken und die Dateien auswählen, die
wir einschließen möchten, oder
Sie können einfach
die Dateien auswählen, die wir einschließen möchten, und sie
dann wie folgt in die
Chat-Ansicht ziehen Diese würden also auch
in den Kontext aufgenommen. Nun, welche
Frage stellst du? Copilot
analysiert nicht nur die geöffnete Datei, sondern analysiert jetzt auch die enthaltenen Dateien, um
Ihnen relevante Antworten zu geben Dies kann in Szenarien
nützlich sein, in denen Sie möchten, dass Copilot etwas in Bezug auf die enthaltenen Dateien
tut Vielleicht haben Sie einen Fehler
, der sich über
mehrere Dateien erstreckt, und Sie
möchten dem Copilot einen gewissen Kontext geben,
oder vielleicht möchten Sie eine Funktion
hinzufügen, die sich über mehrere Dateien erstreckt. In all diesen Szenarien können
Sie diese Dateien einbeziehen und dem Copilot zusätzlichen Kontext geben Copilot bietet auch ein
Kontextmenü,
das Zeitpunkt der Aufnahme
nicht in
IntelligID, aber im Visual Studio-Code unterstützt wird IntelligID, aber im Visual Studio-Code unterstützt Gehen wir also ganz schnell zum Visual
Studio-Code. Hier bin ich im
Visual Studio-Code, und wir haben im Grunde zwei Dateien. Eines ist das Math-Hilfsprogramm mit einigen Methoden,
Addieren und Subtrahieren, und wir haben die App-Klasse, die im Grunde
die Hauptmethode hat und die mathematischen
Hilfsmethoden Addieren und Subtrahieren
verwendet Ich habe die Datei bereits ausgeführt, und hier ist die Ausgabe derselben Wenn ich jetzt
in der Chat-Ansicht Hash drücke, wird
ein Kontextmenü angezeigt. Wir können zum Beispiel die
Codebasis
einbeziehen, wenn wir Fragen zur Codebasis haben In ähnlicher Weise haben wir auch eine
Reihe anderer Optionen. Wir können Dateien einschließen, indem wir
Hash-Datei auswählen , und wir können die Datei
auswählen, die wir einschließen
möchten, wie folgt. Wenn Sie
Fragen
zu einer Auswahl im
Terminal haben , haben
wir diese gerade ausgewählt, und vielleicht
möchte ich fragen, was Summe ist? Nun, da ich die
Terminalauswahl hinzugefügt habe, weiß
Copalt, dass
ich nach
der Summe im Terminal frage , und ich beziehe mich nicht auf eine bestimmte Methode
im mathematischen Hilfsprogramm Wenn ich es also präsentiere, erhalte
ich eine relevante Antwort. Ich sehe dich als Nächstes.
15. 0214 Intelligente Code-Bearbeitungen mit Copilot-Bearbeitungen: Bisher haben wir
gesehen, dass Copilot ein fantastisches Tool für
Codevorschläge
ist, aber wäre es nicht schön, wenn es den
Code
auch für uns bearbeiten Copilot Edits ist genau das. Es generiert nicht nur Code. Es bearbeitet
Ihren Code tatsächlich nahtlos. Leider wird diese Funktion zum
Zeitpunkt dieser Aufnahme in IntelligID nicht
unterstützt, also werden wir uns
das im Visual Studio-Code ansehen das im Und zu dem Zeitpunkt, zu dem
Sie sich dieses Video ansehen, ist diese
Funktion hoffentlich auch
in IntelligIDE verfügbar Für die Verwendung von Copallet Edits wird neben dem Diagrammsymbol, das Copalt Edits heißt,
ein Symbol angezeigt Wenn Sie darauf klicken, wird standardmäßig die aktuell
geöffnete Datei in den Kontext aufgenommen Wenn wir wollen, können wir es entfernen. Aber mal sehen, was
das bewirken wird. Ich
entferne die Datei
und bitte sie, sie zu bearbeiten. Im Moment haben wir also diese beiden Funktionen, Addieren und Subtrahieren Ich möchte eine weitere
Funktion namens Multiplizieren einführen. Also werde ich genau das fragen. Es schien den Kontext eindeutig nicht verstanden zu
haben. Es hat mehrere
JavaScript-Dateien mit
dem darin enthaltenen Code generiert . Ich bin
damit nicht zufrieden, also werde ich es verwerfen und stattdessen einen
Kontext geben, indem
ich Dateien hinzufüge Ich kann hier entweder Dateien hinzufügen oder das
Kontextmenü verwenden, um dasselbe zu tun Ich werde die
Math Utility-Java-Datei sowie die App-Dot-Java-Datei hinzufügen. Und ich werde Sie bitten, die Multiplikationsfunktion noch einmal einzuführen. Und dieses Mal generiert es
tatsächlich Code in diesen Dateien. Also hat es die
Multiplikationsmethode eingeführt. Ich werde es akzeptieren. Und wenn ich zur
App-Dot-Java-Datei gehe, ruft
sie sie auch auf. Ich werde
das auch akzeptieren. Das sind Copilot-Änderungen für dich.
Wir sehen uns als Nächstes
16. 0215 Copilot Best Practices und Prompt Engineering: Lassen Sie mich Ihnen nun einige der bewährten Methoden und
Strategien zur Optimierung der Co-Pilotunterstützung in Ihren Versuchen Sie immer, den
richtigen Kontext für Copilot festzulegen. Copilot analysiert geöffnete Dateien zu generieren Wenn Sie verwandte Dateien geöffnet lassen, hilft
es Copilot,
Ihre Projektstruktur
besser zu verstehen und immer zu
versuchen, relevante
Dateien in die
Diagrammansicht aufzunehmen , um ihr zusätzlichen Kontext zu geben Versuchen Sie, die
Abhängigkeiten selbst manuell einzubeziehen. Copilot kann zwar Abhängigkeiten
vorschlagen, Sie sollten die
benötigten Abhängigkeiten manuell
angeben , da Sie
derjenige sind, der Ihr Projekt besser
kennt Wenn Sie beispielsweise die API-Abhängigkeit
von SLF vier J einbeziehen, Copilot
diese Bibliothek anstelle einer anderen zufälligen Bibliothek Und wenn möglich, versuchen Sie,
die benötigten Module selbst in
die Klasse aufzunehmen Sie,
die benötigten Module selbst in
die Klasse ,
sodass der gesamte nachfolgende
Code, der von
Copilot generiert wird , diese
Bibliotheken ohne Konflikte verwendet Verwenden Sie immer aussagekräftige Funktions- oder
Methodennamen. Copilot stützt sich bei der
Generierung von relevantem Code stark auf Methodennamen Wenn Ihre Methodennamen modern sind, sind die Vorschläge möglicherweise
nicht korrekt Sie Ihre
Methoden also sinnvoll benennen Ihnen Copilot Anstatt beispielsweise den Namen Prozessdaten zu
verwenden, sollten Sie genauer sein und ihn
als „Produkte nach Kategorie abrufen“ benennen als „Produkte nach Kategorie abrufen Mit diesem eindeutigen Funktionsnamen versteht
Copilot, dass
es
eine Datenbankabfrage generieren muss , um
Produkte nach Kategorien abzurufen, und würde den Code entsprechend generieren Versuchen Sie, einen
Beispielcode für bessere Vorschläge bereitzustellen. Dies ist eine weitere hervorragende
Möglichkeit, Copilot zu unterstützen können
kleine Beispielcodefragmente zu Ihrer Aufgabe kopieren und einfügen . Dies hilft Copilot dabei,
seine Vorschläge an Ihr Framework und Ihren Programmierstil anzupassen seine Vorschläge Und sobald der Code generiert ist, können
Sie den Beispielcode löschen Seien Sie bei Copilot immer spezifisch. Copilot funktioniert am besten, wenn Sie klare und spezifische Anweisungen geben Anstatt modische Anweisungen
wie das Abrufen von Benutzerdetails zu verwenden,
seien Sie detaillierter und sagen etwas wie
Benutzerdetails aus der
Moskill-Datenbank abrufen und sie mit Spring Data JPA im
JSON-Format zurückgeben mit Spring Data JPA im
JSON-Format Wenn Sie eine Eingabeaufforderung eingeben,
versuchen Sie, große Aufgaben aufzuschlüsseln Vermeiden Sie es also, Copilot
zu bitten , eine gesamte
Anwendung auf einmal zu generieren Teilen Sie die Aufgabe stattdessen in
kleinere, überschaubare Schritte auf. Anstatt beispielsweise zu sagen,
erstellen Sie eine Spring Boot-App, die Produkte verwaltet
, Moscule
integriert
und REST-APIs verfügbar Teilen Sie es so in
Schritten auf, wie Sie es hier sehen. Bitten Sie Copt zunächst, ein
Sprungbrettprojekt mit
Web- und JPA-Abhängigkeiten zu generieren ,
und bitten Sie es dann, eine Entitätsklasse für
Produkte mit Namens-, Preis
- und Kategoriefeldern zu erstellen Produkte mit Namens-, Preis
- und Und dann können
Sie es als letzten Schritt bitten, eine
REST-API zu erstellen, um alle Produkte abzurufen Auf diese Weise generiert Coplet für jeden
Schritt strukturiertere und genauere
Vorschläge Analysieren Sie immer den
generierten Code. Natürlich
beschleunigt Copilot die Entwicklung, aber niemals blindlings Analysieren Sie den
generierten Code immer auf Richtigkeit,
Sicherheit und Leistung In den meisten Fällen
generiert Copilot keine genauen SCL-Abfragen. Manchmal kann es unseren Code
anfällig für EscUL-Injektionen machen anfällig für Überprüfen, testen und
verfeinern Sie den Code also immer , bevor
Sie ihn in der Produktion verwenden Die Effektivität von Copilot hängt also wirklich davon ab, wie
gut Sie ihn steuern aussagekräftige Funktionsnamen verwenden, klare Eingabeaufforderungen
angeben,
die Aufgabe aufschlüsseln Indem wir aussagekräftige Funktionsnamen verwenden, klare Eingabeaufforderungen
angeben,
die Aufgabe aufschlüsseln
und
den generierten Code ständig überprüfen, können
wir die Qualität
der
Copilot-Vorschläge erheblich verbessern Qualität
der Machen Sie also weiter und probieren Sie
diese Techniken in Ihren Java-Projekten aus.
Wir sehen uns als Nächstes.
17. 0216 Erstellen eines Spring-Boot-Projekts mit Spring Initializer: Ich werde mit Copilot Schritt für Schritt eine komplette
Springboard-Anwendung
von Grund auf neu erstellen von Grund auf neu Und Sie werden erstaunt sein,
wie schnell und effizient wir mit Copilot
bauen können Auch wenn Sie
Spring Boot nicht kennen, machen Sie sich keine Sorgen, Sie können mir trotzdem folgen und
die App
zusammen mit mir erstellen Da
sich diese Sitzung auf Copilot konzentriert, werde
ich nicht tief
in die Konzepte von Sprungbrettern eintauchen. Wenn Sie
jedoch interessiert sind, können
Sie sich
meinen vollständigen Kurs über Springboot ansehen, um eine solide Grundlage
zu Lassen Sie uns jetzt anfangen. müssen
wir zu Star
Dot Spring Dot IVO gehen um unser Spring
Boot-Projekt zu erstellen Ich werde mich hier für Maven entscheiden. Ich würde den Rest der
Felder auf ihren Standardeinstellungen belassen. Ich könnte jedoch die neueste
Version von Spring Boot wählen, unser Projektname ist Demo, und ich werde
die Java-Version 21 wählen Wir müssen einige Abhängigkeiten hinzufügen. Wir brauchen Spring Web für die Rest-API, wir brauchen Spring Data JPA
auch für die Datenbankinteraktion Ich werde auch eine
H-2-Datenbank für eine
In-Memory-Datenbank hinzufügen ,
und ich könnte auch
Lumbok hinzufügen, und ich könnte auch
Lumbok hinzufügen um den
Boilerplate-Code zu reduzieren Sobald wir sie haben,
klicken Sie auf Generieren Dadurch können wir
das Projekt als ZIP-Datei herunterladen das Projekt als Wir müssen
diese ZIP-Datei extrahieren und dann das Projekt
in unsere IntelliJ ID eingeben Ich gehe in das
Verzeichnis und entpacke es dann. Wir müssen
dieses Projekt jetzt in
unsere Int ID eingeben . Also
werde ich genau das tun. Ich gehe zu IntlaGid, klicke auf Menü, klicke auf Öffnen klicke auf Menü, klicke auf Öffnen
und dann gehe ich
zu diesem Verzeichnis Ich würde das
Projekt auswählen, das wir gerade
extrahiert haben , und dann auf Okay klicken Ich möchte das
in einem neuen Fenster öffnen. Warten Sie nun ein wenig, bis
die Abhängigkeiten
behoben sind, und laden Sie
alle erforderlichen Plugins herunter. IntelligID schlägt
uns vor, LumboPlugi zu installieren. Wenn Sie diese Aufforderung nicht sehen, können
Sie zu den Einstellungen des
Dateimenüs gehen, zu den Plugins gehen und
dann nach Lumbok dann nach Warten Sie, bis Sie dieses
Plug-In installiert haben, damit IntelliJ die Umbok-Anmerkungen verarbeiten
kann Sobald Sie es installiert haben, klicken Sie auf Anwenden und auf Warten Sie ein bisschen, und dann
sollten wir mit dem
Schreiben unseres Codes beginnen können.
18. 0217 Modell und Repository einführen: Beginnen wir mit der
Erstellung der Entität und
des Repositorys in ihren
jeweiligen Paketen Ich werde ein
paar Pakete erstellen. Eines für Modelle und das
andere für Repositorien. Lassen Sie uns die
entsprechenden Klassendateien erstellen. Innerhalb des Modells werden
wir
die Benutzerklasse haben und
im Repository werden
wir die Benutzerrepository-Klassendatei haben. Es ist an der Zeit, Copilot zu verwenden, um den Code für uns zu
generieren. Ich werde den Copilot-Chat
öffnen und raten, welche Eingabeaufforderung
ich jetzt eingeben werde Ich habe die
Benutzerpunkt-Java-Datei geöffnet
und würde
Copilot bitten, eine gut strukturierte
Benutzerentität mit ID,
Name, E-Mail und JPA-Anmerkungen zu generieren eine gut strukturierte
Benutzerentität mit ID,
Name, E-Mail Ich werde auch vorschlagen, Lumbok zu verwenden, um Standardcode zu entfernen
,
und lassen Sie uns sehen, was daraus generiert wird Es schien einen ordentlichen Job
gemacht zu haben. Wir werden unseren
Code durch den generierten ersetzen. Es gibt jedoch ein paar Korrekturen, die wir vornehmen
müssen. Wir können Copal bitten,
sie zu beheben, aber ich kenne die Probleme. Ich werde sie selbst reparieren. Ich werde
Jakarta-Persistenz verwenden und
alle Module darin einbeziehen Und wir brauchen auch Getter
und Setter von Lumbog. Dies ist ein perfektes Beispiel dafür dass wir
dem generierten Code nicht
blind vertrauen sollten Lumbog. Dies ist ein perfektes Beispiel dafür, dass wir
dem generierten Code nicht
blind vertrauen sollten. Wir müssen
ihn überprüfen, verstehen und gegebenenfalls die notwendigen Änderungen vornehmen Also haben wir das Modell fertig. Lassen Sie uns jetzt Copilot bitten, ebenfalls
ein Repository zu erstellen. Ich habe die
Benutzer-Repository-Datei geöffnet
und werde Copilot bitten, ein JPA-Repository
für eine Benutzerentität mit grundlegenden Crud-Operationen
zu erstellen für Und wie ich sehen kann, hat es
gute Arbeit geleistet. Ich werde den Code einfach so
durch den generierten
ersetzen . Wir haben also das Modell
und das Repositorium. Als Nächstes
werden wir sowohl den Service als
auch den Controller
erstellen
19. 0218 Einführung Service und Controller: Lassen Sie uns also weitermachen und sowohl
Service Layer als
auch Controller einführen Service Layer als
auch Controller Dafür werde ich ein paar
weitere Pakete
vorstellen, eines für den Controller und
das andere für den Service. Neues Paket für Paketdienste, das Dienste enthalten wird. Und wir werden noch
einen für Controller erstellen. Lassen Sie uns eine Klasse mit dem Namen erstellen. Benutze einen Controller. Und lassen Sie uns einen Dienst
namens Benutzerservice erstellen. Lassen Sie uns
den Code für den Service nicht generieren. Eine Serviceklasse zur Bearbeitung Benutzeroperationen
mit Crud-Methoden Sie hat Code zum
Suchen, Speichern und Löschen generiert. Ich benötige auch eine Aktualisierung. Das hat den Job gemacht. Für mich werde
ich einfach
den Code durch den generierten ersetzen . Es gibt keine Fehler als solche und auf den ersten Blick sieht es gut aus. Es gibt auch die Möglichkeit,
den Controller zu generieren. Ich benötige einen Rest-Controller für Benutzer mit Endpunkt
für Crud-Operationen Wie Sie sehen können, verwendet der
generierte Code den Dienst
tatsächlich Lassen Sie uns diesen Code also
im Controller verwenden. Lassen Sie mich einen kurzen Blick darauf werfen. Es sieht auf jeden Fall gut aus.
20. 0219 Datenbankkonfigurationen: Unsere Anwendung ist so
gut wie fertig, aber es gibt noch einen letzten Schritt, nämlich die Einführung
datenbankspezifischer Konfigurationen Dazu öffne ich die generierte Datei mit den Eigenschaften der Anwendung im Ressourcenverzeichnis
und werde
Copilot bitten, mir die Ehre zu erweisen Wir haben diese Abhängigkeit bereits, also müssen wir sie nicht hinzufügen,
aber wir können diese Konfigurationen verwenden Speichern Sie die Datei und es ist Zeit
, unsere Anwendung auszuführen. Vergewissern Sie sich jedoch vorher, dass
alles in Ordnung ist. Ich werde jedoch
das Passwort entfernen, die Datei
speichern und wir
sollten startklar sein. Unser Code sieht gut aus. Lassen Sie uns unsere Anwendung ausführen und prüfen
, ob sie wie erwartet funktioniert.
21. 0220 Spring Boot App starten und Probleme beheben: Lassen Sie uns unsere Anwendung ausführen. Um unsere Anwendung auszuführen, gehen wir zur Demo-Anwendung Dot Java, die die Hauptmethode enthält, und wir müssen sie nur ausführen. Dafür kann ich entweder auf
dieses Play-Symbol klicken oder dann Shift F
drücken. IntelliJ bittet uns, die Verarbeitung von Anmerkungen zu
aktivieren. Lassen Sie uns das also ganz schnell machen
und dann unsere Anwendung ausführen. Lassen Sie mich das Video anhalten und zurückkehren, sobald unsere
Anwendung läuft Es scheint ein Fehler aufgetreten zu sein. Warum nehmen Sie nicht die Hilfe von
Copilot in Anspruch, um das Problem zu beheben? Lassen Sie uns den Fehlerverlauf kopieren
und in das Diagramm einfügen. Mal sehen, was es zu sagen hat. A: Es heißt, dass der Benutzer ein Resord-Schlüsselwort in SQL
ist. Also müssen wir
den Tabellennamen grundsätzlich in
etwas anderes ändern den Tabellennamen grundsätzlich in
etwas anderes Es hat uns auch
den Code gegeben. Gehen wir zu User und ändern den
Tabellennamen wie folgt. Speichern Sie die Datei und lassen Sie uns
unsere Anwendung erneut ausführen. Okay, dieses Mal
läuft unsere Anwendung und sie
wurde auf Port 80 80 gestartet. Es ist Zeit,
unsere Anwendung zu testen.
22. 0221 Unsere Anwendung testen: Ich werde Curl verwenden, um unsere Anwendung zu
testen. Dafür muss ich Powershell verwenden
, und ich habe
die Befehle bereits griffbereit Ich werde es mit Ihnen teilen ,
damit wir Ihre Anwendung auch
testen können Lassen Sie uns versuchen,
eine GET-Anfrage zu stellen , um uns die Benutzerliste
anzusehen. Anfangs
sollte es keine Benutzer geben. Wir haben also den Status 2000 und derzeit
gibt es keine Benutzer. Versuchen wir nicht, einen
Benutzer zu erstellen, indem wir eine Post-Anfrage stellen, und hier ist ein
curl-Befehl dafür. Also versuche ich,
einen Benutzer mit dem Namen
John Doe und mit der E-Mail
john at exxample.com hinzuzufügen John Doe und mit der E-Mail
john at exxample.com Die API hat mit
200 geantwortet und der Benutzer wurde
ebenfalls hinzugefügt Um dies zu überprüfen, können wir
erneut eine GET-Anfrage stellen Wie Sie sehen, können
wir jetzt
den Benutzer sehen , den wir gerade hinzugefügt haben. Lassen Sie uns nun versuchen, eine Put-Anfrage zu
senden, was bedeutet, dass wir einen vorhandenen Benutzer
aktualisieren möchten, und hier ist der
Befehl dafür. Also hier versuche ich,
den Benutzer bei Index One zu bearbeiten, und das sind der Name und
die E-Mail, die ich aktualisieren möchte. Wieder einmal haben wir eine Antwort von
200 OK erhalten, und hier ist der aktualisierte Benutzer. Wenn wir die Anfrage erneut abrufen, sehen
wir, dass John Doe jetzt mit John
Updated aktualisiert wurde. Lassen Sie uns abschließend versuchen, auch den Benutzer zu
löschen, und hier ist ein Befehl
dafür. Ich möchte den
Benutzer bei Index eins löschen. Wenn ich erneut eine G-Anfrage sende, haben
wir diesen Benutzer nicht mehr. Unsere API funktioniert also hervorragend. Eine Sache, die Sie jedoch sicherstellen
müssen,
ist, dass Sie
den richtigen API-Aufruf tätigen. Lassen Sie mich zum Code zurückkehren. In meinem Fall
hat der generierte Code innerhalb
des Controllers diese Zuordnung, und ich verwende denselben Pfad,
während ich die Anfrage stelle. Stellen Sie sicher, dass Sie je nach generiertem Code
den richtigen Pfad verwenden . Wenn Sie
mir gefolgt sind und Ihre API
auch funktioniert, dann herzlichen Glückwunsch zum
Erreichen dieses Meilensteins. Hoffe es macht Sinn.
Ich sehe dich als Nächstes.