Github Copilot Labs

Μια πειραματική επέκταση για τη βελτίωση του Github Copilot

Ένα πιο ισχυρό Github Copilot

Αυξήστε την εμπειρία κωδικοποίησης με το Github Copilot Labs και το σύνολο των προκαθορισμένων λειτουργιών με ένα κλικ, που ονομάζονται "Brushes". Το Github Copilot σάς δίνει τη δυνατότητα να μεταφράζετε γρήγορα τον κώδικά σας από μια γλώσσα προγραμματισμού σε μια άλλη. Μπορεί επίσης να τεκμηριώσει και να εξηγήσει αυτόματα τον κώδικά σας, καθώς και να βρει και να διορθώσει σφάλματα.

Πώς να χρησιμοποιήσετε το Github Copilot Labs

Για να λειτουργήσει το Github Copilot Labs, πρέπει να πληροίτε τις ακόλουθες απαιτήσεις.

  • μια ενεργή συνδρομή Github Copilot
  • VS Code

Επειδή το Github Copilot Labs είναι μια επέκταση κώδικα VS, πρέπει απλώς να την εγκαταστήσετε (σύνδεσμος επίσης στο προσάρτημα).

Image e2ad1fec4d4a

Image 2e1994de53fb

Χαρακτηριστικά

Όπως υποδηλώνει το όνομα, το Github Copilot Labs είναι ένα πειραματικό χαρακτηριστικό για την ενίσχυση του Github Copilot. Προσφέρει πολλές νέες λειτουργίες, αλλά απέχει επίσης πολύ από το να είναι έτοιμο για χρήση στην παραγωγή. Ορισμένες λειτουργίες λειτουργούν καλύτερα από άλλες, αλλά από τη στιγμή της γραφής, η ποιότητα έχει χτυπηθεί ή χαθεί.

Χαρακτηριστικό: επεξήγηση κώδικα

Απλώς επισημάνετε οποιονδήποτε από τον κωδικό σας και ζητήστε μια εξήγηση κώδικα. Η επεξήγηση του κώδικα μπορεί να είναι ιδιαίτερα χρήσιμη για προγραμματιστές που είναι νέοι σε μια βάση κώδικα ή που εργάζονται με άγνωστο κώδικα. Μπορεί επίσης να είναι χρήσιμο για έμπειρους προγραμματιστές που θέλουν να κατανοήσουν τη λογική και το σκεπτικό πίσω από ορισμένες επιλογές κώδικα. Μπορεί να παρέχει μια περίληψη υψηλού επιπέδου του τι κάνει ο κώδικας, χωρίζοντάς τον σε μικρότερα κομμάτια και εξηγώντας κάθε κομμάτι σε απλή γλώσσα. Μπορεί επίσης να παρέχει πιο λεπτομερείς επεξηγήσεις συγκεκριμένων γραμμών ή μπλοκ κώδικα, εξηγώντας τη λειτουργία και το σκοπό κάθε στοιχείου.

Image b985d74b8bbb

Image afcb7f4445c5

Χαρακτηριστικό: μετάφραση σε άλλη γλώσσα προγραμματισμού

Το GitHub Copilot Labs μπορεί να βοηθήσει τους προγραμματιστές με διάφορους τρόπους, συμπεριλαμβανομένης της δυνατότητας μετάφρασης κώδικα από μια γλώσσα προγραμματισμού σε άλλη.

Αυτή η δυνατότητα μπορεί να είναι ιδιαίτερα χρήσιμη για προγραμματιστές που εργάζονται με κώδικα γραμμένο σε γλώσσα που δεν γνωρίζουν. Μπορεί επίσης να είναι χρήσιμο για προγραμματιστές που πρέπει να μεταφέρουν κώδικα από τη μια γλώσσα στην άλλη για ένα συγκεκριμένο έργο ή εφαρμογή.

Αυτό λειτούργησε πολύ καλά για μικρές λειτουργίες, αλλά δεν πρέπει να εμπιστεύεστε ακόμα το σύστημα με μεγάλα κομμάτια κώδικα που είναι αρκετά περίπλοκα.

Image 5ad27f2c7a1b

Χαρακτηριστικό: τεκμηρίωση κώδικα

Η τεκμηρίωση κώδικα είναι μια σημαντική πτυχή της ανάπτυξης λογισμικού, καθώς βοηθά στην εξήγηση του σκοπού και της λειτουργικότητας του κώδικα σε άλλους προγραμματιστές, καθώς και σε μελλοντικούς προγραμματιστές που μπορεί να χρειαστεί να εργαστούν με τη βάση κώδικα. Η καλή τεκμηρίωση κώδικα μπορεί να διευκολύνει τους άλλους να κατανοήσουν και να διατηρήσουν τον κώδικα και μπορεί επίσης να χρησιμεύσει ως αναφορά για προγραμματιστές που μπορεί να χρειαστεί να κάνουν αλλαγές ή προσθήκες στον κώδικα στο μέλλον.

