Visual Studio SimgesiVisual Studio 2019 sürüm 16.0 Sürüm Notları


Geliştirici Topluluğu Sistem Gereksinimleri | Uyumluluk | Dağıtılabilir Kod | Yayın Geçmişi | Lisans Koşulları | Blogları | Visual Studio Docs'taki Yenilikler |


Not

Bu sürüm Visual Studio’nun en son sürümü değildir. En son sürümü indirmek için lütfen Visual Studio sitesini ziyaret edin.



Visual Studio 2019 sürüm 16.0’daki Yenilikler

Destek Zaman Çerçevesi

Visual Studio 2019 sürüm 16.0 artık desteklenmiyor

Visual Studio 2019 sürüm 16.0 Enterprise ve Professional kullanıcıları Ocak 2021’e kadar destekleniyordu ve güvenlik açığı düzeltmelerini alıyordu. Bu zaman çerçevesi, Aralık 2019’da Visual Studio 2019 sürüm 16.4’ün Visual Studio 2019 ürünleri için son bakım ana hattı olarak kullanıma sunulması ile belirlenmiştir. Desteklenen Visual Studio ana hatları hakkında daha fazla bilgi için lütfen Visual Studio 2019 için destek ilkesini gözden geçirin. 

Sürüm notlarının en son sürümüne bakın veya Visual Studio 2019'un desteklenen en son sürümünü indirmek için Visual Studio sitesini ziyaret edin.

Visual Studio 2019 sürüm 16.0 Yayınları

Visual Studio 2019 Blog

Visual Studio 2019 Blog, Visual Studio Mühendislik Takımı tarafından sunulan resmi ürün içgörüleri kaynağıdır. Visual Studio 2019 yayınları hakkında kapsamlı bilgileri burada bulabilirsiniz.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.22

yayın tarihi: 12 Ocak 2020

16.0.22 için Güvenlik Danışmanlığı Bildirimi

CVE-2021-1651 / CVE-2021-1680 Tanılama Merkezi Standart Toplayıcı Hizmeti Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Tanılama Merkezi Standart Toplayıcı, dosya işlemlerini hatalı işlediğinde ayrıcalıkların yükseltilmesi güvenlik açığı ortaya çıkıyor.

CVE-2020-26870 Visual Studio Yükleyicisi Uzaktan Kod Yürütme Güvenlik Açığı

Visual Studio Yükleyicisi, kötü amaçlı markdown'ı göstermeye çalıştığında uzaktan kod yürütme güvenlik açığı ortaya çıkıyor.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.21

yayın tarihi: 8 Aralık 2020

16.0.21 için Güvenlik Danışmanlığı Bildirimi

CVE-2020-17156 Visual Studio Uzaktan Kod Yürütme Güvenlik Açığı

Visual Studio kötü amaçlı bir depoyu klonlarken, uzaktan kod yürütülmesine ilişkin bir güvenlik açığıyla karşılaşılıyor.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.20

yayın tarihi: 10 Kasım 2020

16.0.20 için Güvenlik Danışmanlığı Bildirimi

CVE-2020-17100 Visual Studio Kurcalama Güvenlik Açığı

Visual Studio için Python Araçları, python27 klasörünü oluşturduğunda bir oynama güvenlik açığı oluşuyor. Bu güvenlik açığından başarılı şekilde yararlanan bir saldırgan, yükseltilmiş bağlamda işlemler çalıştırabilir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.19

yayın tarihi: 13 Ekim 2020

Bu 16.0.19 Sürümünde

  • Visual Studio 2019’a .NET Code SDK 2.1.616 eklendi.

Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.18

yayın tarihi: 8 Eylül 2020

16.0.18 sürümünde düzeltilen sorun

  • .NET Core’un desteklenmeyen sürümleri artık VS kurulumu dışında kaldırıldıysa onarım veya yükseltme sırasında yeniden yüklenmeyecektir.

16.0.18 için Güvenlik Danışmanlığı Bildirimi

CVE-2020-1130 Tanılama Merkezi Standart Toplayıcı Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Tanılama Merkezi Standart Toplayıcı, dosya işlemlerini hatalı işlediğinde ayrıcalıkların yükseltilmesi güvenlik açığı ortaya çıkıyor. Bu güvenlik açığından başarılı şekilde yararlanan bir saldırgan, yükseltilmiş bağlamda işlemler çalıştırabilir.

CVE-2020-1133 Tanılama Merkezi Standart Toplayıcı Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Tanılama Merkezi Standart Toplayıcı, dosya işlemlerini hatalı işlediğinde ayrıcalıkların yükseltilmesi güvenlik açığı ortaya çıkıyor. Bu güvenlik açığından başarılı şekilde yararlanan bir saldırgan, yükseltilmiş bağlamda işlemler çalıştırabilir.

CVE-2020-16856 Visual Studio Uzaktan Kod Yürütme Güvenlik Açığı

Bellekteki nesneleri hatalı şekilde işlediğinde Visual Studio’da bir uzaktan kod yürütme güvenlik açığı bulunur. Güvenlik açığından yararlanan bir saldırgan, geçerli kullanıcının bağlamında rastgele kod çalıştırabilir.

CVE-2020-16874 Visual Studio Uzaktan Kod Yürütme Güvenlik Açığı

Bellekteki nesneleri hatalı şekilde işlediğinde Visual Studio’da bir uzaktan kod yürütme güvenlik açığı bulunur. Güvenlik açığından yararlanan bir saldırgan, geçerli kullanıcının bağlamında rastgele kod çalıştırabilir.

CVE-2020-1045 Microsoft ASP.NET Core Güvenlik Özelliğini Atlama Güvenlik Açığı

Microsoft ASP.NET Core'un kodlanmış tanımlama bilgisi adlarını ayrıştırma yönteminde güvenlik özelliğini aşan bir güvenlik açığı bulunuyor. ASP.NET Core tanımlama bilgisi ayrıştırıcının tanımlama bilgisi dizelerinin tamamının kodunu çözer ve bu durum kötü niyetli bir saldırganın adı yüzde işaretiyle kodlanmış ikinci bir tanımlama bilgisi ayarlamasına olanak tanıyabilir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.17

Yayın tarihi: 11 Ağustos 2020

16.0.17 sürümünde düzeltilen sorun

16.0.17 için Güvenlik Danışmanlığı Bildirimi

CVE-2020-1597 ASP.NET Çekirdek Hizmet Reddi Güvenlik Açığı

ASP.NET Core web isteklerini düzgün bir şekilde işlemediğinde hizmet reddi güvenlik açığı oluşur. Bu güvenlik açığını başarılı bir şekilde kötüye kullanabilen bir saldırgan, ASP.NET Core web uygulamasında hizmet reddi sorununa yol açabilir. Güvenlik açığı, uzaktan bağlanarak kimlik doğrulaması olmadan kötüye kullanılabilir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.16

yayın tarihi: 14 Temmuz 2020

16.0.16 Sürümünde Düzeltilen Hatalar

  • Düzeltildi v15.9 ile sanal bir işlevi çağırmak için derleyici CodeGen regresyonu
  • DLL adının son ekinde farklı büyük/küçük harfe sahip şemsiye kitaplıkları kullanıldığında ortaya çıkan eksik C++ bağlayıcı içeri aktarma durumlarıyla ilgili bir hata düzeltildi.
  • setjmp sonrasında yanlış değerlerin geri yüklenebildiği ARM64 C++ derleyicisi hatası düzeltildi.

16.0.16 için Güvenlik Danışmanlığı Bildirimi

CVE-2020-1393 Tanılama Merkezi Standart Toplayıcı Hizmeti Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Windows Tanılama Merkezi Standart Toplayıcı Hizmeti girişi düzgün bir şekilde temizlemediğinde ayrıcalık yükselmesi güvenlik açığı oluşur, bu da güvenli olmayan kitaplık yükleme davranışına neden olur.

CVE-2020-1416 Visual Studio Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Visual Studio yazılım bağımlılıklarını yüklediğinde, ayrıcalıkların yükseltilmesi güvenlik açığı oluşur.

CVE-2020-1147 .NET Core Hizmet Reddi Güvenlik Açığı

Kimliği doğrulanmamış bir saldırgan, uzaktan bir ASP.NET Core uygulamasına veya belirli türdeki XML dosyalarını ayrıştıran diğer uygulamalara özel olarak tasarlanmış istekler göndererek bu güvenlik açığını kötüye kullanabilir. Güvenlik güncelleştirmesi, XML yük dosyasında olmasına izin verilen türleri sınırlayarak bu güvenlik açığını giderir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.15

yayın tarihi: 9 Haziran 2020

16.0.15 Sürümünde Düzeltilen Hatalar

16.0.15 için Güvenlik Danışmanlığı Bildirimi

CVE-2020-1108 / CVE-2020-1108.NET Core Hizmet Reddi Güvenlik Açığı

Microsoft, CVE-2020-1108’i kapsamlı bir şekilde ele almak amacıyla .NET Core 2.1 ve .NET Core 3.1 için güncelleştirmeler yayımladı. .NET Core’un bu sürümlerinden birini kullanan müşterilerin .NET Core’un en son sürümünü yüklemesi gerekir. En son sürüm numaraları ve .NET Core’u güncelleştirme yönergeleri için Sürüm Notları’na göz atın.

CVE-2020-1202 / CVE-2020-1203 Tanılama Merkezi Standart Toplayıcı Hizmeti Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Tanılama Merkezi Standart Toplayıcı Hizmeti veya Visual Studio Standart Toplayıcısı, bellekteki nesneleri doğru şekilde işleyemediğinde ayrıcalıkların yükseltilmesi güvenlik açığı ortaya çıkıyor.

CVE-2020-1293 / CVE-2020-1278 / CVE-2020-1257 Tanılama Merkezi Standart Toplayıcı Hizmeti Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Tanılama Merkezi Standart Toplayıcı Hizmeti dosya işlemlerini hatalı işlediğinde ayrıcalıkların yükseltilmesi güvenlik açığı ortaya çıkıyor


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.14

yayın tarihi: 12 Mayıs 2020

16.0.14 Sürümünde Düzeltilen Hatalar

  • Kurumsal BT yöneticileri ve dağıtım mühendislerinin, Microsoft Update Kataloğu ve WSUS’de barındırılan VS2019 16.0 güncelleştirmelerinin uygulanabilirliğini belirlemek için Microsoft Update istemcisi ve SCCM gibi araçları yapılandırmasına olanak sağlayan bir değişiklik eklendi.

16.0.14 için Güvenlik Danışmanlığı Bildirimi

CVE-2020-1108 .NET Core Hizmet Reddi Güvenlik Açığı

Kimliği doğrulanmamış bir saldırgan, uzaktan bir .NET Core uygulamasına özel olarak tasarlanmış istekler göndererek bu güvenlik açığını kötüye kullanabilir. Güvenlik güncelleştirmesinde, .NET Core web uygulamasının web isteklerini işleme şekli düzeltilerek bu güvenlik açığı giderildi.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.13

yayın tarihi: 14 Nisan 2020

16.0.13 için Güvenlik Danışmanlığı Bildirimi

CVE-2020-0899 Microsoft Visual Studio Ayrıcalıkların Yükseltilmesiyle ilgili Güvenlik Açığı

Microsoft Visual Studio güncelleştirici hizmeti dosya izinlerini yanlış işlediğinde ayrıcalıkların yükseltilmesiyle ilgili güvenlik açığı oluşur. Bu güvenlik açığından başarıyla yararlanan bir saldırgan yerel sistemin güvenlik bağlamı üzerine rastgele bir dosya içeriği yazabilir.

CVE-2020-0900 Visual Studio Uzantı Yükleyici Hizmeti Ayrıcalıkların Yükseltilmesiyle İlgili Güvenlik Açığı

Visual Studio Uzantı Yükleyicisi Hizmeti dosya işlemlerini yanlış işlediğinde ayrıcalıkların yükseltilmesiyle ilgili güvenlik açığı oluşur. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan yükseltilmiş izinlerle rastgele konumlardan dosyaları silebilir.

CVE-2020-5260 URL’lerde yetersiz doğrulamadan kaynaklanan Visual Studio Kimlik Bilgileri Sızıntısıyla İlgili Güvenlik Açığı için Git

Özel olarak hazırlanmış URL’ler ayrıştırıldığında ve kimlik bilgisi yardımcılarına gönderildiğinde, kimlik bilgileri sızıntısıyla ilgili güvenlik açığı oluşur. Bu durum kimlik bilgilerinin yanlış konağa gönderilmesine yol açabilir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.12

yayın tarihi: 10 Mart 2020

16.0.12 sürümünde düzeltilen hatalar

Güvenlik Danışmanlığı Bildirimi

CVE-2020-0793 & CVE-2020-0810 Tanılama Merkezi Standart Toplayıcı Hizmeti Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Tanılama Merkezi Standart Toplayıcı dosya işlemlerini yanlış işlediğinde veya Windows Tanılama Merkezi Standart Toplayıcı Hizmeti girişi düzgün bir şekilde temizlemediğinde ayrıcalık yükselmesi güvenlik açığı oluşur.

CVE-2020-0884 Outlook Web Eklentisi oluşturulurken sızdırma güvenlik açığı

Bir Outlook Web Eklentisi oluştururken, çok faktörlü kimlik doğrulaması etkinleştirilirse, bir sızdırma güvenlik açığı bulunur

CVE-2020-0789 Visual Studio Uzantı Yükleyici Hizmeti Hizmet Reddi Güvenlik Açığı

Visual Studio Uzantı Yükleyicisi Hizmeti sabit bağlantıları yanlış işlediğinde bir hizmet reddi güvenlik açığı bulunur. Güvenlik açığından başarıyla yararlanan bir saldırgan, hedef sistemin yanıt vermeyi durdurmasına neden olabilir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.11

yayın tarihi: 14 Ocak 2020

Güvenlik Danışmanlığı Bildirimi

CVE-2020-0602 ASP.NET Core Hizmet Reddi Güvenlik Açığı

Kimliği doğrulanmamış bir saldırgan, uzaktan bir ASP.NET Core uygulamasına özel olarak tasarlanmış istekler göndererek bu güvenlik açığını kötüye kullanabilir. Güvenlik güncelleştirmesinde, ASP.NET Core web uygulamasının web isteklerini işleme şekli düzeltilerek bu güvenlik açığı giderildi.

CVE-2020-0603 ASP.NET Core Uzaktan Kod Yürütme Güvenlik Açığı

Kimliği doğrulanmamış bir saldırgan, uzaktan bir ASP.NET Core uygulamasına özel olarak tasarlanmış istekler göndererek bu güvenlik açığını kötüye kullanabilir. Güvenlik güncelleştirmesi, ASP.NET Core web uygulamasının bellekteki işleme şeklini düzelterek bu güvenlik açığını giderir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.10

yayın tarihi: 10 Aralık 2019

16.0.10 sürümünde düzeltilen hatalar

Güvenlik Danışmanlığı Bildirimi

CVE-2019-1349 Alt modül adlarındaki çok gevşek kısıtlamalar nedeniyle Visual Studio için Git Uzaktan Yürütme Güvenlik Açığı

Git, eşdüzey alt modül dizinleri için alt modül ad çakışmalarıyla karşılaştığında uzaktan kod yürütme güvenlik açığı oluşuyor. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan hedef makinede uzaktan kod yürütebilir. Güvenlik güncelleştirmesi, Windows için Git’in, alt modül kopyalarının boş olmasını gerektiren yeni bir sürümünü alarak bu güvenlik açığını giderir.

CVE-2019-1350 Komut satırı bağımsız değişkenlerinin hatalı alıntılanmasından kaynaklanan Visual Studio için Git Uzaktan Yürütme Güvenlik Açığı

Git, SSH URL’leriyle birlikte bir özyinelemeli kopyalama sırasında komut satırı bağımsız değişkenlerini belirli bir alıntılamayla yorumladığında uzaktan kod yürütme güvenlik açığı oluşuyor. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan hedef makinede uzaktan kod yürütebilir. Güvenlik güncelleştirmesi, Windows için Git’in sorunu gideren yeni bir sürümünü alarak bu güvenlik açığını giderir.

