Uzantıyı kurdunuz, Copilot simgesi göründü ve yazarken gri bir öneri geldi. Tab'a basıp devam etmek kolay. Burada kısa bir ara verin. Simge uzantının bağlandığını gösterir, önerinin doğru olduğunu göstermez.
Önce daha basit ihtimali eleyin. Program çalışmıyorsa Copilot'u araştırmadan önce Python kurulumunu kontrol edin. Bu iki sorunun çözümü birbirinden farklıdır.
Önce Python kurulumunu kontrol edin
Terminali açıp python --version komutunu çalıştırın. Komut bulunamazsa python3 --version deneyin. Komutlardan biri Python 3 sürümünü gösteriyorsa devam edebilirsiniz. Hangisinin çalıştığını not alın, çünkü modül boyunca aynı komutu kullanacaksınız. İkisi de çalışmıyorsa Python 3'ü işletim sisteminizin normal yazılım kanalından kurun. Ardından terminali yeniden açıp sürümü tekrar kontrol edin.
Şimdi runtime'ı baştan sona doğrulayın. Tek satırda mesaj yazdıran runtime-check.py dosyasını oluşturup çalışan komutla çalıştırın. Mesajı görmeniz Python'ın dosyayı yürütebildiğini doğrular. Sonraki alıştırmada sorun çıkarsa runtime'ın baştan beri bozuk olup olmadığını düşünmeden koda, prompt'a veya Copilot kurulumuna bakabilirsiniz.
Copilot'u VS Code'a bağlayın
Düğme adları, uzantının sunuluş biçimi ve menülerin yeri sürümler arasında değişiyor. Ekran görüntüleri kısa sürede eskiyebilir. Önünüzdeki VS Code sürümünün sunduğu kurulum akışını izleyin.
VS Code'u açın ve uzantılar ya da Copilot kurulum alanından GitHub'ın yayımladığı Copilot entegrasyonunu bulun. Uzantıyı kurun veya etkinleştirin. Ekrandaki kimlik doğrulama adımlarını izleyip Copilot erişimi bulunan GitHub hesabınızla oturum açın. Editörünüz açık bir kurulum seçeneği göstermiyorsa eski bir blogdaki komut adına güvenmeyin. Güncel GitHub Copilot hızlı başlangıç kılavuzunu kullanın.
Copilot simgesini görmeniz yalnızca uzantının yüklendiğini gösterir. Satır içi önerilerin görüneceğini veya doğru olacağını garanti etmez. Bunu bir fonksiyon yazarak doğrudan test edin.
Satır içi öneriyi taslak olarak değerlendirin
Yukarıdaki yorum ve fonksiyon imzası Copilot'a hedefi, tam çıktı biçimini ve bir kısıtı veriyor. Aynı zamanda incelemede kullanacağınız sözleşmeyi oluşturuyor. Öneriyi bu maddelerle tek tek karşılaştırmadığınız sürece açık bir sözleşme tek başına yeterli olmaz.
Copilot her denemede farklı bir öneri sunabilir. Bu nedenle başarı ölçütü, dersteki kodun aynısını görmek değildir. Ortaya çıkan programın gereksinimleri karşılamasıdır. Bir tamamlama geçerli Python olabilir ve yine de görevi yanlış yapabilir. Söz dizimi kodun çalışıp çalışmadığını söyler. Kabul ölçütleri ise doğru sorunu çözüp çözmediğini gösterir.
Öneriyi incelemeden önce kabul ölçütlerini yazın. Selamlama fonksiyonu bir dize döndürmeli, name parametresini kullanmalı, Hello, ile başlamalı ve ! ile bitmeli. Sonra öneriyi her ölçütle karşılaştırıp kabul edin, düzenleyin veya reddedin. Kodu önce sıradan bir adla, ardından noktalama içeren bir adla çalıştırın. İlk örneğe tesadüfen uyan bir tamamlama çoğu zaman ikinci girdide açığa çıkar.
Yeterli doğrulamanın kapsamı kodun yaptığı işe bağlıdır. Bunun gibi küçük ve bağımsız bir fonksiyonda gövdeyi okuyup birkaç girdiyle çalıştırmanız yeterli olabilir. Kimlik doğrulama, para veya paylaşılan veriyle çalışan kodlarda ise otomatik testlere, güvenlik incelemesine ve sistemi tanıyan bir kişinin değerlendirmesine ihtiyaç duyarsınız. Bu kontrolleri modülün ilerleyen derslerinde ele alacaksınız. Şimdilik alışkanlığı düşük riskli örneklerde kurun. Makul görünen kod henüz kanıtlanmış değildir. Aradaki farkı kodu çalıştırıp sonucu okuyarak kapatırsınız.
Öneriyi reddedin, düzenleyin ve yeniden test edin
Yanlış bir öneriyle karşılaştığınızda üç seçeneğiniz vardır. Gereksinimi ihlal ediyor veya sabit bir ad ya da uydurma oda gibi bilgi ekliyorsa öneriyi reddedin. Düzeltme küçük ve açıksa kodu düzenleyin. Bütün parametreler ve kısıtlar hem normal hem de sınır girdisinde doğrulandıktan sonra öneriyi kabul edin.
İlk tepkiniz yeni bir öneri istemek olabilir. Copilot return "Hello, Amina!" döndürdüyse kod tek örneği geçiyor ama name parametresini kullanmıyor. Daha şanslı bir tamamlama beklemeyin. Satırı return f"Hello, {name}!" olarak düzeltip kontrolleri yeniden çalıştırın. Küçük ve açık bir düzenlemeyi incelemek, sıfırdan gelen başka bir öneriyi değerlendirmekten daha hızlıdır. Son davranış da sizin kontrolünüzde kalır.
Daha uzun kod her zaman daha iyi sonuç vermez. Görev belirli bir çıktı biçimi istiyorsa öneriye oda, tarih veya kişi eklenmesi yeni bir hata yaratır. İstenmeyen bölümleri çıkarın. İyi bir prompt'un anatomisi dersindeki yaklaşımı burada da kullanın. Hedefi, kısıtları ve tamamlanma ölçütünü baştan yazmak, öneriyi kontrol edilebilir hâle getirir.
Aynı yöntemi daha büyük bir örnekte deneyin. club_summary fonksiyonunun kulüp adı, toplantı günü ve toplantı saatini kullanmasını isteyin. Copilot günü "Tuesday" olarak sabitleyebilir veya "in Room 204" ekleyebilir. Bu kod geçerli Python olsa bile gün parametresini atlar, bir değeri sabitler ve kaynakta olmayan konum bilgisi üretir. Böyle bir öneriyi reddedin. Ardından üç parametreyi de belirtilen biçimde kullanan sürümü yazıp normal ve noktalama içeren girdilerle yeniden test edin. Fonksiyonlar büyüdükçe kontrol edeceğiniz kısıtların sayısı artar, ancak karar değişmez. Gereksinimi bozan öneriyi reddedin, açık hatayı düzenleyin ve sonucu her seferinde çalıştırın.