Visual Studio'da Visual F# ile geliştirme
Bu makale, F# geliştirmeye yönelik Visual Studio özellikleri hakkında bilgi içerir.
Visual Studio'da F# ile geliştirmek için, henüz yapmadıysanız önce .NET masaüstü geliştirme iş yükünü yükleyin. Visual Studio iş yüklerini Visual Studio Yükleyicisi aracılığıyla yüklersiniz. Bunu Araçlar Araçları>ve Özellikleri Al'ı seçerek açabilirsiniz.
Visual Studio'da F# için çeşitli proje ve öğe şablonları kullanılabilir. Aşağıdaki görüntüde .NET Core ve .NET Standard için bazı F# proje şablonları gösterilmektedir:
Aşağıdaki görüntüde F# öğesi şablonlarından bazıları gösterilmektedir:
Veri erişimi için öğe şablonları hakkında daha fazla bilgi için bkz . F# türü sağlayıcıları.
Aşağıdaki tabloda F# için proje özelliklerindeki özellikler özetlenmiştir:
Proje ayarı | F# dilinde destekleniyor mu? | Notlar |
---|---|---|
Kaynak dosyalar | Yes | |
Derleme, hata ayıklama ve başvuru ayarları | Yes | |
Çoklu Sürüm Desteği | Yes | |
Simge ve bildirim | Hayır | Derleyici komut satırı seçenekleri aracılığıyla kullanılabilir. |
ASP.NET İstemci Hizmetleri | Hayır | |
ClickOnce | Hayır | Varsa başka bir .NET dilinde bir istemci projesi kullanın. |
Kesin adlandırma | Hayır | Derleyici komut satırı seçenekleri aracılığıyla kullanılabilir. |
Derleme yayımlama ve sürüm oluşturma | Hayır | |
Kod analizi | Hayır | Kod çözümleme araçları el ile veya derleme sonrası komutunun bir parçası olarak çalıştırılabilir. |
Güvenlik (güven düzeylerini değiştirme) | Hayır |
Project Tasarım Aracı, ilgili işlevlere göre gruplandırılmış birkaç proje özellik sayfasından oluşur. F# projeleri için kullanılabilen sayfalar çoğunlukla diğer diller için kullanılabilir olan sayfaların bir alt kümesidir ve aşağıdaki tabloda açıklanmıştır. İlgili C# Proje Tasarım Aracı sayfasına bağlantılar sağlanır.
Proje Tasarım Aracı sayfası | İlgili bağlantılar | Açıklama |
---|---|---|
Uygulama | Uygulama Sayfası, Proje Tasarım Aracı | Kitaplık mı yoksa yürütülebilir dosya mı oluşturduğunuz, uygulamanın hangi .NET sürümünü hedeflediği ve uygulamanın kullandığı kaynak dosyalarının nerede depolandığı hakkında bilgi gibi uygulama düzeyi ayarları ve özellikleri belirtmenizi sağlar. |
Derleme | Derleme Sayfası, Proje Tasarım Aracı | Kodun nasıl derlenmiş olduğunu denetlemenizi sağlar. |
Derleme Olayları | Derleme Olayları Sayfası, Proje Tasarım Aracı | Derlemeden önce veya sonra çalıştırılacak komutları belirtmenizi sağlar. |
Hata Ayıklama | Hata Ayıklama Sayfası, Proje Tasarımcısı | Hata ayıklama sırasında uygulamanın nasıl çalıştığını denetlemenizi sağlar. Bu, hangi komutların kullanılacağını ve uygulamanızın başlangıç dizininin ne olduğunu ve yerel kod ve SQL gibi etkinleştirmek istediğiniz özel hata ayıklama modlarını içerir. |
Paket (yalnızca.NET SDK'sı) | Yok | NuGet paketi olarak yayımlarken NuGet Paketi meta verilerini tanımlamanızı sağlar. |
Başvuru Yolları | Bir projedeki başvuruları yönetme | Kodun bağımlı olduğu derlemelerin nerede aranacağını belirtmenizi sağlar. |
Kaynaklar (yalnızca.NET SDK'sı) | Yok | Varsayılan kaynak dosyası oluşturmanızı ve yönetmenizi sağlar. |
Aşağıdaki tabloda F#'a özgü ayarlar özetlenir:
Proje Tasarım Aracı sayfası | Ayar | Açıklama |
---|---|---|
Derleme | Kuyruk çağrıları oluşturma | Seçilirse, kuyruk Microsoft Ara Dil (MSIL) yönergesinin kullanımını etkinleştirir. Bu, yığın çerçevesinin kuyruk özyinelemeli işlevleri için yeniden kullanılmasına neden olur. Derleyici seçeneğine --tailcalls eşdeğerdir. |
Derleme | Diğer bayraklar | Ek derleyici komut satırı seçenekleri belirtmenize olanak tanır. |
Visual Studio kodu ve metin düzenleyicilerinin aşağıdaki özellikleri F# dilinde desteklenir:
Özellik | Açıklama | F# dilinde destekleniyor mu? |
---|---|---|
Otomatik olarak açıklama ekleme | Kodun bölümlerine açıklama eklemenizi veya açıklamayı kaldırmanızı sağlar. | Yes |
Otomatik olarak biçimlendir | Standart girinti ve stil ile kodu yeniden biçimlendirer. | Hayır |
Yer işaretleri | Düzenleyicideki yerleri kaydetmenizi sağlar. | Yes |
Girintiyi değiştir | Seçili satırları girintiler veya girintilerini çıkarır. | Yes |
Akıllı girintileme | İmleci F# kapsam kurallarına göre otomatik olarak girintisini artırır ve girintisini geri alır. | Yes |
Metin bulma ve değiştirme | Bir dosyada, projede veya çözümde aramanızı ve olası metni değiştirmenizi sağlar. | Yes |
.NET API'sinin tanımına gidin | İmleç bir .NET API'sine yerleştirildiğinde.NET meta verilerinden oluşturulan kodu gösterir. | Hayır |
Kullanıcı tanımlı API tanımına gitme | İmleç tanımladığınız bir program varlığında olduğunda, imleci kodunuzda varlığın tanımlandığı konuma taşır. | Yes |
Satıra Gitme | Dosyadaki belirli bir satıra satır numarasına göre gitmenize olanak tanır. | Yes |
Dosyanın üst kısmındaki gezinti çubukları | Koddaki konumlara atlamanızı sağlar. Örneğin işlev adı. | Yes |
Blok Yapısı Yönergeleri | Önizleme için üzerine gelinebilen F# kapsamlarını gösteren yönergeleri gösterir. | Yes |
Anahat Oluşturma | Daha kompakt bir görünüm oluşturmak için kodunuzun bölümlerini daraltmanızı sağlar. | Yes |
Tabify | Boşlukları sekmelere dönüştürür. | Yes |
Tür renklendirme | Tanımlı tür adlarını özel bir renkte gösterir. | Yes |
Hızlı Bul' u seçin. Bkz. Hızlı Bul, Bul ve Değiştir Penceresi. | Bir dosya veya projede aramanızı sağlar. | Yes |
Ctrl+tuşunu basılı tutarak Tanıma Git'e tıklayın | Tanıma Git'i çağırmak için Ctrl tuşunu basılı tutmanızı ve F# simgesine tıklamanızı sağlar. | Yes |
QuickInfo'dan Tanıma git | Tanıma Git'i çağıran araç ipuçlarının içinde tıklanabilir simgeler. | Yes |
Tümüne Git | Ctrl+T aracılığıyla tüm F# yapıları için genel, benzer eşleşen gezintiyi etkinleştirir. | Yes |
Satır İçi Yeniden Adlandırma | Bir simgenin satır içi tüm oluşumlarını yeniden adlandırır. | Yes |
Tüm Başvuruları Bul | Kod tabanındaki bir simgenin tüm oluşumlarını bulur. | Yes |
Ad kodu düzeltmeyi basitleştirme | F# simgeleri için gereksiz niteleyicileri kaldırır. | Yes |
Kullanılmayan deyim kodu düzeltmesini open kaldırma |
Belgedeki tüm gereksiz open deyimleri kaldırır. |
Yes |
Kullanılmayan değer kodu düzeltmesi | Kullanılmayan bir tanımlayıcıyı alt çizgiye yeniden adlandırmayı önerir. | Yes |
Visual Studio'da kodu düzenleme ve metin düzenleyicisinin özellikleri hakkında genel bilgi için bkz . Düzenleyicide kod yazma.
Aşağıdaki tabloda F# dilinde desteklenen ve desteklenmeyen IntelliSense özellikleri özetlenmektedir:
Özellik | Açıklama | F# dilinde destekleniyor mu? |
---|---|---|
Arabirimleri otomatik olarak uygulama | Arabirim yöntemleri için kod saplamaları oluşturur. | Yes |
Kod parçacıkları | Ortak kodlama yapılarından oluşan bir kitaplıktan alınan kodu konulara ekler. | Hayır |
Tam Sözcük | Siz yazarken sözcükleri ve adları tamamlayarak yazmayı kaydeder. | Yes |
Otomatik tamamlama | Etkinleştirildiğinde, sözcük tamamlama işleminin siz yazarken ilk eşleşmeyi seçmesine neden olur; bunun yerine birini seçmenizi veya Ctrl+Ara Çubuğu'na basmanızı beklersiniz. | Yes |
Açılmamış ad alanlarındaki simgeler için teklif tamamlama | Otomatik tamamlama ile, açılmamış bir ad alanında bulunan eşleşen bir simge önerilir ve seçildiğinde ilgili open deyimin tamamlanması önerilir. |
Yes |
Kod öğeleri oluşturma | Çeşitli yapılar için saptama kodu oluşturmanızı sağlar. | Hayır |
Üyeleri Listeleme | Üye erişim işlecini (.) yazdığınızda, bir türün üyelerini gösterir. | Yes |
Kullanımı Düzenle/Aç | C# içindeki deyimleri veya F# içindeki açık yönergeleri kullanarak başvuruda bulunan ad alanlarını düzenler. | Hayır |
Parametre Bilgisi | İşlev çağrısı yazarken parametreler hakkında yararlı bilgileri gösterir. | Yes |
Hızlı Bilgi | Kodunuzdaki tüm tanımlayıcılar için tam bildirimi görüntüler. | Yes |
Otomatik küme ayracı tamamlama | F# ayraç benzeri söz dizimi yapılarını işlemsel bir şekilde otomatik olarak tamamlar. | Yes |
IntelliSense hakkında genel bilgi için bkz . IntelliSense kullanma.
Aşağıdaki tabloda, F# kodunda hata ayıkladığınızda kullanılabilen özellikler özetlenmiştir:
Özellik | Açıklama | F# dilinde destekleniyor mu? |
---|---|---|
Otomatik değişkenler penceresi | Otomatik veya geçici değişkenleri gösterir. | Hayır |
Kesme noktaları | Hata ayıklama sırasında belirli noktalarda kod yürütmeyi duraklatmanızı sağlar. | Yes |
Koşullu kesme noktaları | Yürütmenin duraklatılıp duraklatılmayacağını belirleyen bir koşulu test eden kesme noktalarını etkinleştirir. | Yes |
Düzenle ve Devam Et | Çalışan bir programda hata ayıklayıcıyı durdurmadan ve yeniden başlatmadan hata ayıklarken kodun değiştirilmesini ve derlenmesine olanak tanır. | Hayır |
İfade değerlendirici | Çalışma zamanında kodu değerlendirir ve yürütür. | Hayır, ancak C# ifade değerlendiricisi kullanılabilir, ancak C# söz dizimini kullanmanız gerekir. |
Geçmiş hata ayıklama | Daha önce yürütülen koda geçmenizi sağlar. | Yes |
Yerel öğeler penceresi | Yerel olarak tanımlanmış değerleri ve değişkenleri gösterir. | Yes |
İmlece Git | İmleci içeren satıra ulaşılana kadar kodu yürütmenizi sağlar. | Yes |
Adımla | Yürütmeyi ilerletmenizi ve herhangi bir işlev çağrısına geçmenizi sağlar. | Yes |
AdımLa | Geçerli yığın çerçevesinde yürütmeyi ilerletmenizi ve herhangi bir işlev çağrısını geçmenizi sağlar. | Yes |
Visual Studio hata ayıklayıcısı hakkında genel bilgi için bkz . Visual Studio'da hata ayıklama.
Aşağıdaki tabloda Visual Studio araçlarında F# desteği özetlemektedir.
Araç | Açıklama | F# dilinde destekleniyor mu? |
---|---|---|
Çağrı Hiyerarşisi | Kodunuzda işlev çağrılarının iç içe yapısını görüntüler. | Hayır |
Kod Ölçümleri | Kodunuz hakkında satır sayıları gibi bilgiler toplar. | Hayır |
Sınıf Görünümü | Projedeki kodun tür tabanlı bir görünümünü sağlar. | Hayır |
Hata Listesi penceresi | Koddaki hataların listesini gösterir. | Yes |
F# Interactive | F# kodu yazmanızı (veya kopyalayıp yapıştırmanızı) ve projenizin derlemesinde bağımsız olarak hemen çalıştırmanızı sağlar. F# Etkileşimli penceresi Okuma, Değerlendirme, Yazdırma Döngüsü (REPL) şeklindedir. | Yes |
Nesne Tarayıcısı | Derlemedeki türleri görüntülemenizi sağlar. | Derlenmiş derlemelerde göründükleri şekilde F# türleri tam olarak siz yazarken görünmez. F# türlerinin derlenmiş gösterimine göz atabilirsiniz, ancak türleri F# dilinde göründükleri şekilde görüntüleyemezsiniz. |
Çıkış penceresi | Derleme çıkışını görüntüler. | Yes |
Performans analizi | Kodunuzun performansını ölçmek için araçlar sağlar. | Yes |
Özellik penceresi | Odaklanmış geliştirme ortamında nesnenin özelliklerinin düzenlenmesini görüntüler ve etkinleştirir. | Yes |
Sunucu Gezgini | Çeşitli sunucu kaynaklarıyla etkileşim kurmanın yollarını sağlar. | Yes |
Çözüm Gezgini | Projeleri ve dosyaları görüntülemenizi ve yönetmenizi sağlar. | Yes |
Görev Listesi | Kodunuzla ilgili iş öğelerini yönetmenizi sağlar. | Hayır |
Test projeleri | Kodunuzu test etmenize yardımcı olan özellikler sağlar. | Hayır |
Araç kutusu | Denetimler ve metin veya kod bölümleri gibi sürüklenebilir nesneler içeren sekmeleri görüntüler. | Yes |