CVE-2019-1351 Kopyalama sırasında harf olmayan sürücü adlarının kullanılmasından kaynaklanan Visual Studio için Git Rastgele Dosyaların Üzerine Yazma Güvenlik Açığı

Harf olmayan sürücü adları git clone içindeki güvenlik denetimlerini atladığında Git içinde rastgele dosya üzerine yazma güvenlik açığı oluşuyor. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan hedef makinede rastgele dosyalara yazabilir. Güvenlik güncelleştirmesi, Windows için Git’in sorunu gideren yeni bir sürümünü alarak bu güvenlik açığını giderir.

CVE-2019-1352 NTFS Alternatif Veri Akışlarının algılanmamasından kaynaklanan Visual Studio için Git Uzaktan Yürütme Güvenlik Açığı

NTFS alternatif veri akışları aracılığıyla .git/ dizinine kopyalama ve yazma sırasında Git içinde bir uzaktan kod yürütme güvenlik açığı oluşuyor. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan hedef makinede uzaktan kod yürütebilir. Güvenlik güncelleştirmesi, Windows için Git’in NTFS alternatif veri akışlarını algılayan yeni bir sürümünü alarak bu güvenlik açığını giderir.

CVE-2019-1354 Ters eğik çizgi içeren izlenen dosyaların yazılmasının reddedilmemesinden kaynaklanan Visual Studio için Git Rastgele Dosyaların Üzerine Yazma Güvenlik Açığı

Git’te ters eğik çizgi ve kötü amaçlı sembolik bağlantı içeren ağaç girdilerinin iş ağacından çıkmasına neden olabilen rastgele bir dosyanın üzerine yazma güvenlik açığı bulunuyor. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan hedef makinede rastgele dosyalara yazabilir. Güvenlik güncelleştirmesi, Windows için Git’in, ters eğik çizgilerin bu kullanımına izin vermeyen yeni bir sürümünü alarak bu güvenlik açığını giderir.

CVE-2019-1387 Özyinelemeli kopyalarda alt modül adlarının doğrulanmasının aşırı belirsiz olmasından kaynaklanan Visual Studio için Git Uzaktan Yürütme Güvenlik Açığı

Git’te alt modüller ile yinelemeli olarak kopyalanırken bir uzaktan kod yürütme güvenlik açığı bulunur. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan hedef makinede uzaktan kod yürütebilir. Güvenlik güncelleştirmesi, Windows için Git’in alt modül adlarının doğrulanmasını daha katı hale getiren yeni bir sürümünü alarak bu güvenlik açığını giderir.

CVE-2019-1486 Live Share uzantısı URL yeniden yönlendirme güvenlik açığı

Live Share oturumuna bağlı bir konuk, oturum ana bilgisayarı tarafından belirtilen rastgele bir URL’ye yeniden yönlendirildiğinde Visual Studio Live Share uzantısında bir sızdırma güvenlik açığı algılandı. Bir saldırgan, bu güvenlik açığından başarıyla yararlanarak konuğun bilgisayarın bir tarayıcı açmasına ve açık onay olmadan kötü amaçlı bir URL’ye gitmesini sağlayabilir. Bu, etkin bir Live Share oturumu sırasında otomatik bağlantı noktası iletmeye olanak sağlayan Live Share "Paylaşılan Sunucu" özelliğinin bir parçasıydı. En son güncelleştirme, ana bilgisayar tarafından belirtilen URL’ye gitmeden önce Live Share konuğundan izin isteyerek bu güvenlik açığını giderir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.9

yayın tarihi: 15 Ekim 2019

Güvenlik Danışmanlığı Bildirimi

CVE-2019-1425 NPM Paketinde Ayrıcalıkların Yükseltilmesiyle İlgili Güvenlik Açığı (yayım tarihi: 12 Kasım 2019)

Visual Studio, arşivlenmiş dosyaları ayıklarken sabit bağlantıları başarıyla doğrulayamadığında ayrıcalık yükseltme güvenlik açığı oluşuyor. Bu güvenlik açıkları, npmjs.com/advisories/803 ve npmjs.com/advisories/886 NPM önerilerinde açıklandığı gibi Visual Studio tarafından kullanılan NPM paketleriyle ortaya çıktı. Bu NPM paketlerinin güncelleştirilmiş sürümleri Visual Studio’nun bu sürümüne eklendi.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.8

yayın tarihi: 10 Eylül 2019

Visual Studio 2019 sürüm 16.0.8’de düzeltilen sorunlar

Güvenlik Danışmanlığı Bildirimi

CVE-2019-1232 Tanılama Merkezi Standart Toplayıcı Hizmeti Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Tanılama Merkezi Standart Toplayıcı Hizmeti, bazı dosya işlemlerinin kimliğine hatalı şekilde büründüğünde ayrıcalık yükseltmesinde güvenlik açığı olur. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan yükseltilmiş ayrıcalıklar elde edebilir. Güvenlik açığı olan bir sisteme yetkisiz erişimi bulunan bir saldırgan, bu güvenlik açığından yararlanabilir. Güvenlik güncelleştirmesi, Tanılama Merkezi Standart Toplayıcı Hizmeti'nin dosya işlemlerini düzgün taklit etmesini güvence altına alarak güvenlik açığını giderir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.7

yayın tarihi 13 Ağustos 2019

Visual Studio 2019 sürüm 16.0.7’de düzeltilen sorunlar

Güvenlik Danışmanlığı Bildirimi

CVE-2019-1211 Visual Studio Ayrıcalıkların Yükseltilmesiyle ilgili Güvenlik Açığı için Git

Yapılandırma dosyaları yanlış bir şekilde ayrıştırıldığında Git’te Visual Studio için ayrıcalıkların yükseltilmesi durumunun oluşması. Güvenlik açığından yararlanan bir saldırgan, farklı bir yerel kullanıcının bağlamında kod yürütebilir. Kimliği doğrulanmış bir saldırganın, güvenlik açığından yararlanmak için uygulamayı tam olarak yüklemeden önce Git yapılandırma dosyalarını değiştirmesi gerekir. Ardından, belirli Git komutlarını çalıştırmak için saldırganın sistemdeki farklı bir kullanıcıyı ikna etmesi gerekir. Güncelleştirme, yapılandırma dosyalarını düzenlemek için gereken izinleri değiştirerek sorunu ele alır.

**CVE-2019-1301: .NET Core'da Hizmet Reddi Güvenlik Açığı

.NET Core web isteklerini düzgün bir şekilde işlemediğinde hizmet reddi güvenlik açığı oluşur. Bu güvenlik açığını başarılı bir şekilde kötüye kullanabilen saldırgan, bir .NET Core web uygulamasında hizmet reddi sorununa yol açabilir. Güvenlik açığı, uzaktan bağlanarak kimlik doğrulaması olmadan kötüye kullanılabilir.

Güncelleştirme, .NET Core web uygulamasının web isteklerini işleme şeklini düzelterek bu güvenlik açığını giderir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.6

Yayın tarihi: 9 Temmuz 2019

Visual Studio 2019 sürüm 16.0.6’da düzeltilen sorunlar

  • Windows 10 sürüm 1903'te veya .NET 4.8 yüklü olarak çalıştırılan sistemlerde sabit ekran okuyucu desteği.

Güvenlik Danışmanlığı Bildirimi

CVE-2019-1075 ASP.NET Core Kimlik Sahtekarlığı Güvenlik Açığı

.NET Core güncelleştirmeleri bugün kullanıma sunuldu ve bu Visual Studio güncelleştirmesine eklendi. Bu sürüm güvenlik sorunlarını ve diğer önemli sorunları giderir. Ayrıntıları .NET Core sürüm notlarında bulabilirsiniz.

CVE-2019-1077 Visual Studio Uzantısı Otomatik Güncelleştirme Güvenlik Açığı

Visual Studio Uzantısı otomatik güncelleştirme işlemi bazı dosya işlemlerini hatalı yaptığında ayrıcalık yükseltmesinde güvenlik açığı oluyor. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan rastgele konumlardan dosyaları silebilir. Bu güvenlik açığından yararlanmak için, saldırganın güvenlik açığı olan sisteme yetkisiz erişimi olması gerekebilir. Güvenlik güncelleştirmesi, Visual Studio Uzantısı otomatik güncelleştirme işleminin dosya işlemleri gerçekleştirdiği konumların güvenliğini sağlayarak güvenlik açığını giderir.

CVE-2019-1113WorkflowDesigner XOML’nin seri durumdan çıkarılması kodun yürütülmesini sağlıyor

Belirli türlere başvuran bir XOML dosyası Visual Studio’da açıldığında rastgele kod yürütülmesine neden olabiliyordu. Artık XOML dosyalarıyla kullanılmasına izin verilen türlere sınırlama getirildi. Yeni yetkisiz türlerden birini içeren bir XOML dosyası açıldığında türün yetkisiz olduğunu açıklayan bir ileti görüntüleniyor.

Daha fazla bilgi için bkz. https://support.microsoft.com/help/4512190/remote-code-execution-vulnerability-if-types-are-specified-in-xoml.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.5

yayın tarihi: 11 Haziran 2019

Visual Studio 2019 sürüm 16.0.5’te düzeltilen sorunlar


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.4

yayın tarihi: 14 Mayıs 2019

Visual Studio 2019 sürüm 16.0.4’te düzeltilen sorunlar

Güvenlik Danışmanlığı Bildirimi

CVE-2019-0727 Tanılama Merkezi Standart Toplayıcı Hizmeti Ayrıcalıkların Yükseltilmesi Güvenlik Açığı

Tanılama Merkezi Standart Toplayıcı Hizmeti bazı dosya işlemlerini hatalı yaptığında ayrıcalık yükseltmesinde güvenlik açığı oluyor. Bu güvenlik açığından başarılı bir şekilde yararlanan bir saldırgan rastgele konumlardan dosyaları silebilir. Bu güvenlik açığından yararlanmak için, saldırganın güvenlik açığı olan sisteme yetkisiz erişimi olması gerekebilir. Güvenlik güncelleştirmesi, Tanılama Merkezi Standart Toplayıcı Hizmeti'nin dosya işlemleri gerçekleştirdiği konumların güvenliğini sağlayarak güvenlik açığını giderir.


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.3

yayımlanma tarihi: 30 Nisan 2019

Visual Studio 2019 sürüm 16.0.3’teki Yenilikler

  • Kubernetes için Visual Studio Araçları artık en son Azure Dev Spaces sürümünü destekler.

Visual Studio 2019 sürüm 16.0.3’de düzeltilen sorunlar


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.2

yayınlanma tarihi: 18 Nisan 2019

Visual Studio 2019 sürüm 16.0.2'de düzeltilen sorunlar


Sürüm Notları Simgesi Visual Studio 2019 sürüm 16.0.1

yayın tarihi: 9 Nisan 2019

Visual Studio 2019 sürüm 16.0.1’de düzeltilen sorunlar


Sürüm Notları Simgesi Visual Studio 2019

yayın tarihi: 02 Nisan 2019

Visual Studio 2019’daki Yeniliklerin Özeti

Yükleme

IDE

  • Varsayılan olarak yüklenen Visual Studio Live Share uygulamasını kullanarak başkalarıyla işbirliği yapın. C++, VB.NET ve Razor için ek dil desteği, konuklara bir çözüm görünümü sunar ve kaynak denetimi farklarının paylaşılmasını sağlar.
  • Yeni başlangıç penceresi aracılığıyla kopyalama, açma veya proje oluşturma gibi yaygın olarak kullanılan akışlardan biriyle başlayın ya da en son üzerinde çalıştığınız kodu açın.
  • Popülerliğe göre sıralanmış yeni şablon listesini kullanarak, filtreler ve geliştirilmiş arama deneyimi ile yeni projeler oluşturun.
  • Kabuktaki yeni görsel değişiklikler aracılığıyla modernleştirilmiş bir görünüm elde edin ve kodunuz için daha dikey bir alana sahip olun.
  • İzleyici başına farkındalık için sunduğumuz gelişmiş destek sayesinde, görüntü birimi yapılandırmanız ve/veya ölçeklendirmeniz fark etmeksizin IDE’nizin daha net bir sürümünü görüntüleyin.
  • Menüler, komutlar, seçenekler ve yüklenebilir bileşenler için Visual Studio’da gelişmiş arama özelliğini kullanın.
  • Belge göstergesiyle kod dosyanızın “durumunu” hızla anlayın. Göstergeden tek tıkla kod temizlemeyi çalıştırın ve yapılandırın.
  • Seçenekler iletişim kutusundaki yeni bir Önizleme Özellikleri sayfasıyla kabul ettiğiniz önizleme özelliklerini kolayca yönetin.
  • Etiket tabanlı aramada yapılan geliştirmeler ve kolayca erişilebilen "Son proje şablonları" listesiyle yeni projeler oluşturun.
  • Doğrudan Visual Studio Arama'dan yeni öğeler oluşturun ve geliştirilen uygunlukla sonuçları daha hızlı bulun.
  • Yeni bildirimler deneyimi sayesinde Visual Studio Live Share istekleri gibi önemli bilgilerden haberdar olun.
  • Kod temizleme sırasında çalıştırmak istediğiniz hata gidericileri kolayca seçmek için bir kod temizleme hata gidericileri koleksiyonunu profil olarak kaydedin.
  • Yeni .NET yeniden düzenlemesini ve kod düzeltmelerini tetikleyin.
  • Birinci sınıf proje dosyalarıyla .NET Core projelerini yapılandırın.
  • Uzantılar ve Güncelleştirmeler iletişim kutusunda Önizleme, Ücretli ve Deneme etiketleriyle uzantılarınızın durumunu görün.
  • Bu Önizlemede varsayılanlar sıfırlandığından, etkin olmasını istediğiniz Önizleme özelliklerini denetleyin ve yapılandırın.
  • Bu sürümde kullanım dışı olarak işaretlenmiş olan bazı Test Penceresi API'lerini dışlayarak uzantılarınızın güncelliğini koruyun.
  • Başlangıç penceresi üzerinden oturum açın, göz atın ve Azure DevOps’tan barındırılan depolarınızı tek tıklamayla kopyalayın veya bunlara bağlanın.
  • Size veya kuruluşunuza ait depoları görüntülemek için diğer kaynak denetimi konakları için uzantılar yükleyin.
  • Geri bildirimlere karşılık olarak renk parlaklığının azaltılması, genel karşıtlığın artırılması ve diğer kullanılabilirlik sorunlarının çözülmesiyle geliştirilmiş bir Mavi tema deneyimi elde edin.
  • Dotnet format genel aracıyla komut satırından kod stili tercihlerini uygulayın.
  • MSBuild ve Visual Studio artık varsayılan olarak .NET Framework 4.7.2’yi hedeflemektedir.
  • Azure App Service ile ilgili özellikleri Sunucu Gezgini'nden kaldırdık; bunun yerine Cloud Explorer'da eşdeğer işlevsellik sağlandı.

Performans

Genel Hata Ayıklama ve Tanılama

Kaynak Denetimi ve Takım Gezgini

  • Git hazırlama dosyası için Takım Gezgini’nin Git araçları desteğini kullanarak başka bir görev üzerinde çalışabilmek amacıyla değişiklikleri geçici olarak saklayın.
  • Çekme İsteği incelemelerini Visual Studio’da tümleştiren ve Visual Studio Marketi’nde mevcut olan Visual Studio için Çekme İstekleri adlı isteğe bağlı uzantıya göz atın.
  • Kullanıcıya özgü iş öğesi görünümleri, iş öğesinden dal oluşturulması, #bahsetmeler ile iş öğelerinin aranması ve satır içi düzenleme de dahil olmak üzere, geliştirici iş akışlarına odaklanan yeni Azure DevOps iş öğesi deneyimini kullanın.

Genişletilebilirlik

  • Microsoft.VisualStudio.SDK NuGet paketinde tek, birleştirilmiş bir Visual Studio SDK’sı kullanın.
  • VSIX Projesi’nin artık bir AsyncPackage içermesini sağlayan güncelleştirmemizden yararlanın.
  • Yeni eklediğimiz Boş VSIX Projesi ile denemeler yapın.
  • Bir uzantının Ücretsiz, Ücretli veya Deneme olduğunu bilmeniz için bu durum, artık Uzantılar ve Güncelleştirmeler iletişim kutusunun içinde gösteriliyor.

