Tag Archives: visual studio 2022

Visual Studio 2022 17.1 ile gelen yenilikler

Visual Studio 17.1 sürümü 15 Şubat 2022 tarihinde release edildi. Bu videoda bu sürüm ile gelen yeniliklere göz attık.

— Index’lenmiş dosyalar ile daha hızlı arama özelliği geldi. Bunu arka planda task manager ile görebileceğiniz ServiceHub.IndexingService.exe uygulaması ile sağlamaya başladılar. Bu özelliği Tools -- Options -- Environment -- Preview Features -- Enable indexing for faster find experience adımlarından açıp kapatabilirsiniz.

— Kod dosyalarınızı otomatik olarak senkronize etme. Bu özellik Tools -- Options -- Environment -- Documents -- Automatically save files when Visual Studio is in the background adımlarından açıp kapatabilirsiniz. Community edition’da yok sanırım, sadece professional ve enterprise müşterilerde var galiba bu.

— Branch’ler arası karşılaştırma.

C# 11 ile gelmesi planlanan Raw string literal özelliğine otomatik olarak regular string literal veya verbatim string literal’lerden Quick Tips bubble’ı ile çevirme.

Yani;

var s = "\"foo\r\nbar\"";

string’ini;

var s2 = """
    "foo
    bar"
    """;

yapabiliyor. Raw string literal’ler string interpolation’ı destekliyor ve hizalamayı önemsemiyorlar gördüğüm kadarıyla.

— Line staging

Geliştirmesi hala devam ediyormuş. Sanırım bir dosya içerisinde belirli bir satırı stage’e atma işlemi.

— C# 7 – Tuple swap

var temp = args[1];
args[1] = args[0];
args[0] = temp;

kodunu “Quick Actions” ile

(args[0], args[1]) = (args[1], args[0]);

koduna çevirebiliyorsunuz.

— Display diagnostics inline

Bu özelliğe Tools -- Options -- Text Editor -- C# -- Advanced ile gidebiliyorsunuz. Popup ile görebileceğiniz warning’leri ekranda direkt olarak çıkartabiliyor.

Örneğin sadece;

int second = 1;

yazdığınızda, değişkenin üstüne gittiğinizde çıkan popup’ı ekrana direkt olarak basabiliyor. Deneme aşamasında şu anda.

— Simplify property pattern

C# 10 ile gelen extended property patterns özelliğine “Quick Tips” bubble’ı ile otomatik olarak çevirim sağlayabiliyorsunuz.

Yani;

if (t is { Assembly: { EntryPoint: { CallingConvention: CallingConventions.Any } } }) ;

kodunu

if (t is { Assembly.EntryPoint.CallingConvention: CallingConventions.Any }) ;

koduna çevirebiliyoruz.

Kaynaklar:

https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-1-is-now-available/

https://docs.microsoft.com/en-us/visualstudio/releases/2022/release-notes

Visual Studio 2022 ile gizli karakterleri görün!

Visual Studio 2022 17.0.3 release’i ile gelen özelliklerden biri de “bidirectional” yani çift yönlü karakterleri artık editörde görebiliyoruz.

Kodun yanlış sunulmasına izin veren potansiyel olarak kötü amaçlı bir istismarı önlemek için, Visual Studio artık iki yönlü metin kontrol karakterlerinin editör içerisindeki karakterlerin sırasını değiştirmesine izin vermeyecek.

Bu özelliği Tools –> Options –> Text Editor –> General page altındaki “Show bidirectional text control characters” kısmında açıp kapatabilirsiniz. Default’ta açık geliyor.

Bidirectional karakter olarak adlandırılan karakterlerin tüm listesi şu şekilde; U+061c, U+200e-U+200f, U+202a-U+202e, U+2066-U+2069

Kaynak:

https://docs.microsoft.com/en-us/visualstudio/releases/2022/release-notes#bidirectional-text-control-character-rendering

https://en.wikipedia.org/wiki/Left-to-right_mark

https://www.fileformat.info/info/unicode/char/200e/index.htm

Visual Studio 2022 Yenilikleri – Hot Reload

Visual Studio 2022 ile gelen en heyecan verici özellik “Hot Reload” olabilir.

