Share via


Visual Studio'da Visual F# ile geliştirme

Bu makale, F# geliştirmeye yönelik Visual Studio özellikleri hakkında bilgi içerir.

F# desteğini yükleme

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.

.NET desktop development workload in Visual Studio

F# proje özellikleri

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:

F# project templates in Visual Studio

Aşağıdaki görüntüde F# öğesi şablonlarından bazıları gösterilmektedir:

F# item templates in Visual Studio

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

Proje Tasarımcısı

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.

F#'a özgü ayarlar

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.

Kod ve metin düzenleyicisi özellikleri

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.

IntelliSense özellikleri

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.

Hata ayıklama özellikleri

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.

Ek araçlar

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

Ayrıca bkz.