Programlama Dilleri

C#

Aşağıdakiler dahil C# derleyicisinin şimdi desteklediği 8.0 dil özelliklerinin önizlemesine gözatın:

  • Null atanabilir başvuru türleri: Özellik açık olduğunda (örneğin, ile #nullable enable veya ile <NullableContextOptions>enable</NullableContextOptions>proje düzeyinde), başvuru türleri ile ?ek açıklama eklendiğinde null atanabilir olarak ve aksi takdirde null atanamaz olarak kabul edilir. Derleyici daha sonra null değerlerin nereye akışının yapıldığını analiz eder ve güvenli olmayabilecek kullanımlar hakkında uyarır.
  • switch ifadeler: İfade bağlamında benzer semantikler sunar switch.
  • Özyinelemeli desen eşleştirme: Yeni desenler, alanların/özelliklerin ve konum öğelerinin (tanımlama listelerinden veya yapısızlaştırmadan) test edilmesine olanak sağlar.
  • Aralıklar için x..y sabit söz dizimi dahil, Range ve Index türlerinin CoreFX içinde dilimleme için kullanılmasına yönelik destek.
  • IAsyncEnumerable<T> tarafından temsil edilen zaman uyumsuz akışlarawait foreach ile zaman uyumsuz olarak numaralandırılabilir ve async IAsyncEnumerable<T> yineleyici yöntemleri ile üretilebilir.
  • using bildirimler: İç içe yerleştirme düzeyini artırmadan geçerli bloğun sonunda atın. ref yapıları genel bir Dispose() metodu uygulanarak atılabilir.
  • static yerel işlevler: ile static işaretlenen yerel işlevler, kapsayan işlevlerde veya değişkenlere başvuramaz this .
  • Yerel işlevler ve lambdalar artık kapsayan işlevlerin değişkenlerinin adlarını gölgeleyen parametreler ve yerel değerler bildirebilir.
  • Null birleşim atama: x ??= y; yalnızca xnull ise x öğesine y atar.

Mads’in C# 8.0 genel bakışında daha fazla bilgi edinin.

Daha fazla ayrıntı için bkz. C# dili özellik durumu ve hataya neden olan değişiklikler.

Ayrıca, varsayılan olarak Visual Studio’da daha modern C# dil özelliklerini kullanabilirsiniz.

C++
  • Kodunuz için yapay zeka destekli öneriler sunan isteğe bağlı bir uzantı olan Visual Studio IntelliCode’u kullanarak C++ ve XAML kodu yazarken zaman kazanın.
  • Düzenleyici içinde kod analizi uyarıları alın. Kod analizi arka planda otomatik olarak çalıştırılır ve uyarılar yeşil dalgalı çizgilerle gösterilir.
  • Göz Atma Penceresi kullanıcı arabirimini kullanan ve iç içe şablonları destekleyen yeni Şablon Çubuğu'nu deneyin.
  • C++ Yaşam süresi profil denetleyicisinin yeni, güncelleştirilmiş uygulamasını çalıştırın.
  • CMake projelerinizi, CMakeSettings.json'a bir alternatif getiren yeni CMake Ayarları Düzenleyicisi'nde yapılandırın.
  • OpenMP SIMD vektörleştirmesi, bağlama sırasında hızlandırmalar ve daha agresif satır içi kullanımı gibi zengin arka uç geliştirmelerini deneyin.
  • CMakeGUI gibi dış araçlar veya özelleştirilmiş meta derleme sistemleri tarafından oluşturulan mevcut CMake önbelleklerini açın.
  • Spectre Variant 1 (CVE-2017-5753) için risk azaltma yardımı sağlamak amacıyla /Qspectre ile analizi geliştirin. Daha fazla bilgi için Visual C++ Takım Blogu gönderisine bakın.
  • Şablon IntelliSense için Şablon Çubuğu’na yeni eklenen Son Kullanılanlar açılır menüsü ile önceki örnek bağımsız değişkenleriniz arasında hızlıca geçiş yapabilirsiniz.
F#
  • F# 4.6 diğer çeşitli derleyici geliştirmeleri ile birlikte yayınlandı.
  • Daha büyük çözümlerde performans geliştirmeleri elde edin ve F# ile F# araçlarına yönelik çeşitli hata düzeltmelerinden yararlanın.
  • Açık kaynak katkıda bulunanalar tarafından yapılan F# dil ve araçları çalışmaları hakkında bilgi edinin.
JavaScript/TypeScript
Python
  • Python Ortam Ekleme iletişim kutusunu kullanarak kolayca Python sanal ve conda ortamları ekleyin.
  • Yeni Python ortam seçicisi araç çubuğu kullanılarak geliştirilmiş Klasör Açma çalışma alanları desteği de dahil olmak üzere, Python ortamlarında daha kolay çalışın.
  • Visual Studio Live Share oturumları oluşturabilir ve Python kodu üzerinde diğer Visual Studio kullanıcılarıyla işbirliği yapabilirsiniz.

Web Teknolojileri

Kapsayıcı Araçları

Xamarin ile Mobil Geliştirme

Evrensel Windows Platformu (UWP)

  • Tasarımcıdan düzenlemeler yaparken açıklamalar, satır aralığı, ad alanları ve diğer metin değişikliklerini koruyun. Paket bildirimi tasarımcısı şimdi Package.appxmanifest dosyasındaki xml değişikliklerine kesin olarak uyuyoruz.
  • MSIX paketlerini oluşturmak üzere .NET Core projeleri için Windows Uygulaması Paketleme projesini kullanın.
  • Doğrudan Microsoft Store gönderimleri için Paket Oluşturma Sihirbazı’nı kullanın.
  • Windows Mobile cihazlarına dağıtım Visual Studio 2019’da artık desteklenmiyor. Windows 10 Mobile cihazına dağıtım yapma girişimleri "Visual Studio 2019’da Windows Mobile cihazlarına dağıtım desteklenmiyor" hatasıyla sonuçlanır. Windows 10 Mobile cihazlarına yönelik bir uygulamada çalışmaya devam etmeniz gerekiyorsa, Visual Studio 2017’yi kullanmaya devam edin.

XAML Hata Ayıklama Araçları:

  • XAML Düzenle ve Devam Et artık x:bind (UWP) desteğine sahip: XAML Düzenle ve Devam Et artık genel özellikler, öğe adı, dizinli özellik yolları (koleksiyonlar), ekli özellikler ve atama özellikleri içeren yollar için x:bind ile oluşturulan veri bağlamalarını düzenlemeyi destekliyor. Diğer değişiklikler desteklenmiyor. Bu geliştirme en düşük ve en yüksek sürüm hedefi Windows 10 SDK sürüm 1809 (derleme 10.0.17763) veya üzeri olan tüm uygulamalarda kullanılabilir. (Not: XAML Düzenle ve Devam Et artık olarak bilinirVisual Studio 2019 Güncelleştirme 2+) ile başlayan XAML Çalışırken Yeniden Yükleme.

SQL Server Veri Araçları

  • Artık UTF-8 harmanlama desteği içeren güncelleştirilmiş bir SSDT ve DacFX deneyimi edinin.

Visual Studio 2019’daki Yeniliklerin Ayrıntıları

Yükleme

  • Şimdi Visual Studio güncelleştirmelerinin nasıl yükleneceğini seçebilirsiniz. Varsayılan mod, güncelleştirmeler indirilirken Visual Studio'yu kullanmaya devam etmenize olanak tanıyan ‘Tümünü indir ve sonra yükle’ modudur. ‘Tümünü indir ve sonra yükle’ seçeneğini belirtirseniz Visual Studio Yükleyicisi'ni açıp Devam'ı seçerek yüklemeyi tamamlamanız gerektiğini unutmayın.
  • Visual Studio güncelleştirmeleri artık arka planda indirilecek. Bu indirmeler yalnızca bilgisayarınız boşta kaldığında yapılacak. İndirme tamamlandığında, Visual Studio'nun içinde indirdiğiniz dosyanın artık yüklemeye hazır olduğuna ilişkin bir bildirim alacaksınız.
  • Artık Ürün Güncelleştirmeleri sayfasındaki ayarları değiştirerek Araçlar > Seçenekleri menüsünden güncelleştirme yükleme modunuzu ve güncelleştirmelerin indirilip indirilmeyeceğini denetleyebilirsiniz.
Ürün Güncelleştirme Seçenekleri
*Ürün Güncelleştirme Seçenekleri*

Başlangıç penceresi

Yeni başlangıç penceresi, Visual Studio’yu başlattığınızda kodunuzu hızla almanıza yardımcı olmak için kolaylaştırılmış bir başlatma deneyimi sağlar.

  • Son projelerinizi ve klasörlerinizi görüntüleyin ve bunları tek tıkla açın. Bağlam menüsü aracılığıyla listeden öğeler sabitleyebilir ve kaldırabilirsiniz.
  • Klasörü otomatik olarak IDE’de açacak genel veya özel git URL’sini kullanarak kodu kopyalayın veya kullanıma alın.
  • Oturum açarak, gözatarak ve tek tıklamayla kopyalayarak veya Azure DevOps’tan barındırılan depolarınıza bağlanarak ya da diğer kaynak denetimi konaklarından uzantıları yükleyerek size veya kuruluşunuza ait depoları görüntüleyin.
  • Kod içeren klasörler, çözümler veya projeler için yerel diskinize ya da ağ paylaşımınıza göz atıp bunları IDE’de açın.
  • Yeni bir proje veya çözüme başlamanıza yardımcı olacak kod iskelesi sağlayan bir proje şablonu seçin.
  • Başlık, açıklama veya etikete göre proje şablonlarını arayın ya da kullanılabilir diller, platformlar ve proje türlerine göre filtreleyin. Varsayılan liste tüm kullanılabilir şablonları gösterir ve sol bölmede hızlı erişim için son kullanılan 10 proje şablonunuzun listesi yer alır. İki sayfalık sihirbaz, aynı anda tek bir karara konsantre olmanızı sağlar.
Başlangıç penceresi
*Yeni Başlangıç Penceresi Deneyimi*

Kabuk ve platform

  • Yeni gelişmiş ürün simgesi aracılığıyla, hangi Visual Studio sürümünü açtığınızı ve kullandığınızı hızlı şekilde belirleyin. Yeni simge, çeşitli arka planlara karşı daha fazla görünür olur.
  • Bir yandan erişilebilirlik standartlarımızı karşılarken diğer yandan size daha net bir kullanıcı arabirimi sunan yenilenmiş mavi temamızla, Visual Studio’nun modernleştirilmiş görünümüne kavuşun.
  • Kompaktlığı hedefleyen ve IDE’de dikey alan kazandıran değişikliklerimiz sayesinde kodunuzun daha fazlasını görüntüleyin. Bir yandan mevcut işlevselliği korurken diğer yandan başlık çubuğunu ve menü çubuğunu birleştirdik.
  • Yeni ve deneysel bir ayar ile İzleyici Başına Farkındalık uygulaması olarak Visual Studio’yu kullanın. Bu ayar açık olduğunda, kabuk ve düzenleyici gibi Visual Studio parçalarının görüntü birimi yapılandırmanıza ve/veya ölçeklendirmenize bakılmaksızın çok daha net şekilde oluşturulmasına yardımcı olur.
  • Menüler, komutlar, seçenekler ve yüklenebilir bileşenler arasında gelişmiş bir arama deneyimi elde edin. Yeni arama özelliğimiz artık sonuçları dinamik olarak görüntüler, yazım hatalarını barındırır ve arama sonuçlarında alakalı bilgiler (örn. klavye kısayolları) sağlar.
Sonuçlarla Visual Studio Araması
*Visual Studio'da Gelişmiş Arama*
  • Belge Durumu Göstergesi özelliği sayesinde şu anda açık olan dosyanızla ilişkili durum bilgilerini görüntüleyin.
Sorunlarla ilgili Belge Durumu Göstergesi
*Belge Sistem Durumu Göstergesi - belgede sorun*
Sorun olmayan Belge Durumu Göstergesi
*Belge Durumu Göstergesi - sorun yok*
  • C# geliştiricisiyseniz, Kod Temizlemeyi kullanarak en yaygın kodlama önerilerinden bazılarını hızlı şekilde temizleyebilirsiniz.
  • Kod Temizlemeyi yapılandırarak çalıştırılmasını istediğiniz düzeltici kümesini seçin.
Kod Temizleme yapılandırma iletişim kutusu
*Kod Temizlemeyi Yapılandırma*
  • Pano Halkasını genişleyen bir bağlam menüsü aracılığıyla pano geçmişinizin içeriklerini görüntüleyin (Ctrl + Shift + V).
Pano Halkası bağlam menüsü
*Pano Halkası Bağlam Menüsü*
  • Arama deneyiminizi şu şekilde geliştirdik:
    • Menüler, Bileşenler ve Şablonlar için filtreler ekleniyor
    • Size en uygun arama sonuçlarını getirmek için arama seçimleriniz birleştiriliyor
    • Doğrudan Visual Studio Aramasının içinden çözümünüzde yeni projeler/öğeler oluşturma ve ekleme olanağı tanınıyor
  • Geliştirilen İzleyici Başına Farkındalık (PMA) deneyimi, en düşük gereksinimlere (.NET 4.8 Önizleme ve Windows 10 Nisan 2018 Güncelleştirmesi veya daha yenisi) uyan kullanıcılar için varsayılan olarak açık durumda oluyor. Araç Kutusu, Kesme Noktaları, İzleme, Yerel Ayarlar, Otomatikler ve Çağrı Yığını gibi araç pencereleri PMA'ya dönüştürüldü ve bundan dolayı ekran yapılandırmanıza ve/veya ölçeklendirmeye bakılmaksızın net bir şekilde işleniyor.
  • Yeni bir bildirim deneyimi ekler:
    • Durum çubuğunda yeni bir simge ve sayaç deneyimi
    • Yeni bildirim mekanizması
    • Visual Studio Güncelleştirmeleri ve Visual Studio lisans süre sonu bildirimleri
  • Geri bildirimlere karşılık olarak renk parlaklığının azaltılması, karşıtlığın artırılması ve diğer kullanılabilirlik sorunlarının çözülmesiyle düzeltilen Mavi tema deneyimi.
  • Araç çubuğu bölgesindeki kullanılabilir boş alandan sürüklenebilir alan olarak yararlanıp iyileştirilen pencere sürükleme özellikleri.
  • Şimdi Kod Temizleme hata gidericileri koleksiyonunu profil olarak kaydedebilir, bu sayede Kod Temizleme sırasında çalıştırmak istediğiniz hata gidericileri hızla seçebilirsiniz.
Visual Studio Code Temizleme Profilleri
*Visual Studio Code Temizleme Profilleri*
  • Bir uzantının Önizleme aşamasında, Ücretli uzantı veya Deneme süresinde olduğunu hemen anlamanıza yardımcı olmak için Uzantılar ve Güncelleştirmeler iletişim kutusuna etiketler ekledik.
Etiketlerin bulunduğu Uzantılar ve Güncelleştirmeler iletişim kutusu
*Etiketler içeren Uzantılar ve Güncelleştirmeler iletişim kutuları*
  • Visual Studio 2019 ve sonrasında veri ipuçlarını uygulamak için artık IAsyncQuickInfoSourceProvider önerilir. Eski Düzenleyici Hızlı Bilgi API’leri IVsTextTipData ve TextTipData, Visual Studio 2019 Preview 1’de kullanımdan kaldırılmıştır.
  • Düzenleyici Akıllı Etiketleri (Microsoft.VisualStudio.Language.Intellisense ad alanındaki arabirimlerin ISmartTag* ailesi), LightBulb API’si lehine kullanımdan kaldırılmış olup artık Visual Studio 2019 Preview 1’den itibaren desteklenmemektedir.
  • Gelişmiş derleme yapılandırmasını göster, Çözümü her zaman göster ve Oluşturulduklarında yeni projeleri kaydet çözüm seçenekleri, çok az kullanıldığı için kaldırılmıştır. Bu değerler, varsayılan True değerine ayarlanmıştır.
  • Araçlar Seçenekleri Ortam Önizleme Özellikleri'nde bulunan yeni Önizleme Özellikleri sayfasını kullanarak belirli önizleme özelliklerini kabul edin veya devre dışı bırakın.> > >

Performans

  • Klasörler ve çözümler için Derleme Seçimi için yeni bir kısayol ekledik: Ctrl + B.
  • Çözümünüzü tüm projeler yüklenmemiş olarak yükleyerek büyük çözümleri hızlı bir şekilde açın. Projeleri yüklemeyin
  • Çözüm Filtre Dosyaları ile çözüm açıldığında hangi projelerin yükleneceğini seçin.
    • Otomatik olarak açılmasını istemediğiniz projeleri kaldırıp çözüme sağ tıkladıktan sonra Çözüm Filtresi Olarak Kaydet’i seçerek bir Çözüm Filtresi Dosyası oluşturun. Ardından, filtre dosyasını kullanarak sonraki kullanımlar için çözümü açabilirsiniz. Çözüm filtreleri
  • CMake dosyaları için Tümünü Derle komutu ekledik: Ctrl + Shift + B.
  • CMake projelerindeki C++ dosyaları için IntelliSense performansını geliştirdik.
  • Yüklenmemiş proje bağımlılıklarını proje ve çözüm bağlam menülerine yüklemek için bir komut ekledik.
  • Visual Studio'nun performansını iyileştirmeye yönelik bildirim ipuçları artık performans merkezinde kalıcı hale geliyor ve Visual Studio Performansını Yönetmeye Yardımcı Olun > aracılığıyla erişilebilir.
  • Artık Görev Durumu Merkezi’nde çözüm yüklemenizin ilerleme durumunu ve çözüm yüklemeniz bittiğinde uyarıları görebilirsiniz.
  • Çözüm Filtre Dosyaları ile çözüm açıldığında hangi projelerin yükleneceğini seçin.
    • Otomatik olarak açılmasını istemediğiniz projeleri kaldırıp çözüme sağ tıkladıktan sonra Çözüm Filtresi Olarak Kaydet’i seçerek bir Çözüm Filtresi Dosyası oluşturun. Ardından, filtre dosyasını kullanarak sonraki kullanımlar için çözümü açabilirsiniz.
  • Klasör Açma senaryolarında Ctrl+T tuşlarına bastığınızda gelişmiş derleme varlığı keşfi ve dosya araması gerçekleştirin.
  • Artık Visual Studio düzenleyicisinin, yardımcı bileşenlerin yazma performansı üzerindeki olumsuz etkisini sınırlaması nedeniyle performans artışını fark edebilirsiniz. Özellikle de yazma sırasında uzun süreli, gerekli olmayan işlemleri otomatik olarak iptal eder.
  • Araçlar > Seçenekleri > Metin Düzenleyicisi > Gelişmiş aracılığıyla Visual Studio yardımcı bileşen sınırlama davranışını yapılandırabilirsiniz:
Visual Studio Yazma Gecikme Süresi Seçenekleri
*Visual Studio Yazma Gecikme Süresi Seçenekleri*
  • Artık Çözüm Gezgini araç penceresinde önceki oturumdan proje hiyerarşisi durumunun geri yüklenmesini devre dışı bırakabilirsiniz. Çözüm açıkken önceki oturumdan proje hiyerarşisinin geri yüklenmesi, çözümün yüklenmesini geciktirebileceğinden bu değişikliği uyguladık.
    • Araçlar > Seçenekleri > Projeleri ve Çözümleri > Genel'de bu seçeneği değiştirin.
Çözüm yükleme geri yükleme ayarları
*Çözüm yükleme geri yükleme ayarları*
* Artık önceki oturumdan araç penceresinin durumunu geri yüklemeyi devre dışı bırakabilir ve bunun yerine başlangıçta her zaman Çözüm Gezgini ve Takım Gezgini'ni yükleyebilirsiniz. Önceki oturumlardan araç pencerelerinin geri yüklenmesi, başlangıçta çözüm yüklemesini geciktirebileceğinden bu değişiklik uygulanmıştır. * **Araçlar > Seçenekleri > Ortam > Başlangıç**'ta bu seçeneği değiştirin.

Genel Hata Ayıklama ve Tanılama

Genel Hata Ayıklama
  • İzle, Otolar ve Yereller pencerelerinde tümleştirdiğimiz yeni arama özelliğimizi kullanarak anahtar sözcüklerle gezinin, bulun ve vurgulayın.
Watch'ta anahtar sözcükleri arama
İzle Penceresinde arama
  • Listelenen bir öğeye virgül ekleyerek İzle, Otolar ve Yereller pencerelerinde verileri biçimlendirme seçeneklerinin ve tanımlayıcıların açılır listesini görüntüleyin.
Watch'ta Biçim Tanımlayıcısı Açılan Listesi
İzle Penceresindeki Biçim Tanımlayıcı Açılır Listesi
  • Artık .NET Core için özel ve Veri Kümesi görselleştiricisi desteğini kullanabilirsiniz.
.NET Core için DataSet Görselleştiricisi
.NET Core uygulamaları için Veri Kümesi Görselleştiricisi
  • Windows’da çalışan C++ uygulamaları için PDB artık ayrı bir 64 bit işlemde yüklenir. Bu değişiklik, çok sayıda modül ve PDB içeren uygulamaların hataları ayıklanırken hata ayıklayıcının belleğinin dolmasından kaynaklanan bir dizi kilitlenmeye çözüm sunar.
Yönetilen veri kesme noktaları

Artık veri kesme noktalarını kullanarak .NET Core (3.0 veya üzeri) uygulamalarında belirli bir nesnenin özellik değeri değiştiğinde kesebilirsiniz. Bu özellik başlangıçta C++ için özeldir. Bir veri kesme noktası, kapsamın dışında olsa bile belirli bir nesnenin özelliğine odaklanabildiğinden, bir özelliğin ayarlayıcısına kesme noktası yerleştirmek için harika bir alternatiftir; ancak eski seçenek, bu işlevi çağıran yüzlerce nesneniz varsa sabit, ilgisiz kesmelere neden olabilir.

.NET Core için veri kesme noktaları
.NET Core uygulamalarında veri kesme noktaları
İzleme penceresinde arama yapmaya yönelik kullanıcı deneyimi güncelleştirmeleri

Otomatikler, Yerel Öğeler ve İzleme pencerelerinde arama yapmaya yönelik kullanıcı arabirimini güncelleştirerek daha basit bir hale getirdik. Daha Derin Ara işlevi, ilk ve izleyen aramalarınızın ne kadar derin olacağını hızla seçebilmeniz için bir açılan liste olacak şekilde değiştirildi.

Kod stili tercihlerini uygulama
  • Artık dotnet format genel aracıyla komut satırından kod stili tercihlerini uygulayabilirsiniz. Yüklemek için .NET Core 2.1 SDK veya üzeri gerekir. Sık kullandığınız terminalde şu komutu çalıştırın: dotnet tool install -g dotnet-format --version 3.0.0-beta4-19105-10
dotnet format video
Komut satırından dotnet biçimini çalıştırma.

Genişletilebilirlik

  • Artık Visual Studio 2019’da V1 vsixmanifest uzantı biçimiyle derlenen uzantıları yükleyemezsiniz. V1, ilk kez Visual Studio 2010’da sunulmuş ve Visual Studio ile ilgili güvenilirlik sorunlarına neden olabileceği için Visual Studio 2017’de kullanımdan kaldırılmıştır. Visual Studio 2019’da V1 desteği tamamen kaldırılmıştır. Visual Studio 2019’u hedefleyen uzantılar, vsixmanifest biçiminin yeniden derlenmiş V2 veya V3 sürümü olmalıdır.
  • Artık bir uzantı zaman uyumlu şekilde otomatik olarak yüklendiğinde size bildirim gönderilir. Uzantıların bu yayında normal şekilde yüklenip çalışacağını, ancak sonraki Visual Studio 2019 güncelleştirmesinde çalışmama riski olduğunu unutmayın. Daha fazla ayrıntıya uzantılar için otomatik yükleme davranışını güncelleştirerek kritik senaryoların yanıt hızını artırma ile ilgili blog gönderimizden erişilebilir.
Birleşik SDK NuGet paketi

Geçmişte, uzantı yazarlarının uzantılarında kullanmaları gereken Visual Studio SDK’sının tek tek NuGet paketlerine birçok ayrı başvuru yapmaları gerekiyordu. Çeşitli paketlerin sürümleri her zaman hizalanmamıştır ve genellikle derleme zamanında bağımlılık çakışmalarının yanı sıra çalışma zamanı sorunlarıyla sonuçlanır.

Bu sorunları çözmek için, Visual Studio SDK’sını oluşturan tüm paketlerde bağımlılıklar içeren Microsoft.VisualStudio.SDK adlı yeni paketi kullanın. Bu paket hem sürüm uyuşmazlıkları sorununu çözer hem de hangi sürümün kullanılacağını anlamayı kolaylaştırır. SDK’nın tamamına erişmek için, uzantınızın desteklediği en düşük Visual Studio sürümüne karşılık gelen paket sürümünü kullanmanız yeterlidir.

Şu anda SDK paketinin yalnızca 15.9 sürümü var ama önümüzdeki aylarda 14.0 sürümüne ulaşana kadar başka sürümleri kullanıma sunulacak.

Yeni ve güncelleştirilmiş proje şablonları

VSIX Projesi şablonunu basitleştirmek ve daha iyi çalışmasını sağlamak için şablonda çeşitli güncelleştirmeler yapıldı:

  • Yeni, birleşik SDK NuGet paketini kullanır
  • AsyncPackage sınıfını içeriyor
  • Artık paketi derlemek için bir .resx dosyası gerekmez
  • .NET Framework 4.7.2’yi hedefler

Yeni bir Boş VSIX Projesi şablonu oluşturuldu. Bu VSIX Projesi şablonuyla aynıdır ama AsyncPackage sınıfı yoktur. Ayrıca birleşik SDK NuGet paketine başvurduğundan MEF uzantılarına ve diğer paketsiz uzantı türlerine iyi bir başlangıç noktası sağlar.

Ücretsiz/Ücretli/Deneme

Uzantının ücretsiz, ücretli veya deneme sürümü olarak işaretlenip işaretlenmediğini görmenin kolay bir yolu yoktur. Bu artık değişiyor çünkü Uzantılar ve Güncelleştirmeler iletişim kutusunun içinde deneme veya ücretli her uzantı bunu yansıtacak şekilde açıkça işaretlenir. Deneme/ücretli etiketi olmayan uzantılar ücretsizdir.

Test araçları

Test Penceresinde bulunan ve daha önce belgelenmemiş ama genel kullanıma açık olarak işaretlenmiş olan ek API'ler kullanımdan kaldırma listesine eklendi.

Kaynak Denetimi

  • Artık Takım Gezgininin Git araçları, Git hazırlama dosyasını desteklediğinden başka bir görevde çalışabilmeniz için değişiklikleri geçici olarak saklayın.
  • Visual Studio 2019’da yepyeni çekme isteği deneyimimizi kullanarak IDE’den çıkmadan Azure Repos’tan çekme isteklerini gözden geçirin, çalıştırın ve hatta hatalarını ayıklayın. Başlamak için, Visual Studio Market’ten Visual Studio için Çekme İstekleri uzantısını indirebilirsiniz.
Yeni Çekme İsteği Deneyimi
Yeni Çekme İsteği Deneyimi

MSBuild

  • MSBuild araç kümesinin 15.0 olan sürümü Current olarak değiştirilmiştir. MSBuild.exe şu anda %VSINSTALLDIR%\MSBuild\Current\Bin\MSBuild.exe konumunda etkindir.
  • MSBuild (ve Visual Studio) artık .NET Framework 4.7.2’yi hedeflemektedir. Yeni MSBuild API özelliklerini kullanmak istiyorsanız bütünleştirilmiş kodunuz da yükseltilmelidir, ancak mevcut kod çalışmaya devam eder.

C#

Visual Studio 2019’dan önceki tüm sürümler için, varsayılan C# dil sürümü her zaman Son Ana Sürüme eşitti. Visual Studio 2017'de C# gelişti ve üç ikincil sürüm yayımladı: 7.1, 7.2 ve 7.3. Ancak yeni projeler yine de varsayılan olarak C# 7.0 kullanıyordu. Bu, yeni özellikleri kullanmak isteyen ancak her yeni proje için dil sürümünü elle değiştirmek zorunda kalan C# geliştiricileri için can sıkıcı olabiliyordu.

Bu sorunu gidermek için, varsayılan C# dil sürümü hedef framework tarafından belirlenir:

  • .NET Core 3.0 önizlemesini hedefliyorsanız, C# dil sürümü C# 8.0 Preview olur.
  • .NET Framework’ü veya önizleme olmayan bir .NET Core sürümün hedefliyorsanız, C# dil sürümü C# 7.3 olur.

Bu, varsayılan olarak en son kararlı C# dili özelliklerini kullanmayı ve .NET Core önizlemeleri kullanılırken .NET Core 3.0 Preview ile uyumlu C# 8.0 önizleme dil özelliklerini kullanmayı etkinleştirir.

Bir proje veya özellikler dosyasında LangVersion aracılığıyla bir dil belirtirseniz, bu dil sürümü önceden belirtilen varsayılan ayarın üzerine yazılır.

C++

  • Artık Visual Studio Live Share C++ dilini desteklediğinden gerçek zamanlı işbirliği yapabilirsiniz.
  • Tamamlama listenizin en üstüne kullanma ihtimalinizin en fazla olduğu öğeleri koymak için uzantının kapsamlı eğitimini ve sizin kod bağlamınızı kullanan isteğe bağlı bir uzantı olan IntelliCode’u kullanarak zaman kazanın. C++ için IntelliCode, STL gibi popüler kitaplıkları kullandığınızda en fazla yardımı sunar.
  • Birçok proje şablonu adını ve açıklamalarını, güncelleştirilmiş Yeni Proje iletişim kutusuna sığacak şekilde değiştirdik.
  • Clang/C2 deneysel bileşenini kaldırdık. Windows için Clang/LLVM araç zinciri veya /permissive- ve/veya /std:c++17 ile tam C++ standartları uygunluğu için MSVC araç takımını kullanın. Daha fazla ayrıntı için Visual C++ Ekip Blogu’na bakın.
  • C++ Compiler /Gm anahtarını kullanımdan kaldırdık. Açıkça tanımlandıysa, derleme betiklerinizde /Gm anahtarını devre dışı bırakın. Alternatif olarak, "Uyarıları hata gibi değerlendir" (/WX) seçeneği kullanıldığında bu, hata olarak değerlendirilmeyeceğinden, /Gm için kullanımdan kaldırma uyarısını güvenle yoksayabilirsiniz.
  • C++ Android deneyimi artık varsayılan olarak Android SDK 25 ve Android NDK 16b olur.
Üretkenliği
  • Kod analizi artık otomatik olarak arka planda çalıştırılıyor. Siz yazdıkça düzenleyicinin içinde uyarılar yeşil dalgalı çizgilerle gösteriliyor.
  • Şablon Çubuğu şimdi kalıcı pencere yerine Göz Atma Penceresi kullanıcı arabirimini kullanıyor, iç içe şablonları destekliyor ve tüm varsayılan bağımsız değişkenleri Göz Atma Penceresi'ne önceden giriyor.
  • NULL-nullptr> kod analizi uyarısı (C26477 USE_NULLPTR_NOT_CONSTANT) için otomatik düzeltme, C++ Çekirdek Denetim Türü Kuralları kural kümesinde varsayılan olarak etkin olan ilgili satırlardaki ampul menüsü aracılığıyla kullanılabilir. IDE'deki diğer hızlı düzeltmeler eksik #include yönergelerinin eklenmesi, eksik noktalı virgüllerin düzeltilmesi ve '&' yerine yanlışlıkla '*' kullanımının düzeltilmesidir.
  • C++ konsol ve masaüstü uygulamaları için önceden derlenmiş üst bilgiler artık varsayılan olarak oluşturulmuyor.
  • Şimdi Tanıma Git özelliği #include yönergelerinde çalışıyor ve ilgili dosyayı açıyor. Buna kodunuzda kolay bir yolla gezinmenizi sağlayan F12 kısayolu da dahildir.
  • Kod bloğunun kapatma ayracı üzerine geldiğinizde, söz konusu bloğun bağlamı hakkında bazı yararlı bilgiler sağlanıyor.
  • ConcurrencyChecker'da <mutex> üst bilgisinden iyi tanınan STL türleri için destek ekledik.
  • Eşleşmeyen işaretçileri ve başvuruları algılamak için Yaşam süresi profil denetleyicisinin güncelleştirilmiş kısmi bir uygulaması sağlanıyor.
  • Üç yönlü karşılaştırma için C++20 işleci <=> ("uzay gemisi") için derleyiciye ilk desteği ekledik.
CMake
  • CMake projelerinde C++ dosyaları için IntelliSense performansını geliştirdik.
  • Visual Studio, Linux makinenizde uyumlu bir CMake sürümü olup olmadığını algılayarak Linux üzerinde CMake ile C++ geliştirmenizin önyüklemesine yardımcı oluyor. Uyumlu bir sürüm yoksa, sizin için yüklemeyi öneriyor.
  • CMake Ayarları Düzenleyicisi CMakeSettings.json'a bir alternatif getiriyor ve CMakeGUI ile bir düzeyde eşlik sağlıyor.
  • CMake menüsü kaldırıldı ve projelerle ve çözümlerle daha yakın eşlik sağlamak için yeniden düzenlendi.
  • CMakeSettings'deki uyumsuz ayarlar, örneğin eşleşmeyen mimariler veya uyumsuz CMake oluşturucu ayarları JSON düzenleyicisinde dalgalı çizgiler ve Hata Listesi'nde hatalar gösteriyor.
  • vcpkg integrate install çalıştırıldıktan sonra IDE'de açılmış olan CMake projeleri için vcpkg araç zinciri otomatik olarak algılanıyor ve etkinleştiriliyor. Bu davranış, CMakeSettings'de boş bir araç zinciri dosyası belirtilerek kapatılabilir.
  • CMake projeleri artık varsayılan olarak Yalnızca Kendi Kodum hata ayıklamasını etkinleştiriyor.
  • CMake projelerinde statik analiz uyarıları şimdi arka planda işlenebiliyor ve düzenleyicide görüntülenebiliyor.
  • CMake projelerine daha net derleme ve yapılandırma 'begin' ve 'end' iletileri ekledik ve Visual Studio'nun derleme ilerleme durumu kullanıcı arabirimi için destek sağladık. Buna ek olarak, Artık Çıkış Penceresi'nde CMake derleme ve yapılandırma iletilerinin ayrıntı düzeyini özelleştirmek için Araçlar > Seçenekleri'nde bir CMake ayrıntı ayarı vardır.
  • Artık CMake komut satırını el ile değiştirmeden araç zincirlerini belirtmek için CMakeSettings'de 'cmakeToolchain' ayarı destekleniyor.
Arka Ucu
  • Derleme performansında bağlayıcının Dosya G/Ç'yi işlemesi ve PDB türü birleştirme ve oluşturmada bağlama süresi gibi geliştirmeler yaptık.
  • OpenMP SIMD vektörleştirmesine temel destek ekledik. Bu yeni CL anahtarı -openmp:experimental ile etkinleştirilebiliyor. Bu sayede “#pragma omp simd” açıklaması içeren döngülerin vektörleştirilme olasılığı oluyor. Vektörleştirme garanti edilmiyor ve açıklama içeren ama vektörleştirilmeyen döngüler için uyarı bildiriliyor. Hiçbir SIMD yan tümcesi desteklenmezse, bunlar yalnızca yoksayılacak ve uyarı bildirilecek.
  • -Ob2'nin daha agresif sürümü olan yeni bir satır içi komut satırı anahtarı (-Ob3) ekledik. -O2 (ikili dosyayı hız için iyileştirir) yine varsayılan olarak -Ob2'ye işaret ediyor; derleyicinin satırı içi kullanımının düşük olduğunu fark ederseniz -O2 -Ob3'e geçmeyi göz önünde bulundurun.
  • Matematik kitaplığı işlevlerine ve tamsayı bölme gibi başka bazı işlemlere çağrılar içeren döngülerin el ile vektörleştirilmesini desteklemek için, 128 bit, 256 bit veya 512 bit vektör eşdeğerlerini hesaplayan Kısa Vektör Matematik Kitaplığı (SVML) iç işlevlerine destek ekledik. Desteklenen işlevlerin tanımları için Intel Intrinsic Guide belgesine bakın.
  • Yeni ve geliştirilmiş iyileştirmeler:
    • Hem kaydırılabilir hem de tamsayı formları için SIMD (vektör) iç işlevlerini kullanan ifadelerde sabit katlama ve aritmetik basitleştirmeler
    • Her zaman doğru veya yanlış olduğu kanıtlanmış dalları kaldırmak için denetim akışından (if/else/switch deyimleri) bilgileri ayıklamaya yönelik daha güçlü bir analiz
    • SSE2 vektör yönergelerini kullanmak için memset açma özelliği geliştirildi
    • Özellikle değere göre geçen C++ programları için gereksiz yapı/sınıf kopyalarını kaldırma özelliği geliştirildi
    • memmove kullanılarak kod iyileştirme geliştirildi (std::copy veya std::vector ve std::string oluşturma gibi)
Kullanım Dışı Bırakılanlar
  • Yönetilen C++ Test Projesi şablonu artık sağlanmıyor. Mevcut projelerinizde Yönetilen C++ Test çerçevesini kullanmaya devam edebilirsiniz, ama yeni birim testlerinde Visual Studio'nun şablonlar sağladığı (MSTest, Google Test) yerel test çerçevelerinden birini veya Yönetilen C# Test Projesi şablonunu kullanmayı göz önünde bulundurun.
  • Windows 8.1 SDK'sı artık Visual Studio yükleyicisinde sağlanmıyor. Lütfen C++ projelerinizi en son Windows 10 SDK'sına yükseltin. 8.1'e katı bir bağımlılığınız varsa, bunu Windows SDK arşivinden indirebilirsiniz.
  • En son C++ araç takımında artık Windows XP hedeflemesi sağlanmıyor. VS 2017 düzeyi MSVC derleyicisi ve kitaplıklarında XP hedeflemesi hala destekleniyor ve "Bağımsız bileşenler" üzerinden yüklenebiliyor.
  • Belgelerimizde şu anda Visual C++ Çalışma Zamanı dağıtımı için Modülleri Birleştirme kullanımı hiç önerilmiyor. Bu sürümde bir adım daha ileri gidip MSM'lerimizi kullanım dışı olarak işaretliyoruz. VCRuntime merkezi dağıtımınızı MSM'lerden yeniden dağıtılabilir pakete geçirmeyi göz önünde bulundurun.
  • Şu C++ ATL/MFC sihirbazları artık kullanılamıyor: ATL COM+ 1.0 Bileşen Sihirbazı, ATL Active Server Sayfaları Bileşen Sihirbazı, ATL OLE DB Sağlayıcı Sihirbazı, ATL Özellik Sayfası Sihirbazı, ATL OLE DB Tüketici Sihirbazı, MFC ODBC Tüketicisi, ActiveX denetiminden MFC sınıfı ve Lib TüründeN MFC sınıfı. Bu teknolojiler için örnek kod VCSamples GitHub deposunda arşivlenir.

F#

Visual Studio 2019’da üç temel alanda F# geliştirmeleri yapılmıştır:

  • F# 4.6
  • Orta ve büyük çözümler için önemli performans geliştirmeleri
  • Mükemmel açık kaynak topluluğumuz tarafından çok sayıda açık kaynak çalışma
F# 4.6

Bu sürüm F# 4.6 dilini içeriyor:

F# derleyicisi ve FSharp.Core’da geliştirmeler

F# derleyicisi ve FSharp.Core’da özellikle açık kaynak katkıda bulunanlar tarafından çeşitli iyileştirmeler yapıldı:

  • fsi.exe ve fsc.exe artık varsayılan olarak .NET Framework 4.7.2’yi kullanır ve bu çerçeveyi veya altını hedefleyen bileşenlerin yüklenmesine olanak tanır (#4946).
  • Sınıflar ve sınıf tabanlı kayıtlar üzerindeki yöntemlerin yanı sıra gerçekleştirilecek yapılar ve yapı kayıtları üzerindeki yöntemleri de iyileştirdik (#3057).
  • F# kodunda birleştirilmiş Boole mantığı için yayılan IL’yi iyileştirdik (#635).
  • F# dilinde dizelerle + kullanımını mümkün olan en az sayıda String.Concat çağrısı yapacak şekilde iyileştirdik (#5560).
  • FSharp.Core paketine test varlıkları içeren fazladan bazı dizinlerin eklenmesi hatasını düzelttik. FSharp.Core 4.5.5 ve 4.6.1’de düzeltme bulunmalıdır (#5814).
  • Kullanıcı tanımlı bir öznitelik, Attribute sınıfından devralmadığında artık bir uyarı alırsınız, Vasily Kirichenko tarafından eklendi.
  • Proje dosyasındaki AssemblyInformationVersionAttribute değeri artık SourceLink gibi senaryoları desteklemek için rastgele değerleri destekler (#4822).
  • Etkin Desenler ile geçersiz söz diziminin iç derleyici hatasına neden olacağı bir hata, Steffen Forkmann tarafından düzeltildi (#5745).
  • Tek farkın genel parametre olduğu bir türle eşleşmesi için Module son ekinin, yinelemeli modüldeki bir modüle yanlışlıkla eklendiği bir hata, BooksBaum tarafından düzeltildi (#5794).
  • Tür parametreleri, bir tür adıyla bitişik olmadığında görüntülenen hata iletisi, Alan Ball tarafından iyileştirildi (#4183).
  • uint16 sabit değer son eki, geçersiz sayısal sabit değerler için hata iletilerinde Teo Tsirpanis tarafından doğru şekilde listelendi (#5712).
  • John Wostenberg sayesinde, hesaplama ifadeleri için hata iletileri artık iletide async belirtmemekte, bunun yerine “hesaplama ifadelerine” başvurmaktadır (#5343).
  • F# etkileşiminde .dll’lere yanlış şekilde başvurulduğunda görüntülenen bir hata iletisi, Bartoz Sypytkowski tarafından düzeltildi (#5416).
  • Statik Olarak Çözülen Tür Parametrelerinin devralınmış bir üyenin gizlendiği bir üyeye yönelik çağrıyı işleyememesine neden olan hata Victor Peter Rouven Müller tarafından düzeltildi (#5531).
  • Steffen Forkmann ve Robert Jeppesen tarafından derleyiciye daha küçük çeşitli performans geliştirmeleri eklendi.
F# performans geliştirmeleri

Visual Studio 2019’da F# için önemli bir diğer odak alanı, orta ve büyük çözümlere yönelik performanstır. Visual Studio için F# araçlarının ilk sürümünden kalan bazı uzun süreli sorun giderdik. Ayrıca mükemmel F# açık kaynak topluluğundan da yardım aldık.

  • F# dil hizmetinin Roslyn tarafından başlatılma şeklinde düzeltmeler yaptık. Büyük çözümler için tür renklendirme kısa süre içinde genel kullanımda görünecek.
  • Özellikle büyük dosyalarla zaman içinde büyük ayırmalar olmasından kaçınmak için kaynak metnin gösterimini değiştirdik (#5935, #5936, #5937, #4881).
  • Önemli oranda daha az bellek kullanmak için, dosyalarda yapılan küçük düzenlemelerde derleme önbelleklerimizi değiştirdik (#6028).
  • Bilinmeyen belirteçler yazıldığında ad öneren bir derleyici özelliğini yalnızca bu önerileri isteğe bağlı olarak hesaplamak için değiştirerek, daha büyük çözümlerde yavaş yazarken önemli CPU ve bellek azaltmaları sağladık (#6044).
  • IntelliSense’i artık açılmamış ad alanlarındaki semboller varsayılan olarak gösterilmeyecek şekilde değiştirdik. Bu, çok sayıda başvuru içeren projelerde IntelliSense performansını önemli ölçüde iyileştirir. Bu özellik, Araçlar > Seçenekler Metin Düzenleyicisi > F# > IntelliSense aracılığıyla ayarlarda > yeniden açılabilir.
  • Tamamlanma listesinde çok miktarda sağlanan tür oluşturmak için Tür Sağlayıcıları kullanımı sırasında bellek kullanımını geliştirdik (#5599).
  • Tanınmayan adları önerme için bir dahili dize karşılaştırmaya yönelik CPU ve bellek kullanımı azaltması Avi Avni tarafından düzeltildi (#6050).
  • Özellikle IDE araçları için dikkate değer bir büyük dize ayırmaları kaynağı Avi Avni tarafından düzeltildi (#5922).
  • IntelliSense işlemelerinden gelen önemli bir Büyük Nesne Yığını kaynağı Chet Husk tarafından düzeltildi (#6084)
F# araçlarına yönelik geliştirmeler

Performans geliştirmelerine ek olarak, Visual Studio 2019 için F# araçlarında çeşitli diğer geliştirmeler yapıldı:

  • open deyim kodu eklendiğinde artık varsayılan olarak dosyanın üst kısmına open deyimi eklenir.
  • Kullanıcı kodundaki match! öğesinin, sonraki kapsamlar için yapı yönergelerini ve kod ana hattı oluşturma düğümlerini geçersiz kıldığı bir hatayı düzelttik (#5456).
  • Düzenleyici artık değişebilir değer renklendirmesi ile kayıt alanları olarak byref, outref ve ref değerlerini doğru şekilde renklendirecektir (#5579).
  • Yeniden adlandırma yeniden düzenlemesinin, sembol adlarındaki ' karakterini tanımadığı bir hatayı düzelttik (#5604).
  • Uzun süredir var olan ve F# betik dosyalarını yeniden adlandırmanın renklendirme verilerinde kayba neden olduğu hatayı düzelttik (#1944).
  • Geri tuşuna basıldığında ilgisiz öğeleri göstermemesi için IntelliSense’i temizledik.
  • Saul Rennison tarafından uygulanan kurala göre, “Akıllı” girintileme açık olduğunda, düzenleyiciye F# kodu yapıştırıldığında artık bu kod, geçerli imleç konumuna göre uygun bir kapsamla eşleşecek şekilde biçimlendirilir (#4702).
  • F# düzenleyicisi seçeneklerinin eşitlenmemesine neden olan sorun Jakob Majocha tarafından düzeltildi (#5997, #5998).
  • Bir inherit yan tümcesi içindeki bir yapıdaki IntelliSense’in birincil yapıyı göstermediği bir hata Eugene Auduchinok tarafından düzeltildi (#3699)
  • Eugene Auduchinok tarafından F# dil hizmetinde çeşitli küçük iyileştirmeler yapıldı
F# açık kaynak altyapısı

F# ve F# araçları kod tabanının .NET SDK kullanımına geçirilmesini tamamladık. Bu, özellikle Windows kullanmayan geliştiriciler için katkıda bulunma sürecini önemli ölçüde basitleştirir. Ayrıca, Jakob Majocha kod tabanındaki değişikliklerden sonra yeni katkıda bulunanlar için belgelerin temizlenmesine yardımcı oldu.

Python

Müşteri geri bildirimi temel alınarak Visual Studio 2019, Python ortamlarını yönetmek için yenilenmiş bir deneyim sunar:

  • Projenizde sanal ortamlar ve conda ortamları oluşturma ve ekleme deneyimini kolaylaştıran yeni bir Ortam ekleme iletişim kutusu ekledik.
  • Visual Studio yükleyicisi, Visual Studio yüklemelerinin boyutunu azaltmak ve yükseltme sırasında oluşabilecek hataları önlemek için artık tam Anaconda sürümlerini yüklemez.
  • Miniconda isteğe bağlı bir bileşen olarak Python iş yüküyle birlikte paketlendi. Miniconda/Anaconda'yı yüklemek zorunda kalmadan Conda ortamları oluşturabilmenizi sağlıyor.
  • Artık projenizin kökünde requirements.txt (sanal ortam) veya environment.yml (conda ortamı) mevcutsa otomatik olarak bir ortam eklemeniz istenir.
  • Python dosyalarını düzenlerken yeni bir Python Ortamları araç çubuğu sağlanıyor. Yeni araç çubuğu projelerle, Açık Klasör çalışma alanlarıyla veya diğer projelerdeki dağınık Python dosyalarıyla çalışırken farklı Python yorumlayıcıları arasında geçiş yapmanıza olanak tanıyor.
  • Python IntelliSense’de geliştirilmiş göreli veya ad alanı içeri aktarmalarını algılama dahil otomatik tamamlama kalitesinde iyileştirmeler.
  • Django proje şablonları Django 2.x sürümünü destekleyecek şekilde güncelleştirildi.
  • İşlev dönüş değerleri artık Python hata ayıklayıcısında gösteriliyor.
  • Şimdi VS Live Share oturumları oluşturabiliyor ve Python kodu üzerinde diğer Visual Studio kullanıcılarıyla işbirliği yapabiliyorsunuz. Daha önce, Python yalnızca Visual Studio Code’dan oluşturulan oturumlar birleştirilirken destekleniyordu.

JavaScript/TypeScript

  • Node.js projelerinde birim testleri içinde JavaScript hata ayıklamasını etkinleştirme desteği ekledik. Bu, Node.js müşterilerimizin uzun süredir istediği bir özellikti.
  • TypeScript NuGet paketi veya npm paketi yüklü olan projelerde JavaScript/TypeScript dil hizmeti artık otomatik olarak yükleniyor (NuGet paketinden TypeScript 3.2 ve üstü destekleniyor; npm paketinden de TypeScript 2.1 ve üstü destekleniyor).
  • Daha büyük projeleri işlemek için dil hizmetinde bellek sınırının artırılmasının sonucu olarak, dil hizmetinin performansında geliştirmeler yaptık.
  • Artık kapatılmış JavaScript/TypeScript dosyalarının tanılamalarını hata listesinde varsayılan olarak göstermiyoruz.
  • Eski JavaScript dil hizmeti artık kullanılamaz. Daha önce kullanıcıların, eski JavaScript dil hizmetini geri yükleme seçeneği vardı. Kullanıcılar artık yeni JavaScript dil hizmetini kullanıma hazır olarak elde eder. Yeni dil hizmeti, statik analizle desteklenen TypeScript dil hizmetini temel alır. Bu, JavaScript kodunuzun tür tanımına dayalı daha zengin IntelliSense’ten yararlanabilmesi için daha iyi araç sağlar. Yeni hizmet, basit ve kullanıcıların kendi kod ölçekler olarak daha iyi performans sağlayan, eski hizmet daha az bellek tüketir.

Takım Gezgini ve Azure DevOps

Azure DevOps ile Git İş Öğeleri deneyiminde geliştirmeler yaptık.

  • Yeni kimlik seçiciyle kendinize veya başkalarına iş öğeleri atayın. Varsayılan olarak, en son kullandığınız kişilerin listesini göreceksiniz. İsterseniz, kuruluşunuzdaki diğer kişileri arayıp bulmak için arama özelliğini de kullanabilirsiniz.
  • İşleme iletisinde #bahsetmeler deneyimini geliştirdik. #Bahsetme seçiciden bir iş öğesi seçtiğinizde, bu iş öğesi otomatik olarak İlgili İş Öğeleri listesine eklenecek.
İş öğesi atama ve #bahsetme geliştirmeleri
İş öğeleri atama ve #bahsetme geliştirmeleri

Sık Erişimli Yol Vurgulama

  • Performans Profili Oluşturucu'da hem CPU Kullanımı hem de DotNet Nesne Ayırma araçlarına etkin yol vurgulaması için destek ekledik. Çağırma ağacında herhangi bir işlevi seçin ve etkin yol düğmesine basarak CPU Kullanımı veya Dot Net Nesne Ayırma etkin yolunu genişletin. Bu özellik en yüksek CPU yüzdesini kullanan veya en fazla nesneyi ayıran işlev çağrılarını kolayca belirlemenize olanak tanıyor.
CPU Kullanımı aracında etkin yol vurgulama özelliği
CPU Kullanımı aracında etkin yol vurgulama özelliği

.NET ve ASP.NET Araçları

  • Tüm uygulamalar için profil yayımlama özeti sayfasında çeşitli küçük UX geliştirmeleri yaptık (yeni bölüm üst bilgileri ve eylemler/kısayollar).
  • ASP.NET uygulamalarını Azure App Service'te yayımlarken, profil yayımlama özeti sayfasının şimdi "Bağımlılıklar" adlı yeni bir bölümü var. Yeni bölümde şu anda Azure Depolama ve Azure SQL kaynaklarını uygulama hizmet örneğinizle ilişkilendirmenize olanak tanınıyor. Gelecekte bu mekanizmayla daha fazla Azure hizmetinin ortaya çıkmasını bekleyebilirsiniz.
  • Eklediğimiz uyumluluk sayesinde .NET Core projeleriyle kod ölçümlerini kullanın.
  • "Ayarlardan .editorconfig dosyası oluştur" düğmesiyle Araçlar > Seçenekleri > Metin Düzenleyicisi > C# > Kod Stili aracılığıyla düzenleyici ayarlarını bir Editorconfig dosyasına aktarın.
  • C# ve Visual Basic'in yeni Regex ayrıştırıcı desteğini kullanın. Normal ifadeler artık tanınır ve bu ifadeler üzerinde dil özellikleri etkinleştirilir. Bir dize Normal ifade oluşturucusuna geçirildiğinde veya bir dizenin hemen önüne language=regex dizesini içeren bir açıklama eklendiğinde normal ifade dizeleri tanınır. Bu sürümde yer alan dil özellikleri arasında sınıflandırma, ayraç eşleştirme, başvuruları vurgulama ve tanılamalar yer alır.
Normal ifadeler artık ayrıştırıcı desteğine sahip
Normal İfade Ayrıştırıcısı Desteği
  • Artık kullanılmayan üye bildirimini kaldırmak için isteğe bağlı bir kod düzeltmesi ile kullanılmayan özel üyelere yönelik ölü kod analizini kullanabilirsiniz.
  • Artık erişimcideki Başvuruları Bul özelliği yalnızca o erişimci için sonuçları döndürür.
  • Deconstruct yöntemi oluşturmak için bir kod düzeltmesi ekledik.
  • Kod bir dosyaya yapıştırılırken “Using” deyimleri eklenebilir. Tanınan kod yapıştırıldıktan sonra, ilgili eksik içe aktarmaları eklemenizi isteyen bir kod düzeltmesi görüntülenir.
  • Artık "Ctrl + ." veya "Alt + Enter" kullanılarak daha fazla yeniden düzenleme ve hızlı işlem kullanılabilir:
    • "await" öğesinin kapsandığı, ancak atlandığı durumlar için artık bir derleyici uyarısı vardır.
    • Bir yerel işlevi yönteme dönüştürmek için.
    • Bir demeti adlandırılmış bir yapıya dönüştürmek için.
    • Anonim türü bir sınıfa dönüştürmek için.
    • Anonim türü bir demete dönüştürmek için.
    • LINQ sorgusuna veya LINQ yöntemine yönelik bir foreach döngüsü için.
  • Artık bir Azure Kubernetes Service’te çalıştırılan ASP .NET Core uygulamaları için destek ekledik. Başlamak için GitHub üzerindeki bu docker örneğine bakın.
  • ASP.NET artık Performans Profili Oluşturucunun CPU Kullanımı aracında desteklenmektedir.
Performans Profili Oluşturucudaki CPU Kullanımı Aracı
Performans Profili Oluşturucudaki CPU Kullanımı Aracı
  • Artık .NET Core projelerindeki Razor (.cshtml) dosyalarında yer alan sonuçları göstermek için Tüm Başvuruları Bul (Shift-F12) ve CodeLens seçeneğini kullanabilirsiniz. Daha sonra ilgili Razor dosyalarında tanımlanan koda gidebilirsiniz.
  • Windows Sanal Makinelerinde (VM) ve VM Ölçek Kümelerinde çalışan ASP .NET (core ve desktop) uygulamalarını hedeflemek için destek ekledik.
Anlık görüntü hata ayıklayıcısı hedef seçimi kullanıcı arabirimi
Snapshot Debugger Hedef Seçim UI’si
  • Artık FxCop kullanarak kod çalıştırırken bir uyarı alırsınız. İleriye dönük kod analizi gerçekleştirmek için .NET derleyici çözümleyicileri önerilir. .NET derleyici platformu çözümleyicilerine geçiş hakkında daha fazla bilgi edinin.
  • Taşınabilir Sınıf Kitaplığı (PCL) proje şablonları artık kullanılamaz ve proje desteği varsayılan olarak yüklenmez. Birden fazla platformu hedefleyecek şekilde tasarlanan yeni projeler, .NET Standard proje türünü kullanmalıdır. PCL proje desteğine ihtiyaç duyan müşteriler, Visual Studio yükleyicisindeki Bağımsız Bileşenler sekmesinden ayrı olarak bileşeni yüklemelidir.
  • "Project.CopyWebSite" komutu artık kullanılamaz. Bu özellik yalnızca .NET için "Web Sitesi" proje türünde kullanılabilir. Her bir dosyanın aynı sürümüne sahip olmak için iki web sitesini eşitleme yeteneği sağlamıştır. Visual Studio 2019’da, Visual Studio dışındaki uzak hedeften dosyaları kopyalayabilir ve sonra projeyi açabilirsiniz.
  • Uzak bir FTP konumundan Web Sitesi projesi açma yeteneği kaldırılmıştır. FTP kullanıcıları, Visual Studio dışındaki uzak hedeften dosyaları kopyalayabilir, projeyi açıp değişiklikler yapabilir ve sonra bunları uzak FTP konumuna göndermek için yayınlayabilir.
  • ASP.NET ve Web iş yükü artık özel bir CoffeeScript düzenleme deneyimi yüklemez. Visual Studio'nun TextMate paketleri, CoffeeScript ile çalışmak için üstün bir deneyim sağlar.
  • Şu anda yerleşik CSSLint ve CoffeeLint kopyaları tarafından oluşturulan CSS ve CoffeeScript hataları, bu dosyalar düzenlenirken artık otomatik olarak belirmez. Npm veya Visual Studio Görev Çalıştırıcı Gezgini gibi lint araçlarını çalıştırmak için alternatif bir yöntem kullanın.
  • Visual Studio artık Knockout HTML öznitelikleri için IntelliSense sağlamaz. Visual Studio 2019’da öznitelikleri yazmanız gerekir.
  • Hata ayıklama JavaScript’i için ASP.NET projelerinde Eski Chrome hata ayıklayıcısını kullanma yeteneği kaldırılmıştır. Visual Studio'da yerleşik olarak bulunan geçerli Chrome hata ayıklayıcıyı kullanmaya devam edebilirsiniz.
  • ASP.NET projelerinde JavaScript Konsolu işlevini kullanma olanağı kaldırılmıştır. Müşterilerin, sık kullandıkları tarayıcının geliştirme araçları içinde bulunan Konsolu kullanmasını öneririz.

Kapsayıcı Araçları

  • Kapsayıcı oluşturma ve hata ayıklama için kolaylaştırılmış bir tek proje deneyimi ekledik:
    • ASP.NET Web Uygulamaları (.NET Framework)
    • Konsol Uygulamaları (.NET Core)
  • Temel görüntü olarak Alpine kullanan ASP.NET Core Uygulamaları için hata ayıklama desteği ekledik.
  • En son ASP.NET ve .NET Core görüntüleri için destek ekledik.

.NET Core araçları

.NET Core 3.0

Bu sürümle, önizleme SDK’sı yüklüyse .NET Core 3.0’ı hedefleyen ASP.NET Core, Konsol ve Sınıf Kitaplığı projeleri oluşturabilirsiniz.

Visual Studio RC kullanıyorsanız, Araç > Seçenekleri Projeleri ve Çözümleri > .NET Core'a da gitmeniz ve .NET Core SDK'larının önizlemelerini kullan onay kutusunu işaretlemeniz > gerekir. Visual Studio Preview kullanıyorsanız, bunu yapmanız gerekmez. Bu ayar ve davranışı hakkında daha fazla bilgi edinmek amacıyla .NET Core tooling update for Visual Studio 2017 version 15.9 (Visual Studio 2017 sürüm 15.9 için .NET Core araç güncelleştirmesi) başlıklı makaleyi okuyabilirsiniz.

Ayrıca, “dotnet new” komutuyla .NET Core 3.0 için Windows Forms veya WPF projeleri oluşturabilirsiniz. Bu projeler daha sonra Visual Studio 2019’da açılabilir.

Yeni özellikler

Yeni sürümden başlayarak .NET SDK stilindeki projeler için proje dosyalarını Visual Studio'da birinci sınıf dosya türü yapıyoruz. Artık aşağıdakiler destekleniyor:

  • Proje düğümüne çift tıklayarak proje dosyasını açma
  • Proje düğümüne tek tıklayarak proje dosyasını Önizleme sekmesinde açma
  • Tümüne Git (ctrl + T) seçeneğiyle ada göre proje dosyası bulma
  • Proje dosyasındaki MSBuild öğeleri artık Dosyalarda Bul seçeneğiyle aranabiliyor
  • Bir proje yazma hatası tetiklenirse hata listesinden açma

Bunlara ek olarak, .NET SDK stilindeki projeler artık konsol uygulamalarındaki F5 ve ctrl + F5 için yeni Tümleşik Konsol deneyimini kullanıyor. Bu da Visual Studio'dan konsol uygulamaları başlatıldığında deneyimi birleştiriyor:

  • F5 için, uygulamanın yürütülmesi bittiğinde konsol penceresi otomatik olarak kapatılmayacak. Artık konsol uygulamalarınıza Console.Read() çağrıları eklemeniz gerekmiyor.
  • ctrl + F5 için, uygulamanızın birbirini izleyen çalıştırmalarında konsol penceresi yeniden kullanılacak. Artık birçok konsol penceresini kapatmanız gerekmiyor.

Yeni konsol penceresi, açıkken bir tuşa basılarak veya Araçlar > Seçenekler'in > altında Hata ayıklama durdurulduğunda konsolu otomatik olarak kapat seçeneği seçilerek otomatik olarak kapatılabilir.

Lisans İfadeleri ve Lisans Dosyaları için destek proje özellikleri sayfalarına eklendi. Bu, NuGet’te licenseUrl öğesini kullanımdan kaldırma ile aynı doğrultudadır.

Performans iyileştirmeleri
  • Büyük çözümlerin ölçeklenebilirliği önemli oranda iyileştirilerek çok daha büyük .NET Core çözümlerinin kullanılabilmesi sağlandı.
  • Büyük projeler için çözüm yükleme süreleri ve bunlar yüklenirken kullanılan CPU ve bellek önemli ölçüde azaltıldı.
.NET Core olmayan projelerle özellik eşliği

Sorunların ve çekme isteklerinin tam bir listesini 16.0, 16.0 Preview 2, 16.0 Preview 3 ve 16.0 Preview 4 kilometre taşlarında bulabilirsiniz.

.NET Üretkenliği

  • .NET yeniden düzenlemeleri ve kod düzeltmeleri:

    • Ad Alanı ile Klasör Adını eşitleme
    • İletişim kutusu seçenekleriyle yeniden düzenleyerek üyeleri yukarı çekme
    İletişim kutusu seçenekleriyle yeniden düzenleyerek üyeleri yukarı çekme
    Üyeleri Yukarı Çek iletişim kutusu
    • Parametre/Bağımsız değişken listelerini kaydırma/girintili yapma/hizalama
    • Anonim türü tanımlama grubuna dönüştürme
    • Lambda için ifade/blok gövdesi kullanma
    • Koşullu ifadeleri ve mantıksal işlemleri tersine çevirme
    • “/” ile belirtilen blok açıklamayı otomatik olarak kapatma
    • Bileşik atamaya dönüştürme
    • Açıkça yazılmış değişkenlerin sabit olamama düzeltmesi
    • Ara değerli verbatim dizesi yazarken @$" öğesini $@" ile değiştirmek için otomatik hata giderici
    • #nullable enable|disable için tamamlama
    • Kullanılmayan ifade değerleri ve parametreler için düzeltme
    • Arabirimi Ayıklamanın aynı dosyada kalmasını sağlamak için düzeltme
  • Okuma/Yazma ile başvurular kategorilere ayrılıyor.

  • csharp_prefer_braces için Editorconfig when_multiline seçeneği eklendi.

  • .NET Compiler Platform SDK'sından (eski adıRoslyn) yeni sınıflandırma renkleri sağlanıyor. Visual Studio Code renklerine benzer yeni varsayılan renkler aşamalı olarak dağıtılıyor. Bu renkleri Araçlar Seçenekleri Ortam Yazı Tipleri ve Renkler'de ayarlayabilir veya Gelişmiş renkleri kullan onay kutusunun işaretini kaldırarak Ortam > Önizleme Özellikleri'nde kapatabilirsiniz.> > > Bu değişikliğin iş akışınızı nasıl değiştirdiğiyle ilgili geri bildirimlerinizi almak isteriz.

Yeni Roslyn sınıflandırma renkleri
Yeni Roslyn sınıflandırma renkleri

ASP.NET projelerinde JavaScript Hata Ayıklama

  • ASP.NET projeniz için "Birlikte Gözat..." menüsünü kullanarak özel bağımsız değişkenlerle yeni bir Google Chrome tarayıcısı eklediyseniz, hata ayıklama başlatıldığında Visual Studio artık uygulamanız için JavaScript hata ayıklamasını etkinleştirecek. Google Chrome başlatılırken Chrome için özel başlatma bağımsız değişkenleriniz uygulanacak.
'Gözat' kullanarak Özel bağımsız değişkenlerle Google Chrome ekleme
'Birlikte Gözat...' kullanılarak Özel bağımsız değişkenlerle Google Chrome ekleme
Not: Veri dizininizin yolunu bağımsız değişken olarak sağlamadığınız sürece Visual Studio varsayılan olarak Normal Chrome örneğinizden farklı bir veri dizini kullanarak Chrome'ı başlatır. Sonuç olarak, Chrome örneğini kullanırken herhangi bir uzantının kullanılabilir olmasına ihtiyacınız varsa, ilk seferinde bunları yüklemeniz gerekecek.

ASP.NET & Azure İşlevleri araçları

  • Visual Studio 2019 yeni projeler oluşturmaya yönelik yeni bir deneyimle geliyor. Özel olarak yeni ASP.NET projeleri oluşturulurken Visual Studio ASP.NET’e özgü seçimleri gösteren ek iletişim kutuları sunuyor. Bu ek iletişim kutuları deneyimin kalan bölümündeki görsel stille eşleşecek şekilde güncelleştirildi.
  • Artık bir süredir Visual Studio’daki yayımlama kimlik bilgileri şifrelenir ve yayımlama profili kullanıcı dosyasında depolanır. Dolayısıyla uygulamanızı her yayımlayışınızda bunları yeniden girmeniz gerekmez. Genelde, kullanıcı dosyaları büyük olasılıkla paylaşılmaması gereken gizli diziler ve/veya kişisel bilgiler içerdiğinden, bu dosyalar varsayılan olarak kaynak denetiminin dışında tutulur. Şimdiye kadar Azure İşlevleri’nin yayımlama profili kaynak denetimine iade edilirken kullanıcı dosyası iade edilmiyor, yayımlama kimlik bilgileri eksik kalıyor ve yayımlama profili yeniden kullanılamıyordu. Artık yayımlama profilinin yeniden kullanılabilmesi için kimlik bilgilerinin düzenlenmesine ve yeni kullanıcı dosyasının oluşturulmasına izin veriyoruz.

Performans Sihirbazı

Visual Studio 2019’da, Performans Sihirbazında kullanılabilir olan profil oluşturma deneyimleri, Performans Profili Oluşturucuya taşınmıştır. Performans Profili Oluşturucuda İzleme aracında örnekleme ve izleme için CPU Kullanımı Aracını bulabilirsiniz. Bu değişiklikle birlikte Performans Sihirbazı artık gerekli olmadığından Visual Studio 2019’dan kaldırılmıştır. Ayrıca VS Performansı komut satırı araçlarındaki örnekleme seçeneği kaldırılmış olup gelecek önizleme sürümünde yeni bir komut satırı aracı yayınlanacaktır.

Test Araçları

  • Artık Çözüm Gezgini’nde testlere, test sınıflarına veya test projelerine sağ tıklayarak testleri çalıştırabilir ve bunlarda hata ayıklayabilirsiniz.
  • Test çalıştırmaları, işlemci mimarisinin proje özelliklerinde nasıl ayarlandığını artık otomatik olarak algılıyor.
  • Selenium ve Appium gibi OSS UI test araçları ivme kazanmıştır ve güçlü bir topluluk desteğine sahiptir. Bu çerçeveler, endüstri standardı olduğundan, otomatik UI odaklı işlevsel test için Kodlanmış Kullanıcı Arabirimi testini kullanımdan kaldırdık. Kodlanmış Kullanıcı Arabirimi test özelliklerine sahip son Visual Studio sürümü, Visual Studio 2019 olacaktır. Web uygulamalarını test etmek için Selenium, masaüstü ve UWP uygulamalarını test etmek için Appium with WinAppDriver kullanılmasını öneririz.
  • Yük test etme özelliklerine sahip son Visual Studio sürümü, Visual Studio 2019 olacaktır. Yük test etme araçlarına ihtiyaç duyan müşteriler için Apache JMeter, Akamai CloudTest, Blazemeter gibi alternatif yük test etme araçlarının kullanılmasını öneririz.
  • Visual Studio 2019’da, önceden genel olarak işaretlenmiş olup hiçbir zaman resmi olarak belgelenmemiş olan bazı test zaman aralığı API’leri kaldırılmıştır. Uzantı kullanıcılarına erkenden uyarı vermek için bunlar Visual Studio 2017’de kullanım dışı olarak işaretlenmiştir. Bildiğimiz kadarıyla, bu API’lere bağımlı olan çok az uzantı vardır. Bu API’ler arasında IGroupByProvider, IGroupByProvider, KeyComparer, ISearchFilter, ISearchFilterToken, ISearchToken ve SearchFilterTokenType yer alır. Bu değişiklik uzantınızı etkiliyorsa, lütfen Geliştirici Topluluğu’nda bir sorun göndererek bunu bize bildirin.

Visual Studio Kubernetes Araçları

Daha önce Visual Studio 2017'nin ayrı uzantısı olarak sağlanan Visual Studio Kubernetes Araçları şimdi Visual Studio 2019'da Azure geliştirme iş yüküyle tümleştirildi.

Yeni projeye Kubernetes desteği ekleme

Yeni projeye Kubernetes desteği eklemek için Visual Studio'yu açın ve Yeni proje oluştur'u seçin. Yeni proje oluştur penceresinde Kubernetes için arama yapın ve Kubernetes için Kapsayıcı Uygulama proje şablonunu seçin.

Kubernetes için Kapsayıcı Uygulama oluşturma
Kubernetes için Kapsayıcı Uygulama oluşturma

İleri'ye tıklayın, sonra da proje adı, konum ve çözüm adı girin. Sonra, Oluştur’a tıklayın. Projenizde kullanmak istediğiniz ASP.NET Core uygulama şablonunu seçin ve Tamam'a tıklayın. Visual Studio yeni uygulamanızı Kubernetes kümesinde derlemek ve dağıtmak için kullanabileceğiniz bir Dockerfile ve Helm grafiğini otomatik olarak oluşturacak. Bu yapıtları gerektiği gibi değiştirebilirsiniz.

Mevcut projeye Kubernetes desteği ekleme

Ayrıca mevcut ASP.NET Core uygulamasına da Kubernetes desteği ekleyebilirsiniz. Bunu yapmak için projeyi Visual Studio 2019'da açın. Çözüm Gezgini'nde projeye sağ tıklayın, Ekle'nin üzerine gelin ve Kapsayıcı Düzenleyicisi Desteği'ne tıklayın.

Kapsayıcı düzenleyicisi desteği ekleme
Kapsayıcı düzenleyicisi desteği ekleme

Kapsayıcı Düzenleyicisi Desteği iletişim kutusunda Kubernetes/Helm'i seçin ve Tamam'a tıklayın. Visual Studio uygulamanızı Kubernetes kümesinde derlemek ve dağıtmak için kullanabileceğiniz bir Dockerfile ve Helm grafiğini (charts adlı klasörde) otomatik olarak oluşturacak. Bu yapıtlardan herhangi bir zaten varsa, üzerlerine yazılmayacak. Bu yapıtları gerektiği gibi değiştirebilirsiniz.

Genel kullanıma açık bir uç nokta oluşturma

Yeni veya mevcut bir projeye Kubernetes desteği eklediğinizde, Visual Studio uygulamanız için genel kullanıma açık bir uç nokta oluşturmak isteyip istemediğinizi soracak.

Genel kullanıma açık uç nokta istemi
Genel kullanıma açık uç nokta istemi

Evet'e tıklarsanız, Visual Studio uygulama Kubernetes kümesine dağıtıldığında bir Kubernetes girişi oluşturmak üzere uygulamanız için Helm grafiğini yapılandıracak. İstediğiniz zaman Helm grafiğinde değişiklik yaparak bu seçeneği değiştirebilirsiniz.

Azure Kubernetes Service'de uygulamanızın hatalarını ayıklama

Yeni veya mevcut projeye Kubernetes desteği ekledikten sonra, Azure Dev Spaces adlı özelliği kullanarak uygulamanızı kolayca canlı bir Azure Kubernetes Service (AKS) kümesinde derleyebilir, çalıştırabilir ve hatalarını ayıklayabilirsiniz. Bu, projenizi gerçek Kubernetes kümesi bağlamında test etmek veya çok daha büyük bir uygulamanın parçası olan bir hizmette uygulamanın tamamını yerel olarak çoğaltmadan hata ayıklaması yapmak için kullanışlıdır. Azure Dev Spaces ayrıca, geliştirme takımızın AKS kümesini paylaşmasına olanak tanıyan bir işlevsellik içeriyor. Azure Dev Spaces hakkında daha fazla bilgi için Azure Dev Spaces belgelerine bakın. Başlangıç olarak, Visual Studio'da Azure Dev Spaces'in hata ayıklama başlatma hedefi olarak seçildiğinden emin olun.

Azure Dev Spaces'i hata ayıklama başlatma hedefi olarak seçme
Azure Dev Spaces'i hata ayıklama başlatma hedefi olarak seçme

Projenizi Dev Spaces'te ilk kez başlatmadan önce, kullanmak istediğiniz Azure aboneliğini ve AKS kümesini yapılandırın. Ayrıca, projeyi çalıştırmak istediğiniz alanı da seçin.

Azure Dev Spaces'i yapılandırma
Azure Dev Spaces'i yapılandırma

Genellikle, takımınız uygulamanın tamamının en son kararlı sürümünü varsayılan alanda çalıştırır. Ardından üzerinde çalıştığınız kendi hizmet sürümünüzü varsayılan alanın bir alt alanında çalıştırırsınız. Artık diğer hizmetleri alt alanda çalıştırmanıza gerek yoktur; Dev Spaces hizmetinizden gelen çağrıları otomatik olarak hizmetlerin varsayılan alanda çalıştırılan kararlı sürümlerine yönlendirir. Bunun nasıl ayarlanacağı hakkında daha fazla bilgi için, Azure Dev Spaces belgelerinde takım geliştirme öğreticilerine bakın. Doğru aboneliği, kümeyi ve alanı seçtikten sonra, Tamam'a tıklayarak Dev Spaces yapılandırmasına devam edin. Henüz ilişkili bir Dev Spaces denetleyicisi olmayan bir küme seçerseniz, sonraki iletişim kutusunda Tamam'a tıklayarak bir denetleyici oluşturun.

Dev Spaces'i Etkinleştir iletişim kutusu
Dev Spaces'i Etkinleştir iletişim kutusu

Denetleyici oluşturma işlemi 2 dakika kadar sürer. Durumu görmek için Visual Studio penceresinin sol alt köşesindeki Arka Plan Görevleri düğmesine tıklayabilirsiniz.

Arka Plan Görevleri üzerinden Azure Dev Spaces denetleyici oluşturma durumu
Arka Plan Görevleri üzerinden Azure Dev Spaces denetleyici oluşturma durumu

Elinizde kullanılmaya hazır bir Dev Spaces denetleyicisi olduktan sonra, F5'e basarak veya araç çubuğunda Azure Dev Spaces hata ayıklama düğmesine tıklayarak AKS'de projenizin hatalarını ayıklayın.

Azure Dev Spaces hata ayıklama düğmesi
Azure Dev Spaces hata ayıklama düğmesi

Dev Spaces kodunuzu Azure'a eşitleyecek, kodunuzu içeren bir kapsayıcı görüntüsü oluşturacak ve projenizde tanımlanan Helm grafiğini kullanarak kodu AKS kümenize dağıtacak. Visual Studio kümede çalıştırılan hizmete yönelik bir uzak hata ayıklama bağlantısı açacak; böylece hizmetle, yerel olarak çalıştırılan bir hizmette hata ayıklarken yaptığınız gibi etkileşim kurabileceksiniz.

Xamarin ile Mobil Geliştirme

Bu yayın, iş yükü boyutu ve Android derleme performansı ve güvenilirliği üzerindeki geliştirmeleri ve Xamarin.Android ve Xamarin.Forms üretkenliğine yönelik geliştirmeleri içerir.

  • Xamarin iş yükü artık 7,69 GB olup bu, Visual Studio 2017 15.9 sürümünden 2 kat düşük ve 15.7 sürümünden 3 kat daha iyidir.
  • IntelliCode uzantısı artık Xamarin.Forms XAML’i desteklemektedir.
Dosya > Yeni Projesi

Yeni Xamarin projesini oluşturmak için gereken süreyi azaltmaya yönelik performans geliştirmeleri yaptık, dolayısıyla artık uygulamalarınızı daha hızlı derlemeye başlayabilirsiniz. Ayrıca şimdi, özellikle düşük bant genişliği veya çevrimdışı çalışma durumlarında paket geri yükleme süresini kısaltmak için şablonlar tarafından kullanılan NuGet paketlerini de iş yükü yüklemesine dahil ediyoruz. Bu geliştirmeler yeni Xamarin projesinin tümüyle yüklenme ve geri yüklenme süresini bazı durumlarda %50'ye varan oranda kısaltıyor.

Yeni Xamarin proje karşılaştırma gif'i
Visual Studio sürüm 15.9 (sol) ve Visual Studio 2019'da (sağ) yeni Xamarin projesi oluşturma
Derleme ilerleme durumu göstergesi

Artık projelerinizi derlerken daha ayrıntılı derleme ilerleme durumu bilgileri görebilirsiniz. Derleme sırasında sol alt köşedeki arka plan görevleri simgesine tıklandığında çalıştırılmaktan olan geçerli derleme hedefi görüntülenecek. Bu, derlemenin çalışmaya devam ettiğini ama hedefin tamamlanmasının uzun sürdüğünü saptamak için yararlı olabilir.

Xamarin derleme ilerleme durumu göstergesi
Xamarin derleme ilerleme durumu göstergesi
Xamarin.Forms Önİzleyicisi'nin Temel Önizleme modu

Artık Xamarin.Forms XAML Önizleyicisi ile kodunuzun önizlemesini görmek için projenizi derlemek zorunda değilsiniz! XAML dosyanızda özel denetimler varsa, bunların önizlemesini görüntülemek için projenizi derlemeniz veya tasarım zamanı işlemesine eklemeniz gerekebilir.

Xamarin.Forms Önİzleyicisi cihaz açılan listesi

Artık yeni cihaz açılır menümüzü kullanarak Xamarin.Forms XAML önizlemesi yapmak için farklı Android ve iOS cihazlar arasında geçiş yapabilirsiniz.

Xamarin.Forms Cihaz Açılır Menüsü
Xamarin.Forms Cihaz Açılır Menüsü
Xamarin.Forms Özellik Paneli

Artık bir özellik panelinde Xamarin.Forms denetimlerinin, hücrelerinin ve düzenlerinin en yaygın özniteliklerini düzenleyebilir ve bu değişikliklerin XAML’inizde hemen yansıtıldığını görebilirsiniz.

Xamarin.Forms Özellik Paneli
Xamarin.Forms Özellik Paneli
Xamarin.Forms Shell şablonu

Xamarin.Forms şablonlarını en son Xamarin.Forms sürümünü kullanacak şekilde güncelleştirdik ve ayrıca Xamarin.Forms Kabuk uygulaması için yeni bir şablon seçeneği ekledik. Kabuk uygulamaların karmaşıklığını azaltırken geliştirici üretkenliğini artırmayı, hızı ve bellek tüketimini işlemeye odaklanmayı amaçlıyor. Bu şablon size Android ve iOS için önyüklemesi yapılmış bir Kabuk uygulaması getiriyor.

Android Derleme performansı ve güvenilirliği

Visual Studio 2017 15.9 ve Mac için Visual Studio 7.7 sürümünde ilk derleme performansı ve derleme doğruluğu üzerinde geliştirmeler yaptık. Visual Studio 2019 ve Mac için Visual Studio 7.8 sürümünde derleme ve dağıtmayı çok daha hızlı hale getirdik.

Android Derleme Performansı
*Android Build Now Faster than Grabbing a Cup of Coffee*
  • Artık Android'in yeni nesil paketleme araçlarından yararlanacaksınız. Bu özelliği etkinleştirmek için projenizin .csprojöğesine bir MSBuild bayrağı ekleyin:
    • aapt2 , Android paketlemeyi iki adıma ayırır: Derleme ve Bağlama. Bu, artımlı derlemeler için performansı artırır ve daha erken hata bildirimi sağlar. Örneğin, tek bir dosyada değişiklikler varsa yalnızca o dosyayı yeniden derlemeniz gerekir. <AndroidUseAapt2>True</AndroidUseAapt2>
  • Projelerinizde bu aracı etkinleştirerek hem derleme zamanında hem de çalışma zamanında gelişmiş performans elde edersiniz. Bu özelliklerle ilgili daha fazla ayrıntı için, Xamarin.Android’de Derleme İşlemi ile ilgili belgelerimize bakın.
Android Öykünücüsü geliştirmeleri

Visual Studio 2019’da Android Emulator görüntülerini oluşturmak daha kolaydır. Hyper-V’de çalıştırılırken Android Emulator’ın performansını artırmak için Windows 10 Ekim 2018 Güncelleştirmesi, 1809 sürümünde Windows ekibiyle birlikte çalışmaya devam ettik.

  • Yeni kullanıcılar, çalıştır simgesine basarak ilk görüntülerini oluşturabilir.
  • Öykünücü alma deneyimimiz otomatik olarak kurulumunuz için en iyi yapılandırmayı belirler ve varsayılan olarak donanım hızlandırma (Intel HAXM veya Hyper-V ile) ve hızlı önyüklemeden yararlanır.
  • Başka bir görüntü oluşturmak istediğinizde, Android Device Manager’ı açmak için açılır listeden Android Emulator Oluştur seçeneğini belirleyebilirsiniz.
Xamarin.Android'de derleme geliştirmelerimizle derleme sürelerinizi hızlandırır

Bir dizi ilk derleme performans geliştirmelerini kullanıma sunduk. Bugünden itibaren Xamarin.Android 9.1.1+ önceki sürüme göre önemli derleme performansı geliştirmeleri içeriyor. Daha fazla ayrıntı için Xamarin.Android 15.9 ile 16.0 derleme performansı karşılaştırmamıza göz atın.

Xamarin.Android için Gelişmiş Hızlı Dağıtım

Hızlı Dağıtım şimdiye kadar, uygulamanın içinde paketlenmiş hiçbir varlıkta, kaynakta, paylaşılan yerel kitaplıkta veya Java.Lang.Object öğesinden devralınan kullanıcı tanımlı sınıfta değişiklik yapılmamış olan senaryolarda Android paketini (.apk dosyası) yeniden derleme veya yeniden dağıtma işlemlerini atlayarak daha kısa artımlı dağıtım süreleri sağlıyordu. İyileştirilmiş Hızlı Dağıtım, hızlı dağıtıma yönelik desteği hem paylaşılan kitaplıkları hem de Java.Lang.Object öğesinden devralınan sınıfları kapsayacak şekilde genişletiyor. Bu yeni iyileştirmeleri kullanan hızlı dağıtım derlemelerinin, yalnızca yeni Android.App.Application veya Activity alt sınıfının eklenmesinden dolayı AndroidManifest.xml dosyasının değişmesi gibi sınırlı sayıda senaryoda yeni bir .apk dosyası oluşturması gerekecek. Bu iyileştirmeler geçerli önizlemede henüz varsayılan olarak etkinleştirilmedi. Bunları etkinleştirmek için, .csproj dosyanızda $(AndroidFastDeploymentType) MSBuild özelliğini Assemblies:Dexes olarak ayarlayın:

<PropertyGroup> 
  <AndroidFastDeploymentType>Assemblies:Dexes</AndroidFastDeploymentType> 
</PropertyGroup>
Xamarin.Android'de yeni nesil Dex Derleyicisi(d8) ve Kod Sıkıştırıcısı(r8) desteği

Xamarin.Android şimdi en son Android dex derleyicisini (d8) ve kod sıkıştırıcısını (r8) destekliyor. Bu özellikleri etkinleştirmek için, .csproj dosyanızda $(AndroidDexTool) ve $(AndroidLinkTool) MSBuild özelliğini sırasıyla d8 ve r8 olarak ayarlayın

  • d8, daha hızlı çalıştırılan ve daha iyi çalışma zamanı performansıyla daha küçük .dex dosyaları üreten yeni nesil bir dex derleyicisidir.
<PropertyGroup> 
  <AndroidDexTool>d8</AndroidDexTool>
</PropertyGroup>
  • r8, Java bayt kodunu ProGuard ihtiyacını ortadan kaldıran iyileştirilmiş dex koduna dönüştüren yeni bir sıkıştırma ve küçültme aracıdır.
<PropertyGroup> 
  <AndroidLinkTool>r8</AndroidLinkTool>
</PropertyGroup>

d8 ve r8 ile ilgili diğer ayrıntılar için belgelerimizi gözden geçirin.

Xamarin.Android Designer geliştirmeleri

Bölünmüş Görünümde etkileşimler üzerinde birçok üretkenlik geliştirmesi yaptık.

  • Android düzenlerinizin hızlı şekilde iskelesinin oluşturulmasına yardımcı olması için doğrudan araç kutusundan kaynak düzenleyicisine sürükleyip bırakma işlemi yapın.
Android Designer Araç Kutusu-Kaynak Düzenleyicisi
  • Doğrudan kaynak düzenleyicisindeki XML tanımı aralığından öğeleri seçin. Giriş işareti konumunu ilgili Android görünümü ile eşitleyerek bunu uyguladık; böylece doğrudan düzenleyiciden, özellik panelinde bir öğenin özelliklerine hızlı şekilde erişim elde edebilirsiniz.
Android Designer Kaynak Düzenleyicisi'ni Özellik Düzenleyicisi'ne
  • Denetimlerinizde hangi renklerin kullanılmakta olduğunu görebilmeniz için XML kodunuza yönelik bir satır içi renk önizlemesi kullanın.
Android Tasarımcısı Renk Önizlemesi
  • Değerle ilgili, değerin nerede tanımlandığı veya renk için onaltılık değerin ne olduğu gibi bilgileri edinmek için imleci o değerin üzerine getirerek hızlı bilgi özelliğimizi kullanın.
Android Designer Hızlı Bilgileri
*Hızlı Bilgi İşlemDe*
Kısıtlama düzenleri desteğiyle birlikte diğer Xamarin.Android Designer iyileştirmeleri

Android Designer'ın başlatma hızını geliştirme çalışmalarına başlamıştık. Bu çalışmalar kapsamında, tasarımcının yüklenirken sağladığı iletileri de geliştirdik.

Android Designer Çıkışı

Bu geliştirmelerin yanı sıra, Android Designer şimdi Android Pie (9.0) işletim sistemini yerel olarak destekliyor ve ConstraintLayout öznitelikleri için otomatik tamamlama özelliği sağlıyor.

Xamarin.Android Designer ile daha iyi XML IntelliSense ve Açıklama iyileştirmeleri edinin

IntelliSense kullanarak düzene arabirim öğesi eklerken, gerekli özniteliklerin en baştan sağlanabilmesi için artık tam bir kod parçacığı deneyimi sağlanıyor. Android XML düzenleri için akıllı açıklama ekleme ve açıklama kaldırma özelliği ekledik.

Tanıma Git özelliğini kullanarak daha üretken olun ve Xml IntelliSense'i Android kaynak dosyalarında ve AndroidManifest.xml

Artık kaynak URL'lerine Ctrl + Tıklama yoluyla bunların tanımlandığı dosyaya veya satıra gidebilirsiniz.

Android Tasarımcısı Tanıma Git

IntelliSense/Otomatik Tamamlama artık düzenler (renk, dize, çizilebilir kaynak, menü, Android bildirimi vb.) dışında diğer Android XML dosyaları için destekleniyor.

Evrensel Windows Platformu

  • IntelliCode uzantısı artık XAML’i desteklemektedir.
  • Visual Studio kurulum karmaşıklığını ve boyutunu azaltmak için Visual Studio yüklemesinden Windows Phone öykünücüleri kaldırılmıştır. Artık öykünücüleri sizin indirmeniz gerekir.
  • Windows 10 Fall Creators Güncelleştirmesi (derleme 16299) öncesindeki Windows 10 SDK’larını hedefleyen UWP uygulamaları için XAML tasarım zamanı araçları kaldırılmıştır. XAML düzenleyicisini kullanmak veya XAML Tasarımcısını kullanmak için uygulamalarınızı Windows 10 sürüm 1709 veya sonraki sürüme yeniden hedefleyin.
  • NuGet bağımlılıklarını tanımlamak için project.json kullanan UWP test projeleri artık desteklenmez. Yeni PackageReference biçimini kullanmak için projenizi yükseltmeniz gerekir.
  • UWP JavaScript uygulamaları artık Visual Studio 2019’da desteklenmemektedir. JavaScript UWP projeleri (jsproj uzantılı dosyalar) oluşturamaz veya açamazsınız. Windows’da düzgün şekilde çalıştırılan Aşamalı Web Uygulamaları (PWA) oluşturma ile ilgili belgelerimiz aracılığıyla daha fazla bilgi edinebilirsiniz.
  • Önceden olduğu gibi JavaScript UWP uygulamalarına eklemeye devam edebilirsiniz ancak JavaScript profil oluşturma araçları (Ağ, CPU ve Bellek Profili Oluşturucu) artık Visual Studio 2019’da bulunmaz.

Office Araçları Şablon Güncelleştirmeleri

Visual Studio 2019’da, Office, SharePoint ve VSTO şablonları üzerinde birkaç değişiklik yaptık.

  • Visual Studio 2017 15.9’da eklenen SharePoint 2019 şablonları, Visual Studio 2019’da da kullanılabilir.
  • SharePoint Sıralı İş Akışı veya Durum Makinesi İş Akışları desteğini kaldırdık. Visual Studio 2019’da bu iş akışlarını oluşturamasanız veya açamasanız da önceki Visual Studio yayınlarında bunları düzenlemeye devam edebilirsiniz.
  • Office 2010 şablonları artık kullanılamaz. Ancak yine de mevcut Office 2010 projelerini Visual Studio 2019’da açabilirsiniz.
  • Office 2013 ve 2016 şablonları, Office 2013 ve üzerini desteklediğini yansıtacak şekilde yeniden adlandırılmıştır.

Takım Gezgini ve Azure DevOps

Takım Gezginini bir Azure DevOps projesine bağlarken yeni, kolaylaştırılmış, geliştirici odaklı bir deneyim sunuyoruz.

  • Size atanan iş öğelerine, izlediğiniz iş öğelerine, tartışmada bahsedildiğiniz iş öğelerine ve etkinliğinize dayalı iş öğelerine göre görünümünüzü filtreleyerek ve özetleyerek ilgili iş öğelerine odaklanın.

    • Her bir görünümde, satır içi bir iş öğesi oluşturabilir, basit satır içi düzenlemeler gerçekleştirebilir, bir iş öğesini tamamlandı olarak işaretleyebilir ve bir iş öğesini beklemedeki değişikliklerle ilişkilendirebilirsiniz.
  • Bir iş öğesinden, o iş öğesini, söz konusu yerel dal üzerinde yapılan değişikliklerle otomatik olarak ilişkilendiren bir yerel dal oluşturun. Bu, varsayılan deneyimdir. Eski deneyime geçiş yapmak isterseniz, Visual Studio’da İş Öğeleri deneyimini ayarlayarak bunu yapabilirsiniz. Bu yeni deneyimin yalnızca Git depoları için doğru olduğunu unutmayın. TFVC depoları için yeni deneyim aşağıdaki güncelleştirmede sunulacaktır.

    Azure DevOps İş Öğesi Hub’ı
    *Azure DevOps İş Öğesi Merkezi*
  • Bekleyen değişiklikler için işleme iletisi içinde bir #bahsetme yaparken iş öğelerini arayın. Daha fazla ayrıntı için İş Öğelerini kullanarak iş öğelerini görüntüleme ve ekleme sayfasına bakın.

    Azure DevOps #bahsetmeleri
    *Azure DevOps #mentions*
  • Azure DevOps’ta benimsenme oranının düşük olması nedeniyle Visual Studio 2019 için Team Foundation Server Office Tümleştirmesi 2019 eklentisinden Microsoft Project desteği kaldırılmıştır. Artık iş öğelerinizi Excel'e dışarı aktarmanız ve bunları Projeye sizin yapıştırmanız gerekir.

  • PowerPoint desteği, Visual Studio 2019 için Team Foundation Server Office Tümleştirmesi 2019 eklentisinden kaldırılmıştır. Ancak kullanıcılar yine de PowerPoint’te görsel taslaklar oluşturabilir ve bunları Azure DevOps’ta iş öğelerine kendileri bağlantılandırabilir.

Application Insights ve HockeyApp

  • Application Insights Eğilimleri penceresi, özellik yönünden daha zengin alternatifler kullanılması için Visual Studio 2019’da kaldırılmıştır. Bunun yerine, Visual Studio’da Application Insights Araması penceresini veya Azure portaldaki Application Insights’ta zengin tanılama araçları kümesini kullanabilirsiniz.
  • HockeyApp SDK’sı ekleme ve yeni beta dağıtımları oluşturma sihirbazları kaldırılmıştır. Bunun yerine, HockeyApp’in ardılı olan Visual Studio App Center’ın kullanılmasını öneririz. HockeyApp’i normal şekilde kullanmaya devam edebilirsiniz, tek istisna, Visual Studio’da bu kısayolların bulunmamasıdır.

Sürüm Notları Simgesi Visual Studio 2019 RC'de düzeltildi sorunları

en son 26 Nisan 2019’da güncelleştirildi


Bilinen Sorunlar

Aşağıdaki bağlantıyı izleyerek Visual Studio 2019 sürüm 16.0’daki tüm bilinen sorunları ve kullanılabilir geçici çözümleri görüntüleyin.

Visual Studio 2019 Bilinen Sorunlar

Görüş ve öneriler

Fikrinizi öğrenmek isteriz! Yükleyicinin veya Visual Studio IDE’nin sağ üst köşesindeki Sorun Bildir seçeneğiyle sorunları bize bildirebilirsiniz. Geri Bildirim Simgesi simgesi sağ üst köşede bulunur. Soru sorup yanıtlar bulabileceğiniz, yeni özellikler önerebileceğiniz Visual Studio Geliştirici Topluluğu sayfasından sorunlarınızı takip edebilir ve ürün önerisinde bulunabilirsiniz. Ayrıca Canlı Sohbet desteğimizden ücretsiz yükleme yardımı alabilirsiniz.


Bloglar

Tüm yeni yayınlar hakkında güncel bilgi sunan ve çok çeşitli özellikler hakkında derinlemesine bilgiler içeren Geliştirici Araçları Blogları sitesinde mevcut olan içgörü ve önerilerden yararlanın.


Visual Studio 2019 Sürüm Notları Geçmişi

Visual Studio 2019’un geçmiş sürümleriyle ilgili daha fazla bilgi için Visual Studio 2019 Sürüm Notları Geçmişi sayfasına bakın.


Sayfanın Başı