Hot Reload kavramı en basit tabiriyle projenizi rebuild, restart veya re-navigate etmeden yaptığınız değişiklerin anında sonuca yansımasını sağlayan bir özellik. Bunun için kodunuzu debug ederken sadece üst menüdeki “Hot Reload” butonuna basmanız yeterli. Ayrıca her seferinde bu butona basmak istemezseniz, butonun yanındaki ok’ta bulunan “Hot Reload on File Save” seçeneğini seçili hale getirirseniz yaptığınız değişiklikleri kaydettiğiniz anda hot reload aktif olup sonuca yansımasını sağlıyor.

Desteklediği proje tiplerinden bazıları; Console, WPF, Winforms, ASP.NET Core MVC ve Blazor. Ayrıca sadece Visual Studio 2022 için değil, Visual Studio Code ve Jetbrains Rider desteği de mevcut bu özelliğin.

Kaynak: https://devblogs.microsoft.com/dotnet/update-on-net-hot-reload-progress-and-visual-studio-2022-highlights/

Visual Studio 2022 Yenilikleri – Force run to cursor

Visual Studio 2022 ile gelen yeni özelliklerden biri de “Force run to cursor” kavramı.

Force run to cursor’ın mantığı şu, kodunuzu debug ederken belirli bir breakpoint’e gelmek için kodunuzu zorlayabiliyorsunuz.

Yani bir satırdan başka bir satıra gitmesi için, arada başka breakpoint’ler olsa bile onlarda durmadan “bu satıra gitmeye zorla” şeklinde komut verebiliyorsunuz. Visual Studio 2022’den önceki versiyonlarda, ya aradaki breakpoint’leri kaldırmak gerekirdi, ya da “continue” seçeneği ile teker teker o breakponint’leri geçmek zorunda kalırdınız.

Bunu yapmak için debug mod’ta gitmek istediğiniz satıra sağ tıklayıp “Force Run To Cursor” diyerek, veya o satırın üzerine gelip “Shift” butonuna basarak gelen 2 yeşil ok tooltip’i ile bu özelliği kullanmak mümkün.

Özellikle karmaşık kodlarınızda bir çok breakpoint’te durmak yerine veya onları bir şekilde teker teker geçmek yerine bu özelliği kullanabilirsiniz.

Kaynak: https://devblogs.microsoft.com/visualstudio/debug-with-force-run-to-cursor/

Visual Studio 2022 Yenilikleri – Temporary Breakpoint

Visual Studio 2022 ile gelen yeni özelliklerden biri de “temporary breakpoint” kavramı.

Temporary breakpoint kavramının mantığı şu şekilde, bunlar sadece 1 defa hit oluyorlar ve ardından siliniyorlar.

Temporary breakpoint eklemenin 2 yolu var; 1.si normal bir breakpoint ekledikten sonra settings kısmından “Remove breakpoint once hit” seçeneğini seçerek, 2.si de breakpoint kolonuna sağ tıklayıp “Insert temporary breakpoint” diyerek ekleyebiliyorsunuz.

Bu breakpoint çeşidi özellik döngüler içerisinde kullanılmaya gayet elverişli. Döngü içerisinde bir kez dursun, sonra devam etsin şeklinde kontrollerinizi kolaylıkla yapabilirsiniz.

Kaynak: https://docs.microsoft.com/en-us/visualstudio/releases/2022/release-notes

Visual Studio 2022 Yenilikleri – Dependent Breakpoint

Visual Studio 2022 ile gelen yeni özelliklerden biri de dependent breakpoint kavramı.

Dependent breakpoint’in mantığı, solution içerisinde koyduğunuz bir breakpoint’in aktif olmasını, başka bir breakpoint’e erişilme durumuna göre ayarlayabiliyorsunuz. Bunun için breakpoint kısmına sağ tıklayıp “Insert dependent breakpoint” seçip breakpoint settings penceresi açtıktan sonra, “only enable when the following breakpoint is hit” seçeneği ile hangi breakpoint’e dependent olması gerektiğini seçebiliyoruz.

Dökümantasyonunda da şu şekilde açıklanmış:

We have released a new type of breakpoint called Dependent Breakpoint, which allows you to configure a breakpoint to be enabled only if another breakpoint is first hit.

Kaynak: https://docs.microsoft.com/en-us/visualstudio/releases/2022/release-notes