Το Github Copilot Labs προσφέρει μια δυνατότητα τεκμηρίωσης κώδικα που επιτρέπει στους προγραμματιστές να τεκμηριώνουν εύκολα επιλεγμένες γραμμές κώδικα εντός του αποθετηρίου τους. Αυτό μπορεί να γίνει απευθείας από το πρόγραμμα επεξεργασίας "brushes", με την πρόσθετη ευκολία να μπορείτε να δείτε την τεκμηρίωση μαζί με τον ίδιο τον κώδικα.

Για να χρησιμοποιήσετε τη δυνατότητα τεκμηρίωσης κώδικα στα Github Copilot Labs, απλώς επιλέξτε τις γραμμές κώδικα που θέλετε να τεκμηριώσετε και κάντε κλικ στο κουμπί "Έγγραφο". Αυτό θα δημιουργήσει σχόλια κώδικα πάνω από τις επιλεγμένες γραμμές.

Το δοκίμασα με TypeScript-code και δεν λειτούργησε καθόλου. Όχι μόνο η τεκμηρίωση γράφτηκε ως σχόλια κώδικα (αντί για JSDoc), ορισμένα τμήματα της συνάρτησης αντιγράφηκαν επίσης. Αυτό σημαίνει ότι έπρεπε να καθαρίσω τον κωδικό μετά τη χρήση του πινέλου. Η ίδια η τεκμηρίωση ήταν σωστή.

Image 757e7ff37c76

Χαρακτηριστικό: καθαρισμός κώδικα

Η διατήρηση καθαρού και οργανωμένου κώδικα είναι μια σημαντική πτυχή της ανάπτυξης λογισμικού, καθώς μπορεί να βοηθήσει στη βελτίωση της αναγνωσιμότητας και της δυνατότητας συντήρησης της βάσης κωδικών. Ωστόσο, καθώς μια βάση κώδικα μεγαλώνει και εξελίσσεται, μπορεί να είναι εύκολο για τον κώδικα να γεμίσει και να είναι δύσκολο να κατανοηθεί.
Το Github Copilot Labs προσφέρει μια δυνατότητα που επιτρέπει στους προγραμματιστές να καθαρίζουν εύκολα τον κώδικά τους και να τον κάνουν πιο οργανωμένο και ευανάγνωστο.

Image 2ada9b442c42

Image 5c8cc6ebf423

Η λειτουργία "Καθαρισμός" επιτρέπει στους προγραμματιστές να απλοποιήσουν τον κώδικά τους χωρίς να αλλάξουν τη σημασιολογία του, εφαρμόζοντας αυτόματα ένα σύνολο κανόνων μορφοποίησης κώδικα και στυλ.

Για να χρησιμοποιήσετε τη δυνατότητα, απλώς επιλέξτε τις γραμμές κώδικα που θέλετε να καθαρίσετε και κάντε κλικ στο κουμπί "Καθαρισμός". Στη συνέχεια, το Github Copilot Labs θα προσπαθήσει να απλοποιήσει τον κώδικά σας. Αυτό λειτούργησε καλά στη δοκιμή μου.

Η λειτουργία "Clean Up Code" μπορεί να είναι ένα πολύτιμο εργαλείο για προγραμματιστές που θέλουν να κάνουν τον κώδικά τους πιο ευανάγνωστο και κατανοητό, χωρίς να χρειάζεται να τον επαναδιαμορφώσουν με μη αυτόματο τρόπο. Μπορεί επίσης να βοηθήσει στη βελτίωση των δεξιοτήτων σας στον κώδικα, καθώς η επέκταση μπορεί να δημιουργήσει απλούστερο κώδικα που δεν είχατε σκεφτεί.

Χαρακτηριστικό: Διόρθωση σφαλμάτων

Αυτό λειτούργησε επίσης καλά στην απλή δοκιμή μου. Καθόρισα μια μη έγκυρη εκ νέου ανάθεση μιας μεταβλητής και το Github Copilot Labs άλλαξε τον κώδικα και όρισε τη μεταβλητή ως μεταβλητή.

Αυτό το αποτέλεσμα είναι συζητήσιμο, φυσικά. Αφενός, το bug "διορθώθηκε", με την έννοια ότι η άκυρη επανατοποθέτηση δεν έγινε πια.

Αλλά τι γίνεται αν η τιμή πρέπει πραγματικά να είναι αμετάβλητη; Στην προκειμένη περίπτωση, η επανατοποθέτηση αρχικά ήταν λάθος.

Φαίνεται ότι η επέκταση προσπαθεί να διατηρήσει όσο το δυνατόν περισσότερο κώδικα. Αυτή η δυνατότητα σίγουρα δεν είναι έτοιμη για οποιαδήποτε πραγματική χρήση τη στιγμή της γραφής. Θα βελτιωθεί τους επόμενους μήνες και χρόνια. Αλλά προς το παρόν, θα πρέπει να το αντιμετωπίσετε ως ένα πείραμα για να δείτε πώς μπορεί να μοιάζει το μέλλον.

Image 4b40451adf91

Image 5d95fbe15dbc